1<?xml version="1.0" encoding="UTF-8"?> 2<xs:schema targetNamespace="http://www.isotc211.org/2005/gco" elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns:gco="http://www.isotc211.org/2005/gco" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:gml="http://www.opengis.net/gml"> 3 <!-- ================================= Annotation ================================ --> 4 <xs:annotation> 5 <xs:documentation>This schema provides: 6 1. tools to handle specific objects like "code lists" and "record"; 7 2. Some XML types representing that do not follow the general encoding rules.</xs:documentation> 8 </xs:annotation> 9 <!-- ================================== Imports ================================== --> 10 <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="../../../../xlink/1.0.0/xlinks.xsd"/> 11 <xs:import namespace="http://www.opengis.net/gml" schemaLocation="../gml/gml.xsd"/> 12 <!-- ########################################################################### --> 13 <!-- ########################################################################### --> 14 <!-- =========================================================================== --> 15 <!-- ========================= IM_Object: abstract Root ============================= --> 16 <!--================= Type ===================--> 17 <xs:complexType name="AbstractObject_Type" abstract="true"> 18 <xs:sequence/> 19 <xs:attributeGroup ref="gco:ObjectIdentification"/> 20 </xs:complexType> 21 <!--================= Element =================--> 22 <xs:element name="AbstractObject" type="gco:AbstractObject_Type" abstract="true"/> 23 <!-- ========================================================================== --> 24 <!-- ====================== Reference of a resource =============================== --> 25 <!--The following attributeGroup 'extends' the GML gml:AssociationAttributeGroup--> 26 <xs:attributeGroup name="ObjectReference"> 27 <xs:attributeGroup ref="xlink:simpleLink"/> 28 <xs:attribute name="uuidref" type="xs:string"/> 29 </xs:attributeGroup> 30 <!--================== NULL ====================--> 31 <xs:attribute name="nilReason" type="gml:NilReasonType"/> 32 <!--=============== PropertyType =================--> 33 <xs:complexType name="ObjectReference_PropertyType"> 34 <xs:sequence/> 35 <xs:attributeGroup ref="gco:ObjectReference"/> 36 <xs:attribute ref="gco:nilReason"/> 37 </xs:complexType> 38 <!-- ========================================================================== --> 39 <!-- ====================== Identification of a resource ============================== --> 40 <xs:attributeGroup name="ObjectIdentification"> 41 <xs:attribute name="id" type="xs:ID"/> 42 <xs:attribute name="uuid" type="xs:string"/> 43 </xs:attributeGroup> 44 <!-- ========================================================================== --> 45 <!-- ====================== The CodeList prototype ================================= --> 46 <!--It is used to refer to a specific codeListValue in a register--> 47 <!--================= Type ==================--> 48 <xs:complexType name="CodeListValue_Type"> 49 <xs:simpleContent> 50 <xs:extension base="xs:string"> 51 <xs:attribute name="codeList" type="xs:anyURI" use="required"/> 52 <xs:attribute name="codeListValue" type="xs:anyURI" use="required"/> 53 <xs:attribute name="codeSpace" type="xs:anyURI"/> 54 </xs:extension> 55 </xs:simpleContent> 56 </xs:complexType> 57 <!-- ========================================================================== --> 58 <!-- ========================== The isoType attribute ============================== --> 59 <xs:attribute name="isoType" type="xs:string"/> 60 <!--==============End================--> 61</xs:schema> 62