Hi,
I fully agree with Thomas and the other replies given here. Let me give
some other views on these topics (partly overlapping with what was said
before). It's important to understand these things to get the subclass
of/instance of thing right -- and it would be extremely useful if we
could get this right in our data :-)
What is a class and what is an item is often a matter of perspective,
and it is certainly accepted in the ontology modelling community that
one thing may need to be both.
The important thing is that "subclass of" is a relation between
*similar* things (usually of the same type):
* "sports car" subclass of "car"
* "Porsche Carrera" subclass of "sports car"
* "Porsche 356" subclass of "Porsche Carrera"
Use "A subclass of B" if it makes sense to say "all A's are also
B's" as
in "all Porsche Carreras are sports cars".
In contrast, "instance of" is between things that are very *different*
in nature:
* "Douglas Adams" instance of "human"
* "human" instance of "species"
Subclass naturally forms chains, like in my example. You can leave out
some part of the chain and the result is still meaningful:
* "Porsche Carrera" subclass of "car" [makes sense]
For instance of, this does not work:
* "Douglas Adams" instance of "species" [bogus]
So if you want to organise things in a hierarchy (specific to general),
then you need "subclass of". If you just describe the type of one thing,
then you need "instance of". It is perfectly possible that one thing
participates in both types of relationships.
In addition to these general guidelines, I would say that a
well-modelled ontology should be organised in "levels": whenever you use
instance of, you go to a higher level; if you use subclass of, you stay
on your current level. Each thing should belong to only one level. Here
is an example where this is violated:
* "Porsche Carrera" subclass of "sports car"
* "Porsche 356" subclass of "Porsche Carrera"
* "Porsche 356" instance of "sports car"
Each of these makes sense individually, but the combination is weird. We
should make up our mind if we want to treat Porsche 356 as a class (on
the same level as sports car) or as an instance (on a lower level than
sports car), but not do both at the same time. I think "subclass of"
usually should be preferred in such a case (because if it is possible to
use subclass of, then it is usually also quite likely that more specific
items occur later [Porsche 356 v1 or whatever], and we really will need
subclass of to build a hierarchy then).
Cheers,
Markus
On 25.09.2014 20:10, Thomas Douillard wrote:
Hi, this is a long discussion :) Is is allowed by OWL2
notion called
"Punning".
The rationale is that Hydrogen is a chemical elements, and that the
chemical element is not a subclass of atom. Rather a chemical elements
is a type of atom, so chemical elements is a metaclass : a class of
class of atoms.
_______________________________________________
Wikidata-l mailing list
Wikidata-l(a)lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikidata-l