2012-04-13 2 views
0

그래서 스키마를 만들려고합니다. 즉 하나의 스키마를 참조로 사용하고 결코 만지거나 다른 스키마를 만지거나 확장하거나 제한 할 수 있습니다. 내가 지금 당면하고있는 문제는 내가 구속 장치 케이스 -NameAndTypeOK3.2.5에 직면했다는 것입니다. XML 스키마 rcase-NameAndTypeOK.3.2.5 invalid

<!--Msg --> 
<xs:complexType name="Main"> 
    <xs:complexContent> 
     <xs:restriction base="B"> 
      <xs:sequence> 
       <xs:element name="B1" type="BType"/> 
       <xs:element name="B2" type="BType"/> 
       <xs:element name="B3" type="B3-Type"/> 
      </xs:sequence> 
     </xs:restriction> 
    </xs:complexContent> 
</xs:complexType> 
<!-- Types --> 
<xs:complexType name="B3-Type"> 
    <xs:complexContent> 
     <xs:extension base="BType"> 
      <xs:sequence> 
       <xs:element name="B-4"/> 
      </xs:sequence> 
     </xs:extension> 
    </xs:complexContent> 
</xs:complexType> 

<!-- Source --> 
<xs:complexType name="BType"> 
    <xs:sequence> 
     <xs:element name="B-1"/> 
     <xs:element name="B-2"/> 
     <xs:element name="B-3"/> 
    </xs:sequence> 
</xs:complexType> 
<xs:complexType name="B"> 
    <xs:sequence> 
     <xs:element name="B1" type="BType"/> 
     <xs:element name="B2" type="BType"/> 
     <xs:element name="B3" type="BType"/> 
    </xs:sequence> 
</xs:complexType> 

나는 주위에 일이, 그리고 메인에 제한을 제거하고 있습니다. Main에서 제한을 제거하지 않고 다른 해결 방법이 있습니까? 내가 뭘 잘못하고 있니?

답변

0

나는 또 다른 해결 방법을 볼 수 없습니다 - 문제는 정의 된 Main가 제한도 B의 확장되지 않는 것입니다 - 그것은 B 같은 요소 B3를 포함하지만, 할 수있는 한 추가 하위 요소 B-4와.

는 기본 하나 아마 다른 다른 동일 일부 선언 고정 된 기본 스키마 다음 파생 된 스키마를 갖고 싶어

당신은 당신의 도움을 xsd:redefine

+0

감사를 사용해야합니다! – user1330885

+0

오신 것을 환영합니다.별로 안타깝지만 – MiMo