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] SWRL to "move" individuals?

Ely Edison Matos ely.matos at ufjf.edu.br
Mon Aug 27 09:19:19 PDT 2007


Hello,
Original question:
- Is it possible to use SWRL to "move" (reclassify) individuals? Ex: 
MyInterface(?x1) and hasPublicInterface(?x1, out) -> 
MyPublicInterfaceOutput(?x1)

With OWL, it was defined a subclass of MyInterface:
MyPublicInterfaceOutput defined as "MyInterface and (hasPublicInterface 
hasValue out)

Running reasoner, the individuals was reclassified correctly, by the same 
individual was classified as MyPublicInterfaceOutput AND ALSO MyInterface.

Following the original question, are there a way to "remove" automaticaly 
this classification under MyInterface, or it is correct to the individual 
stay in both of class?

Thanks,
Ely

> In general, if you can do something in OWL, you should.
>
> SWRL is documented here:
> http://protege.cim3.net/cgi-bin/wiki.pl?SWRLLanguageFAQ
>
> Martin
>
> Quoting Ely Edison Matos <ely.matos at ufjf.edu.br>:
>
>> Hello,
>> Thanks, Thomas, for answer.
>>
>>> 1.  Instead of "x2" use "?x1" in the consequent of the rule.
>>
>> Ok, it was a typo...
>>
>>> 2.  Instead of SWRL, just use OWL constructs to define the
>>> "MyPublicInterfaceOutput" class.  The inference rule that you have
>>> written in SWRL can also be written using OWL intersection and has
>>> value restrictions.  If you can express this in OWL, that is a better
>>> way to do it than using SWRL.  You should reserve SWRL for expressing
>>> those constraints that you can't say in OWL.
>>
>> Ok. I'm learning SWRL but I'm learning OWL together :-) Your indication 
>> was
>> very important. I got this piece of my ontology more clear now.
>>
>> Another question: is it possible to save the inferred ontology (after I 
>> ran
>> the reasoner) ?
>>
>> Ely
>>
>>> > Hello,
>>> > Is it possible to use SWRL to "move" (reclassify) individuals?
>>> > Ex: MyInterface(?x1) and hasPublicInterface(?x1, out) ->
>>> > MyPublicInterfaceOutput(x2)
>>> >
>>> > MyPublicInterfaceOutput is subclass of MyInterface. I have a
>>> > individual MyInterface with a property hasPublicInterface = out. I
>>> > want to "move" this individual to class MyPublicInterfaceOutput.
>>> > The example rule creates a new individual...how can i "remove" the
>>> > "old" individual?
>>
>> _______________________________________________
>> 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
>>
>
>
> _______________________________________________
> 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