Okay, I saw it now several times that in ontology specifications the ontology developers redefine statements, which came originally from other ontologies. Often they marked this in a comment as OWL-DL Compliance. They did this to redefine, e.g. foaf:Person, foaf:maker or several annotation properties, they used for annotating their ontology specification. I don't believe that it is a good design to redefine concepts/properties, which came originally from another ontology. In particular, these concepts and properties are often 'very important', because they are taken from upper (e.g. FOAF) or meta (e.g. OWL) ontologies. I believe that by using owl:imports, it is possible to import the affected ontologies and hence no redefinitions are needed and OWL DL Compiliance should also be fine, because it taken now place at the whole graph (incl. the imports). I think importing other ontologies is no real problem, because they are often not very big (we are at the T-Box level!).
Okay, for clarification: Why do we have to include existing concepts/properties, e.g. foaf:Person, foaf:maker, dc:date, dc:description, dc:title etc., in our ontology specification, although they are already existing in their own ontolgies?
You can nearly look at every 'well-defined' ontology (marked as OWL-DL Compiliance), e.g. FOAF or SIOC -they are including these concepts/properties, but it is not really clear to me, why they do that and don't use owl:imports instead.
In addition to what Dave Reynolds said:
Many ontologies that exist in the wild are not OWL DL compliant, and importing them will lead to a DL-non-compliant ontology. This is particularly true for ontologies that have been defined as RDFS vocabularies, without taking OWL into consideration. One contributor to DL non-compliance in RDFS vocabularies are property declarations of the form:
OWL (1/2) DL needs ns:p to be declared as one of owl:ObjectProperty, owl:DatatypeProperty or owl:AnnotationProperty. The problem now is which kind of OWL-style property is ns:p intended to be? rdfs:range axioms for declared properties can be helpful to find out. But, firstly, range axioms cannot be expected to always exist and, secondly, they don't have to necessarily be a safe or an appropriate criterion for distinction, e.g. if the range is rdfs:Resource or rdfs:Class.
Additionally, even if the original intention of the author is known, it may still depend on the usage context or on pragmatic considerations which kind of property declaration to use. For example the original specification of DCTerms at  is an RDFS vocabulary specification with all of its many property declarations given as the one above. I have seen DC-terms being re-defined as annotation properties in some situations, and as data- or object properties in other situations, and I remember having heard people giving reasonable arguments for both options. DC-terms even has a few properties, such as dcterms:title , that can have both individuals and data values as their values. So one is forced to make a decision for either object or data property in OWL DL.
To summarize, if you care about OWL DL-compliance, it is not an option to simply import the whole DC-terms ontology into your OWL DL ontology. It is also not perfectly possible to give a single generally-accepted "OWL DL-repaired" version of the original DC-terms ontology, and then import that. So using "inline-re-definitions" of DL-compliant variants for those DC-terms that you actually need within your OWL DL ontology seems to me a reasonable practice. And this discussion holds for RDF vocabularies with property declarations in general.
Indeed you don't normally need to redefine concepts from another ontology in your own. Typically you would just refer to that concept, or import the whole ontology. In general reuse is better than redefinition so if there is no good reason to redefine the concept then don't do it.
However, the issue of DL compliance is a genuine one. Specifically in the case of FOAF then FOAF is not DL compatible (e.g.
Danbri has had various attempts at making FOAF be DL compliant, and thus importable into other DL compliant ontologies. For example,
answered 27 Jun '10, 20:21
Actually I think it is important to be able to redefine other ontology terms for your own purposes. This is essential for decentralising authorship and publication of ontologies. Each ontology provider needs to ensure that what they create is consistent and has the computational requirements they require. They can't wait to convince every other ontology author to do the same.
Basically when you redefine other ontology's terms in your own ontology you are stating: "If you want to work with my ontology and with instance data that has these terms in then these are the additional constraints that are necessary for compatibility".
answered 27 Jun '10, 15:07