Re: How to put "universal" restrictions to members of two classes?

  Thanks Pavel,

(2010/08/31 19:22), Pavel Klinov wrote:
>>> Hi Yoshio,
>>>
>>> How about this:
>>>
>>> - Add a named individual :x
>>> - State that each recorder is related to :x by some property R
>>> (Recorder subclassOf R some {x})
>>> - State that each disk is related to :x by some property S (Disk
>>> subclassOf S some {x})
>>> - State that R o S- (inverse of S) ->    recordableTo (property chain)
>>>
>>>
>> I'm wondering now if I can give some interpretation (or name) to the "x",
>> "R", "S (or its inverse)"
>>   introduced above...
> Hmm, I'd rather consider such a solution as an implementation detail
> which should be hidden from the model users (applications). "x"
> basically serves as a bridge between Recorder and Disk.
>

I think the following interpretations/namings might be interesting:

x as my:RecordingToBD-R
R as my:isRecordingInstrumentOf
S as my:isRecordingDestinationOf

the statements being now
--------------
my:BDRecorder rdfs:subClassOf
     [a owl:Restriction;
      owl:onProperty my:isRecordingInstrumentOf;
      owl:hasValue my:RecordingToBD-R]
.

my:BD-R rdfs:subClassOf
     [a owl:Restriction;
      owl:onProperty my:isRecordingDestinationOf;
      owl:hasValue my:RecordingToBD-R]
.

my:recodingDestination owl:inverseOf my:isRecordingDestinationOf.

my:recordableTo owl:propertyChainAxiom
     ( my:isRecordingInstrumentOf my:rcordingDestination )
.
--------------

Now user can reuse the properties above to state
my:BDRecorder can record to my:BD-RE,
by replacing my:BD-R with my:BD-RE and my:RecordingToBD-R with 
my:RecordingToBD-RE.

Further, by introducing a reflexive property my:detailedTaskOf  and 
changing

my:recordableTo owl:propertyChainAxiom
     ( my:isRecordingInstrumentOf my:rcordingDestination )
.

to

my:recordableTo owl:propertyChainAxiom
     ( my:isRecordingInstrumentOf my:detailedTaskOf my:rcordingDestination )
.

and if the following  rough statement holds,

my:RecordingToBD-R my:detailedTaskOf my:RecordingToDVD-R.

then with

my:DVD-R rdfs:subClassOf
     [a owl:Restriction;
      owl:onProperty my:isRecordingDestinationOf;
      owl:hasValue my:RecordingToDVD-R]
.

one can get any instance of my:BDRecorder is my:recordableTo any 
instance of my:DVD-R.

So, the "x", "R". "S" don't seem to me to be  just nonce bridges, but 
could carry meanings
and be reusable in the ontology.
> No-no, I simply hit the wrong button :)
> And it's not my solution, btw, I've seen it suggested/discussed in
> some forms a number of times.
Could you show any pointers to such discussions?
That should help me a lot.

Best,
Yoshio

Received on Wednesday, 1 September 2010 14:09:12 UTC