I think it is possible to use properties to describe rdfs classes. However, is it really a good practice in term of semantics.
As an example, consider that we have:
:Animal a rdfs:Class. :Lion a rdfs:Class. :Lion rdfs:subClassOf :Animal.
Now consider that we want to state something about all lions; for example that they have 30 teeth and covered with fur:
:countOfTeeth a rdf:Property. :Lion :countOfTeeth "30"^^xsd:Integer. :coveredWith a rdf:Property. :Lion :coveredWith :fur.
Note that I am stating properties describing the class itself, i.e., not its instances.
- I find nothing syntactically wrong with this. Right?
- Now semantically: Is that a common practice? What are the implications of such way of modelling?
- Now how about instances of
:Lion, will this knowledge be applicable?
- Any standard W3C resources?
Please note that I am questioing the usage of properties to describe classes in this way; not whether this way of modelling knowledge about lions' teeth and fur is the best.
I am talking from a vocabulary building perspective. The interpretation is pretty much depending on the application side. Hence, solutions like making
:Lion a subclass of an anonymous restriction is not quite what I need.