2012-03-29 1 views
0

이 작업을 위해 XSD 스키마를 작성할 수 있습니까? 범주은 다른 범주 (동일한 이름) 내에서 반복됩니다.이 XML은 합법적이며 XSS를 생성 할 수 있습니까?

<list> 
     <category name="..."> 
       <category name="Cats"> 
        <subcategory>Syamese</subcategory> 
       </category> 
     </category> 
     <category name="..."> 
       <category name="Dogs"> 
        <subcategory>Fox Terier</subcategory> 
       </category> 
     </category> 
</list> 

나의 현재 XSD는 다음이있다 (미안. XML 스키마에 새로 온 사람), 그러나 그것은 단지 하나의 카테고리 래퍼 만 좋다.

<xs:element name="category"> 
    <xs:complexType> 
     <xs:sequence> 
      <xs:element name="category"> 
       <xs:complexType> 
        <xs:sequence minOccurs="0"> 
         <xs:element ref="category"/> 
         <xs:element maxOccurs="unbounded" ref="subcategory"/> 
        </xs:sequence> 
       </xs:complexType> 
      </xs:element> 
     </xs:sequence> 
    </xs:complexType> 
</xs:element> 

나는 카테고리 중 하나의 이름을 바꾸는 것이 좋습니다. 하지만 어쨌든 이것을 할 수 있습니까?

답변

2

네, 맞습니다. 아마도 편리하지 않을 수 있습니다. XHTML을 생각해보십시오. div에서 div의 div를 중첩 할 수 있습니다 ... 카테고리의 카테고리와 같습니다.

귀하의 XSD에 목록 요소 부분이 누락되었습니다.

+0

이것은 DOMDocument :: shemaValidate()를 전달하지 못합니다. – valk

관련 문제