In part 1th of this series, I presented a project to create a DOAP (description of the project), a Rdf/xml glossary that describes open source projects. DOAP will meet their needs for project maintainers who need to register software on countless Web sites, and for anyone seeking to exchange such information. The article lists the work that has been done in this area and defines the boundaries of the project.
This time, I will extract a set of terms that are included in the glossary and discuss the difficulties inherent in stipulating such terminology. I will illustrate the implications of the design of the glossary by sharing the good goals of DOAP descriptions globally.
Condensed terminology
Table 1 lists a survey of meta data terminology used in different software catalog Web sites and open source metadata frameworks. Some of these terms are roughly categorized-for example, "principal developer" and "maintainer" are equivalent. I have also removed terminology related to the software version, which is not considered at this stage of DOAP development. As a rough review of the current terminology, this table is useful.
Table 1. Common metadata terminology in the open source software directory
Terms |
Freshmeat |
OMF |
Advogato |
Gnome |
Sourceforge |
kde-apps.org |
Bug Tracker |
? |
? |
? |
Y |
Y |
? |
Category |
Y |
Y |
? |
Y |
Y |
? |
Creation Date |
Y |
Y |
? |
Y |
Y |
? |
CVS Repository |
? |
? |
? |
Y |
Y |
? |
Demo site |
Y |
? |
? |
? |
? |
? |
Description |
Y |
Y |
Y |
Y |
? |
Y |
Development stage |
Y |
? |
? |
? |
Y |
? |
Download page |
Y |
? |
? |
Y |
Y |
Y |
Freshmeat URL |
Y |
? |
Y |
? |
? |
? |
Homepage |
Y |
? |
Y |
Y |
Y |
Y |
Intended audience |
Y |
? |
? |
? |
Y |
? |
License |
Y |
Y |
Y |
? |
Y |
Y |
Mailing list |
? |
? |
? |
Y |
Y |
? |
Mirror site |
Y |
? |
? |
? |
? |
? |
Natural language |
? |
Y |
? |
? |
Y |
? |
Operating system |
Y |
? |
? |
? |
Y |
? |
Programming language |
Y |
? |
? |
? |
Y |
? |
Purchase link |
Y |
? |
? |
? |
? |
? |
Relationships |
? |
? |
Y |
? |
Y |
? |
Rel Contributor |
? |
? |
Y |
? |
? |
? |
Rel Developer |
? |
? |
Y |
? |
Y |
? |
Rel Documenter |
? |
Y |
Y |
? |
? |
? |
Rel Helper |
? |
? |
Y |
? |
? |
? |
REL Lead Developer |
? |
Y |
Y |
Y |
Y |
? |
Screenshots |
Y |
? |
? |
Y |
? |
Y |
Short description |
Y |
? |
? |
Y |
Y |
? |
Title |
Y |
Y |
Y |
Y |
Y |
Y |
Version |
Y |
Y |
? |
Y |
Y |
Y |
In addition to the terms listed in Table 1, there are several other terms that are commonly used in open source projects (most of which are more social) to consider:
Wikis: Typically used to store development documentation.
Other types of source code libraries: Subversion, Arch, and BitKeeper are often used in addition to CVS.
Other project roles: At a minimum, include translators and testers.