2016-11-09 6 views
0

내 XML에는 ID와 REF 속성이 있습니다.Xquery : REF/ID에서 정보를 추출하는 방법

<library> 
<book ID="123"> 
    <author ref="33"></author> 
    <Info>Vulpes Vulpes, Canis Lupus</info> 
    <about>Programming</about> 
</book> 

<author ID="33"> 
    <firstname>John</firstname> 
    <lastname>McLovin</lastname> 
</author> 
</library> 

그래서 나는 저자에 대한 정보를 추출하기 위해 XQuery를 사용하려는 책에서 REF 속성을 사용하여 : 아래

간체. 이 방법
for $x in library/book 
where $x/about = "programming" 
return data ($x/library/book/author/@ref) 

제가

는 refnumber 33를 추출하지만 ID = "33"의 위치에 = "33"지점을 심판 데이터를 원한다. 나는 결과로 이름과 성을 원합니다.

이것이 가능합니까? 이렇게하지 않으면 어떻게 가능합니까?

답변

0
for $x in library/book 
where $x/about = "Programming" 
return data (library/author[@ID=$x/author/@ref]) 
+0

대체 솔루션이 있습니까? 이것은 효과가없는 것 같습니다. 솔루션의 $ x가 작성자의 ID와 동일합니까? – Magnus

+0

[hier] (http://www.xpathtester.com/xquery)에서 확인했지만 xml 코드 조각을 수정해야합니다. 닫는 태그에서. 결과적으로 나는 John McLovin을 얻는다. 그게 니가 필요한거야? –

+0

Nevermind, 나는 마침내 귀하의 질의와 귀하의 링크 및 솔루션 덕분에 그것이 어떻게 작동 하는지를 이해했습니다. 고마워요! – Magnus