XSD

2012-12-21 4 views
2
와 XML의 요소 카디널리티의 유효성을 검사

내 XML 텍스트는이처럼 보였다 '기본'은 정확히 한 번만 표시되어야하며 모든 요소는 순서에 관계없이 지정할 수 있습니다.XSD

"xsd : all"은 0 또는 1 회만 허용됩니다. "xsd : sequece"는 요소가 순서대로 표시되어야 함을 의미합니다.

이 유효성 검사를 수행하려면 어떻게해야합니까?

+0

"접두사"라고 말하면 "요소"라고 생각합니다. –

답변

0

요약하면 불가능합니다. XML 스키마는 요소 수를 집계하기 위해 명령에 의존합니다 ("all"제외). 또한 대부분의 "마샬링"라이브러리에는 주문이 필요합니다. XML 파일을 제어 할 수 없다면 XSL로 변환 한 다음 유효성을 검사하는 것이 좋습니다.

<xsl:template match="/"> 
    <xsl:element name="root"></xsl:element> 
    <xsl:for-each select="create"> 
     <xsl:copy-of select="."/> 
    </xsl:for-each> 
    <xsl:for-each select="createname"> 
     <xsl:for-each select="createname"></xsl:for-each> 
    </xsl:for-each> 
    </xsl:template> 
+1

대부분이 문제를 해결하려고합니다. "모든 요소는 순서에 상관없이 사용할 수 있습니다." –