2011-09-29 8 views
5

Şimdi düğümün ana düğümünün hemen takip eden kardeşi (amca veya karınca) düğümünü test etmek için xpath kullanıyorum. Ben alt düğüm B şablon maçında duyuyorum Şimdi Ebeveynlerin hemen ardından aşağıdaki xpath kardeşi için nasıl denetlenir

<MyParent> 
<A> 
<B> 
<C> 
</MyParent> 

<Uncle> 
.. 
</Uncle> 

gibi

Benim xml görünüyor ve test etmek isterseniz immeididate "Amca" denir benim ebeveynin,-kardeş aşağıdaki

<xsl:if test="parent::MyParent/following-sibling::*[1][self::Uncle]"> 
    <xsl:text>we have it</xsl:text>   
</xsl:if> 

ve

<xsl:if test="parent::MyParent[following-sibling::*[1][self::Uncle]]"> 
    <xsl:text>we have it</xsl:text>   
</xsl:if> 
012:

Ben şu iki XPath'leri çalıştı

Hiçbiri işe yaramaz, uzmanlar nerede hata yaptım hata ayıklama yardımcı olabilir? Teşekkürler :).

+2

Kodunuz doğru görünüyor. Belki de düşündüğün bağlamda çalışmıyor mu? Belki sen kontrol edebilmek için senaryonun daha fazlasını paylaşabilirsin. –

+0

@_Robert: Kodunuz istenilen çıktıyı üretmiyorsa, ancak kabul edilen cevaplama yaparsa, bu muhtemelen (varsayılan) ad alanı sorunlarınız olduğunu gösterir. –

cevap

14

Bunu deneyin.

../following-sibling::*[position()=1][name()='Uncle']