Search Mailing List Archives


Limit search to: Subject & Body Subject Author
Sort by: Reverse Sort
Limit to: All This Week Last Week This Month Last Month
Select Date Range     through    

[protege-owl] restriction based on the range of a property

Jan Polowinski jpaonlowinski at polowinski.de
Sun Aug 19 13:52:03 PDT 2007


Hello Thomas (and everybody else)

about one month ago you replied to my question concerning a restriction
of a property to property(!) values with a special range. Thank you for
this. I tried to find a solution following your idea of a property
(meta) class, and also based on the ideas for classes as values in
http://www.w3.org/TR/swbp-classes-as-values/ (As far as I understood it,
  Approach 4 is similar to your idea):

What do you think of this? To me it looks too complicated to be right. 
Will the range of a TimeProperty be restricted to all three time 
datatypes? Or (as I intended it) to one of the three? Maybe I should use 
owl:oneOf, but this is meant to be used for instances, as far as I got 
it. But since I'm already in OWL Full it could be okay, to see the 
datatypes as instances, isn't it?


# trial for property (meta) class: globally
# restricting the range to selected classes
:TimeProperty
       a owl:Class ;
       owl:equivalentClass
               [ a  owl:Class ;
                 owl:intersectionOf (
				    [ a  rdf:Property;
                                          rdfs:range [
					    a owl:Class ;
                                             owl:unionOf (			
						xsd:dateTime
						xsd:time
						xsd:date )
					   ]
                                     ]
                                     rdf:Property
				    )
		]
.

# the class that restricts the property "sourceFacet"
# to the properties in question.
# Locally restriction of
# the TimeStructures sourceFacet to
# propertys that are instances of the above meta class
:TimeStructure
	a owl:Class
	rdfs:subClassOf VisualizationStructure;
	rdfs:subClassOf
		[ a owl:Restriction ;
                 owl:someValuesFrom :TimeProperty ;
                 owl:onProperty :sourceFacet
               ]
.

Does it make sense to make restrictions like that? I'd like to use the 
information to restrict a user interface to offer only properties with 
time values and not arbitrary properties.

Every comment is very much appreciated!

Regards,
Jan


Thomas Russ schrieb:
> On Jul 21, 2007, at 9:58 AM, Jan Polowinski wrote:
> 
>> Hello, can anyone experienced with OWL restrictions give me a hint how
>> to model this, or should I give up:
>>
>> I'd like to restrict a property of a certain class to properties (!)
>> with a range, that is defined by an enumeration.
>>
>> An example:
>> I've got a class called StructureMapping and a property called
>> sourceProperty. sourceProperty has rdf:Property as a range. Now I want
>> to allow only those properties, which have xsd:dateTime as a Range, or
>> xsd:date or xsd:time.
> 
> I suppose that you could create a description of the property and  
> restrict
> the values of the rdfs:domain or rdfs:range properties to be of the type
> that you suggest.  I think you are able to write restrictions on those
> properties, but not while staying in OWL DL.  (I may be wrong about  
> being
> able to write such restrictions, though, and I don't have time right  
> now to
> look at the Specification).  I think this is possible though:
> 
> In any case, you can manage this manually by creating your own  
> metaclasses
> of the properties in question and restricting the range to be those
> meta-classes.  But since this takes you out of OWL-DL, you may not be
> able to get automatic reasoning with those classes.  (Although I have  
> read
> that there are reasoners being developed for OWL-Full) I would still  
> take
> this approach, though, as it would make it a bit easier to manage.


>> I guess it has also to be clarified, if the properties range contains
>> only the values in the enumeration, or others. Actually I can only use
>> those whose range exists exclusively of the allowed classes.
>>
>> Is it possible to state that with OWL DL at all and will the  
>> Protege GUI
>> be able to handle it?
> 
> It isn't possible to do in OWL DL at all, since ObjectProperties in  
> OWL DL
> cannot have Classes or Properties as values.  If you need to have an
> ObjectProperty value that is a Property, you will be in OWL Full.
> 
>> If questions of such general character are not supposed to be posted
>> here, I'd like you to tell me a good forum for OWL matters.
> 
> IMHO this is a fine forum for such questions.
> 
> _______________________________________________
> protege-owl mailing list
> protege-owl at lists.stanford.edu
> https://mailman.stanford.edu/mailman/listinfo/protege-owl
> 
> Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03 
> 






More information about the protege-owl mailing list