Hi,

What I actually wanted to know was whether the XMLSec implementation of 
Transforms in general and Filter2 in particular, by default, supports locating 
elements that have a namespace prefix.
If not, am I supposed to provide the prefix mappings myself to a container like 
XPath2FilterContainer via adding new ns attributes with the 
'setXPathNamespaceContext' method? Is this processing model correct?
   
I have been examining the source code around the 'Transforms' implementation and 
it seems like only ns declarations in the context node(s) are used. That would 
mean that only Constants.SignatureSpecNS is somehow recognized.
 
 Example:
   
  <theroot> 
      <p1:hello xmlns:p1="http://www.p1.com";> 
          world 
      </p1:hello> 
      <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#";>  
         <!-- ... --> 
      </ds:Signature> 
  </theroot> 
   
 A filter2 "intersect" transform with the xpath value "//p1:hello" will raise an 
exception: prefix p1 must resolve to a namespace. But with the value "//ds:
Signature" it will work. 
   
 ( Btw I tested "here()/ds:Signature[1]" and that crashes with an exception 
arrayindexoutofbounds... )

-R










Reply via email to