A general proposal for "multiple expressions" in Target, Prerequisite,
(trying to take into account previous remarks)
1- Target: this element is unique to a TA. But the target may be defined
as a composition of several artifacts, that are in turn described by
several expressions elements under <target>. It is this composition that
is subject to the predicate.
See the example given in wiki (issue #2
http://wiki.oasis-open.org/tag/Issues) , where the target is a
combination of "author" + related artifacts, identified using different
- but related - XPath expressions :
<expr name="books" lg="XPath">document(..mybooklist..)/book[@author =
<expr name="publishers" lg="XPath">document(..publishing houses ..)
/publishersdirectory/publisher[fn:index-of( fn:distinct-values("for $bk
in $books return $bk/@publisher"), @name) gt 0 ]</expr>
This combination of artifacts is subject to the TA predicate and
2. Prerequisite: this optional element may be multiple in a TA, with the
implicit semantics of logical AND.
But each one of these <prerequisite> elements is structured like above
<target>: MAY contain several named expressions, that may be referred to
by their name and composed into more complex logical expressions:
<expr name="youngauthor" lg="XPath" > (a boolean expression, e.g. age
less 35) </expr>
<expr name="prolific" lg="XPath"> ( a boolean expression, e.g. number
books more than 10 over 10 years ) </expr>
<expr name="international" lg="XPath"> ( a boolean expression, e.g.
published in more than 2 languages )</expr>
<expr name="primary" lg="XPath"> ( a boolean expression, that states the
overall prereq expression, e.g.: $youngauthor and ($prolific or
3- Predicate: this element is unique to a TA. Structured exactly like a
Prerequsite element above.