2013-07-19 64 views
0

我想要在計算所有節點時使用標準化空間()來移除所有空間,並在這些節點上使用篩選器。XSLT使用一組篩選器計算子節點

我想是這樣的:

<{namespace}:Text> 
    <{namespace}:Info>This is text from Info Node</{namespace}:Info> 
    Here is text which i want to find 
</{namespace}:Text> 

我想指望從{命名空間}所有的孩子:文本,但我想忽略{命名空間}:信息和[命名空間}:otherelement和那些內容也應該被忽略。 我想從count 1中得到一個結果,這樣我就知道有必須處理的節點,所以我可以調用模板workwithcontent或workwithempty。

但我當然想找到其他不適合過濾器的節點。

回答

0

這聽起來像你想要的東西像

<xsl:template match="{namespace}:Text"> 
    <xsl:variable name="count" 
      select="count(child::node()[not(self::{namespace}:Info)])" /> 
    ... 

這將算<{namespace}:Text>所有子節點,包括文本和元素節點,除了<{namespace}:Info>元素。

如果這不是你所需要的,請澄清。

child::是可選的,但它使XPath表達式選擇的內容更加明顯。