Make owl:ObjectProperty a subclass of owl:Class too

Making owl:ObjectProperty a subclass of owl:Class alows any object property to be the object of the owl:range and the owl:domain predicate. In "Paul takes Paul's car to reach Paul's office" therefore the predicate "takes" can be used as a owl:range and a owl:domain. Moreover, members of object properties can be used as anonymous individuals.
The following statement should be thus become possible in OWL2 syntax:

DataPropertyAssertion (rdf:ID (ObjectPropertyAssertion (:takes :Paul :PaulsCar) _:L1)
ObjectPropertyAssertion (:toReach _:L1 :PaulsOffice)

Semantic Web does not provide reference to object properties

Semantic web knowledge representation is build on triples, which represent subject - predicate - object. Semantic web Standards are using those triples as atomic building blocks for their own specification and any ontology. With triples knowledge can be specified like in the sentence: "Paul is a Person". "Paul" is the subject, "is a" is the predicate, "Person" is the object. Subject and object are considered as entities while predicates are considered as object properties are connecting those entities. From this perspective representation of every knowledge is quiet similar to the usage of early days' entity-relationship-diagrams. Also some shortcomings seem to be adopted. Sentences like: "Paul takes Pauls Car to reach Pauls Office" cannot be described easily. It requires an intermediate, unnatural entity like "Pauls Vehicle Choice" and many sentences: "Pauls Vehicle Choice chosen by Paul", "Pauls Vehicle Choice is Pauls Car", "Pauls Vehicle Choice reaches Pauls Office". Instead of one sentences there are three sentences for describing the equivalent problem. Isn't there an alternative approach possible?
Subscribe to OWL2