xml에는 사람 목록, 데이터베이스 ID 및 이들 간의 관계 목록이 있습니다. 나는 자바에서 XSLT 1.0을 사용하여 생성하고 싶습니다 xsl 상관 관계를 색인하기위한 식별자
<root>
<person>
<id>1000</id>
<name>p1</name>
</person>
<person>
<id>1001</id>
<name>p2</name>
</person>
<rel>
<personid>1001</personid>
<personid>1000</personid>
</rel>
</root>
다음 :
person 2 relates to person 1.
논리가 나타나는 순서에 따라 사람의 인덱스를 보여주는 것입니다 그것은 다음과 같습니다 XML로.
나의 현재 아이디어 :
- 자바에서 XML을 전처리와 함께 XSL에 PARAM으로지도를 보내 [person_id로, person_index] 다음 각 관계에 대한 XPath를 만드는 person_id로
- 에서 person_index를 얻을 수 xsl에서 주어진 id로 사람의 인덱스를 찾는다. (xpath를 만들지는 모르겠지만)
- java에서 전처리하고 맵을 구성하여이를 ThreadLocal 변수에 넣은 다음 xsl에서 다른 것을 호출한다. 이 ThreadLocal을 사용하여 사람 ID에서 사람 색인을 얻는 방법
다른 모든 아이디어는 잘하면 매우 간단합니다.
감사합니다.
이 질문에 대한 대답은 아니지만 단일 데이터 필드에 특성을 사용하는 것이 좋습니다. 예를 들어, 대신 을 사용할 수 있습니다. 읽기 쉽고 SAX로 더 쉽게 파싱 할 수 있습니다. –
고마워, 실제로 XML 구조체를 제어하지 못한다. 다른 응용 프로그램에서 온 것이다. –