Check argument identifier
When the argument name does not match any of the parameters, no errors are given, and the argument becomes a blank node after expansion. Should give error when an argument is not found in the parameter list.
ex:Person[ ?firstName, xsd:integer ?age] :: {
ottr:Triple(_:person, rdf:type, foaf:Person ),
ottr:Triple(_:person, foaf:firstName, ?firstNNNNN ),
ottr:Triple(_:person, foaf:age, ?age )
} .
ex:Person("Ann", 1) .
ex:Person("Bob", 2) .
Output:
_:b0 foaf:firstName _:b1 ;
rdf:type foaf:Person ;
foaf:age 1 .
_:b2 foaf:firstName _:b3 ;
rdf:type foaf:Person ;
foaf:age 2 .
# [WARNING] Unused parameter in template http://example.com/ns#Person. The template has a parameter ?firstName : rdfs:Resource (arg no. 1) which does not occur in the pattern of the template.
Edited by Yiyao Chen