Search Mailing List Archives
[protege-owl] SWRL Temporal built-in problem
t.myers at bigpond.net.au
Wed Apr 25 18:32:21 PDT 2007
It makes more sense now, I was confused about the use of the differentFrom
restriction, it is working now.
A quick question, the only way I can see to implement the owl:allDifferent
restriction is manually creating a set through the OWL/edit
owl:allDifferents menu, then it doesn't seem to show this restriction in the
GUI under the classes or individuals tab, am I missing where it actually
And would I need to manually redo the set each time an instance of the class
is added before running the rule? Or can the owl:allDifferents restriction
be implemented on a class for any future addition of an instance (in a
similar fashion to the disjoint axiom)?
From: protege-owl-bounces at lists.stanford.edu
[mailto:protege-owl-bounces at lists.stanford.edu] On Behalf Of Martin O'Connor
Sent: Thursday, 26 April 2007 3:49 AM
To: User support for the Protege-OWL editor
Subject: Re: [protege-owl] SWRL Temporal built-in problem
SWRL's differentFrom construct works only with OWL individuals:
You are attempting to use it with datatypes.
Also, as far as I can tell from your email, every Environment individual has
only one Date_Time property value so ?xDate and?yDate will always refer to
the same value (which is why temporal:equals evaluates to true). I presume
what you intend to do is to compare datetimes from two different
Environment(?e1) ^ Environment(?e2) ^ differentFrom(?e1, ?e2) ^
hasDateTime(?e1, ?dt1) ^ hasDateTime(?e2, ?dt2) ^ temporal:duration(3, ?dt1,
?dt2, temporal:Days) -> something...
As mentioned in the link above, all individuals of class Environment must
have the owl:allDifferents restriction defined if the differentFrom clause
is to work properly with them.
>Are there any further examples for the SWRL temporal built-ins besides
>the Wiki and Martin's paper on querying time-oriented data? I have been
>trying the latest implementation (build 395) and am not having a great
>deal of success with the rules I am using (which is purely a lack of
understanding on my part).
>I am trying to compare the date_time properties of an 'Environment'
>class to test if there has been a duration of 3 days. The rule I used was:
>Date_Time(?x, ?xDate) ?
>Date_Time(?x, ?yDate) ?
>temporal:duration(3, ?xDate, ?yDate, temporal:Days)
> ? tempBoolean(?x, true) **this being an arbitrary property to test
>The values of the Date_Time property has been set as:
>(assert (Date_Time Environment_1 "2007-04-25T14:29:43")) (assert
>(Date_Time Environment_3 "2007-04-17T14:54:42")) (assert (Date_Time
>Environment_4 "2007-04-27T14:08:59")) (assert (Date_Time Environment_2
>"2007-04-28T14:30:20")) (assert (Date_Time Environment_5
>When I run Jess, nil properties are asserted. If I take out the
>differentFrom restriction I get the same outcome.
>If I use the temporal:equals instead of duration (just to test e.g.
>temporal:equals(?xDate, ?yDate, temporal:Days), all 'tempBoolean'
>properties are asserted to be true, even though they are all different
>Any advice would be appreciated
>protege-owl mailing list
>protege-owl at lists.stanford.edu
>Instructions for unsubscribing:
protege-owl mailing list
protege-owl at lists.stanford.edu
Instructions for unsubscribing:
More information about the protege-owl