<!doctype html>
<html lang=''>
<head>
   <meta charset='utf-8'>
   <meta http-equiv="X-UA-Compatible" content="IE=edge">
   <meta name="viewport" content="width=device-width, initial-scale=1">
   <link rel="stylesheet" href="styles.css">
   <!-- these are needed for the menu bar -->
   <script src="js/jquery.js" type="text/javascript"></script>
   <script src="js/script.js" type="text/javascript"></script>
   <title>DOAP project files</title>
</head>
<body>

<!-- Page Title -->

<div id="logo"><h1><div style="padding-top: 30px;">DOAP project files</div></h1></div>

<div id='cssmenu'>
<ul>
   <li><a href='.'><span>Home</span></a></li>
   <li><a href='committees.html'><span>Committees</span></a></li>
   <li><a href='projects.html'><span>Projects</span></a></li>
   <li><a href='releases.html'><span>Releases</span></a></li>
   <li class='last'><a href='timelines.html'><span>Timelines</span></a></li>
   <li style="background: none !important"><input type="text" style="margin-top: 20px;" onkeypress="checkKeyPress(event, this);" placeholder="Search..."/></li>
   <li style="float: right;" class='active'><a href='about.html'><span>About</span></a></li>
   <!--li style="background: none; float: right;"><a href="edit/"><img title="Edit project data" style="vertical-align: middle; margin-top: -5px; height: 24px; width: 24px;" src="images/edit.png"/></a></li-->
</ul>
</div>

<!-- CONTENT -->

<h2>DOAP Files</h2>
<div>
   <figure>
     <blockquote><p><b>DOAP (Description Of A Project)</b> is an RDF Schema and XML vocabulary to describe software projects, in particular free and open source software.</p></blockquote>
     <figcaption>First sentence in <cite><a href="https://en.wikipedia.org/wiki/DOAP" target='_blank'>Wikipedia DOAP article</a></cite></figcaption>
   </figure>
<p>By creating a DOAP file for
your project and adding it to <a href="https://github.com/apache/comdev-projects/blob/trunk/data/projects.xml" target='_blank'>the ASF projects feed</a>, you can provide essential details about your project which
can then be presented to various audiences in various formats, along
with information about other ASF projects.</p>

<p>This site (<a href="https://projects.apache.org/">projects.apache.org</a>)
is generated from DOAP files that each project maintains individually. If a 
project hasn't provided a <a href="https://github.com/apache/comdev-projects/blob/trunk/data/projects.xml" target='_blank'>link to their DOAP file</a>, it won't appear on this site. 
If the project you're interested in isn't here, send them a link to this page,
and tell them to create a DOAP file and get themselves listed!</p>

<h4>More info on DOAP at ASF</h4>
<ul>
<li><a href="guidelines.html">Guidelines for creating an ASF DOAP file</a></li>
<li><b>TL;DR <a href="create.html">Create an ASF DOAP</a> (Form-based wizard)</b></li>
<li><a href="doapfaq.html">DOAP FAQ</a></li>
</ul>

<h4>External References</h4>
<ul>
<li><a href="https://github.com/edumbill/doap/wiki" target='_blank'>the DOAP Project</a></li>
<li><a href="http://oss-watch.ac.uk/resources/doap" target='_blank'>Project Catalogues and Project Descriptors using DOAP</a></li>
</ul>

<h4>History</h4>
<p>During October 2005 a wide ranging discussion was <a href="https://lists.apache.org/list?site-dev@apache.org:2005-10:DOAP" target='_blank'>held on the site-dev mailing list</a> aimed at arriving at an archictecture and tools that would allow us to create a project directory web site. A key part of the plans, and one of the biggest stumbling blocks, was the selection of a suitable format of information file that would be the key part.</p>
<p>The result of the discussion was a consensus to use <a href="https://github.com/edumbill/doap/wiki" target='_blank'>DOAP</a> - "Description Of A Project" which is an RDF based format. The decision was taken for the following reasons:</p>
<ul>
<li>use of an existing format was felt to be important</li>
<li>it was becoming more commonly used and therefore had a growing base of support</li>
<li>being designed to be extensible, it can be easily adjusted to our needs</li>
</ul>
</div>

<!-- Footer -->

<div id="footer">
   Managed by the <a href="https://community.apache.org">Apache Community Development Project</a>.<br/>
   Copyright&copy; the Apache Software Foundation. Licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a><br/>
   Apache&reg; and the Apache logo are trademarks of The Apache Software Foundation.
</div>
</body>
</html>
