2011-04-19 3 views
6

동일한 특성을 갖고 있지만 다른 하위 노드 값을 갖는 두 개의 요소가 있습니다. 속성 및 하위 노드 값과 일치하는 특정 요소를 찾으려면 쿼리 할 수 ​​있습니다. 구체적으로 말하면, 이것은 쿼리에 사용하는 샘플 XML입니다 (원본 xml의 각 요소에는 10 개 이상의 자식 노드가 있음).속성 및 하위 노드 값과 일치하는 조건이있는 요소를 찾기위한 xpath 쿼리

<Book size="2"> 
    <Title>abc</Title> 
    <Price>10</Price> 
</Book> 
<Book size="2"> 
    <Title>xyz</Title> 
    <Price>20</Price> 
</Book> 
<Book size="4"> 
    <Title>Harry</Title> 
    <Price>10</Price> 
</Book> 

그래서, 지금은 @size = "2"Title = xyz이있는 도서 요소를 찾고 싶어요.

SelectSingleNode 방법을 사용하면 가능합니까? 이 쿼리 방법이 아닌 경우?

감사합니다.

+0

[Xpath 표현식이 여러 조건어] 가능한 복제본 (http://stackoverflow.com/questions/568713/xpath-expression-with-multiple-predicates) –

답변

12

이 :

//Book[@size='2'][Title='xyz'] 

또는이 : 스키마가 알려진 경우 //의 사용이 권장되지 것을

//Book[@size='2' and Title='xyz'] 

참고.

1

이 방법이 유용합니까?

//Book[@size='2']//Title[text() = "xyz"]/.. 
관련 문제