<?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#"
         xmlns:foaf="http://xmlns.com/foaf/0.1/">
  <Project rdf:about="http://xmlgraphics.apache.org/commons/">
    <created>2006-04-17</created>
    <license rdf:resource="http://usefulinc.com/doap/licenses/asl20"/>
    <name>Apache XML Graphics Commons</name>
    <homepage rdf:resource="http://xmlgraphics.apache.org/commons/"/>
    <asfext:pmc rdf:resource="http://xmlgraphics.apache.org"/>
    <shortdesc>Common components for Apache Batik and Apache FOP</shortdesc>
    <description>Apache XML Graphics Commons is a library that consists of several reusable components used by Apache Batik and Apache FOP. Many of these components can easily be used separately outside the domains of SVG and XSL-FO. You will find components such as a PDF library, an RTF library, Graphics2D implementations that let you generate PDF and PostScript files and much more.</description>
    <mailing-list rdf:resource="http://xmlgraphics.apache.org/mail.html"/>
    <download-page rdf:resource="http://xmlgraphics.apache.org/commons/download.html"/>
    <programming-language>Java</programming-language>
    <category rdf:resource="http://projects.apache.org/category/graphics"/>
    <asfext:implements>
      <asfext:Standard>
        <asfext:title>PostScript</asfext:title>
        <asfext:body>Adobe Systems Incorporated</asfext:body>
        <asfext:id>PS</asfext:id>
        <asfext:url rdf:resource="http://partners.adobe.com/public/developer/ps/index_specs.html"/>
      </asfext:Standard>
    </asfext:implements>
    <asfext:implements>
      <asfext:Standard>
        <asfext:title>Extensible Metadata Platform (XMP)</asfext:title>
        <asfext:body>Adobe Systems Incorporated</asfext:body>
        <asfext:id>XMP</asfext:id>
        <asfext:url rdf:resource="http://www.adobe.com/products/xmp/index.html"/>
      </asfext:Standard>
    </asfext:implements>
    <release>
      <Version>
        <name>Current release (stable)</name>
        <created>2012-10-20</created>
        <revision>1.5</revision>
      </Version>
      <Version>
        <name>Previous release (stable)</name>
        <created>2010-07-07</created>
        <revision>1.4</revision>
      </Version>
      <Version>
        <name>Previous release (stable)</name>
        <created>2008-06-11</created>
        <revision>1.3.1</revision>
      </Version>
      <Version>
        <name>Previous release (stable)</name>
        <created>2008-03-07</created>
        <revision>1.3</revision>
      </Version>
      <Version>
        <name>Previous release (stable)</name>
        <created>2007-07-21</created>
        <revision>1.2</revision>
      </Version>
      <Version>
        <name>Previous release (stable)</name>
        <created>2006-12-22</created>
        <revision>1.1</revision>
      </Version>
      <Version>
        <name>Previous release (stable)</name>
        <created>2006-04-17</created>
        <revision>1.0</revision>
      </Version>
    </release>
    <repository>
      <SVNRepository>
        <location rdf:resource="http://svn.apache.org/repos/asf/xmlgraphics/commons/trunk/"/>
        <browse rdf:resource="http://svn.apache.org/viewcvs.cgi/xmlgraphics/commons/trunk/"/>
      </SVNRepository>
    </repository>
    <maintainer>
      <foaf:Person>
        <foaf:name>Jeremias Maerki</foaf:name>
        <foaf:mbox rdf:resource="mailto:jeremias@apache.org"/>
      </foaf:Person>
    </maintainer>
  </Project>
</rdf:RDF>
