[mapguide-commits] r5656 - in trunk/Tools/Maestro: MaestroAPITests MaestroAPITests/UserTestData OSGeo.MapGuide.MaestroAPI/SchemaOverrides

svn_mapguide at osgeo.org svn_mapguide at osgeo.org
Tue Mar 22 07:12:10 EDT 2011


Author: jng
Date: 2011-03-22 04:12:10 -0700 (Tue, 22 Mar 2011)
New Revision: 5656

Added:
   trunk/Tools/Maestro/MaestroAPITests/UserTestData/wms_config_example1.xml
Removed:
   trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/SchemaOverrides/RasterConfigurationDocument.cs
   trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/SchemaOverrides/RasterFileItem.cs
   trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/SchemaOverrides/RasterItem.cs
Modified:
   trunk/Tools/Maestro/MaestroAPITests/ConfigurationTests.cs
   trunk/Tools/Maestro/MaestroAPITests/MaestroAPITests.csproj
Log:
Add a configuration test with another sample WMS configuration document. Also remove some unused override classes

Modified: trunk/Tools/Maestro/MaestroAPITests/ConfigurationTests.cs
===================================================================
--- trunk/Tools/Maestro/MaestroAPITests/ConfigurationTests.cs	2011-03-22 11:10:49 UTC (rev 5655)
+++ trunk/Tools/Maestro/MaestroAPITests/ConfigurationTests.cs	2011-03-22 11:12:10 UTC (rev 5656)
@@ -143,6 +143,9 @@
         {
             var conf = ConfigurationDocument.LoadXml(File.ReadAllText("UserTestData\\NASA_WMS_config_doc.xml")) as WmsConfigurationDocument;
             Assert.NotNull(conf);
+
+            conf = ConfigurationDocument.LoadXml(File.ReadAllText("UserTestData\\wms_config_example1.xml")) as WmsConfigurationDocument;
+            Assert.NotNull(conf);
         }
 
         [Test]

Modified: trunk/Tools/Maestro/MaestroAPITests/MaestroAPITests.csproj
===================================================================
--- trunk/Tools/Maestro/MaestroAPITests/MaestroAPITests.csproj	2011-03-22 11:10:49 UTC (rev 5655)
+++ trunk/Tools/Maestro/MaestroAPITests/MaestroAPITests.csproj	2011-03-22 11:12:10 UTC (rev 5656)
@@ -591,6 +591,9 @@
     <Content Include="UserTestData\odbc_example_config.xml">
       <CopyToOutputDirectory>Always</CopyToOutputDirectory>
     </Content>
+    <Content Include="UserTestData\wms_config_example1.xml">
+      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+    </Content>
   </ItemGroup>
   <ItemGroup>
     <BootstrapperPackage Include="Microsoft.Net.Client.3.5">

Added: trunk/Tools/Maestro/MaestroAPITests/UserTestData/wms_config_example1.xml
===================================================================
--- trunk/Tools/Maestro/MaestroAPITests/UserTestData/wms_config_example1.xml	                        (rev 0)
+++ trunk/Tools/Maestro/MaestroAPITests/UserTestData/wms_config_example1.xml	2011-03-22 11:12:10 UTC (rev 5656)
@@ -0,0 +1,1661 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 
+WMS configuration document for 
+
+http://nowcoast.noaa.gov/wms/com.esri.wms.Esrimap/obs
+ -->
+<fdo:DataStore xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:gml="http://www.opengis.net/gml" xmlns:fdo="http://fdo.osgeo.org/schemas" xmlns:fds="http://fdo.osgeo.org/schemas/fds">
+  <gml:DerivedCRS gml:id="EPSG:4326">
+    <gml:metaDataProperty>
+      <gml:GenericMetaData>
+        <fdo:XYTolerance>0.001000</fdo:XYTolerance>
+        <fdo:ZTolerance>0.001000</fdo:ZTolerance>
+      </gml:GenericMetaData>
+    </gml:metaDataProperty>
+    <gml:srsName>EPSG:4326</gml:srsName>
+    <gml:validArea>
+      <gml:boundingBox>
+        <gml:pos>-180.000000 -90.000000</gml:pos>
+        <gml:pos>180.000000 90.000000</gml:pos>
+      </gml:boundingBox>
+    </gml:validArea>
+    <gml:baseCRS>
+      <fdo:WKTCRS gml:id="EPSG:4326">
+        <gml:srsName>EPSG:4326</gml:srsName>
+        <fdo:WKT>GEOGCS["LL84",DATUM["WGS84",SPHEROID["WGS84",6378137.000,298.25722293]],PRIMEM["Greenwich",0],UNIT["Degree",0.01745329251994]]</fdo:WKT>
+      </fdo:WKTCRS>
+    </gml:baseCRS>
+    <gml:definedByConversion xlink:href="http://fdo.osgeo.org/coord_conversions#identity" />
+    <gml:derivedCRSType codeSpace="http://fdo.osgeo.org/crs_types">geographic</gml:derivedCRSType>
+    <gml:usesCS xlink:href="http://fdo.osgeo.org/cs#default_cartesian" />
+  </gml:DerivedCRS>
+  <gml:DerivedCRS gml:id="EPSG:4269">
+    <gml:metaDataProperty>
+      <gml:GenericMetaData>
+        <fdo:XYTolerance>0.001000</fdo:XYTolerance>
+        <fdo:ZTolerance>0.001000</fdo:ZTolerance>
+      </gml:GenericMetaData>
+    </gml:metaDataProperty>
+    <gml:srsName>EPSG:4269</gml:srsName>
+    <gml:validArea>
+      <gml:boundingBox>
+        <gml:pos>-180.000000 -90.000000</gml:pos>
+        <gml:pos>180.000000 90.000000</gml:pos>
+      </gml:boundingBox>
+    </gml:validArea>
+    <gml:baseCRS>
+      <fdo:WKTCRS gml:id="EPSG:4269">
+        <gml:srsName>EPSG:4269</gml:srsName>
+        <fdo:WKT>GEOGCS["LL83",DATUM["NAD83",SPHEROID["GRS1980",6378137.000,298.25722210]],PRIMEM["Greenwich",0],UNIT["Degree",0.01745329251994]]</fdo:WKT>
+      </fdo:WKTCRS>
+    </gml:baseCRS>
+    <gml:definedByConversion xlink:href="http://fdo.osgeo.org/coord_conversions#identity" />
+    <gml:derivedCRSType codeSpace="http://fdo.osgeo.org/crs_types">geographic</gml:derivedCRSType>
+    <gml:usesCS xlink:href="http://fdo.osgeo.org/cs#default_cartesian" />
+  </gml:DerivedCRS>
+  <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://fdo.osgeo.org/schemas/feature/WMSLayers" xmlns:fdo="http://fdo.osgeo.org/schemas" xmlns:gml="http://www.opengis.net/gml" xmlns:WMSLayers="http://fdo.osgeo.org/schemas/feature/WMSLayers" elementFormDefault="qualified" attributeFormDefault="unqualified">
+    <xs:annotation>
+      <xs:documentation />
+    </xs:annotation>
+    <xs:element name="world_countries_label" type="WMSLayers:world_countries_labelType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="world_countries_labelKey">
+        <xs:selector xpath=".//world_countries_label" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="world_countries_labelType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - World Countries Labels</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="world_countries" type="WMSLayers:world_countriesType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="world_countriesKey">
+        <xs:selector xpath=".//world_countries" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="world_countriesType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - World Countries</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="world_rivers" type="WMSLayers:world_riversType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="world_riversKey">
+        <xs:selector xpath=".//world_rivers" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="world_riversType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - World Rivers</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="world_lakes" type="WMSLayers:world_lakesType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="world_lakesKey">
+        <xs:selector xpath=".//world_lakes" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="world_lakesType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - World Lakes</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="great_lakes" type="WMSLayers:great_lakesType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="great_lakesKey">
+        <xs:selector xpath=".//great_lakes" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="great_lakesType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - Great Lakes</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="us_states_gen" type="WMSLayers:us_states_genType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="us_states_genKey">
+        <xs:selector xpath=".//us_states_gen" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="us_states_genType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - US States - General</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="us_canada_back" type="WMSLayers:us_canada_backType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="us_canada_backKey">
+        <xs:selector xpath=".//us_canada_back" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="us_canada_backType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - US/Canada Background</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="provinces" type="WMSLayers:provincesType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="provincesKey">
+        <xs:selector xpath=".//provinces" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="provincesType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - Canadian Provinces</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="counties" type="WMSLayers:countiesType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="countiesKey">
+        <xs:selector xpath=".//counties" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="countiesType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - US County Borders</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="artcc" type="WMSLayers:artccType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="artccKey">
+        <xs:selector xpath=".//artcc" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="artccType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - Air Route Traffic Ctrl Ctr Boundaries</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="rivers" type="WMSLayers:riversType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="riversKey">
+        <xs:selector xpath=".//rivers" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="riversType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - Rivers</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="lakes" type="WMSLayers:lakesType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="lakesKey">
+        <xs:selector xpath=".//lakes" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="lakesType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - Lakes</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="watersheds" type="WMSLayers:watershedsType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="watershedsKey">
+        <xs:selector xpath=".//watersheds" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="watershedsType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - Watersheds</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="coastal_labels" type="WMSLayers:coastal_labelsType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="coastal_labelsKey">
+        <xs:selector xpath=".//coastal_labels" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="coastal_labelsType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - Coastal Labels</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="RAS_GOES_I4" type="WMSLayers:RAS_GOES_I4Type" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="RAS_GOES_I4Key">
+        <xs:selector xpath=".//RAS_GOES_I4" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="RAS_GOES_I4Type" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>GOES IR Image</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="RAS_GOES" type="WMSLayers:RAS_GOESType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="RAS_GOESKey">
+        <xs:selector xpath=".//RAS_GOES" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="RAS_GOESType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>GOES Visible Image</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="RAS_RIDGE_NEXRAD" type="WMSLayers:RAS_RIDGE_NEXRADType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="RAS_RIDGE_NEXRADKey">
+        <xs:selector xpath=".//RAS_RIDGE_NEXRAD" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="RAS_RIDGE_NEXRADType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Weather Radar Mosaic</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="urban_areas_fill" type="WMSLayers:urban_areas_fillType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="urban_areas_fillKey">
+        <xs:selector xpath=".//urban_areas_fill" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="urban_areas_fillType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - Urban Areas Fill</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="urban_areas_outline" type="WMSLayers:urban_areas_outlineType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="urban_areas_outlineKey">
+        <xs:selector xpath=".//urban_areas_outline" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="urban_areas_outlineType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - Urban Areas Outline</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="major_roads" type="WMSLayers:major_roadsType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="major_roadsKey">
+        <xs:selector xpath=".//major_roads" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="major_roadsType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - Major Roads</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="us_interstates" type="WMSLayers:us_interstatesType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="us_interstatesKey">
+        <xs:selector xpath=".//us_interstates" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="us_interstatesType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - US Interstates</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="us_runways" type="WMSLayers:us_runwaysType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="us_runwaysKey">
+        <xs:selector xpath=".//us_runways" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="us_runwaysType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - Airport Runway Footprints</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="us_cities" type="WMSLayers:us_citiesType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="us_citiesKey">
+        <xs:selector xpath=".//us_cities" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="us_citiesType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - US Cities</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="tc_warn_breakpoints" type="WMSLayers:tc_warn_breakpointsType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="tc_warn_breakpointsKey">
+        <xs:selector xpath=".//tc_warn_breakpoints" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="tc_warn_breakpointsType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - Coastal Watch/Warning Breakpoints</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="marine_sanctuaries" type="WMSLayers:marine_sanctuariesType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="marine_sanctuariesKey">
+        <xs:selector xpath=".//marine_sanctuaries" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="marine_sanctuariesType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - National Marine Sanctuaries</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="eez" type="WMSLayers:eezType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="eezKey">
+        <xs:selector xpath=".//eez" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="eezType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Map Background - Exclusive Economic Zone</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="OBS_MAR_SWHFT" type="WMSLayers:OBS_MAR_SWHFTType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="OBS_MAR_SWHFTKey">
+        <xs:selector xpath=".//OBS_MAR_SWHFT" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="OBS_MAR_SWHFTType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Significant Wave Height (feet)</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="OBS_MAR_SSTF" type="WMSLayers:OBS_MAR_SSTFType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="OBS_MAR_SSTFKey">
+        <xs:selector xpath=".//OBS_MAR_SSTF" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="OBS_MAR_SSTFType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Sea Surface Temp (deg F)</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="OBS_MET_VIS" type="WMSLayers:OBS_MET_VISType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="OBS_MET_VISKey">
+        <xs:selector xpath=".//OBS_MET_VIS" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="OBS_MET_VISType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Visibility (miles)</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="OBS_MET_PRES" type="WMSLayers:OBS_MET_PRESType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="OBS_MET_PRESKey">
+        <xs:selector xpath=".//OBS_MET_PRES" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="OBS_MET_PRESType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Mean Sea Level Pressure (mb)</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="OBS_MET_WIND" type="WMSLayers:OBS_MET_WINDType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="OBS_MET_WINDKey">
+        <xs:selector xpath=".//OBS_MET_WIND" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="OBS_MET_WINDType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Wind (knots)</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="OBS_MET_DP" type="WMSLayers:OBS_MET_DPType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="OBS_MET_DPKey">
+        <xs:selector xpath=".//OBS_MET_DP" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="OBS_MET_DPType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Dew Point Temp (deg F)</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="OBS_MET_TEMP" type="WMSLayers:OBS_MET_TEMPType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="OBS_MET_TEMPKey">
+        <xs:selector xpath=".//OBS_MET_TEMP" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="OBS_MET_TEMPType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Air Temp (deg F)</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+    <xs:element name="OBS_MET_ID" type="WMSLayers:OBS_MET_IDType" abstract="false" substitutionGroup="gml:_Feature">
+      <xs:key name="OBS_MET_IDKey">
+        <xs:selector xpath=".//OBS_MET_ID" />
+        <xs:field xpath="Id" />
+      </xs:key>
+    </xs:element>
+    <xs:complexType name="OBS_MET_IDType" abstract="false" fdo:hasGeometry="false">
+      <xs:annotation>
+        <xs:documentation>Station ID</xs:documentation>
+      </xs:annotation>
+      <xs:complexContent>
+        <xs:extension base="gml:AbstractFeatureType">
+          <xs:sequence>
+            <xs:element name="Id">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+              <xs:simpleType>
+                <xs:restriction base="xs:string">
+                  <xs:maxLength value="256" />
+                </xs:restriction>
+              </xs:simpleType>
+            </xs:element>
+            <xs:element name="Image" type="fdo:RasterPropertyType" fdo:defaultImageXSize="1024" fdo:defaultImageYSize="1024" fdo:srsName="EPSG:4326">
+              <xs:annotation>
+                <xs:documentation />
+              </xs:annotation>
+            </xs:element>
+          </xs:sequence>
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+  </xs:schema>
+  <SchemaMapping provider="OSGeo.WMS.3.5" name="WMSLayers" xmlns="http://fdowms.osgeo.org/schemas">
+    <complexType name="world_countries_labelType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:world_countries_label">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="world_countriesType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:world_countries">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="world_riversType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:world_rivers">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="world_lakesType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:world_lakes">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="great_lakesType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:great_lakes">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="us_states_genType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:us_states_gen">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="us_canada_backType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:us_canada_back">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="provincesType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:provinces">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="countiesType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:counties">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="artccType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:artcc">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="riversType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:rivers">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="lakesType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:lakes">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="watershedsType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:watersheds">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="coastal_labelsType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:coastal_labels">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="RAS_GOES_I4Type">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:RAS_GOES_I4">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="RAS_GOESType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:RAS_GOES">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="RAS_RIDGE_NEXRADType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:RAS_RIDGE_NEXRAD">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="urban_areas_fillType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:urban_areas_fill">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="urban_areas_outlineType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:urban_areas_outline">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="major_roadsType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:major_roads">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="us_interstatesType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:us_interstates">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="us_runwaysType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:us_runways">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="us_citiesType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:us_cities">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="tc_warn_breakpointsType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:tc_warn_breakpoints">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="marine_sanctuariesType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:marine_sanctuaries">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="eezType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:eez">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="OBS_MAR_SWHFTType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:OBS_MAR_SWHFT">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="OBS_MAR_SSTFType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:OBS_MAR_SSTF">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="OBS_MET_VISType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:OBS_MET_VIS">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="OBS_MET_PRESType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:OBS_MET_PRES">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="OBS_MET_WINDType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:OBS_MET_WIND">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="OBS_MET_DPType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:OBS_MET_DP">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="OBS_MET_TEMPType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:OBS_MET_TEMP">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+    <complexType name="OBS_MET_IDType">
+      <RasterDefinition name="Image">
+        <Format>PNG</Format>
+        <FormatType>image/png</FormatType>
+        <Transparent>true</Transparent>
+        <UseTileCache>false</UseTileCache>
+        <BackgroundColor></BackgroundColor>
+        <Time></Time>
+        <Elevation></Elevation>
+        <SpatialContext>EPSG:4326</SpatialContext>
+        <Layer name="WMS_Schema:OBS_MET_ID">
+          <Style name="default" />
+        </Layer>
+      </RasterDefinition>
+    </complexType>
+  </SchemaMapping>
+</fdo:DataStore>
\ No newline at end of file

Deleted: trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/SchemaOverrides/RasterConfigurationDocument.cs
===================================================================
--- trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/SchemaOverrides/RasterConfigurationDocument.cs	2011-03-22 11:10:49 UTC (rev 5655)
+++ trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/SchemaOverrides/RasterConfigurationDocument.cs	2011-03-22 11:12:10 UTC (rev 5656)
@@ -1,63 +0,0 @@
-#region Disclaimer / License
-// Copyright (C) 2010, Jackie Ng
-// http://trac.osgeo.org/mapguide/wiki/maestro, jumpinjackie at gmail.com
-// 
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-// 
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-// 
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
-// 
-#endregion
-using System;
-using System.Collections.Generic;
-using System.Text;
-using System.Xml;
-using OSGeo.MapGuide.MaestroAPI.Schema;
-
-namespace OSGeo.MapGuide.MaestroAPI.SchemaOverrides
-{
-    public abstract class RasterConfigurationDocumentBase<T> : ConfigurationDocument where T : RasterItem
-    {
-        protected List<T> _rasterItems;
-
-        protected RasterConfigurationDocumentBase()
-        {
-            _rasterItems = new List<T>();
-        }
-
-        public void AddRasterItem(T item) 
-        { 
-            _rasterItems.Add(item); 
-            item.Parent = this; 
-        }
-
-        public void AddRasterItems(IEnumerable<T> items) 
-        { 
-            _rasterItems.AddRange(items);
-            foreach (var item in items)
-            {
-                item.Parent = this;
-            }
-        }
-        /*
-        protected override void WriteSchemaMappings(System.Xml.XmlDocument doc, System.Xml.XmlNode currentNode)
-        {
-            
-        }
-
-        protected override void ReadSchemaMappings(System.Xml.XmlNode node, System.Xml.XmlNamespaceManager mgr)
-        {
-            
-        }
-         */
-    }
-}

Deleted: trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/SchemaOverrides/RasterFileItem.cs
===================================================================
--- trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/SchemaOverrides/RasterFileItem.cs	2011-03-22 11:10:49 UTC (rev 5655)
+++ trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/SchemaOverrides/RasterFileItem.cs	2011-03-22 11:12:10 UTC (rev 5656)
@@ -1,218 +0,0 @@
-#region Disclaimer / License
-// Copyright (C) 2010, Jackie Ng
-// http://trac.osgeo.org/mapguide/wiki/maestro, jumpinjackie at gmail.com
-// 
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-// 
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-// 
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
-// 
-#endregion
-using System;
-using System.Collections.Generic;
-using System.Text;
-using OSGeo.MapGuide.ObjectModels.Common;
-using OSGeo.MapGuide.ObjectModels;
-using System.IO;
-using OSGeo.MapGuide.MaestroAPI.Schema;
-
-namespace OSGeo.MapGuide.MaestroAPI.SchemaOverrides
-{
-    public class RasterFileItem : RasterItem
-    {
-        public RasterFileItem(string name)
-        {
-            this.Name = name;
-        }
-
-        public string Name { get; private set; }
-
-        public IPoint2D InsertionPoint { get; set; }
-
-        public IPoint2D Resolution { get; set; }
-
-        public IPoint2D Rotation { get; set; }
-
-        public void SetPosition(double insertionX, double insertionY,
-                                double resolutionX, double resolutionY,
-                                double rotationX, double rotationY)
-        {
-            this.InsertionPoint = ObjectFactory.CreatePoint2D(insertionX, insertionY);
-            this.Resolution = ObjectFactory.CreatePoint2D(resolutionX, resolutionY);
-            this.Rotation = ObjectFactory.CreatePoint2D(rotationX, rotationY);
-        }
-
-        public bool HasPosition
-        {
-            get
-            {
-                return this.InsertionPoint != null &&
-                       this.Resolution != null &&
-                       this.Rotation != null;
-            }
-        }
-
-        public override void WriteXml(System.Xml.XmlDocument doc, System.Xml.XmlNode currentNode)
-        {
-            var ctype = doc.CreateElement("complexType");
-            ctype.SetAttribute("name", this.ClassName + "Type");
-            {
-                var rdf = doc.CreateElement("RasterDefinition");
-                rdf.SetAttribute("name", this.ClassName);
-                {
-                    var loc = doc.CreateElement("Location");
-                    loc.SetAttribute("name", Path.GetDirectoryName(this.Name));
-                    {
-                        var feat = doc.CreateElement("Feature");
-                        feat.SetAttribute("name", Path.GetFileNameWithoutExtension(this.Name));
-                        {
-                            var band = doc.CreateElement("Band");
-                            band.SetAttribute("name", "RGB");
-                            band.SetAttribute("number", "1");
-                            {
-                                var img = doc.CreateElement("Image");
-                                img.SetAttribute("name", Path.GetFileName(this.Name));
-                                band.AppendChild(img);
-                                
-                                //Set bounds if spatial context is defined
-                                if (this.Parent != null)
-                                {
-                                    var sc = this.Parent.GetSpatialContext(this.SpatialContextName);
-                                    if (sc != null)
-                                    {
-                                        var bounds = doc.CreateElement("Bounds");
-                                        bounds.InnerXml = string.Format("<MinX>{0}</MinX><MinY>{1}</MinY><MaxX>{2}</MaxX><MaxY>{3}</MaxY>",
-                                            sc.Extent.MinX,
-                                            sc.Extent.MinY,
-                                            sc.Extent.MaxX,
-                                            sc.Extent.MaxY);
-
-                                        band.AppendChild(bounds);
-                                    }
-                                }
-
-                                //Set georeference if position is defined
-                                if (this.HasPosition)
-                                {
-                                    var georef = doc.CreateElement("Georeference");
-                                    georef.InnerXml = string.Format("<InsertionPointX>{0}</InsertionPointX><InsertionPointY>{1}</InsertionPointY><ResolutionX>{2}</ResolutionX><ResolutionY>{3}</ResolutionY><RotationX>{4}</RotationX><RotationY>{5}</RotationY>",
-                                        this.InsertionPoint.X, this.InsertionPoint.Y,
-                                        this.Resolution.X, this.Resolution.Y,
-                                        this.Rotation.X, this.Rotation.Y);
-
-                                    band.AppendChild(georef);
-                                }
-                            }
-                            feat.AppendChild(band);
-                        }
-                        loc.AppendChild(feat);
-                    }
-                    rdf.AppendChild(loc);
-                }
-                ctype.AppendChild(rdf);
-            }
-            currentNode.AppendChild(ctype);
-        }
-
-        public override void ReadXml(System.Xml.XmlNode node, System.Xml.XmlNamespaceManager mgr)
-        {
-            var ctype = node.SelectSingleNode("ctype");
-            var sn = node.Attributes["name"];
-            var cn = ctype.Attributes["name"];
-
-            if (sn == null || cn == null)
-                throw new Exception("Bad document. Expected attribute: name"); //LOCALIZEME
-
-            this.FeatureClassName = sn.Value + ":" + cn.Value.Substring(0, cn.Value.Length - "Type".Length);
-
-            var loc = node.SelectSingleNode("complexType/RasterDefinition/Location");
-            var img = node.SelectSingleNode("complexType/RasterDefinition/Location/Feature/Band/Image");
-            var georef = node.SelectSingleNode("complexType/RasterDefinition/Location/Feature/Band/Georeference");
-
-            if (loc == null)
-                throw new Exception("Bad document. Expected element: Location"); //LOCALIZEME
-
-            if (img == null)
-                throw new Exception("Bad document. Expected element: Image"); //LOCALIZEME
-
-            //Set spatial context
-            var cls = this.Parent.GetClass(this.SchemaName, this.ClassName);
-            if (cls != null)
-            {
-                if (!string.IsNullOrEmpty(cls.DefaultGeometryPropertyName))
-                {
-                    var geom = cls.FindProperty(cls.DefaultGeometryPropertyName) as GeometricPropertyDefinition;
-                    if (geom != null && !string.IsNullOrEmpty(geom.SpatialContextAssociation))
-                        this.SpatialContextName = geom.SpatialContextAssociation;
-                }
-            }
-
-            //Construct image path
-            var locName = loc.Attributes["name"];
-            var imgName = loc.Attributes["name"];
-
-            if (locName == null || imgName == null)
-                throw new Exception("Bad document. Expected attribute: name"); //LOCALIZEME
-
-            this.Name = Path.Combine(locName.Value, imgName.Value);
-
-            //Set georeferencing information
-            if (georef != null)
-            {
-                double insX = 0.0;
-                double insY = 0.0;
-                double rotX = 0.0;
-                double rotY = 0.0;
-                double resX = 0.0;
-                double resY = 0.0;
-
-                if (georef["InsertionPointX"] != null)
-                {
-                    if (!double.TryParse(georef["InsertionPointX"].InnerText, out insX))
-                        throw new Exception("Invalid value for InsertionPointX"); //LOCALIZEME
-                }
-
-                if (georef["InsertionPointY"] != null)
-                {
-                    if (!double.TryParse(georef["InsertionPointY"].InnerText, out insY))
-                        throw new Exception("Invalid value for InsertionPointY"); //LOCALIZEME
-                }
-
-                if (georef["ResolutionX"] != null)
-                {
-                    if (!double.TryParse(georef["ResolutionX"].InnerText, out resX))
-                        throw new Exception("Invalid value for ResolutionX"); //LOCALIZEME
-                }
-
-                if (georef["ResolutionY"] != null)
-                {
-                    if (!double.TryParse(georef["ResolutionY"].InnerText, out resY))
-                        throw new Exception("Invalid value for ResolutionY"); //LOCALIZEME
-                }
-
-                if (georef["RotationX"] != null)
-                {
-                    if (!double.TryParse(georef["RotationX"].InnerText, out rotX))
-                        throw new Exception("Invalid value for RotationX"); //LOCALIZEME
-                }
-
-                if (georef["RotationY"] != null)
-                {
-                    if (!double.TryParse(georef["RotationY"].InnerText, out rotY))
-                        throw new Exception("Invalid value for RotationY"); //LOCALIZEME
-                }
-
-                this.SetPosition(insX, insY, resX, resY, rotX, rotY);
-            }
-        }
-    }
-}

Deleted: trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/SchemaOverrides/RasterItem.cs
===================================================================
--- trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/SchemaOverrides/RasterItem.cs	2011-03-22 11:10:49 UTC (rev 5655)
+++ trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/SchemaOverrides/RasterItem.cs	2011-03-22 11:12:10 UTC (rev 5656)
@@ -1,86 +0,0 @@
-#region Disclaimer / License
-// Copyright (C) 2010, Jackie Ng
-// http://trac.osgeo.org/mapguide/wiki/maestro, jumpinjackie at gmail.com
-// 
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-// 
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-// 
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
-// 
-#endregion
-using System;
-using System.Collections.Generic;
-using System.Text;
-using OSGeo.MapGuide.MaestroAPI.Schema;
-
-namespace OSGeo.MapGuide.MaestroAPI.SchemaOverrides
-{
-    public abstract class RasterItem : IFdoSerializable
-    {
-        public ConfigurationDocument Parent { get; internal set; }
-
-        public string Name { get; set; }
-
-        private string _featureClassName;
-
-        public string FeatureClassName
-        {
-            get { return _featureClassName; }
-            set
-            {
-                if (!string.IsNullOrEmpty(value))
-                {
-                    var tokens = value.Split(':');
-                    if (tokens.Length != 2)
-                        throw new ArgumentException("Not a qualified class name: " + value); //LOCALIZEME
-                }
-                _featureClassName = value;
-            }
-        }
-
-        public string SchemaName
-        {
-            get
-            {
-                if (!string.IsNullOrEmpty(this.FeatureClassName))
-                {
-                    var tokens = this.FeatureClassName.Split(':');
-                    if (tokens.Length == 2)
-                        return tokens[0];
-                }
-                return string.Empty;
-            }
-        }
-
-        public string ClassName
-        {
-            get
-            {
-                if (!string.IsNullOrEmpty(this.FeatureClassName))
-                {
-                    var tokens = this.FeatureClassName.Split(':');
-                    if (tokens.Length == 2)
-                        return tokens[1];
-                }
-                return string.Empty;
-            }
-        }
-
-        public string Description { get; set; }
-
-        public string SpatialContextName { get; set; }
-        
-        public abstract void WriteXml(System.Xml.XmlDocument doc, System.Xml.XmlNode currentNode);
-        
-        public abstract void ReadXml(System.Xml.XmlNode node, System.Xml.XmlNamespaceManager mgr);
-    }
-}



More information about the mapguide-commits mailing list