<?xml version="1.0" encoding="iso-8859-1" ?>
<!--  File: S_Allgemeine_Geometrieobjekte.xsd  -->
<schema targetNamespace="http://schema.okstra.de/1015/okstra"
    xmlns="http://www.w3.org/2001/XMLSchema"
    xmlns:okstra="http://schema.okstra.de/1015/okstra"
    xmlns:xlink="http://www.w3.org/1999/xlink"
    xmlns:gml="http://www.opengis.net/gml"
    elementFormDefault="qualified"
    version="1.015">
    <annotation>
        <appinfo source="urn:okstra:schema-S_Allgemeine_Geometrieobjekte:v1.015">S_Allgemeine_Geometrieobjekte.xsd v1.015</appinfo>
        <documentation xml:lang="de">
            GML-Anwendungsschema fuer OKSTRA(R) XML 1.015, Schema S_Allgemeine_Geometrieobjekte
        </documentation>
    </annotation>
    <!--  Basis-Schema einbeziehen  -->
    <include schemaLocation="okstra_basis.xsd" />
    <!--  verwendete externe Schemata direkt importieren  -->
    <import namespace="http://www.opengis.net/gml" schemaLocation="./gml/gmlProfileOKSTRA.xsd"/>
    <import namespace="http://www.w3.org/1999/xlink" schemaLocation="./xlink/xlinks.xsd"/>
    <!-- -->
    <!-- ========================================================== -->
    <!-- = globale Elemente fuer instanzierbare ENTITYs im Schema = -->
    <!-- = S_Allgemeine_Geometrieobjekte                          = -->
    <!-- ========================================================== -->
    <!-- -->
    <element name="allgemeines_Punktobjekt" type="okstra:allgemeines_PunktobjektType" substitutionGroup="okstra:_OKSTRAObjekt" />
    <element name="Symbol" type="okstra:SymbolType" substitutionGroup="okstra:_OKSTRAObjekt" />
    <element name="allgemeines_Linienobjekt" type="okstra:allgemeines_LinienobjektType" substitutionGroup="okstra:_OKSTRAObjekt" />
    <element name="allgemeines_Flaechenobjekt" type="okstra:allgemeines_FlaechenobjektType" substitutionGroup="okstra:_OKSTRAObjekt" />
    <element name="DGM" type="okstra:DGMType" substitutionGroup="okstra:_OKSTRAObjekt" />
    <element name="Dreieck" type="okstra:DreieckType" substitutionGroup="okstra:_OKSTRAObjekt" />
    <element name="Beschriftung" type="okstra:BeschriftungType" substitutionGroup="okstra:_OKSTRAObjekt" />
    <element name="Bestandsplan" type="okstra:BestandsplanType" substitutionGroup="okstra:_StreckenobjektHist" />
    <element name="Blattschnitt" type="okstra:BlattschnittType" substitutionGroup="okstra:_OKSTRAObjekt" />
    <!-- -->
    <!-- ============================================================== -->
    <!-- = globale complexTypes fuer instanzierbare ENTITYs im Schema = -->
    <!-- = S_Allgemeine_Geometrieobjekte                              = -->
    <!-- ============================================================== -->
    <!-- -->
    <complexType name="allgemeines_PunktobjektType">
        <complexContent>
            <extension base="okstra:AbstractOKSTRAObjektType">
                <sequence>
                    <!-- Eigenschaften OKSTRA_Objekt -->
                    <element name="OKSTRA_ID" 
                        type="okstra:GUID" minOccurs="0"/>
                    <element name="zu_Beschriftung" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Beschriftung</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <element name="zu_Kommunikationsobjekt" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Kommunikationsobjekt</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <!-- Darstellung punktfoermiger Geometrie/Topologie -->
                    <choice minOccurs="0">
                        <element name="dargestellt_von_Punkt" type="gml:PointPropertyType" maxOccurs="unbounded"/>
                        <element name="dargestellt_von_Knoten" type="gml:DirectedNodePropertyType" maxOccurs="unbounded"/>
                    </choice>
                    <!-- Eigenschaften allgemeines_Punktobjekt -->
                    <element name="Punktnummer" 
                        type="string" minOccurs="0"/>
                    <element name="fachliche_Bedeutung" 
                        type="string"/>
                    <element name="DGM_proprietaer" 
                        type="integer" minOccurs="0"/>
                    <element name="hat_Symbol" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Symbol</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>mit_Bezug_auf_allg_Punktobjekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <element name="in_Dreieck" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Dreieck</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>hat_Punkte</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
    <complexType name="SymbolType">
        <complexContent>
            <extension base="okstra:AbstractOKSTRAObjektType">
                <sequence>
                    <!-- Eigenschaften OKSTRA_Objekt -->
                    <element name="OKSTRA_ID" 
                        type="okstra:GUID" minOccurs="0"/>
                    <element name="zu_Beschriftung" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Beschriftung</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <element name="zu_Kommunikationsobjekt" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Kommunikationsobjekt</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <!-- Darstellung punktfoermiger Geometrie/Topologie -->
                    <choice minOccurs="0">
                        <element name="dargestellt_von_Punkt" type="gml:PointPropertyType" maxOccurs="unbounded"/>
                        <element name="dargestellt_von_Knoten" type="gml:DirectedNodePropertyType" maxOccurs="unbounded"/>
                    </choice>
                    <!-- Eigenschaften Symbol -->
                    <element name="Symbolbedeutung" 
                        type="string"/>
                    <element name="Breite_links" 
                        type="okstra:Groesse"/>
                    <element name="Breite_rechts" 
                        type="okstra:Groesse"/>
                    <element name="Hoehe_oben" 
                        type="okstra:Groesse"/>
                    <element name="Hoehe_unten" 
                        type="okstra:Groesse"/>
                    <element name="Einheit" 
                        type="okstra:EinheitPropertyType"/>
                    <element name="Drehwinkel" 
                        type="okstra:Winkel"/>
                    <element name="mit_Bezug_auf_allg_Punktobjekt" 
                        type="okstra:ObjectRefType" minOccurs="0">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>allgemeines_Punktobjekt</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>hat_Symbol</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
    <complexType name="allgemeines_LinienobjektType">
        <complexContent>
            <extension base="okstra:AbstractOKSTRAObjektType">
                <sequence>
                    <!-- Eigenschaften OKSTRA_Objekt -->
                    <element name="OKSTRA_ID" 
                        type="okstra:GUID" minOccurs="0"/>
                    <element name="zu_Beschriftung" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Beschriftung</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <element name="zu_Kommunikationsobjekt" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Kommunikationsobjekt</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <!-- Darstellung linienfoermiger Geometrie/Topologie -->
                    <choice minOccurs="0">
                        <element name="dargestellt_von_Linie" type="gml:CurvePropertyType" maxOccurs="unbounded"/>
                        <element name="dargestellt_von_Kante" type="gml:DirectedEdgePropertyType" maxOccurs="unbounded"/>
                    </choice>
                    <!-- Eigenschaften allgemeines_Linienobjekt -->
                    <element name="fachliche_Bedeutung" 
                        type="string"/>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
    <complexType name="allgemeines_FlaechenobjektType">
        <complexContent>
            <extension base="okstra:AbstractOKSTRAObjektType">
                <sequence>
                    <!-- Eigenschaften OKSTRA_Objekt -->
                    <element name="OKSTRA_ID" 
                        type="okstra:GUID" minOccurs="0"/>
                    <element name="zu_Beschriftung" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Beschriftung</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <element name="zu_Kommunikationsobjekt" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Kommunikationsobjekt</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <!-- Darstellung flaechenfoermiger Geometrie/Topologie -->
                    <choice minOccurs="0">
                       <element name="dargestellt_von_Flaeche" type="gml:SurfacePropertyType" maxOccurs="unbounded"/>
                       <element name="dargestellt_von_Masche" type="gml:DirectedFacePropertyType" maxOccurs="unbounded"/>
                    </choice>
                    <!-- Eigenschaften allgemeines_Flaechenobjekt -->
                    <element name="fachliche_Bedeutung" 
                        type="string"/>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
    <complexType name="DGMType">
        <complexContent>
            <extension base="okstra:AbstractOKSTRAObjektType">
                <sequence>
                    <!-- Eigenschaften OKSTRA_Objekt -->
                    <element name="OKSTRA_ID" 
                        type="okstra:GUID" minOccurs="0"/>
                    <element name="zu_Beschriftung" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Beschriftung</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <element name="zu_Kommunikationsobjekt" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Kommunikationsobjekt</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <!-- Eigenschaften DGM -->
                    <element name="Bezeichnung" 
                        type="string"/>
                    <element name="Art_DGM" 
                        type="okstra:Art_DGMPropertyType"/>
                    <element name="Informationstext" 
                        type="string" minOccurs="0" maxOccurs="unbounded"/>
                    <element name="hat_Dreiecke" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Dreieck</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>in_DGM</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
    <complexType name="DreieckType">
        <complexContent>
            <extension base="okstra:AbstractOKSTRAObjektType">
                <sequence>
                    <!-- Eigenschaften OKSTRA_Objekt -->
                    <element name="OKSTRA_ID" 
                        type="okstra:GUID" minOccurs="0"/>
                    <element name="zu_Beschriftung" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Beschriftung</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <element name="zu_Kommunikationsobjekt" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Kommunikationsobjekt</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <!-- Eigenschaften Dreieck -->
                    <element name="Dreiecksnummer" 
                        type="integer"/>
                    <element name="Dreiecksbedeutung" 
                        type="string" minOccurs="0"/>
                    <element name="hat_Punkte" 
                        type="okstra:ObjectRefType" minOccurs="3" maxOccurs="3">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>allgemeines_Punktobjekt</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>in_Dreieck</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <element name="hat_Seiteneigenschaften" 
                        type="okstra:SeiteneigenschaftPropertyType" minOccurs="3" maxOccurs="3"/>
                    <element name="in_DGM" 
                        type="okstra:ObjectRefType" minOccurs="0">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>DGM</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>hat_Dreiecke</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
    <complexType name="BeschriftungType">
        <complexContent>
            <extension base="okstra:AbstractOKSTRAObjektType">
                <sequence>
                    <!-- Eigenschaften OKSTRA_Objekt -->
                    <element name="OKSTRA_ID" 
                        type="okstra:GUID" minOccurs="0"/>
                    <element name="zu_Beschriftung" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Beschriftung</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <element name="zu_Kommunikationsobjekt" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Kommunikationsobjekt</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <!-- Darstellung punktfoermiger Geometrie/Topologie -->
                    <choice minOccurs="0">
                        <element name="dargestellt_von_Punkt" type="gml:PointPropertyType" maxOccurs="unbounded"/>
                        <element name="dargestellt_von_Knoten" type="gml:DirectedNodePropertyType" maxOccurs="unbounded"/>
                    </choice>
                    <!-- Eigenschaften Beschriftung -->
                    <element name="Text" 
                        type="string"/>
                    <element name="Textbedeutung" 
                        type="string"/>
                    <element name="Drehwinkel" 
                        type="okstra:Winkel"/>
                    <element name="Textausgestaltung" 
                        type="okstra:TextausgestaltungPropertyType" minOccurs="0"/>
                    <element name="zu_OKSTRA_Objekt" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>OKSTRA_Objekt</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_Beschriftung</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <element name="hat_Bezugsposition" 
                        type="okstra:ObjectRefType" minOccurs="0">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Punktgeometrie</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>Bezugsposition_zu_Beschriftung</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
    <complexType name="BestandsplanType">
        <complexContent>
            <extension base="okstra:StreckenobjektHistType">
                <sequence>
                    <!-- Eigenschaften OKSTRA_Objekt -->
                    <element name="OKSTRA_ID" 
                        type="okstra:GUID" minOccurs="0"/>
                    <element name="zu_Beschriftung" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Beschriftung</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <element name="zu_Kommunikationsobjekt" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Kommunikationsobjekt</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <!-- Eigenschaften Objekt_mit_ID -->
                    <element name="hat_Objekt_ID" 
                        type="okstra:Objekt_IDPropertyType" minOccurs="0" maxOccurs="unbounded"/>
                    <!-- Eigenschaften ASB_Objekt -->
                    <element name="Erfassungsdatum" 
                        type="okstra:ASB_Datum" minOccurs="0"/>
                    <element name="Systemdatum" 
                        type="okstra:ASB_Datum" minOccurs="0"/>
                    <element name="Textfeld" 
                        type="string" minOccurs="0"/>
                    <element name="Art_der_Erfassung" 
                        type="okstra:Art_der_ErfassungPropertyType" minOccurs="0"/>
                    <element name="Art_der_Erfassung_Land" 
                        type="okstra:Art_der_Erfassung_LandPropertyType" minOccurs="0"/>
                    <element name="Quelle_der_Information" 
                        type="okstra:Quelle_der_InformationPropertyType" minOccurs="0"/>
                    <element name="Quelle_der_Information_Land" 
                        type="okstra:Quelle_der_Information_LandPropertyType" minOccurs="0"/>
                    <element name="RFID" 
                        type="string" minOccurs="0"/>
                    <element name="Migrationshinweise" 
                        type="string" minOccurs="0"/>
                    <element name="unscharf" 
                        type="integer" minOccurs="0"/>
                    <element name="Fotodokument" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Dokument</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>von_ASB_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <!-- Eigenschaften Bestandsplan -->
                    <element name="Plannummer" 
                        type="string"/>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
    <complexType name="BlattschnittType">
        <complexContent>
            <extension base="okstra:AbstractOKSTRAObjektType">
                <sequence>
                    <!-- Eigenschaften OKSTRA_Objekt -->
                    <element name="OKSTRA_ID" 
                        type="okstra:GUID" minOccurs="0"/>
                    <element name="zu_Beschriftung" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Beschriftung</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <element name="zu_Kommunikationsobjekt" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Kommunikationsobjekt</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>zu_OKSTRA_Objekt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                    <!-- Darstellung flaechenfoermiger Geometrie/Topologie -->
                    <choice minOccurs="0">
                       <element name="dargestellt_von_Flaeche" type="gml:SurfacePropertyType" maxOccurs="unbounded"/>
                       <element name="dargestellt_von_Masche" type="gml:DirectedFacePropertyType" maxOccurs="unbounded"/>
                    </choice>
                    <!-- Eigenschaften Blattschnitt -->
                    <element name="Art" 
                        type="okstra:Art_BlattschnittPropertyType" minOccurs="0"/>
                    <element name="Blattnummer" 
                        type="string"/>
                    <element name="Unterlagennummer" 
                        type="string" minOccurs="0"/>
                    <element name="Registriernummer" 
                        type="string" minOccurs="0"/>
                    <element name="zu_Massnahme" 
                        type="okstra:ObjectRefType" minOccurs="0" maxOccurs="unbounded">
                        <annotation>
                            <appinfo>
                                <okstra:Zielobjekttyp>Lpf_Massnahme</okstra:Zielobjekttyp>
                                <okstra:inverseRelation>hat_Blattschnitt</okstra:inverseRelation>
                            </appinfo>
                        </annotation>
                    </element>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
</schema>
