<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl"?>
<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/">
<!--
 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.

-->
  <Project rdf:about="http://logging.apache.org/chainsaw">
    <created>2007-02-09</created>
    <license rdf:resource="http://usefulinc.com/doap/licenses/asl20" />
    <name>Apache Chainsaw</name>
    <homepage rdf:resource="http://logging.apache.org/log4j/docs/chainsaw.html" />
    <asfext:pmc rdf:resource="http://logging.apache.org" />
    <shortdesc>Apache Chainsaw is a GUI log viewer.</shortdesc>
    <bug-database rdf:resource="http://issues.apache.org/bugzilla" />
    <mailing-list rdf:resource="http://logging.apache.org/site/mailing-lists.html" />
    <download-page rdf:resource="http://logging.apache.org/site/binindex.cgi" />
    <programming-language>Java</programming-language>
    <category rdf:resource="http://projects.apache.org/category/network-client" />
    <repository>
      <SVNRepository>
        <location rdf:resource="http://svn.apache.org/repos/asf/logging/chainsaw/trunk/"/>
        <browse rdf:resource="http://svn.apache.org/viewvc/logging/chainsaw/trunk/"/>
      </SVNRepository>
    </repository>
  </Project>
</rdf:RDF>
