Protege4NamingAndRendering

From Protege Wiki
Revision as of 06:42, July 28, 2008 by Nickdrummond (talk | contribs) (Initial page)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Naming and rendering of entities in Protege 4.x

This page describes the various options for naming entities in an ontology.

The functionality on this page will be made available in build 65


Back to Protege4UserDocs


Note on naming in OWL ontologies

OWL, being a semantic web language identifies all named things (entities) uniquely with URIs (Uniform Resource Identifiers).

Examples of URIs include URLs (web addresses), URNs and others.

As URLs with fragments are often used, it is worth quickly explaining the terminology used later on:

base URI the (leftermost) part of the URI that will likely be common across multiple entities (eg http://www.co-ode.org/ontologies/examples/myont.owl#). URI fragment the part of a URI after the delimiter # (we often broaden this to include the last path element if no fragment is available).

It is common for a base URI to be used across many entities with each having its own unique fragment.

Naming of entities in Protege 4.x

Because URIs will often be fairly long strings, Protege 4.x uses a renderer to show a shortened form of the name.

The renderer can be changed in the preferences and can show the fragment or ending part of the URI, or can show a name provided by an annotation on the entity.

Until build 65, new entities were created with respect to the renderer settings, ie:

  • if the fragment renderer was selected, new entities would be given a URI using the base of the active ontology and a fragment provided by the name the user entered.
  • if the annotation values renderer was selected, new entities would be given:
    • a URI using the base and a "meaningless" numeric fragment provided by the system time
    • an annotation using the preferred URI and language containing the name the user entered

This was not sufficient for several reasons:

  1. the base URI was always the active ontology
  2. the user may not want to automatically create meaningless URIs even if the label renderer was being used
  3. there was no control over the form of the IDs being generated

New entity creation preferences

A new set of preferences has been created.

TODO screenshot