I'd like to define a schema that contains elements specifying an XML schema type. This question may be related to the XML Schema for schemas and this question.
Here's what I have so far:
<xs:complexType name="metatype">
<xs:sequence>
<xs:element name="datatype" type="datatype" minOccurs="0" maxOccurs="1"/>
<xs:element name="location" type="locationtype" minOccurs="0"maxOccurs="unbounded"/>
<xs:element name="alias" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="id" type="xs:ID" use="required"/>
<xs:attribute name="editable" type="xs:boolean" default="false" use="optional"/>
<xs:attribute name="forcedvisible" type="xs:boolean" default="false" use="optional"/>
</xs:complexType>
where datatype is:
<xs:complexType name="datatype">
<xs:sequence>
<xs:element name="restriction">
<xs:complexType>
<xs:sequence>
<xs:element name="enumeration">
<xs:complexType>
<xs:attribute name="value" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="base" type="xs:string" use="required"/>
<!-- type xs:string is not accurate for XML Schema type -->
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
Instead of declaring datatype I'd like to use the localSimpleType
in the Schema for schemas or at least the simpleRestrictionType
but my XML Schema editor (Visual Studio) does not seem to recognize these types. Is there another XML Schema document that I need to reference? I'd really like to avoid defining the whole XML Schema simpleType
element and its subtags for restrictions, etc..