다음은 내가 풀려고하는 문제입니다. 한 노드가 다른 여러 노드를 참조 할 수있게하고 싶습니다. 이와 같이 :XML 스키마를 사용하면 모든 노드에 선택적 속성을 지정할 수 있습니까?
<ranges>
<range localid="0001">2013-05-06</range>
<range localid="0010">2014-01-02</range>
<range localid="0100">2014-03-09</range>
<range localid="1000">2014-11-12</range>
</ranges>
<speakers>
<speaker crossrefs="0011">Sagan</speaker>
<speaker crossrefs="1010">Krauss</speaker>
</speakers>
일종의 비트 필드를 사용하면 내 "스피커"노드가 여러 날짜 범위를 참조 할 수 있습니다. 그러나 "스피커"가이 방식으로 상호 참조하기를 원하는 유일한 노드는 아닙니다. 나는 다른 많은 노드와 하위 노드를 가지고 있으며, 스키마에서 생성하는 모든 노드에 "crossrefs"속성을 추가하는 것을 피하고 싶습니다. 스키마는 새로운 요소 유형을 추가 할 때 매우 유동적입니다. xml에 문서의 모든 노드에 대한 선택적 특성으로 "crossrefs"를 선언 할 수있는 것이 있습니까?
이것은 모든 노드에서 xml이 허용하는 "id"속성과 같습니다. 나는 "id"속성이 정의 된 방법을보기 위해 xml 스키마 용 스키마를 보았지만 내가 찾고있는 것과 비슷한 그 어떤 것도 볼 수 없다. 이것을 할 수있는 방법이 있습니까?
나는 이미 XML 상호 참조를 조사해 보았습니다. 크로스 레퍼런스를 이해하는 한 적어도 그 문제는 교차 참조로 작동하는 다른 노드를 갖기 위해 모든 노드에 서브 노드를 추가해야한다는 것입니다. 추한. 이런 종류의 일을 덜 못 생기는 방법이 있습니까?
편집 : 그것은 this 내가 부탁 해요 질문과 동일 할 수 있다는 것,하지만 지금까지 내 머리 내가 정말 동일 여부를 알 수없는입니다
.
XSLT your XSD? * 찡그린 * – user2864740
오, 이런, XSLT? 나는 아무것도 할 수 있기 전에 XML 스키마에서 박사 학위를 받아야 할 것입니다. 하하. – GreatBigBore
그것은 snippity 코멘트였습니다 - 저는 SPS에서 XLST 1의 XSD와 ... 그리고 악몽에 대해서만 아주 친숙했습니다. – user2864740