Re: [tdwg-tag] Re: [Tdwg-guid] Jena examples?
![](https://secure.gravatar.com/avatar/327b654b20b643aee9aba05af863dc66.jpg?s=120&d=mm&r=g)
Hi Kevin,
Thanks for your thoughts. It does seem a bit of a hack the way I am suggesting - more elegant solutions are welcome but I am not sure we can get the hierarchy in the namespace.
The classes would still be part of a regular inheritance hierarchy but you wouldn't see it in the namespace.
The only way you would see the hierarchy is if you had namespaces that went something like this:
http://rs.tdwg.org/ontology/BaseThing/MyClass/MySubclass/MySubSubClass/mypro...
Kind of like an xpath down the hierarchy for every concept. I am not sure how you would then handle targetNamespaces in XML Schema.
I believe most people in the semantic world seem to have a namespace per ontology and no indication of the class structure within the ontology from the namespaces.
I am curious about what a huge list of classes is - I have a general question in the back of my mind about how big people think the TDWG ontology needs to be. But that is a question for another day!
Thanks,
Roger
Kevin Richards wrote:
My only thought is that it seems a bit like a hack and may be too restrictive when trying to categorise classes. Ie it looks like you intend to have ALL RDF classes under the namespace http://rs.tdwg.org/ontology/ (correct me if I am wrong). This will result in a huge list of classes at the one level, and hence, again diminishing the human readability of the ontology. I wouldnt know, but it sounds like it also might cause ontology management headaches later on?
Kevin
Roger Hyam roger@tdwg.org 09/26/06 8:49 PM >>>
Hi Everyone,
In the not very comforting words of software vendors these are "known issues" and will be resolved in the next release ;)
But seriously.The namespaces in the TCS names vocabulary do not resolve because we didn't have a policy at that time. The use if entity references was 'borrowed' from an example (probably Protege output) and I wouldn't mind doing away with it.
I have been thinking long and hard about the namespace issues in the last few weeks and believe I have a solution that I will propose at TDWG
St Louis. It would be good to have face to face discussions about it and
make a decision there.
To briefly summarize: The issue is getting a namespace convention that will work across technologies. Suppose we want to serve data in a technology that "isn't very good at namespaces". As an example - if we were to have separate namespaces for TaxonNames, TaxonConcepts, Specimens, Metadata, GeospatialStuff, Collections and we wanted to validate a document using XML Schema that contained all these things it would require 6 independent schemas each with it's own target namespace.
If you have ever tried to debug something like this you will know what total madness it is. We can't just abandon XML Schema because it would rule out not only our existing technologies but GML and probably others... It may also be desirable to express our ontology in things that aren't even XML.
The only solution I can think is that for the TDWG Ontology we should have a single formal namespace of: http://rs.tdwg.org/ontology/
Within the ontology we have a convention for concepts that goes like this.
A class would be: http://rs.tdwg.org/ontology/tdwg123_MyClass
where 123 is the internal id of the class and MyClass is the class name
A property in MyClass would be: http://rs.tdwg.org/ontology/tdwg123_myProperty
where 123 is the *class* id not the property id and myProperty is the property name.
An instance would be http://rs.tdwg.org/ontology/tdwg123_789
where 123 is the *class* id and 789 is the instance id (there is nothing
stable about an instance that we could use as an identifier unless we force a label property and make it immutable).
In a way this is using the part before the _ as a pseudo namespace.
I think this hits the balance between something that is technology independent and something that will produce reasonably human readable documents.
It is radical which is why I thought it would be good to talk about it.
Any one got an alternative?
We have to have a solution for this by the end of the St Louis meeting as it is critical path for ontology work.
Most grateful for you patience and any thoughts you have.
Roger
Sally Hinchcliffe wrote:
Hi Steve /all
We took that syntax straight from Roger's RDF/TCS examples. I think Roger was going to do more work on tidying up those sorts of loose ends. I have to admit that my knowledge of RDF and particularly RDFS is pretty superficial
We can switch to either the shorter format or the safer fully qualified URI - what do people think would be better?
Sally
By the way, the IPNI example you cite has an error:
<tn:nomenclaturalCode rdf:resource="&tn;#botanical" />
Many RDF/XML parsers will see &tn; as an entity which cannot be resolved. Since I don't have a copy of the ontology (and http://tdwg.org/2006/03/12/TaxonNames does not resolve), I can only
take
a guess that it should look something like:
<tn:nomenclaturalCode rdf:resource="tn:botanical" />
However, using XML namespace prefixes in resource references inside RDF/XML documents tends to cause problems because not all RDF/XML parsers are smart enough to dereference the namespace prefix and
build a
fully-qualified resource URI. A safer form of the above would be the
fully qualified resource URI which looks like:
<tn:nomenclaturalCode
rdf:resource="http://tdwg.org/2006/03/12/TaxonNames/botanical" />
-Steve
*** Sally Hinchcliffe *** Computer section, Royal Botanic Gardens, Kew *** tel: +44 (0)20 8332 5708 *** S.Hinchcliffe@rbgkew.org.uk
TDWG-GUID mailing list TDWG-GUID@mailman.nhm.ku.edu http://mailman.nhm.ku.edu/mailman/listinfo/tdwg-guid
participants (1)
-
Roger Hyam