안녕하세요, XML의 전자 학습 세션에서 수행해야 할 작업이 있습니다. 모든 문자열 값과 xml (요소 및 특성) 내부에서 발생하는 모든 정수 값을 제한해야합니다. 나는 그 값이 같은 타입 인 경우를 다루는 데 아무런 문제가 없었습니다. 하나가 정수이고 다른 하나가 문자열 일 때 어떻게 작동해야하는지 고민하고 있습니다. xml 파일은 다음과 같습니다. XML/XSD에서 복합 유형 (정수 및 문자열)을 사용하는 제한 사항을 사용하여 complexType을 어떻게 변경합니까?
<car id="5">
<brand origin="Italy">Lamorghini</brand>
<model body="sedan">Huracan</model>
<year>2017</year>
<cc engineType="gasoline">5204</cc>
<registered>Switzerland</registered>
</car>
은 지금은 내 주요 관심사 인 요소
"CC"에 집중하고있다. 그것이 특성을 가지고 있기 때문에 내가 이해할 수 있듯이 그것은
complextype 일 수있다. 그러나 요소의 값이 정수 (simpleType)이기 때문에 검사기는 오류를 준다.
<xsd:complexType name="TypeCC">
<xsd:restriction base="xsd:integer">
<xsd:minInclusive value="330"/>
<xsd:maxInlcusive value="8277"/>
</xsd:restriction>
</xsd:complexType>
나는 여러 가지 방법을 시도하지만, 그들 중 누구도 일하지, 나는 약간의 이해를 놓치고 가정합니다. 검사기는 예상대로 염려하는 것으로 기본 유형을 지정합니다.
나는 또한 위의 XML의 모든 속성이 <xsd:sequence/>
의 외부에 배치하도록되어 있는지 알고 싶었지만, 복합 타입 요소 자동차의 내부? 아래 예제와 같이?
<xsd:complexType name="TypeCar">
<xsd:sequence>
<xsd:element name="brand" type="TypeBrand"/>
.
.
.
</xsd:sequence>
<xsd:attribute name="id" type="xsd:integer" use="required"/>
.
.
<xsd:attribute name="engineType" type="TypeEngine"/>
</xsd:complexType
게시 능력이 부족한 것에 대해 용서해주십시오. 요약하면 혼합 유형 및 올바른 속성 배치에 대한 문제를 해결하는 방법을 알고 싶습니다. 답변을 주셔서 감사합니다. 에 관한
xcd : 정수 유형을 '단순한 내용의 복합 유형'(이 단계에서는 속성을 추가 할 수 있음)으로 확장 한 다음 적절한 범위로 제한하거나 먼저 xsd : 적절한 범위로 확장 한 다음이를 확장하는 복합 유형을 정의합니다. –