Search Mailing List Archives
[protege-discussion] OWL2 Classes
Jim Tivy
jimt at bluestream.com
Sun Mar 18 21:10:30 PDT 2012
Robert.
I do not see any PropertyAssertions on Classes except for SubClassOf which
is not really a PropertyAssertion. How do I attach Property assertions on
classes. Otherwise, Thesaurus concept has to be an individual.
From: robert Stevens [mailto:robert.stevens at manchester.ac.uk]
Sent: March-18-12 11:03 AM
To: Jim Tivy; 'robert Stevens'; 'User support for Core Protege and the
Protege-Frames editor'
Subject: Re: [protege-discussion] OWL2 Classes
Can't do it with the fucntional syntax as I don't know it, but with
manchester syntax one might say:
Class: person
SubClassOf: hasFather some Man,
hasMother some Woman
this means that every member individual of the class Person has at least one
mother and at least one father. (some other stuff can make the nubmers more
sensible).
this is a class asertion. You can also do individual assertions.
----- Original Message -----
From: Jim Tivy <mailto:jimt at bluestream.com>
To: 'robert Stevens' <mailto:robert.stevens at cs.manchester.ac.uk> ; 'User
support for Core Protege and the Protege-Frames editor'
<mailto:protege-discussion at lists.stanford.edu>
Sent: Sunday, March 18, 2012 5:37 PM
Subject: RE: [protege-discussion] OWL2 Classes
Hi Robert
In my mind there are two things PropertyDefs and PropertyAssertions.
PropertyDefs are defined in space. Then they are associated with a class
using PropertyDefDomain assertions.
You can only define a PropertyAssertion for an individual, not for a Class
since a Class is not an individual. That is what I mean when I say you
cannot add properties to a class.
Please describe how I would attach SKOS related term PropertyAssertion to
OWL2 Class using OWL2 functional language.
Here it is in SKOS rdf
<skos:Concept rdf:about="http://my.site.com/#cleaning">
<skos:prefLabel>washing</skos:prefLabel>
<skos:scopeNote>Washing results in something becoming physically
cleaner.</skos:scopeNote>
<skos:broader
rdf:resource="http://my.site.com/#periodic%20maintenance"/>
<skos:related rdf:resource="http://my.site.com/#problem%20solving"/>
<skos:RT>software maintenance</skos:RT>
<skos:STA>Approved</skos:STA>
<skos:INP>2011-11-15</skos:INP>
<skos:APP>2011-11-15</skos:APP>
<skos:UPD>2012-02-08</skos:UPD>
</skos:Concept>
From: robert Stevens [mailto:robert.stevens at manchester.ac.uk]
Sent: March-18-12 10:25 AM
To: Jim Tivy; 'robert Stevens'; 'User support for Core Protege and the
Protege-Frames editor'
Subject: Re: [protege-discussion] OWL2 Classes
SKOS concept is a class and the SKOS ontology is made in OWL2. Terms in a
SKOS vocabulary are instances of this concept class. so, instead of making
"universal" statements a about each and every member of a class as you would
when adding a class restriction in OWL, one is just saying, when adding
properties to instance, that this individual is related to that individual.
One makes no claims about each and every instance of this class being
related to at least one member of that class.
I don't know what you mean about adding properties being problematic.
----- Original Message -----
From: Jim Tivy <mailto:jimt at bluestream.com>
To: 'Robert Stevens' <mailto:robert.stevens at manchester.ac.uk> ; 'robert
Stevens' <mailto:robert.stevens at cs.manchester.ac.uk> ; 'User support for
Core Protege and the Protege-Frames editor'
<mailto:protege-discussion at lists.stanford.edu>
Sent: Sunday, March 18, 2012 4:54 PM
Subject: RE: [protege-discussion] OWL2 Classes
So you are saying SKOS Concept is not implemented as Class in OWL2? If so,
I agree. Others have suggested that Concept becomes OWL2 class which I
think is problematic since adding first class properties to OWL2 classes is
not possible
From: Robert Stevens [mailto:robert.stevens at manchester.ac.uk]
Sent: March-17-12 2:09 PM
To: Jim Tivy; 'robert Stevens'; 'User support for Core Protege and the
Protege-Frames editor'
Subject: RE: [protege-discussion] OWL2 Classes
Jim
SKOS is OWL (2 or whatever - the distinction at this point is immaterial).
SKOS has one class called concept. All terms are indiviiduals of this class
(though you can, of course, make your own subclasses of concept). it has
built in object properties of broaderThan, narrowerthan, and relatedTo. It
has built in annotation properties of prefLable, altLabel, scopeNote and so
on.
SKOS is an OWL ontology and thus for all practical consideations OWL 2. it
has access to all those featues should you want to use them. It just
supplies the things that most thesaurae need. SKOS is an OWL (2) vocabulary
designed to represent thesaurae.
19:24 17/03/2012, Jim Tivy wrote:
Robert
Thanks for the tip - I will review OWL 1.
I think OWL2 class is "Syntactic sugar" as they said in the OWL2 planning
document.
That said, the Class, Individual abstractions of OWL2 are very clean and
coherent. The thing I am wrestling with is if a Class should have been an
Individual.
Jim
From: robert Stevens [ mailto:robert.stevens at manchester.ac.uk
<mailto:robert.stevens at manchester.ac.uk> ]
Sent: March-17-12 11:33 AM
To: Jim Tivy; 'robert Stevens'; 'User support for Core Protege and the
Protege-Frames editor'
Subject: Re: [protege-discussion] OWL2 Classes
It is OWL and thus has what OWl has - it has domain and range constraints in
the same way that OWL does.
----- Original Message -----
From: Jim Tivy <mailto:jimt at bluestream.com>
To: 'robert Stevens' <mailto:robert.stevens at cs.manchester.ac.uk> ; 'User
support for Core Protege and the Protege-Frames editor'
<mailto:protege-discussion at lists.stanford.edu>
Sent: Saturday, March 17, 2012 6:18 PM
Subject: RE: [protege-discussion] OWL2 Classes
Agreed SKOS has what I want but does SKOS have property domain and range
definitions - something that approaches schema.
I think OWL2 has a powerful data model that is coherent. I find all the
others to be somewhat less incoherent.
<skos:Concept rdf:about=" http://my.site.com/#cleaning
<http://my.site.com/#cleaning> ">
<skos:prefLabel>Washing</skos:prefLabel>
<skos:scopeNote>Washing results in something becoming physically
cleaner.</skos:scopeNote>
<skos:broader
rdf:resource="http://my.site.com/#periodic%20maintenance"/>
<skos:related rdf:resource="http://my.site.com/#problem%20solving"/>
<skos:RT>cleaning maintenance</skos:RT>
<skos:STA>Approved</skos:STA>
<skos:INP>2011-11-15</skos:INP>
<skos:APP>2011-11-15</skos:APP>
<skos:UPD>2012-02-08</skos:UPD>
</skos:Concept>
From: protege-discussion-bounces at lists.stanford.edu [
mailto:protege-discussion-bounces at lists.stanford.edu
<mailto:protege-discussion-bounces at lists.stanford.edu> ] On Behalf Of robert
Stevens
Sent: March-17-12 2:11 AM
To: User support for Core Protege and the Protege-Frames editor
Subject: Re: [protege-discussion] OWL2 Classes
it seems that you are describing SKOS - the W3C's Simple Knowledge
Organisation System. SKOS itself is (sort of) a vocabulary in OWL2. SKOS
has, without too much inspection, most of what you lay out below. There is
an Editor plugin for Protege called SKOSED.
SKOS has a class "concept" and individuals of that class are the
vocabulary's terms. SKOS comes with bt, nt, and rt properties, as well as
notions of concept scheme and so on. You can also use all of OWL 2 within it
(including the reasoning which is v interesting - at a trivial level, it wil
put in all your inverses for you wihout you having to do it...)
do say if it meets your needs - I'd be interested.
----- Original Message -----
From: Jim Tivy <mailto:jimt at bluestream.com>
To: 'User support for Core Protege and the Protege-Frames editor'
<mailto:protege-discussion at lists.stanford.edu>
Sent: Saturday, March 17, 2012 1:07 AM
Subject: Re: [protege-discussion] OWL2 Classes
Hi Timothy
Thanks for laying out the OWL2 formalisms. I think OWL2 is a great data
modelling system.
I only need to manipulate the data structure in a few ways and I am happy to
write those by hand. I would like to discuss data modelling first, then
discuss reasoning (or rather agree not to discuss reasoning as right now
reasoning does not seem interesting).
What I want to do is represent a Thesaurus which is a common well defined
structure that is described many places including here:
http://www.willpowerinfo.co.uk/thesprin.htm
In English (not in OWL2) I think of it this way:
There is a class of objects called Terms, some of which are in a hierarchy
some of which are not. Each Term needs to have the following properties:
- Scope Node
- Broad Term
- Narrow Term
- Related Terms
My thought is to model this in OWL2 (excuse my paraphrase of OWL FL) as:
Declare Class Term
Declare Property(ScopeNode)
Declare Property(HasChild) // to subsume BroadTerm and NarrowTerm are
Declare Property(RelatedTerm)
PropertyDomain(ScopeNode,Term)
.
Individual(myns:Dog)
InClass(myns:Dog,Term)
ObjectPropertyAssertion(myns:HasChild,myns:Boxer,myns:Dog)
And so on.
Is that enough information?
Jim
From: protege-discussion-bounces at lists.stanford.edu [
<mailto:protege-discussion-bounces at lists.stanford.edu>
mailto:protege-discussion-bounces at lists.stanford.edu ]
<mailto:protege-discussion-bounces at lists.stanford.edu> On Behalf Of Timothy
Redmond
Sent: March-16-12 5:13 PM
To: protege-discussion at lists.stanford.edu
Subject: Re: [protege-discussion] OWL2 Classes
On 3/16/12 1:22 PM, Jim Tivy wrote:
Hi Folks
I am looking to implement a Thesaurus using the OWL2 model. It seems the
recommended OWL2 modelling is to use a class for each term.. When I look at
class, however, it seems that it is very weak because the mechanism for
attaching properties to classes is weak.
Actually I think that the OWL 2 formalism is very expressive. The thing
that you have to figure out is exactly what you mean by "attaching
properties to a class". So if you have a class, A, a class B and a
property p you can say
all individuals in the class A must have a p-property value:
A SubClassOf p some
Thing
. all individuals in the class A must have a p-property value that is in
the class B:
A SubClassOf p some
B
. if some individual, i, has a p-property value then the individual i must
be an element of the class A:
p domain A
This is only just barely scratching the surface. So tell us what you are
trying to express and we can start thinking about whether OWL 2 can express
it.
I think I am better served to have one class called "Terms" or "Concepts"
whose individuals express the Thesaurus. In that way I can constrain
properties and reason about these individuals more naturally.
It may be that this is true but it seems very unlikely to me. My sense is
that if you don't have a rich class structure then you are not going to have
much to reason about with the individuals.
I realize Class==Concept in OWL2, however I think that since Class itself is
not an individual that it is too weak. What ever happened to the notion of
the Class Class.
What is the "Class Class"? If you are thinking of meta-modeling, then my
reaction is that I think that realistic meta-modeling is probably often
quite difficult to get right. But in any case, the starting point is to
figure out what you are trying to say. Then we can figure out what language
capabilities you need to express your concept.
-Timothy
Jim
Jim Tivy - CTO, Bluestream
Skype: jimt.vanc
_______________________________________________
protege-discussion mailing
list
protege-discussion at lists.stanford.edu
https://mailman.stanford.edu/mailman/listinfo/protege-discussion
Instructions for unsubscribing:
http://protege.stanford.edu/doc/faq.html#01a.03
_______________________________________________
protege-discussion mailing list
protege-discussion at lists.stanford.edu
https://mailman.stanford.edu/mailman/listinfo/protege-discussion
Instructions for unsubscribing:
http://protege.stanford.edu/doc/faq.html#01a.03
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.stanford.edu/pipermail/protege-discussion/attachments/20120318/4603fd9d/attachment-0001.html>
More information about the protege-discussion
mailing list