In the first place,
rdf:type is used as a predicate. One could for instance claim that Tim BL is a person:
<http://www.w3.org/People/Berners-Lee/card.rdf#i> rdf:type foaf:Person .
The latter two would be typically used as objects, to signify that something is a class (a group of resources with similar traits). In fact, simply stating that
A rdf:type B .
B is a class (more specifically, an
B rdf:type rdfs:Class .
So we can infer from the first statement that
foaf:Person is an
rdfs:Class; this is also stated explicitly in the RDF version of the FOAF ontology.
owl:Class is a subclass of
rdfs:Class. This has to do with restrictions on OWL Lite and DL reasoning, where some RDFS classes would not be 'proper' OWL classes. If you need OWL DL reasoning, you should use
26 Jul '10, 12:59