Schemat aplikacyjny GML dla Modelu Podstawowego
[code=xml]<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="
http://www.w3.org/2001/XMLSchema" xmlns:gml="
http://www.opengis.net/gml/3.2" xmlns:gco="
http://www.isotc211.org/2005/gco" xmlns:gmd="
http://www.isotc211.org/2005/gmd" xmlns:bt="urn:gugik:specyfikacje:gmlas:modelPodstawowy:1.0" targetNamespace="urn:gugik:specyfikacje:gmlas:modelPodstawowy:1.0" elementFormDefault="qualified" attributeFormDefault="unqualified">
<import namespace="
http://www.opengis.net/gml/3.2 "schemaLocation="
http://schemas.opengis.net/gml/3.2.1/gml.xsd"/>
<import namespace="
http://www.isotc211.org/2005/gmd" schemaLocation="
http://schemas.opengis.net/iso/19139/20070417/gmd/gmd.xsd"/>
<import namespace="
http://www.isotc211.org/2005/gmd" schemaLocation="
http://schemas.opengis.net/iso/19139/20070417/gmd/citation.xsd"/>
<import namespace="
http://www.isotc211.org/2005/gco" schemaLocation="
http://schemas.opengis.net/iso/19139/20070417/gco/gco.xsd"/>
<!-- ====================================== -->
<element name="BT_0biektPrzestrzenny" type="bt:BT_0biektPrzestrzennyType" abstract="true" substitutionGroup="gml:AbstractFeature"/>
<complexType name="BT_0biektPrzestrzennyType" abstract="true">
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="zbior" min0ccurs="0" max0ccurs="unbounded">
<annotation>
<appinfo>
<gml:targetElement>bt:BT_ZbiorDanychPrzestrzennych</gml:targetElement>
</appinfo>
</annotation>
<complexType>
<complexContent>
<extension base="gml:ReferenceType">
<attribute ref="gco:nilReason"/>
</extension>
</complexContent>
</complexType>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="BT_0biektPrzestrzennyPropertyType">
<sequence min0ccurs="0">
<element ref="bt:BT_0biektPrzestrzenny"/>
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup"/>
<attributeGroup ref="gml:0wnershipAttributeGroup"/>
</complexType>
<!-- ====================================== -->
<element name="BT_ReferencyjnyObiektPrzestrzenny" type="bt:BT_ReferencyjnyObiektPrzestrzennyType" abstract="true" substitutionGroup="bt:BT_ObiektPrzestrzenny"/>
<complexType name="BT_ReferencyjnyObiektPrzestrzennyType" abstract="true">
<complexContent>
<extension base="bt:BT_ObiektPrzestrzennyType">
<sequence>
<element name="idIIP" type="bt: BT_IdentyfikatorPropertyType"/>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="BT_ReferencyjnyObiektPrzestrzennyPropertyType">
<sequence minOccurs="0">
<element ref="bt:BT_ReferencyjnyObiektPrzestrzenny"/>
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup"/>
<attributeGroup ref="gml:OwnershipAttributeGroup"/>
</complexType>
<!-- ====================================== -->
<element name="BT_ZbiorDanychPrzestrzennych" type="bt:BT_ZbiorDanychPrzestrzennychType" substitutionGroup="gml:AbstractFeature"/>
<complexType name="BT_ZbiorDanychPrzestrzennychType">
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="idIIP" type="bt:BT_IdentyfikatorPropertyType"/>
<element name="metadane" type="gmd:MD_Metadata_PropertyType">
<annotation>
<appinfo>
<gml:targetElement>gmd:MD_Metadata</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="obiekt" type="bt:BT_ObiektPrzestrzennyPropertyType" minOccurs="0" maxOccurs="unbounded">
<annotation>
<appinfo>
<gml:targetElement>bt:BT_ObiektPrzestrzenny</gml:targetElement>
</appinfo>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="BT_ZbiorDanychPrzestrzennychPropertyType">
<sequence minOccurs="0">
<element ref="bt:BT_ZbiorDanychPrzestrzennych"/>
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup"/>
<attributeGroup ref="gml:OwnershipAttributeGroup"/>
</complexType>
<!-- ====================================== -->
<element name="BT_Identyfikator" type="bt:BT_IdentyfikatorType" substitutionGroup="gml:AbstractObject"/>
<complexType name="BT_IdentyfikatorType">
<sequence>
<element name="lokalnyId" type="string"/>
<element name="przestrzenNazw" type="string"/>
<element name="wersjaId" type="string" minOccurs="0"/>
</sequence>
</complexType>
<complexType name="BT_IdentyfikatorPropertyType">
<sequence>
<element ref="bt:BT_Identyfikator"/>
</sequence>
<attributeGroup ref="gml:OwnershipAttributeGroup"/>
</complexType>
<!-- ====================================== -->
<element name="BT_Zbior" type="bt:BT_ZbiorType" substitutionGroup="gml:AbstractObject"/>
<complexType name="BT_ZbiorType">
<sequence>
<element name="dataAktualizacji" type="date" minOccurs="0"/>
<element name="dataUtworzenia" type="date"/>
<element name="opis" type="string" minOccurs="0"/>
<element name="postacElektroniczna" type="boolean"/>
<element name="rozszerzenie" type="string" minOccurs="0" maxOccurs="unbounded"/>
<element name="autor" type="gmd:CI_ResponsibleParty_PropertyType" maxOccurs="unbounded"/>
<element name="tytul" type="string"/>
<element name="zasobSieciowy" type="gmd:CI_OnlineResource_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
<element name="rodzajZawartosci" type="bt: BT_RodzajElementuType" maxOccurs="unbounded"/>
</sequence>
</complexType>
<complexType name="BT_ZbiorPropertyType">
<sequence>
<element ref="bt:BT_Zbior"/>
</sequence>
<attributeGroup ref="gml:OwnershipAttributeGroup"/>
</complexType>
<!-- ====================================== -->
<element name="BT_CyklZyciaInfo" type="bt:BT_CyklZyciaInfoType" substitutionGroup="gml:AbstractObject"/>
<complexType name="BT_CyklZyciaInfoType">
<sequence>
<element name="poczatekWersjiObiektu" type="dateTime"/>
<element name="koniecWersji0biektu" type="dateTime" min0ccurs="0"/>
</sequence>
</complexType>
<complexType name="BT_CyklZyciaInfoPropertyType">
<sequence>
<element ref="bt:BT_CyklZyciaInfo"/>
</sequence>
<attributeGroup ref="gml:0wnershipAttributeGroup"/>
</complexType>
<!-- ====================================== -->
<element name="BT_0peratTech" type="bt:BT_0peratTechType" substitutionGroup="gml:AbstractFeature "/>
<complexType name="BT_0peratTechType">
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="dataUtworzenia" type="date"/>
<element name="id0pracowania" type="string" max0ccurs="unbounded"/>
<element name="metadane" type="gmd:MD_Metadata_PropertyType"/>
<element name="odniesienieDoBazy" type="bt:BT_BazaEnumerationType" max0ccurs="unbounded"/>
<element name="wykonawca" type="gmd:CI_ResponsibleParty_PropertyType"/>
<element name="zasiegRoboty" type="gml:LinearRingPropertyType"/>
<element name="zasobSieciowy" type="gmd:CI_0nlineResource_PropertyType" min0ccurs="0" max0ccurs="unbounded"/>
<element name="zawartosc" type="bt:BT_ZbiorPropertyType" max0ccurs="unbounded"/>
<element name="idZgloszenia">
<complexType>
<simpleContent>
<extension base="string">
<attribute ref="gco:nilReason"/>
</extension>
</simpleContent>
</complexType>
</element>
<element name="zleceniodawca">
<complexType>
<complexContent>
<extension base="gmd:CI_ResponsibleParty_PropertyType"/>
</complexContent>
</complexType>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name= "BT_OperatTechPropertyType">
<sequence>
<element ref="bt:BT_OperatTech"/>
</sequence>
<attributeGroup ref="gml:OwnershipAttributeGroup"/>
<attributeGroup ref="gml:AssociationAttributeGroup"/>
</complexType>
<!-- ====================================== -->
<simpleType name="BT_BazaEnumerationType">
<annotation/>
<restriction base="string">
<enumeration value="EGiB"/>
<enumeration value="GESUT"/>
<enumeration value="BDNMT"/>
<enumeration value="BDOrto"/>
<enumeration value="BDOT10k"/>
<enumeration value="BDOT500"/>
<enumeration value="BDSOG"/>
<enumeration value="BDZLiS"/>
<enumeration value="EMUiA"/>
<enumeration value="PRG"/>
<enumeration value="PRNG"/>
<enumeration value="PRPOG"/>
<enumeration value="RCiWN"/>
<enumeration value="BDOO"/>
</restriction>
</simpleType>
<!-- ====================================== -->
<simpleType name="BT_RodzajElementuType">
<union memberTypes="bt:BT_RodzajElementuEnumerationType bt:BT_RodzajElementuOtherType"/>
</simpleType>
<simpleType name="BT_RodzajElementuEnumerationType">
<restriction base="string">
<enumeration value="dowodyIKopieDoreczen">
<annotation/>
</enumeration>
<enumeration value="dziennikPomiaru">
<annotation/>
</enumeration>
<enumeration value="inny">
<annotation/>
</enumeration>
<enumeration value="protokol">
<annotation/>
</enumeration>
<enumeration value="roboczaBazaDanych">
<annotation/>
</enumeration>
<enumeration value="sprawozdanieTechniczne">
<annotation/>
</enumeration>
<enumeration value="szkicPomiarowy">
<annotation/>
</enumeration>
</restriction>
</simpleType>
<simpleType name="BT_RodzajElementu0therType">
<restriction base="string">
<pattern value="other: \w{2,}"/>
</restriction>
</simpleType>
<!-- ====================================== -->
<simpleType name="BT_UkladWysType">
<union memberTypes="bt:BT_UkladWysEnumerationTypebt:BT_UkladWys0therType"/>
</simpleType>
<simpleType name="BT_UkladWysEnumerationType">
<restriction base="string">
<enumeration value="Kronsztadt60"/>
<enumeration value="Kronsztadt86"/>
<enumeration value="Kronsztadt2006"/>
<enumeration value="Amsterdam55"/>
<enumeration value="Amsterdam2000"/>
<enumeration value="EUREF89"/>
<enumeration value="ETRF2000"/>
<enumeration value="ETRF2008"/>
<enumeration value="Pulkowo42"/>
<enumeration value="EVRS2007"/>
</restriction>
</simpleType>
<simpleType name="BT_UkladWys0therType">
<restriction base="string">
<pattern value="other: \w{2,}"/>
</restriction>
</simpleType>
<!-- ====================================== -->
<simpleType name="BT_UkladGeodType">
<union memberTypes="bt:BT_UkladGeodEnumerationType bt:BT_UkladGeod0therType"/>
</simpleType>
<simpleType name="BT_UkladGeodEnumerationType">
<restriction base="string">
<enumeration value="EUREF89"/>
<enumeration value="ETRF2000"/>
<enumeration value="ETRF2008"/>
<enumeration value="Pulkowo42"/>
<enumeration value="PUWP1992"/>
<enumeration value="PUWP2000"/>
<enumeration value="PUWP1965"/>
<enumeration value="PUWP1942"/>
<enumeration value="PUWPBG"/>
<enumeration value="UTM"/>
</restriction>
</simpleType>
<simpleType name="BT_UkladGeod0therType">
<restriction base="string">
<pattern value="other: \w{2,}"/>
</restriction>
</simpleType>
<!-- ====================================== -->
<element name="BT_ReferencjaDoObiektu" type="bt:BT_ReferencjaDoObiektuType" substitutionGroup="gml:AbstractObject"/>
<complexType name="BT_ReferencjaDoObiektuType">
<choice>
<element name="idIIP" type="bt:BT_IdentyfikatorPropertyType"/>
<element name="obiekt" type="gml:ReferenceType">
<annotation>
<appinfo>
<gml:targetElement>bt:BT_ReferencyjnyObiektPrzestrzenny</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="obiektKarto" type="bt:KR_ObiektKartoPropertyType" maxOccurs="unbounded">
<annotation>
<appinfo>
<gml:reversePropertyName>bt:obiektPrzedstawiany</gml:reversePropertyName>
</appinfo>
</annotation>
</element>
<element name="pktWysKarto" type="bt:KR_PktWysPropertyType" minOccurs="0">
<annotation>
<appinfo>
<gml:reversePropertyName>bt:obiektPrzedstawiany2</gml:reversePropertyName>
</appinfo>
</annotation>
</element>
<element name="liniaWysKarto" type="bt:KR_LiniaW ysPropertyType " minOccurs=" 0 " maxOccurs=" unbounded">
<annotation>
<appinfo>
<gml:reversePropertyName>bt:obiektyReferencyjne</gml:reversePropertyName>
</appinfo>
</annotation>
</element>
</choice>
</complexType>
<complexType name="BT_ReferencjaDoObiektuPropertyType">
<sequence>
<element ref="bt:BT_ReferencjaDoObiektu"/>
</sequence>
<attributeGroup ref="gml:OwnershipAttributeGroup"/>
</complexType>
<simpleType name="BT_ReferencjaDoObiektuUnionSemantics">
<restriction base="string">
<enumeration value="identyfikatorIIP"/>
</restriction>
</simpleType>
<!-- ====================================== -->
<element name="BT_Dokument" type="bt:BT_DokumentType" substitutionGroup="gml:Abstract0bject"/>
<complexType name="BT_DokumentType">
<sequence>
<element name="opis" type="string" min0ccurs="0"/>
<element name="rodzaj" type="bt:DC_Rodzaj DokumentuKodType"/>
<element name="status" type="bt:DC_StatusDokumentuKodType"/>
<element name="sygnatura" type="string" min0ccurs="0"/>
<element name="tytul" type="string"/>
<element name= "wydawca" type="string"/>
<element name="zasobSieciowy" type="gmd:CI_0nlineResource_PropertyType" min0ccurs="0" max0ccurs="unbounded"/>
<element name="data">
<complexType>
<simpleContent>
<extension base="date">
<attribute ref=" gco: nilReason" />
</extension>
</simpleContent>
</complexType>
</element>
</sequence>
</complexType>
<complexType name="BT_DokumentPropertyType">
<sequence>
<element ref=" bt: BT_Dokument" />
</sequence>
<attributeGroup ref="gml:0wnershipAttributeGroup"/>
</complexType>
<!-- ====================================== -->
<simpleType name="DC_Rodzaj DokumentuKodType">
<annotation/>
<union memberTypes="bt:DC_RodzajDokumentuKodEnumerationType bt:DC_RodzajDokumentuKod0therType"/>
</simpleType>
<simpleType name="DC_RodzajDokumentuKodEnumerationType">
<restriction base="string">
<enumeration value="decyzja"/>
<enumeration value="inny"/>
<enumeration value="orzeczenie"/>
<enumeration value="rozporzadzenie"/>
<enumeration value="protokol"/>
<enumeration value="uchwala"/>
<enumeration value="umowa"/>
<enumeration value="ustawa"/>
<enumeration value=" wyciagZKW" />
<enumeration value=" zarzadzenie" />
<enumeration value="zawiadomienie"/>
</restriction>
</simpleType>
<simpleType name="DC_RodzajDokumentuKodOtherType">
<restriction base="string">
<pattern value="other: \w{2,}"/>
</restriction>
</simpleType>
<!-- ====================================== -->
<simpleType name="DC_StatusDokumentuKodType">
<restriction base="string">
<enumeration value="obowiązujacy"/>
<enumeration value="nieobowiazujacy" />
</restriction>
</simpleType>
<!-- ====================================== -->
<element name="KR_ObiektKarto" type="bt:KR_ObiektKartoType" substitutionGroup="gml:AbstractFeature"/>
<complexType name="KR_ObiektKartoType">
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="mianownikSkali" type="integer"/>
<element name="kodKarto" type="string" min0ccurs="0"/>
<element name="geometriaKarto" type="gml:GeometricPrimitivePropertyType" maxOccurs="unbounded"/>
<element name="uwagi" type="string" min0ccurs="0"/>
<element name="etykieta" type="bt:KR_EtykietaType" minOccurs="0" maxOccurs="unbounded"/>
<element name="parametr" type="double" minOccurs="0" maxOccurs="unbounded"/>
<element name="warstwa" type="string" min0ccurs="0"/>
<element name="obiektPrzedstawiany1" type="bt: BT_ReferencjaDoObiektuPropertyType">
<annotation>
<appinfo>
<gml:reversePropertyName>bt:obiektKarto</gml:reversePropertyName>
</appinfo>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="KR_ObiektKartoPropertyType">
<sequence>
<element ref="bt:KR_ObiektKarto"/>
</sequence>
<attributeGroup ref="gml:OwnershipAttributeGroup"/>
<attributeGroup ref="gml:AssociationAttributeGroup"/>
</complexType>
<!-- ====================================== -->
<element name="KR_PktWys" type="bt:KR_PktWysType" substitutionGroup="gml:AbstractFeature"/>
<complexType name="KR_PktWysType">
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="polozenie" type="gml:DirectPositionType"/>
<element name="etykieta" type="bt:KR_EtykietaType"/>
<element name="rodzajPkt" type="bt:KR_RodzajPktuType"/>
<element name="obiektPrzedstawiany2" type="bt:BT_ReferencjaDoObiektuPropertyType" min0ccurs="0" max0ccurs="unbounded">
<annotation>
<appinfo>
<gml:reversePropertyName>bt:pktW ysKarto</gml:reversePropertyName>
</appinfo>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="KR_PktWysPropertyType">
<sequence>
<element ref="bt:KR_PktWys"/>
</sequence>
<attributeGroup ref="gml:0wnershipAttributeGroup"/>
<attributeGroup ref="gml:AssociationAttributeGroup"/>
</complexType>
<!-- ====================================== -->
<element name="KR_LiniaWys" type="bt:KR_LiniaWysType" substitutionGroup="gml:AbstractFeature"/>
<complexType name="KR_LiniaWysType">
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="geometriaKarto" type="gml:GeometricPrimitivePropertyType" max0ccurs="unbounded"/>
<element name="etykieta" type="bt:KR_EtykietaType" min0ccurs="0" max0ccurs="unbounded"/>
<element name="rodzajLinii" type="bt:KR_RodzajLiniiType"/>
<element name="obiektyReferencyjne" type="bt:BT_ReferencjaDo0biektuPropertyType" min0ccurs="0" max0ccurs="unbounded">
<annotation>
<appinfo>
<gml:reversePropertyName>liniaWysKarto</gml:reversePropertyName>
</appinfo>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="KR_LiniaWysPropertyType">
<sequence>
<element ref="bt:KR_LiniaWys"/>
&