- From: Uli Sattler <sattler@cs.man.ac.uk>
- Date: Wed, 13 Jul 2011 15:59:48 +0100
- To: ceballos@itesm.mx
- Cc: public-owl-dev-request@w3.org, Soeren.Kemmann@iese.fraunhofer.de, public-owl-dev@w3.org
- Message-Id: <8C6B8E75-F0E9-4AAD-885C-A8C713C65366@cs.man.ac.uk>
Pascal Hitzler and friends have written one that might help Foundations of Semantic Web Technologies Pascal Hitzler, Kno.e.sis Center at Wright State University, Dayton, Ohio, USA; Markus Krotzsch, University of Oxford, Oxford, UK; Sebastian Rudolph, University of Karlsruhe, Karlsruhe, Germany - but I am afraid that you won't really get around the logic bit...other than that, I don't know of any other textbook style book. Then there is the DL Handbook (logic, I know), the OWL 2 primer, and general overview papers of OWL (e.g., http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.2.7039&rep=rep1&type=pdf ) Cheers, Uli On 13 Jul 2011, at 15:47, ceballos@itesm.mx wrote: > Is there any didactic book with kind of recipies for questions like > this? And I don't mean a logic one but an OWL one. > Cheers > Hector g Ceballos > Enviado desde mi oficina móvil BlackBerry® de Telcel > > From: Uli Sattler <sattler@cs.man.ac.uk> > Sender: public-owl-dev-request@w3.org > Date: Wed, 13 Jul 2011 14:46:13 +0100 > To: <Soeren.Kemmann@iese.fraunhofer.de> > Cc: <public-owl-dev@w3.org> > Subject: Re: Using cardinality restrictions > > > On 13 Jul 2011, at 14:28, <Soeren.Kemmann@iese.fraunhofer.de> wrote: > >> Hi Uli, hi @all, >> >> Yes, that makes sense! >> I was trying to build a small example analog to the famous pizza >> example. >> The difference is that I do not want to assign instances to the >> partitions and use them, but I want to just define instances and >> have the reasoner interfere to which class they belong to. >> I’m sorry … but I couldn’t achieve this yet. This is what I did: >> My Class Hierarchy: >> Thing >> - RefClass >> - TestValuePartition == (Part1 union Part2) >> - Part1 >> - Part2 >> Part1 and Part 2 are marked as disjoint. >> Furthermore, I defined that Part 1 has some references to RefClass >> (hasRef some Class). >> Now, if I create two instances with asserted type >> TestValuePartition, one that has a reference to an instance of >> RefClass and the other having no instance. > > again, be careful, 'the other having no *known* [reference to an] > instance of RefClass. > >> Due to the value partition I would have expected that instance 1 is >> interfered to be of Part1 > > ...and this works (as you say below) > >> and instance 2 to be of Part2, but again only Part1 works! > > same as before: instance 2 may or may not have a hasRef-successor, > so we have not enough information to say whether instance 2 is an > instance of Part1 or of Part2... > >> Instance 2 stays as being a TestValuePartition instance (only). For >> me the Value Partition is in this case not a value partition!? >> What am I missing? >> > > I am afraid you are missing the open world assumption (and thus of > possible, but neither necessarily true, nor necessarily false facts > - e.g., instance 2 is possibly an instance of Part1, possibly an > instance of Part2, thus not necessarily an instance of > either)...check for 'closure axioms'! Cheers, Uli > > > >> Thanks a lot! >> >> Cheers, >> Sören >> >> >> >> From: Uli Sattler [mailto:sattler@cs.man.ac.uk] >> Sent: Dienstag, 12. Juli 2011 17:35 >> To: Kemmann, Soeren >> Cc: public-owl-dev@w3.org >> Subject: Re: Using cardinality restrictions >> >> >> On 12 Jul 2011, at 10:27, <Soeren.Kemmann@iese.fraunhofer.de> wrote: >> >> >> Hi there, >> >> I’m trying to model (with Protégé 3.4.6 with Pellet Reasoner … just >> in case it matters) that a class A has two subclasses B and C, >> where B and C are disjoint. >> The distinction I want to make is that every instance of A is >> either of subclass B or of C dependent on the cardinality of a >> property p. >> The “test” is whether the instance has values assigned to property >> p ( p min 1). This kind of works … the instances are interfered to >> be of that type. >> But the other class does not work. If tried (p max 0), (p exactly >> 0), (p exactly 0 RangeClass), but nothing works. >> >> I’m using OWL-DL and as far as I understood 0/1 cardinalities are >> ok for OWL-DL, right? >> >> >> Hi Soeren, >> >> yes, they do - I guess you have, in your ontology, something like >> >> B SubClassOf C >> A SubClassOf C %% these two axioms aren't really necessary if you >> have the 2 below... >> >> A EquivalentClass C and (p min 1) >> B EquivalentClass C and (p max 0) >> >> ...and then when you have an instance of C with >> >> - 1 known p-successor, they are classified as being an instance of A >> - no known p-successor, they are ... only classified as being an >> instance of C - and you wonder why... >> >> The reason is found in the word 'known' used above: your instance >> of C has no *known* p-successor, but could have some, due to the >> open world assumption! >> >> So, how to rescue this? For example, you could say explicitly how >> many p-successors an individual has...in general, you need a >> 'closure' statement that says that the *known* p-successors are all >> p-successors. >> >> If I remember correctly, the famous Pizza tutorial explains this in >> detail (see http://owl.cs.manchester.ac.uk/tutorials/protegeowltutorial/ >> ) >> >> Cheers, Uli >> >> >> Thanks a lot! >> Cheers, >> Sören >> >> >> Dipl. Inf. Soeren Kemmann >> Fraunhofer IESE >> Fraunhofer-Platz 1, 67663 Kaiserslautern, Germany >> Tel.: +49 (0) 631 / 6800 - 2218 >> Fax.: +49 (0) 631 / 6800 - 9 2218 >> mailto:soeren.kemmann@iese.fraunhofer.de >> >
Received on Wednesday, 13 July 2011 15:00:27 UTC