Ontology modules and namespaces

Hi,

It is becoming somewhat popular for large ontologies to be split into a core ontology file and module ontology files (which import the core). Normally each module then gets its own namespace for the terms defined in it. I was wondering though if that is too complicated for users of the ontologies. I have seen confusion of "sioc" and "sioct" (the prefixes for the SIOC core and the SIOC Types module namespaces) and when such vocabularies get higher adoption by people not so well versed with ontologies I can see it happen a lot more often.

So as an alternative I want to explore the idea of just using one namespace shared between the core and the modules. The advantage would be not having to guess which namespace to use. One disadvantage for the developer(s) of the ontology is that a "local name" can only be used in one of the modules or core, you can't use the same "word" under a different namespace with a different meaning. Another disadvantage is that if you want the terms to dereference to the ontology files they have been defined in then you can only do that with a "/" namespace (and you have to set up lots of redirects).

My questions: What do you think of that idea? Can you see any other advantages or disadvantages? Do you think several namespaces are not confusing at all? And what are the main advantages to splitting up ontologies into modules other than being easier to organise? Do they justify a higher burden on the ontology users?

Thanks,
  Simon

Received on Monday, 26 October 2009 14:25:45 UTC