<?xml version="1.0" encoding="UTF-8"?>
<schema version="2.0.2" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml" xmlns:gsml="urn:cgi:xmlns:CGI:GeoSciML:2.0" xmlns:gmd="http://www.isotc211.org/2005/gmd" xmlns:sa="http://www.opengis.net/sampling/1.0" targetNamespace="urn:cgi:xmlns:CGI:GeoSciML:2.0" elementFormDefault="qualified" attributeFormDefault="unqualified"><!-- Schema auto-generated by FullMoon, applying rule suite xmi11ea -->
    <annotation>
        <documentation>The GeoSciML Collection package contains facade classes that facilitate the structuring of WFS response documents and other application uses.
        
        v2.0.1 - all links to elements in GMD namespace 'by reference'
        v2.0.2 - inserted XML declaration
        </documentation>
    </annotation>
    <import namespace="http://www.opengis.net/gml" schemaLocation="http://schemas.opengis.net/gml/3.1.1/base/gml.xsd"/>
    <import namespace="http://www.opengis.net/sampling/1.0" schemaLocation="http://schemas.opengis.net/sampling/1.0.0/sampling.xsd"/>
    <include schemaLocation="geosciml.xsd"/>
    <element name="GSML" substitutionGroup="gml:_Feature" type="gsml:GSMLType">
        <annotation>
            <documentation>A collection container for items to be bundled in WFS response documents and other applications. FeatureType stereotype allows this to be a FeatureMember in a WFS_FeatureCollection.</documentation>
        </annotation>
    </element>
    <complexType name="GSMLType">
        <complexContent>
            <extension base="gml:AbstractFeatureType">
                <sequence>
                    <element maxOccurs="unbounded" minOccurs="0" name="member" type="gsml:GSMLitemPropertyType">
                        <annotation>
                            <documentation>Points to a member of a GSML collection, which can be any of the GeoSciML classes that are listed in the GSMLitem union class.</documentation>
                        </annotation>
                    </element>
                    <element maxOccurs="1" minOccurs="0" name="metadata" type="gml:ReferenceType">
                        <annotation>
                            <appinfo>
                                <gml:targetElement>gmd:MD_Metadata</gml:targetElement>
                            </appinfo>
                        </annotation>
                    </element>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
    <complexType name="GSMLPropertyType">
        <sequence minOccurs="0">
            <element ref="gsml:GSML"/>
        </sequence>
        <attributeGroup ref="gml:AssociationAttributeGroup"/>
    </complexType>
    <group name="GSMLitem">
        <annotation>
            <documentation>GSMLitem is a union class that specifies the types of features that are allowed to be members of the GSML class, and therefore, members of a GML Collection.</documentation>
        </annotation>
        <choice>
            <element ref="gsml:EarthMaterial">
                <annotation>
                    <documentation>The earthMaterialItem attribute is a placeholder for the EarthMaterial class that is included as a member of a GML Collection.</documentation>
                </annotation>
            </element>
            <element ref="gsml:GeologicEvent">
                <annotation>
                    <documentation>The eventItem attribute is a placeholder for the GeologicEvent class that is included as a member of a GML Collection.</documentation>
                </annotation>
            </element>
            <element ref="gsml:GeologicFeature">
                <annotation>
                    <documentation>The featureItem attribute is a placeholder for the GeologicFeature class that is included as a member of a GML Collection.</documentation>
                </annotation>
            </element>
            <element ref="gml:_Geometry">
                <annotation>
                    <documentation>The geometryItem attribute is a placeholder for the AbstractGeometry class that is included as a member of a GML Collection.</documentation>
                </annotation>
            </element>
            <element ref="gsml:MappedFeature">
                <annotation>
                    <documentation>The mappedItem attribute is a placeholder for the MappedFeature class that is included as a member of a GML Collection.</documentation>
                </annotation>
            </element>
            <element ref="gsml:GeologicRelation">
                <annotation>
                    <documentation>The relationItem attribute is a placeholder for the GeologicRelation class that is included as a member of a GML Collection.</documentation>
                </annotation>
            </element>
            <element ref="sa:SamplingFeature"/>
            <element ref="gsml:GeologicVocabulary">
                <annotation>
                    <documentation>The vocabularyItem attribute is a placeholder for the GeologicVocabulary class that is included as a member of a GML Collection.</documentation>
                </annotation>
            </element>
        </choice>
    </group>
    <complexType name="GSMLitemPropertyType">
        <sequence minOccurs="0">
            <group ref="gsml:GSMLitem"/>
        </sequence>
        <attributeGroup ref="gml:AssociationAttributeGroup"/>
        <attribute name="unionSemantics" type="gsml:GSMLitemUnionSemantics"/>
    </complexType>
    <simpleType name="GSMLitemUnionSemantics">
        <restriction base="string">
            <enumeration value="earthMaterialItem"/>
            <enumeration value="eventItem"/>
            <enumeration value="featureItem"/>
            <enumeration value="geometryItem"/>
            <enumeration value="mappedItem"/>
            <enumeration value="relationItem"/>
            <enumeration value="samplingFeatureItem"/>
            <enumeration value="vocabularyItem"/>
        </restriction>
    </simpleType>
</schema>
