OMDoc/document ontology

The document ontology behind OMDoc. Please see the discussion page (linked above) for questions and discussions!

Resources
the OWL implementation of the ontology itself, in the OMDoc Subversion repository

Development policy
These above-mentioned files form the normative implementation of the ontology. They must not be edited directly with an ontology editor, as that would change the structure of the file and complicate collaboration via Subversion. Instead, use ontology editors for modeling, prototyping and verifying only, but make your changes with a plain text editor.

There is an outdated UML diagram, which covered an earlier state of the ontology for designing, explaining and discussing. It can be opened with ArgoUML. See also Expressing OWL in UML.

Please file bug tickets in the OMDoc Trac, under the component that is named SysOntology for historical reasons.

Background
This is an attempt at formalizing the document ontology of OMDoc in OWL-DL. Before that, the document ontology of OMDoc, i.e. the ontology that describes the data model behind the OMDoc file format, has only been implicitly given in terms of some structural properties of the XML schema (encoded in RelaxNG) and many human-readable interpretations and recommendations in the OMDoc specification.

Documentation
Comments are contained in the files themselves. A quick overview is given in the SWiM [/projects/swim/pubs/tr-swim.pdf tech report]. It shall serve as a transitional documentation. We may eventually reimplement the ontology in a self-documenting way in OMDoc.

Modular Ontology
The system ontology is modularized in the same way as the Relax NG XML schema for OMDoc (see appendix D of the OMDoc spec) to facilitate cooperative development and future deployment for special applications. So far, we have:


 * omdoc.owl (main file that owl:imports all modules)
 * base.owl (base classes)
 * st.owl (module ST, almost complete, imports base)
 * pf.owl (module PF, very basic, imports st)

See also: More notes on modularity.

Tools
Protégé, SWOOP or the NeOn Toolkit are recommended for browsing and validating the ontology.

Contributors
… are acknowledged in the source files.