Re: [ontolog-forum] Asserting subclasses of open ranges or domains

John, Pat and Sampo

Thanks to all your insightful answers. I'll try to digest what I can bring
home practically, but I must say I'm particularly happy with Pat's answer.

1. There is quite a difference to make between concepts in ontologies
strongly defined by domain experts, and targeted at feeding reasoners (e.g.,
bio-medical or legal ontologies), and lightweight ontologies such as FOAF,
VCard, Dublin Core, Geonames ... which are mainly targeting interoperability
of data, and of which meaning (if not formal semantics) emerge from usage
and population. I can't define formally what a Person is, but I can say that
you and I are some instances.

2. For the latter said ontologies, the main objective is to provide
guidelines for applications harvesting and managing data. The actual formal
semantics of those models is next to nothing, but implementations can
reasonably leverage them on the basis of a common sense interpretation. For
example the thousands of different data models to represent a person can be
re-engineered as so many specifications of the generic class foaf:Person,
therefore allowing a shallow, but efficient level of data interoperability.

3. Coming back to the initial issue, I conclude that there is no more, no
less semantics nor potential usability in declaring skos:Concept to be in
the range of dcterms:subject, than to declare foaf:Person to be a subclass
of foaf:Agent. "Dont acte"

For some other ill-defined property ranges in the Semantic Web popular
ontologies, another path would be to use enumerated classes, or in a more
flexible way, to indicate a published vocabulary maintaining a reference
enumeration. For example when LoC publishes later this year the
authoritative ISO 639-2 list of languages as a SKOS Concept Scheme, the
range of dcterms:language could be restricted to the values in such a list
(using e.g., a restriction on the value of skos:inScheme). This would avoid
Dublin Core to go through the painful task of defining formally the class
dcterms:Linguistic System which is the current specified range - with the
same lack of definition as foaf:Agent. Referring to some authority is
certainly the best way to deal with the issue here. We (DC) don't know what
a language is, go ask ISO 639-2 folks, apparently they know because they are
able to provide a list.

Please consider this is not a bait to start a flame war on what is and what
is not a language or linguistic system - you can start it, but count me out
:))

Thanks to Dr. Sowa for the good reminder on role vs type. This is something
I have often to explain to customers, and yes, appliance is a good candidate
for role type. I put this example out of my hat with no deep thought about
it, so thanks for the lesson :)
I guess taking the dcterms:language example would have been more to the
point.

Bernard

-- 
Bernard Vatant
Senior Consultant
Vocabulary & Data Engineering
Tel:       +33 (0) 971 488 459
Mail:     bernard.vatant@mondeca.com
----------------------------------------------------
Mondeca
3, cité Nollez 75018 Paris France
Web:    http://www.mondeca.com
Blog:    http://mondeca.wordpress.com
----------------------------------------------------

Received on Thursday, 10 September 2009 08:24:28 UTC