2010-08-27 6 views
1

J'ai un document XML avec des nœuds qui peuvent apparaître récursivement dans d'autres nœuds du même type. Par exemple:XPATH Query Recursion

<root> 
    <Categories> 
    <Category> 
     <CategoryId>1</CategoryId> 
     <CategoryName>Cat 1</CategoryName> 
     <ChildCategories> 
      <Category> 
       <CategoryId>3</CategoryId> 
       <CategoryName>Cat 3</CategoryName> 
      </Category> 
     </ChildCategories> 
    </Category> 
    <Category> 
     <CategoryId>5</CategoryId> 
     <CategoryName>Cat 5 </CategoryName> 
    </Category> 
    </Categories> 
</root> 

En tant que tel, je dois pouvoir demander une requête spécifique catégorie ou catégorie enfant (ou même enfant d'un enfant, etc.) par sa valeur CategoryID. Est-ce faisable dans XPATH?

TIA

Répondre

9

Aucun problème. Utilisez // pour rechercher le document XML entier et les crochets pour filtrer par catégorie ID:

//Category[CategoryId=1] 
+0

Impressionnant. Merci. –