Skip to content

Naming conventions for the RDF/OWL #112

@rickskyy

Description

@rickskyy

There were discussions about naming conventions for Data properties, Object properties and Classes used in the development of the odml ontology. Currently we are using different naming schemes (e.g. odml:terminology, odml:name, odml:hasDocument etc.)
In this issue I want to share some resources I found about the topic and propose to stick to the described rules below.

Here is the description of Ontology Best Practices.
http://wiki.opensemanticframework.org/index.php/Ontology_Best_Practices#cite_note-odp3-3

The page contains links to various resources, tutorials and software (e.g. Protege http://protege.stanford.edu/ - open-source ontology editor).

In the chapter Naming and Vocabulary Best Practices there is the detailed description of naming conventions. Here are some important statements:

  1. Use CamelCase notation for these classes. Name all concepts as single nouns.
  2. Name all properties as verb senses (so that triples may be actually read); e.g., hasProperty. Try to use mixedCase notation for naming these predicates.
  3. Try to assign logical and short names to namespaces used for your vocabularies, such as foaf:XXX, umbel:XXX or skos:XXX, with a maximimum of five letters preferred.
  4. Provide inverse properties where it makes sense, and adjust the verb senses in the predicates to accommodate. For example, <Father> <hasChild> <Janie> would be expressed inversely as <Janie> <isChildOf> <Father>.
  5. Give all concepts and properties a definition. In its own ontologies, Structured Dynamics uses the property of skos:definition, though others such as rdfs:comment or dc:description are also commonly used.

Following the rules described I think we should rename all odml properties to mixedCase with has prefix like odml:name -> odml:hasName, odml:doc-version -> odml:hasDocVersion, odml:terminology -> odml:hasTerminology etc. As I understood by exploring resources the naming is not influenced by the type of the property (Object, Data or Annotation properties).

Here is also a useful resource: "The Practical Guide to Building OWL Ontologies using Protege 4"
http://owl.cs.manchester.ac.uk/publications/talks-and-tutorials/protg-owl-tutorial/

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions