2014-12-04 77 views
0

我無法找到封裝XML簽名的正確XPath表達式。給出 例如:通過XPath引用XML簽名引用簽名父節點

<xxx> 
<bbb> 
    <Signature> 
     <SignedInfo> 
     ... 
     <Reference> 
      <Transforms> 
      <Transform> 
       <XPath>???<XPath> 
      <Transform> 
      <Transforms> 
      ... 
     <Reference> 
     <SignedInfo> 
     ... 
    <Signature> 
</bbb> 
<bbb> 
</bbb> 
</xxx> 

每個BBB可具有其自己的簽名(和XXX不得),而且允許沒有ID-屬性在BBB。可能會發生多次BBB。所以我需要告訴簽名使用它的包絡節點。 不幸的是模式是修復,我知道不是很好,但我必須處理它。

也許這裏() - 函數([http://www.w3.org/TR/xmldsig-filter2/#function-here)可能有幫助嗎?我的建議是:

here()/../../../../../.. 

它開始於XPath的節點(在鏈接中提到的),我走在簽名節點到我的BBB節點,但是這看起來很混亂。

回答

0

我得到這個問題的答案:

那簡直是不可能通過XPath表達式來引用包圍父元素。

您需要使用參考ID。