Hi Robert,

There are two, possibly three issues here. The error message is telling you the main problem: the "infix notation" -- the pattern matching that uses curly braces -- can't be used in multislots, and most if not all of the slots created by JessTab are multislots. So the first pattern probably has to look something like


?softwareRequirement1 <-  (object (is-a 
http://pluto.cse.msstate.edu/rae20/SRSontology#SoftwareRequirement))

I say "probably" because that URL might need to be quoted. It depends on how JessTab defines things (this is the possible second issue).

The third issue is that I can't quite tell what you're trying to accomplish in your second pattern, and in particular I can't tell what this is supposed to be:

?softwareRequirement1.http://pluto.cse.msstate.edu/rae20/SRSontology#SoftwareRequirementName

Normally the thing to the right of the dot would be the name of a slot, but that's certainly not a valid slot name, so I'm not sure what your intention is. As a result I can't show you what the whole rewritten rule should look like.




On Mar 21, 2010, at 7:57 PM, Robert A. Elliott,Sr. wrote:

All,
I'm trying to define this one simple rule using the Jess Tab in Protege 3.4.3:

(defrule duplicate_requirement
"This rule will search by requirement name to find duplicates"
?softwareRequirement1 <-
(object {is-a == http://pluto.cse.msstate.edu/rae20/SRSontology#SoftwareRequirement })
?softwareRequirement2 <-
(object {is-a == 
http://pluto.cse.msstate.edu/rae20/SRSontology#SoftwareRequirement
&& http://pluto.cse.msstate.edu/rae20/SRSontology#SoftwareRequirementName == ?softwareRequirement1.http://pluto.cse.msstate.edu/rae20/SRSontology#SoftwareRequirementName }) =>(printout t "Found Duplicate Requirements" ?person1.http://pluto.cse.msstate.edu/rae20/SRSontology#SoftwareRequirementName crlf))

Jess returns this error:
Message: Can't use infix expressions with multislots at token
http://pluto.cse.msstate.edu/rae20/ SRSontology#SoftwareRequirementName.

I'm simply trying to compare two object facts of a 'is-a' type and seeing if the RequirementName slots are identical. Thanks for the help.

______________________________
Robert



---------------------------------------------------------
Ernest Friedman-Hill
Informatics & Decision Sciences, Sandia National Laboratories
PO Box 969, MS 9012, Livermore, CA 94550
http://www.jessrules.com







--------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [email protected]'
in the BODY of a message to [email protected], NOT to the list
(use your own address!) List problems? Notify [email protected].
--------------------------------------------------------------------

Reply via email to