- From: Pat Hayes <phayes@ihmc.us>
- Date: Fri, 13 Mar 2009 12:06:49 -0500
- To: John Graybeal <graybeal@mbari.org>
- Cc: Semantic Web <semantic-web@w3.org>
On Mar 10, 2009, at 8:39 PM, John Graybeal wrote:
> I have a question of 'best practice' (uh oh).
>
> When you need an ontology for a purpose (like creating a controlled
> set of terms to describe a domain area, let's say for
> authoritatively populating a drop-down list), there are two stages
> of work: (1) Find what exists. [2] If what exists doesn't fit the
> need, subset or expand it.
>
> For step [1], I go to Watson and Swoogle and Google-('.owl' only),
> enter some appropriate search terms, and try to weed through the
> morass of sources that result, eliminating mail lists and other
> irrelevancies.
>
> What else should I be doing to have a reasonable shot at finding the
> almost perfect, already existing ontology?
Good question, and I wish I knew an answer.
>
> [2] Now, inevitably, there are many ontologies that have some piece
> of what I want, and a few that have way more than what I want.
When you say, way more than you want, what exactly do you mean? You
need to distinguish:
(1) O contains a concept that seems like one I want to use, but also
has many others that I am not interested in
(2) O contains a concept that seems like one I want to use, but says
too much about it
Case (2) , I suggest, is meaningless. If O says too much about your
concept, to the point where you are unable to use the URI it defines,
then the concept it is describing is not, in fact, the one you want.
Case (1) on the other hand should pose no problem: just re-use the URI
from O in your ontology. It is not necessary to import O, though it
seems to do no harm to do so. Bear in mind that owl:imports has an
unfortunate name. It does NOT mean "physically copy all of O into my
ontology". The semantics of imports are merely that the importation
assertion assents to the imported ontology: in effect, re-asserts it.
So that anyone which "believes" your ontology is required also to
"believe" O. But, importantly, this is not an operational imperative
to DO anything in particular, certainly not to copy any actual text
from O.
> Now what? I can (a) piece together parts of each ontology (means
> importing them all?), (b) use one of the mother-of-all-ontologies or
> vocabularies (cyc, wordnet, others?) as is (means importing the
> whole thing?
Your question here reflects the misunderstanding described above.
> ), (c) create a new ontology that associates concepts to those in
> other ontologies (either sameAs or more subtle relationships)
Your ontology can directly use concepts from those other ontologies.
The concept name is a public URI reference: just use it. (Assuming of
course that it is the concept you want.) No need to use another URI
reference and assert sameAs.
However, there is also a third case:
(3) O contains a concept that seems approximately like the one I want
to use, but doesn't describe it in enough detail for me
Here, the best practice, I suggest, is not to re-use the URI and add
axioms refining its meaning for your purposes, but indeed to define
your own concept and relate it appropriately to the other one. Yours
might be a subclass, or a subproperty, or related in some more subtle
way. But you can (and I suggest, should) still import O to provide the
background of your more refined concepts.
> , or (d) some combination of the above.
>
> It looks to me like if I want to provide a specific list of terms,
> that don't overlap, have clear definitions, are unambiguous, and
> fill the domain space
You have very high ambitions :-) Maybe you should try for less, at
first. Unambiguous definitions are very hard to come by.
> , I will almost always have to create that entire list on my own
> (then I can map it to other concepts if I want to be a good boy).
>
> Even if I find a very solid ontology that meets these criteria,
> inevitably it has more or fewer concepts than I want to show the
> users of my ontology.
What you show users is an issue for how you design your user
interface, not really an ontology issue.
> So presenting just the right variation of the ontology
> requires...another ontology. (I guess extension can be done by
> importing, and adding the few extra terms. But subsetting seems
> awkward, unless one can import and _deprecate_ a few terms?)
>
> Is there something fundamental I've missed in the best practices and
> technologies that people are using for this use case?
I think you share in a widespread misunderstanding about what
owl:imports means, but otherwise, no.
Pat Hayes
> Or are we inevitably in a world full of duplications, possibly with
> some extensions and specializations?
>
> John
>
> --------------
> John Graybeal <mailto:graybeal@mbari.org> -- 831-775-1956
> Monterey Bay Aquarium Research Institute
> Marine Metadata Interoperability Project: http://marinemetadata.org
>
>
>
>
>
>
------------------------------------------------------------
IHMC (850)434 8903 or (650)494 3973
40 South Alcaniz St. (850)202 4416 office
Pensacola (850)202 4440 fax
FL 32502 (850)291 0667 mobile
phayesAT-SIGNihmc.us http://www.ihmc.us/users/phayes
Received on Friday, 13 March 2009 17:07:31 UTC