We create a standard for a data exchange format in form of an RDF graph. We would like to re-use existing class entities of external ontologies that fit our needs – except that they are too general and can be related to entities of other external classes too freely.

Thus, does it make sense to say in our standard

Use http://example.com/SomeClass for that but relate it to http://example.com/SomeOtherClass only to express <some explanation>.

Or, is it necessary to define new entity classes for that in our own namespace, possible with is-a relations to the external classes?

To give an example: We must describe physical experiments in RDF. There are two classes, “process” and “sample”. “process” may be hierarchically connected to sub- and super processes. The external ontology allows to connect “sample” with every ”process”, but we like to restrict the connection only to processes that represent a concrete run of an experimental setup. Can we still take the external class URIs and refine their use in our specification?

1 Answer 1


This is what rdfs:subClassOf/rdfs:subPropertyOf is for. So yes, recreate these classes in your own namespace, narrowing the meaning.

If you can express the restriction in terms of an owl:equivalentClass on an owl:Restriction the inference engine will find those classes in terms of the external ontology that also fit your (narrower) meaning. You'd still need to use your namespace to describe your idea of the classes.

Using just rdf-schema you'd probably want an alignment dataset where you mention those individuals (instances of external classes, what you call external entities) that fulfil your narrower definition.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.