2009-11-13 4 views
0

다음은 과제의 일부로 처리해야하는 xml 파일입니다.java dom 파서로 XML 구문 분석이 xml 선언을 요소로 변환합니다.

<?xml-stylesheet type="text/xsl" href="people.xsl"?> 
<People> 
    <Person> 
    `...` 
    </Person> 

    `...` 
</People> 

돔 구문 분석기를 만들기 위해 "javax.xml.parsers.DocumentBuilderFactory"를 사용하고 있습니다. 구문 분석 후에 결과 문서에는 루트에 People이 없지만 xml-stylesheet 및 People으로 하위가있는 루트가 있습니다.

이렇게 보이는 것은 피할 수 있습니다.

+0

여기에 질문이 없습니다. 어떻게 하시겠습니까? 또한 숙제 인 경우 태그를 붙이십시오. – dajobe

답변

1

<?xml-stylesheet ... ?>은 XML 선언이 아닙니다. 이는 처리 명령 (PI)이며 DOM 스펙은 문서 노드에 0 개 이상 포함될 수 있다고 말합니다.

한 가지 방법은 문서 노드에서 PI를 적절하게 처리 (예 : 무시)하도록 애플리케이션을 코딩하는 것입니다. 또는 Document 노드의 documentElement 속성/getter를 사용하여 루트 요소를 직접 가져올 수 있습니다.

+1

명확히하기 : 아무것도 '개조'되지 않았습니다. XML DOM Document 노드는 여러 자식을 가질 수 있습니다. 그 중 하나가 루트 요소입니다. 나머지는 처리 지침 또는 주석입니다. – bmargulies

관련 문제