- From: Michael Schneider <schneid@fzi.de>
- Date: Tue, 31 Aug 2010 12:51:16 +0200
- To: "Yoshio FUKUSHIGE" <paatje@cam.hi-ho.ne.jp>
- Cc: <public-owl-dev@w3.org>
Hi Yoshio! Your example below is, in the given form, only valid in OWL 2 Full [1]. But you don't need a complete OWL 2 Full reasoner for making it work. Any reasoner implementing the OWL 2 RL/RDF rules [2] will give you the result you expect (the OWL 2 RL/RDF rules define a sub-semantics of the semantics of OWL 2 Full). For example, you can use Ivan Herman's OWL 2 RL reasoner for checking, which is available as an online service at [3]. For your convenience, here is your complete example in a form that can be directly be inserted into Ivan's reasoner. Press "Go" and check for the expected triple my:MyRecorder my:recordableTo my:MyDisc . in the result set. """ @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix owl: <http://www.w3.org/2002/07/owl#> . @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . @prefix my: <http://www.example.org/> . my:hasInstance owl:inverseOf rdf:type . my:BDRecorder my:classRecordableToInstanceOf my:BD-R . my:recordableTo owl:propertyChainAxiom ( rdf:type my:classRecordableToInstanceOf my:hasInstance ). my:MyRecorder a my:BDRecorder . my:MyDisc a my:BD-R . """ Cheers, Michael [1] <http://www.w3.org/TR/2009/REC-owl2-rdf-based-semantics-20091027/#topic-ont- owl2full> [2] <http://www.w3.org/TR/2009/REC-owl2-profiles-20091027/#Reasoning_in_OWL_2_RL _and_RDF_Graphs_using_Rules> [3] <http://www.ivan-herman.net/Misc/2008/owlrl/> >-----Original Message----- >From: public-owl-dev-request@w3.org [mailto:public-owl-dev- >request@w3.org] On Behalf Of Yoshio FUKUSHIGE >Sent: Tuesday, August 31, 2010 9:25 AM >To: public-owl-dev@w3.org >Subject: How to put "universal" restrictions to members of two classes? > >I'm building an ontology for Audio Visual devices, and wondering how to >put >"universal" restrictions to members of two classes. >(I'm not sure if this wording is appropriate though...) > >What I want to do is to make every pair of members of two classes to >have >designated relations. > >For example, suppose we have my:BDRecorder Class representing all >instance of Blu-ray recorders >and my:BD-R Class representing all instance of BD-R Discs. > >Now I want to force force every instance of my:BDRecorder able to record >to any instance of my:BD-R. > >In n3, I think I can write: > >{ ?rec a my:BDRecorder. ?disc a my:BD-R } => { ?rec my:recordableTo >?disc }. > >but how can I do in OWL 2 (if possible)? > >If possible, I'd like to do so by stating some "Class level" relation >between the two Classes, >and make a statement entailing the corresponding "Instance level" >relation between the instances of the Classes. > >I first tried to do so by introducing my:classRecordableToInstanceOf and >my:hasInstance (as owl:inverseOf rdf:type) and then >stating: > >my:BDRecorder my:classRecordableToInstanceOf my:BD-R. > >my:recordableTo owl:propertyChainAxiom >( rdf:type my:classRecordableToInstanceOf my:hasInstance). > >hoping to entail, if my:MyRecorder a my:BDRecorder and my:MyDisc a >my:BD-R, > >my:MyRecorder my:recordableTo my:MyDisc. > >but failed. > >I think the reason was owl:propertyChainAxiom can be used only to list >of >owl:ObjectProperty's which is not the case with >my:classRecordableToInstanceOf >nor rdf:type nor my:hasInstance. > >Could someone help? > >Thanks in advance, > >Yoshio Fukushige, >Panasonic Corporation. -- Dipl.-Inform. Michael Schneider Research Scientist, Information Process Engineering (IPE) Tel : +49-721-9654-726 Fax : +49-721-9654-727 Email: michael.schneider@fzi.de WWW : http://www.fzi.de/michael.schneider ======================================================================= FZI Forschungszentrum Informatik an der Universitat Karlsruhe Haid-und-Neu-Str. 10-14, D-76131 Karlsruhe Tel.: +49-721-9654-0, Fax: +49-721-9654-959 Stiftung des burgerlichen Rechts, Az 14-0563.1, RP Karlsruhe Vorstand: Prof. Dr.-Ing. Rudiger Dillmann, Dipl. Wi.-Ing. Michael Flor, Prof. Dr. Dr. h.c. Wolffried Stucky, Prof. Dr. Rudi Studer Vorsitzender des Kuratoriums: Ministerialdirigent Gunther Lesnerkraus =======================================================================
Received on Tuesday, 31 August 2010 10:51:52 UTC