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="xlinks.xsd"/>
|
11
|
<xs:import namespace="http://www.opengis.net/gml" schemaLocation="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>
|