<?xml version="1.0" encoding="UTF-8" ?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://fdo.osgeo.org/schemas/feature/unsupported" xmlns:fdo="http://fdo.osgeo.org/schemas" xmlns:gml="http://www.opengis.net/gml" xmlns:unsupported="http://fdo.osgeo.org/schemas/feature/unsupported" xmlns:other="http://fdo.osgeo.org/schemas/feature/other" xmlns="http://fdo.osgeo.org/schemas/feature/unsupported" elementFormDefault="unqualified" xml:lang="English" blockDefault="restriction" finalDefault="extension" attributeFormDefault="qualified" version="1.0"> <xs:annotation> <xs:documentation xml:lang="French" source="http://www.autodesk.com"/> <xs:appinfo source="http://www.autodesk.com"> <badinfo /> </xs:appinfo> </xs:annotation> <xs:include schemaLocation="more_stuff.xsd" /> <xs:import namespace="gml" schemaLocation="gml.xsd" /> <xs:import namespace="fdo" schemaLocation="fdo.xsd" /> <xs:element name="BadElement" type="xs:double"> <xs:unique name="BadElementAKey"> <xs:annotation> <xs:documentation /> </xs:annotation> <xs:selector xpath=".//BadElement" /> <xs:field xpath="BadElement"> <xs:annotation> <xs:documentation /> </xs:annotation> </xs:field> </xs:unique> </xs:element> <xs:element name="BadElement2" ref="BadElement" /> <xs:element name="CrossSchema" type="other:CrossSchemaType" /> <xs:simpleType name="badSimpleType"> <xs:restriction base="xs:string" /> </xs:simpleType> <xs:group name="badgroup"> <xs:sequence> <xs:element name="e1" type="xs:int" /> <xs:element name="e2" type="xs:string" /> </xs:sequence> </xs:group> <xs:attributeGroup name="badAttGroup"> <xs:attribute name="att1" type="xs:string" /> <xs:attribute name="att2" type="xs:int" /> </xs:attributeGroup> <xs:attribute name="badGblAtt" type="xs:string" /> <xs:redefine schemaLocation="badlocation.xsd" /> <xs:notation name="badnotation" public="yes" system="yes" /> <xs:complexType id="1" name="BadWithSimpleContent" abstract="false" block="restriction" final="extension" mixed="true"> <xs:annotation> <xs:documentation /> </xs:annotation> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="badAtt" type="xs:int" /> </xs:extension> </xs:simpleContent> </xs:complexType> <xs:complexType name="BadWithGroup"> <xs:group ref="badGroup" /> <xs:attribute name="badAtt" type="xs:int" /> <xs:attributeGroup ref="badAttGroup" /> <xs:anyAttribute namespace="fdo" /> </xs:complexType> <xs:complexType name="BadWithAll"> <xs:all> <xs:element name="e1" type="xs:int" /> <xs:element name="e2" type="xs:string" /> </xs:all> </xs:complexType> <xs:complexType name="BadWithChoice"> <xs:choice> <xs:element name="e1" type="xs:int" /> <xs:element name="e2" type="xs:string" /> </xs:choice> </xs:complexType> <xs:element name="ReferenceClass" type="unsupported:ReferenceClass" abstract="true" substitutionGroup="gml:_Feature" block="#all" default="yes" final="extension" fixed="yes" form="qualified" id="2" nillable="true"> <xs:key name="ReferenceClassKey"> <xs:annotation> <xs:documentation /> </xs:annotation> <xs:selector xpath=".//ReferenceClass" /> <xs:field xpath="BadElement"> <xs:annotation> <xs:documentation /> </xs:annotation> </xs:field> </xs:key> </xs:element> <xs:complexType name="ReferenceClass" abstract="false"> <xs:annotation> <xs:documentation /> </xs:annotation> <xs:sequence> <xs:element ref="BadElement" /> <xs:element name="Prop2"> <xs:complexType> <xs:sequence> <xs:element name="Prop3" type="xs:string" /> <xs:element ref="BadElement" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element ref="gml:_Geometry"/> <xs:element name="Prop6" ref="gml:Point" /> <xs:element name="BadCount" type="unsupported:ReferenceClass" maxOccurs="5"/> <xs:element name="DataProp"> <xs:simpleType final="true"> <xs:annotation> <xs:documentation /> </xs:annotation> <xs:union/> <xs:list/> <xs:restriction base="xs:decimal"> <xs:annotation> <xs:documentation /> </xs:annotation> <xs:minInclusive value="5"/> <xs:fractionDigits value="3"/> <xs:totalDigits value="3"/> <xs:pattern value="99.9"/> <xs:maxLength value="8"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="stringProp"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:minInclusive value="5"/> <xs:fractionDigits value="3"/> <xs:totalDigits value="3"/> <xs:maxLength value="8"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="otherProp"> <xs:simpleType> <xs:restriction base="xs:double"> <xs:minInclusive value="5"/> <xs:fractionDigits value="3"/> <xs:totalDigits value="3"/> <xs:maxLength value="8"/> </xs:restriction> </xs:simpleType> </xs:element> </xs:sequence> </xs:complexType> <xs:complexType name="BadSubClass" abstract="false"> <xs:complexContent mixed="true"> <xs:annotation> <xs:documentation>Bad documentation</xs:documentation> </xs:annotation> <xs:extension base="unsupported:ReferenceClass"> <xs:annotation> <xs:documentation>Bad documentation</xs:documentation> </xs:annotation> <xs:sequence> <xs:element name="assoc_prop"> <xs:keyref name="assoc_prop" refer="unsupported:ReferenceClassKey"> <xs:annotation> <xs:documentation/> </xs:annotation> <xs:selector xpath=".//BadSubClass"> <xs:annotation> <xs:documentation/> </xs:annotation> <xs:field xpath="BadElement"> <xs:annotation> <xs:documentation/> </xs:annotation> </xs:field> </xs:selector> </xs:keyref> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="BadSubClassWithGroup" abstract="false"> <xs:complexContent > <xs:extension base="unsupported:ReferenceClass"> <xs:group ref="badGroup" /> <xs:attribute name="badAtt" type="xs:int" /> <xs:attributeGroup ref="badAttGroup" /> <xs:anyAttribute namespace="fdo" /> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="BadSubClassWithAll" abstract="false"> <xs:complexContent > <xs:extension base="unsupported:ReferenceClass"> <xs:all> <xs:element name="e1" type="xs:int" /> <xs:element name="e2" type="xs:string" /> </xs:all> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="BadSubClassWithChoice" abstract="false"> <xs:complexContent > <xs:extension base="unsupported:ReferenceClass"> <xs:choice> <xs:element name="e1" type="xs:int" /> <xs:element name="e2" type="xs:string" /> </xs:choice> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="Type" abstract="false"/> </xs:schema>