On 2/5/14 9:35 AM, Mike Bennett wrote:
Hi Kingsley,
This is precisely the sort of insight I was looking for when
considering how the requirements and approaches for ontology
re-use might differ between the worlds of semantic tech
applications, linked data and big data. Horses for courses is
exactly right :)
I also just realized I made a mistake - I was confusing
owl:sameAs with owl:equivalentClass. Sorry about that.
So... (responses interleaved)
On 02/02/2014 21:40, Kingsley Idehen wrote:
On
2/2/14 10:11 AM, Mike Bennett wrote:
The problem with using owl:sameAs is
that you have immediately changed the nature of your model:
from a model of concepts to a model of words. That is, from an
ontology to a vocabulary.
Hmm..
When you put Linked Data in the mix its about terms rather than
words i.e., terms being words that have the duality of
denotation and reference baked in. Thus, you can use owl:sameAs
to express coreference in ABox oriented statements about
entities.
I find the term "term" a little slippery in its many applications.
Presumably then in Linked Data "term" refers to a label (with a
URI) that denotes an individual in the world or a fact about that
individual?
I would say that it's about HTTP URIs providing a digital rendition
of the functionality delivered by a Term. Basically, a Term differs
from a Word by way of duality comprised of:
1. dentotation
2. definition/description reference.
As you can see the subtlety that distinguishes a Word and a Term is
tricky in natural language, so imagine the havoc its unleashed in
the digital realm of the World Wide Web under the heading
"HttpRange-14" .
Or
does it also refer to TBox assertions about a class of possible
individuals? Elsewhere we tend to use the word "term" in the
latter sense almost exclusively.
Across all the boxes, RDF based Linked Data is about ensuring that
entities are denoted using HTTP URIs so that the aforementioned
duality manifest i.e., you can look up the meaning of the referent
of an HTTP URI by a simple act of de-reference.
So, what does the duality of denotation and reference mean when it
comes to re-using existing ontologies?
Ultimately it helps you understand when an owl:equivalentClass
relation is required as a bridging mechanism between two or more
ontologies for which class instances exist. You don't need to use
owl:sameAs in the TBox or RBox when you have relations such as
1. owl:equivalentClass
2. owl:equivalentProperty
3. rdfs:subClassOf
4. rdfs:subPropertyOf.
Are
OWL ontologies which have been optimized for reasoning
applications, more or less useful as a point of reference for
linked data?
Yes.
For instance do you find that those ontologies end up with fewer
assertions that can be linked directly to some ABox term?
Maybe, but typically you end up with bridge ontologies to cross
reference a narrow set of classes and properties using the
appropriate relations.
For TBox or RBox oriented descriptive statements (for entity
types and relation types, respectively) you have
owl:equivalentClass and owl:equivalentProperty, respectively.
Right - I was thinking of owl:equivalentClass. There's good reason
to use this when asserting that a class in one OWL ontology
represents the same concept as one in someone else's OWL ontology
(though you end up bringing in the assertions from that other
ontology so you'd better be sure it really is the same concept!).
Yes, map a Class to a Class.
What I was resisting was the tendency to use OWL to make what
appear to be TBox assertions about the existence of a class, where
that class is tied to one natural language word, and another class
is tied to another natural word in the same ontology which is
synonymous, and the synonymy is dealt with using an assertion that
the two classes mean the same thing (have the same extension).
When is that a useful thing to do and when is it the wrong thing
to do?
In my experience it starts by knowing when you re dealing with a
skos:Concept or an owl:Class . I try to demonstrate some of this in
my glossary document [1] where in some cases I use the a foaf:focus
relation when I am trying to indicate that a Concept is associated
with a Class.
A lot of natural language words become terms in a SKOS based
taxonomy (terminology tree), since this is where they fit best, most
of the time. Classes are much more specialized by way of ultimately
implications e.g., subsumption (inheritance) etc..
I can see for example that if one were doing text extraction from
a corpus of unstructured data, it would be useful to have an
ontology which defines all the words individually with equivalent
class assertions, whereas if one wanted to reason over concepts
(for example, to calculate financial exposures across financial
instruments and counterparty hierarchies) then you really would
not want to do that.
This (to me) would be best routed through a SKOS based concept
scheme, at first pass. Getting the very specific specialization of
classes would come later as something derived from the concept
scheme.
When you are choosing an ontology to refer to in a linked data
resource, what sort of things do you look for? What makes one
ontology more useful to reference for Linked Data compared to
another? Do these questions even matter?
Great question, it matters a lot since its best to re-use terms from
broadly used ontologies where such exist. Note, that doesn't mean
that you burn time looking for terms from the perfect ontology when
constructing Linked Data, what I encourage is the following:
1. describe your world using entity relationships where entity
denotation is based on relative hash based HTTP URIs -- (if you HTTP
GET my glossary document using text/turtle you will see exactly what
I mean)
2. finesse by using services like
<http://lov.okfn.org/dataset/lov/> to search for terms used
across shared ontologies and incorporate where applicable.
Horses for courses - so, what would it take to put some useful
language around the parameters of those courses and how to pick
the right horse? That would move things along from the "A is
right!" "No, B is right therefore A is wrong!" type of
conversations that we sometimes see.
The steps outlined above. Net effect, its no longer about who is
right or wrong, it becomes more about puzzle pieces and the option
to always "agree to disagree" in the very worst case :-)
Links:
[1] http://bit.ly/19NRwnB -- Glossary of Terms Doc (to get TURTLE
doc just execute: curl -ILH "Accept: text/turtle"
http://bit.ly/19NRwnB ) .
Kingsley
Best regards,
Mike
As long as it's clear which one of those you are doing, that's
fine. But I find an ontology of concepts to be far more useful
than a vocabulary of words.
Horse for courses :-)
The only place I would use owl:sameAs is when mapping between
ontologies that have concepts with the same meanings.
See comment above.
_________________________________________________________________
Msg Archives: http://ontolog.cim3.net/forum/ontology-summit/
Subscribe/Config: http://ontolog.cim3.net/mailman/listinfo/ontology-summit/
Unsubscribe: mailto:ontology-summit-leave@xxxxxxxxxxxxxxxx
Community Files: http://ontolog.cim3.net/file/work/OntologySummit2014/
Community Wiki: http://ontolog.cim3.net/cgi-bin/wiki.pl?OntologySummit2014
Community Portal: http://ontolog.cim3.net/wiki/
_________________________________________________________________
Msg Archives: http://ontolog.cim3.net/forum/ontology-summit/
Subscribe/Config: http://ontolog.cim3.net/mailman/listinfo/ontology-summit/
Unsubscribe: mailto:ontology-summit-leave@xxxxxxxxxxxxxxxx
Community Files: http://ontolog.cim3.net/file/work/OntologySummit2014/
Community Wiki: http://ontolog.cim3.net/cgi-bin/wiki.pl?OntologySummit2014
Community Portal: http://ontolog.cim3.net/wiki/
--
Regards,
Kingsley Idehen
Founder & CEO
OpenLink Software
Company Web: http://www.openlinksw.com
Personal Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter Profile: https://twitter.com/kidehen
Google+ Profile: https://plus.google.com/+KingsleyIdehen/about
LinkedIn Profile: http://www.linkedin.com/in/kidehen
|
smime.p7s
Description: S/MIME Cryptographic Signature
_________________________________________________________________
Msg Archives: http://ontolog.cim3.net/forum/ontology-summit/
Subscribe/Config: http://ontolog.cim3.net/mailman/listinfo/ontology-summit/
Unsubscribe: mailto:ontology-summit-leave@xxxxxxxxxxxxxxxx
Community Files: http://ontolog.cim3.net/file/work/OntologySummit2014/
Community Wiki: http://ontolog.cim3.net/cgi-bin/wiki.pl?OntologySummit2014
Community Portal: http://ontolog.cim3.net/wiki/ (01)
|