Re: Transitive closure for XPath
> So if you want to stick to the way that XPath currently works, then > perhaps you should define closure() as: > node-set closure(node-set, string) > which would make the above examples: > closure(/closure/node, 'id(@child)') > closure(/closure/node, 'key("myKey", @child)') I thought about that, but if I did that, then at least xalan would not parse the second parameter for me. I would have to create a new xpath query on the fly. (which is probably not so bad anyway, now that I think about it). On the other hand, it would fit in with the spec rather more nicely (albeit as a bit of a cheat, leaving the semantics undefined for the application) > Just a couple of other things - on the page explaining closure(), you > say that you *need* to get this list of 'descendants' within an XPath, > but don't say why. It would be good to see the XSLT context in which > you're using it. Ok, I am specifying consistency rules that express constraints between distributed documents. Have a look at http://www.xlinkit.com/dangerzone/UML/associationclass.xml for a rule for XMI or http://www.cs.ucl.ac.uk/staff/c.nentwich/publications.html for papers. Pasting a short rule: <forall var="a" in="/Advert"> <exists var="p" in="/Catalogue/Product"> <equal op1="$a/ProductName/text()" op2="$p/Name/text()"/> </exists> </forall> The rule says that each advert has to correspond to a product definition (which may be in another file). We use xpath to pick out the things we relate. As for transitive closure, for some of the rules for the UML I need to say things like "forall parents of X" in a path expression. > Dynamic' module, and this would be a good function to have within it, > or perhaps in a different module if you think there's a better fit. > If you don't know about EXSLT, have a look at http://www.exslt.org/. I haven't had a look at it for a while, but I will tomorrow. But, as I said, I mainly use xpath standalone.. Christian XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format