주어진 이름으로 모든 속성을 선택하면 powershell을 통해 전체 xpath를 가져올 수 있습니까?전체 속성 (// @ lang)을 전달하면 전체 xpath를 표시 할 수있는 방법이 있습니까?
내 xml 파일의 이름은 lang입니다. // @ lang을 사용하여 속성 값을 찾습니다.
xpath [full/root/child/@ 속성을 얻을 수 있으면 혼란을 피할 수 있습니다.
주어진 이름으로 모든 속성을 선택하면 powershell을 통해 전체 xpath를 가져올 수 있습니까?전체 속성 (// @ lang)을 전달하면 전체 xpath를 표시 할 수있는 방법이 있습니까?
내 xml 파일의 이름은 lang입니다. // @ lang을 사용하여 속성 값을 찾습니다.
xpath [full/root/child/@ 속성을 얻을 수 있으면 혼란을 피할 수 있습니다.
No.
.NET에는 "주어진 노드에서 XPath 표현식 만들기"기능이 없습니다. 이론적으로 이것은 쉽습니다 (부모에게 반복, 각 레벨에서 형제의 기수 번호를 /node[n]/node[n]/...
으로 만드는 것). 실제로 이러한 XPath 표현은 특정 문서에 묶여 있기 때문에 쓸모가 없습니다.
일치하는 스키마의 다른 문서는 각 레벨마다 다른 수의 하위를 가질 가능성이 있으며 순서가 다를 수 있습니다. 그러한 XPath는 동등한 노드를 찾지 못합니다.
고려 :
<root>
<child1 attr1='foo'/>
</root>
및
<root>
<child1 attr1='bar'/>
<child1 attr1='foo'/>
</root>
첫 번째 문서에서 생성 된 표현 /root/child1[1]/@attr1
다른 발견 할 것이다 -이기는하지만 비슷한 - 두 번째의 노드.