## 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 rule query

Joseph Thomas-Kerr joetk at elec.uow.edu.au
Tue Jan 1 22:32:05 PST 2008

```Hi,

I want to be able to express the following rule:

avc:pps(?pps) ^ avc:id(?pps,?spsID)
^ avc:sps(?sps) ^ avc:id(?sps,?spsID)
^ avc:seqNo(?pps,?ppsSeqNo) ^ avc:seqNo(?sps,?spsSeqNo)
^ swrlb:lessThan(?spsSeqNo,?ppsSeqNo)
^ (?spsSeqNo = MAXIMUM(?spsSeqNo))
-> rdo:dependsOn(?pps,?sps)}

That is, I want to infer a relationship between a avc:pps and the avc:sps
with the matching spsID that MOST RECENTLY precedes it. An example might
help. Given the following individuals

sps(SeqNo=0,id=0)
sps(SeqNo=1,id=1)
sps(SeqNo=2,id=2)
sps(SeqNo=3,id=0)
PPS(SeqNo=4,id=0)
sps(SeqNo=5,id=3)
sps(SeqNo=6,id=2)
sps(SeqNo=7,id=0)
sps(SeqNo=8,id=2)
PPS(SeqNo=9,id=2)

I want to infer that

rdo:dependsOn(pps(SeqNo=4,id=0),sps(SeqNo=3,id=0))
rdo:dependsOn(pps(SeqNo=9,id=2),sps(SeqNo=8,id=2))

and nothing else. sqwrl has a max function, but I don't think that this
will get me what I am after. I tried using this function in the consequent
along with my inferred property, but it doesn't seem to work; query and
inference seem to have been deliberately separated.

I am not a logic expert; I suspect that this inference is nonmonotonic,
but I'm not certain.

can anyone provide some insight?

Regards,
Joe.

```