[Home] [By Thread] [By Date] [Recent Entries]
At 2009-10-06 18:22 +0100, Andy Chambers wrote:
I'm playing around with the added features available in key declarations but I think I must be misunderstanding something. Here's my key declaration (I realize that this particular example would be better as a simple @use but I want to understand how it works to see if it might make some of my other keys look a little better).... According to http://www.w3.org/TR/2007/REC-xslt20-20070123/#xsl-key the value of the key is atomized. Your key is an element node. The typed value of the element node is the string value (untypedAtomic) of the text content, in your case an empty string, according to: http://www.w3.org/TR/2007/REC-xslt20-20070123/#dt-atomization and http://www.w3.org/TR/2007/REC-xpath-datamodel-20070123/#const-infoset-element (typed-value) I thought that to use this key to lookup the @name associated with @oid="AA.AA" for example, I'd do According to http://www.w3.org/TR/2007/REC-xslt20-20070123/#keys the lookup value is an atomic value. Your key being passed is a document node and the atomized value is the string value of that tree, which in your example is the empty string. But this actually returns a sequence containing all the @names. Every member in your key table has the empty string as the associated key value, and you are looking up the key value using an empty string. Thus, every member of the key table is being returned to you, so you are getting every attribute. I hope this helps. . . . . . . . . . . Ken
|

Cart



