<?xml version="1.0"?>

<!--

   Licensed to the Apache Software Foundation (ASF) under one or more
   contributor license agreements.  See the NOTICE file distributed with
   this work for additional information regarding copyright ownership.
   The ASF licenses this file to You under the Apache License, Version 2.0
   (the "License"); you may not use this file except in compliance with
   the License.  You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->

<rdf:RDF xml:lang="en"
         xmlns="http://usefulinc.com/ns/doap#" 
         xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
         xmlns:asfext="http://projects.apache.org/ns/asfext#">
  <Project rdf:about="http://httpd.apache.org/">
    <created>2006-01-19</created>
    <license rdf:resource="http://usefulinc.com/doap/licenses/asl20" />
    <name>Apache Commons BSF</name>
    <homepage rdf:resource="http://commons.apache.org/bsf/" />
    <asfext:pmc rdf:resource="http://commons.apache.org/"/>
    <shortdesc>Framework that provides scripting language support within Java applications</shortdesc>
    <description>Bean Scripting Framework (BSF) is a set of Java classes which provides scripting language support within Java applications, and access to Java objects and methods from scripting languages. BSF allows one to write JSPs in languages other than Java while providing access to the Java class library. In addition, BSF permits any Java application to be implemented in part (or dynamically extended) by a language that is embedded within it. This is achieved by providing an API that permits calling scripting language engines from within Java, as well as an object registry that exposes Java objects to these scripting language engines.</description>
    <bug-database rdf:resource="https://issues.apache.org/jira/browse/BSF" />
    <mailing-list rdf:resource="http://commons.apache.org/bsf/mail-lists.html" />
    <download-page rdf:resource="http://commons.apache.org/bsf/download_bsf.cgi" />
    <category rdf:resource="http://projects.apache.org/category/library"/>
    <programming-language>Java</programming-language>
    <release>
      <Version>
        <name>bsf</name>
        <created>2002-11-12</created>
        <revision>2.3.0-rc1</revision>
      </Version>
    </release>
    <release>
      <Version>
        <name>bsf</name>
        <created>2006-10-6</created>
        <revision>2.4</revision>
      </Version>
    </release>
    <release>
      <Version>
        <name>bsf</name>
        <created>2009-04-05</created>
        <revision>3.0-beta3</revision>
      </Version>
    </release>
    <release>
      <Version>
        <name>bsf</name>
        <created>2009-10-1</created>
        <revision>3.0</revision>
      </Version>
    </release>
    <release>
      <Version>
        <name>bsf</name>
        <created>2010-24-06</created>
        <revision>3.1</revision>
      </Version>
    </release>
    <repository>
      <SVNRepository>
        <location rdf:resource="http://svn.apache.org/repos/asf/commons/proper/bsf/trunk/"/>
        <browse rdf:resource="http://http://svn.apache.org/viewcvs.cgi/commons/proper/bsf/"/>
      </SVNRepository>
    </repository>
  </Project>
</rdf:RDF>
