Changeset 2503


Ignore:
Timestamp:
22/05/07 15:24:01 (12 years ago)
Author:
awoolf
Message:

Replaced Profile>OldProfile? (uses inefficient gml:MultiPoint in domain), and AlternateProfile?->Profile (uses more efficient  csml:MultiPoint)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TI02-CSML/trunk/XMLSchemas/csmlMain.xsd

    r2309 r2503  
    11<!-- edited with XMLSPY v5 rel. 3 U (http://www.xmlspy.com) by Andrew Woolf (CCLRC) --> 
    2 <schema targetNamespace="http://ndg.nerc.ac.uk/csml" xmlns:swe="http://www.opengis.net/swe" xmlns:gml="http://www.opengis.net/gml" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:csml="http://ndg.nerc.ac.uk/csml" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.9"> 
     2<schema targetNamespace="http://ndg.nerc.ac.uk/csml" xmlns:csml="http://ndg.nerc.ac.uk/csml" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml" xmlns:swe="http://www.opengis.net/swe" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.9"> 
    33        <annotation> 
    44                <documentation>Main CSML schema file - includes domain geometries, coverage classes, feature types etc.</documentation> 
     
    595595        <!--====================================================================== --> 
    596596        <!--====================================================================== --> 
    597         <!--==== CSML Profile Feature Type ====--> 
    598         <!--====================================================================== --> 
    599         <complexType name="ProfileDomainType"> 
     597        <!--==== Od Profile Feature Type (using compliant GML MultiPoint) ====--> 
     598        <!--====================================================================== --> 
     599        <complexType name="OldProfileDomainType"> 
    600600                <annotation> 
    601601                        <documentation>Constrains a gml:MultiPoint to a vertical line of points. The associated CRS should be a valid subtype of gml:VerticalCRS.</documentation> 
     
    616616                </complexContent> 
    617617        </complexType> 
    618         <element name="ProfileDomain" type="csml:ProfileDomainType" substitutionGroup="gml:MultiPoint"/> 
    619         <complexType name="ProfileDomainPropertyType"> 
    620                 <sequence minOccurs="0"> 
    621                         <element ref="csml:ProfileDomain"/> 
    622                 </sequence> 
    623                 <attributeGroup ref="gml:OwnershipAttributeGroup"/> 
    624                 <attributeGroup ref="gml:AssociationAttributeGroup"/> 
    625         </complexType> 
    626         <!--====================================================================== --> 
    627         <complexType name="ProfileCoverageDomainType"> 
     618        <element name="OldProfileDomain" type="csml:OldProfileDomainType" substitutionGroup="gml:MultiPoint"/> 
     619        <complexType name="OldProfileDomainPropertyType"> 
     620                <sequence minOccurs="0"> 
     621                        <element ref="csml:OldProfileDomain"/> 
     622                </sequence> 
     623                <attributeGroup ref="gml:OwnershipAttributeGroup"/> 
     624                <attributeGroup ref="gml:AssociationAttributeGroup"/> 
     625        </complexType> 
     626        <!--====================================================================== --> 
     627        <complexType name="OldProfileCoverageDomainType"> 
    628628                <complexContent> 
    629629                        <restriction base="gml:MultiPointDomainType"> 
    630630                                <sequence minOccurs="0"> 
    631                                         <element ref="csml:ProfileDomain"/> 
    632                                 </sequence> 
    633                         </restriction> 
    634                 </complexContent> 
    635         </complexType> 
    636         <element name="profileDomain" type="csml:ProfileCoverageDomainType" substitutionGroup="gml:multiPointDomain"/> 
    637         <!--====================================================================== --> 
    638         <complexType name="ProfileCoverageType"> 
     631                                        <element ref="csml:OldProfileDomain"/> 
     632                                </sequence> 
     633                        </restriction> 
     634                </complexContent> 
     635        </complexType> 
     636        <element name="oldProfileDomain" type="csml:OldProfileCoverageDomainType" substitutionGroup="gml:multiPointDomain"/> 
     637        <!--====================================================================== --> 
     638        <complexType name="OldProfileCoverageType"> 
    639639                <complexContent> 
    640640                        <restriction base="gml:MultiPointCoverageType"> 
     
    642642                                        <group ref="gml:StandardObjectProperties"/> 
    643643                                        <element ref="gml:boundedBy" minOccurs="0"/> 
    644                                         <element ref="csml:profileDomain"/> 
     644                                        <element ref="csml:oldProfileDomain"/> 
    645645                                        <element ref="gml:rangeSet"/> 
    646646                                        <element ref="gml:coverageFunction" minOccurs="0"/> 
     
    649649                </complexContent> 
    650650        </complexType> 
    651         <element name="ProfileCoverage" type="csml:ProfileCoverageType" substitutionGroup="gml:MultiPointCoverage"/> 
     651        <element name="OldProfileCoverage" type="csml:OldProfileCoverageType" substitutionGroup="gml:MultiPointCoverage"/> 
     652        <complexType name="OldProfileCoveragePropertyType"> 
     653                <sequence minOccurs="0"> 
     654                        <element ref="csml:OldProfileCoverage"/> 
     655                </sequence> 
     656                <attributeGroup ref="gml:OwnershipAttributeGroup"/> 
     657                <attributeGroup ref="gml:AssociationAttributeGroup"/> 
     658        </complexType> 
     659        <!--====================================================================== --> 
     660        <complexType name="OldProfileFeatureType"> 
     661                <complexContent> 
     662                        <extension base="gml:AbstractFeatureType"> 
     663                                <sequence> 
     664                                        <element name="location" type="gml:DirectPositionType" minOccurs="0"/> 
     665                                        <element name="time" type="gml:TimePositionType" minOccurs="0"/> 
     666                                        <element name="value" type="csml:OldProfileCoveragePropertyType"/> 
     667                                        <element name="parameter" type="swe:PhenomenonPropertyType"/> 
     668                                </sequence> 
     669                        </extension> 
     670                </complexContent> 
     671        </complexType> 
     672        <element name="OldProfileFeature" type="csml:OldProfileFeatureType" substitutionGroup="gml:AbstractFeature"/> 
     673        <complexType name="OldProfileFeaturePropertyType"> 
     674                <sequence minOccurs="0"> 
     675                        <element ref="csml:OldProfileFeature"/> 
     676                </sequence> 
     677                <attributeGroup ref="gml:OwnershipAttributeGroup"/> 
     678                <attributeGroup ref="gml:AssociationAttributeGroup"/> 
     679        </complexType> 
     680        <!--====================================================================== --> 
     681        <!--====================================================================== --> 
     682        <!--==== CSML Profile Feature Type (using more efficient CSML MultiPoint)====--> 
     683        <!--====================================================================== --> 
     684        <complexType name="CSMLMultiPointType"> 
     685                <complexContent> 
     686                        <extension base="gml:AbstractGeometricAggregateType"> 
     687                                <sequence> 
     688                                        <element name="position" type="gml:DirectPositionListType"/> 
     689                                </sequence> 
     690                        </extension> 
     691                </complexContent> 
     692        </complexType> 
     693        <element name="CSMLMultiPoint" type="csml:CSMLMultiPointType" substitutionGroup="gml:AbstractGeometricAggregate"/> 
     694        <complexType name="CSMLMultiPointPropertyType"> 
     695                <sequence minOccurs="0"> 
     696                        <element ref="csml:CSMLMultiPoint"/> 
     697                </sequence> 
     698                <attributeGroup ref="gml:OwnershipAttributeGroup"/> 
     699                <attributeGroup ref="gml:AssociationAttributeGroup"/> 
     700        </complexType> 
     701        <!--====================================================================== --> 
     702        <complexType name="ProfileDomainType"> 
     703                <complexContent> 
     704                        <restriction base="gml:DomainSetType"> 
     705                                <sequence minOccurs="0"> 
     706                                        <element ref="csml:CSMLMultiPoint"/> 
     707                                </sequence> 
     708                        </restriction> 
     709                </complexContent> 
     710        </complexType> 
     711        <element name="profileDomain" type="csml:ProfileDomainType" substitutionGroup="gml:domainSet"/> 
     712        <!--====================================================================== --> 
     713        <complexType name="ProfileCoverageType"> 
     714                <complexContent> 
     715                        <restriction base="gml:AbstractDiscreteCoverageType"> 
     716                                <sequence> 
     717                                        <sequence> 
     718                                                <group ref="gml:StandardObjectProperties"/> 
     719                                        </sequence> 
     720                                        <sequence> 
     721                                                <element ref="gml:boundedBy" minOccurs="0"/> 
     722                                                <element ref="gml:location" minOccurs="0"/> 
     723                                        </sequence> 
     724                                        <sequence> 
     725                                                <element ref="csml:profileDomain"/> 
     726                                                <element ref="gml:rangeSet"/> 
     727                                        </sequence> 
     728                                        <sequence> 
     729                                                <element ref="gml:coverageFunction" minOccurs="0"/> 
     730                                        </sequence> 
     731                                </sequence> 
     732                        </restriction> 
     733                </complexContent> 
     734        </complexType> 
     735        <element name="ProfileCoverage" type="csml:ProfileCoverageType" substitutionGroup="gml:AbstractDiscreteCoverage"/> 
    652736        <complexType name="ProfileCoveragePropertyType"> 
    653737                <sequence minOccurs="0"> 
     
    674758                <sequence minOccurs="0"> 
    675759                        <element ref="csml:ProfileFeature"/> 
    676                 </sequence> 
    677                 <attributeGroup ref="gml:OwnershipAttributeGroup"/> 
    678                 <attributeGroup ref="gml:AssociationAttributeGroup"/> 
    679         </complexType> 
    680         <!--====================================================================== --> 
    681         <!--====================================================================== --> 
    682         <!--==== Alternate Profile Feature Type ====--> 
    683         <!--====================================================================== --> 
    684         <complexType name="CSMLMultiPointType"> 
    685                 <complexContent> 
    686                         <extension base="gml:AbstractGeometricAggregateType"> 
    687                                 <sequence> 
    688                                         <element name="position" type="gml:DirectPositionListType"/> 
    689                                 </sequence> 
    690                         </extension> 
    691                 </complexContent> 
    692         </complexType> 
    693         <element name="CSMLMultiPoint" type="csml:CSMLMultiPointType" substitutionGroup="gml:AbstractGeometricAggregate"/> 
    694         <complexType name="CSMLMultiPointPropertyType"> 
    695                 <sequence minOccurs="0"> 
    696                         <element ref="csml:CSMLMultiPoint"/> 
    697                 </sequence> 
    698                 <attributeGroup ref="gml:OwnershipAttributeGroup"/> 
    699                 <attributeGroup ref="gml:AssociationAttributeGroup"/> 
    700         </complexType> 
    701         <!--====================================================================== --> 
    702         <complexType name="AlternateProfileDomainType"> 
    703                 <complexContent> 
    704                         <restriction base="gml:DomainSetType"> 
    705                                 <sequence minOccurs="0"> 
    706                                         <element ref="csml:CSMLMultiPoint"/> 
    707                                 </sequence> 
    708                         </restriction> 
    709                 </complexContent> 
    710         </complexType> 
    711         <element name="alternateProfileDomain" type="csml:AlternateProfileDomainType" substitutionGroup="gml:domainSet"/> 
    712         <!--====================================================================== --> 
    713         <complexType name="AlternateProfileCoverageType"> 
    714                 <complexContent> 
    715                         <restriction base="gml:AbstractDiscreteCoverageType"> 
    716                                 <sequence> 
    717                                         <sequence> 
    718                                                 <group ref="gml:StandardObjectProperties"/> 
    719                                         </sequence> 
    720                                         <sequence> 
    721                                                 <element ref="gml:boundedBy" minOccurs="0"/> 
    722                                                 <element ref="gml:location" minOccurs="0"/> 
    723                                         </sequence> 
    724                                         <sequence> 
    725                                                 <element ref="csml:alternateProfileDomain"/> 
    726                                                 <element ref="gml:rangeSet"/> 
    727                                         </sequence> 
    728                                         <sequence> 
    729                                                 <element ref="gml:coverageFunction" minOccurs="0"/> 
    730                                         </sequence> 
    731                                 </sequence> 
    732                         </restriction> 
    733                 </complexContent> 
    734         </complexType> 
    735         <element name="AlternateProfileCoverage" type="csml:AlternateProfileCoverageType" substitutionGroup="gml:AbstractDiscreteCoverage"/> 
    736         <complexType name="AlternateProfileCoveragePropertyType"> 
    737                 <sequence minOccurs="0"> 
    738                         <element ref="csml:AlternateProfileCoverage"/> 
    739                 </sequence> 
    740                 <attributeGroup ref="gml:OwnershipAttributeGroup"/> 
    741                 <attributeGroup ref="gml:AssociationAttributeGroup"/> 
    742         </complexType> 
    743         <!--====================================================================== --> 
    744         <complexType name="AlternateProfileFeatureType"> 
    745                 <complexContent> 
    746                         <extension base="gml:AbstractFeatureType"> 
    747                                 <sequence> 
    748                                         <element name="location" type="gml:DirectPositionType" minOccurs="0"/> 
    749                                         <element name="time" type="gml:TimePositionType" minOccurs="0"/> 
    750                                         <element name="value" type="csml:AlternateProfileCoveragePropertyType"/> 
    751                                         <element name="parameter" type="swe:PhenomenonPropertyType"/> 
    752                                 </sequence> 
    753                         </extension> 
    754                 </complexContent> 
    755         </complexType> 
    756         <element name="AlternateProfileFeature" type="csml:AlternateProfileFeatureType" substitutionGroup="gml:AbstractFeature"/> 
    757         <complexType name="AlternateProfileFeaturePropertyType"> 
    758                 <sequence minOccurs="0"> 
    759                         <element ref="csml:AlternateProfileFeature"/> 
    760760                </sequence> 
    761761                <attributeGroup ref="gml:OwnershipAttributeGroup"/> 
Note: See TracChangeset for help on using the changeset viewer.