2013-07-08 2 views
2

XML::LibXML::Node의 범위에서 모든 네임 스페이스를 가져와야합니다. 모듈은 getNamespaces() 방법이 있지만 문서는 명시 적으로XML :: LibXML로 범위에있는 모든 네임 스페이스 가져 오기

범위에있는 모든 네임 스페이스를 반환하지 않습니다 말한다,하지만 사람은 해당 노드에 대한 명시 적으로 선언했다.

그래서 특정 노드의 범위에서 모든 네임 스페이스를 얻으려면 어떻게해야합니까?

답변

3

나는이 작업을 수행하는 모든 기능을 찾을 수 없습니다,하지만 XPath를 함께 확실히 가능하다 : $node 볼 수 범위에서 네임 스페이스를 모두 반환

@nodes = $node->findnodes('namespace::*'); 

합니다. 반환 된 XML :: LibXML :: Node :: Namespace 객체에서 접두사와 URI를 가져올 수 있습니다.