<?xml version="1.0" encoding="ISO-8859-1" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<!-- Created from mapping for class com.raytheon.edex.plugin.noaa.ascii.metar.MetarRecord -->
    <xs:complexType name="METAR">
      <xs:sequence>
        <xs:element name="header">
          <xs:complexType>
            <xs:sequence>
              <xs:element minOccurs="0" name="reportType" type="xs:string"/>
              <xs:element minOccurs="0" name="timeNominal" type="xs:string"/>
              <xs:element minOccurs="0" name="timeObs" type="xs:string"/>
              <xs:element minOccurs="0" name="wmoID" type="xs:string"/>
              <xs:element minOccurs="0" name="stationID" type="xs:string"/>
              <xs:element minOccurs="0" name="autoStationType" type="xs:string"/>
              <xs:element minOccurs="0" name="latitude" type="xs:string"/>
              <xs:element minOccurs="0" name="longitude" type="xs:string"/>
              <xs:element minOccurs="0" name="elevation" type="xs:string"/>
              <xs:element minOccurs="0" name="raw_text" type="xs:string"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="observations">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="temperature">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element minOccurs="0" name="temperature" type="xs:string"/>
                    <xs:element minOccurs="0" name="tempFromTenths" type="xs:string"/>
                    <xs:element minOccurs="0" name="dewPoint" type="xs:string"/>
                    <xs:element minOccurs="0" name="dewPointFromTenths" type="xs:string"/>
                    <xs:element minOccurs="0" name="minTemp24Hour" type="xs:string"/>
                    <xs:element minOccurs="0" name="maxTemp24Hour" type="xs:string"/>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="precipitation">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element minOccurs="0" name="precip1Hour" type="xs:string"/>
                    <xs:element minOccurs="0" name="precip3Hour" type="xs:string"/>
                    <xs:element minOccurs="0" name="precip6Hour" type="xs:string"/>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="wind">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element minOccurs="0" name="windDir" type="xs:string"/>
                    <xs:element minOccurs="0" name="windSpeed" type="xs:string"/>
                    <xs:element minOccurs="0" name="windGust" type="xs:string"/>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="pressure">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element minOccurs="0" name="altimeter" type="xs:string"/>
                    <xs:element minOccurs="0" name="altimeterInPa" type="xs:string"/>
                    <xs:element minOccurs="0" name="pressChangeChar" type="xs:string"/>
                    <xs:element minOccurs="0" name="pressChange3Hour" type="xs:string"/>
                    <xs:element minOccurs="0" name="seaLevelPress" type="xs:string"/>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="visibility">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element minOccurs="0" name="visibility" type="xs:string"/>
                    <xs:element minOccurs="0" name="vertVisibility" type="xs:string"/>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="sky">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element minOccurs="0" name="skyLayerBase" type="xs:string"/>
                    <xs:element maxOccurs="unbounded" minOccurs="0" name="cloudLayer" type="xs:string"/>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="weather">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element maxOccurs="unbounded" minOccurs="0" name="phenomena" type="xs:string"/>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>

  <!-- Created from mapping for class com.raytheon.edex.msg.ResponseMessageNGATS -->
  <xs:element name="responseNGATS">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" minOccurs="0" name="location" type="location"/>
        <xs:element maxOccurs="unbounded" minOccurs="0" name="shapefileURIs" type="xs:string"/>
        <xs:element maxOccurs="unbounded" minOccurs="0" name="imageryURIs" type="xs:string"/>
        <xs:element name="fileType" type="xs:string"/>
        <xs:element name="dataURI" type="xs:string"/>
        <xs:element name="validTime" type="xs:dateTime"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <!-- Created from mapping for class com.raytheon.edex.plugin.ngats.Location -->
    <xs:complexType name="location">
      <xs:sequence>
        <xs:element name="icao" type="xs:string"/>
        <xs:element minOccurs="0" name="TAF" type="TAF"/>       
        <xs:element minOccurs="0" name="METAR" type="METAR"/>
      </xs:sequence>
    </xs:complexType>

  <!-- Created from mapping for class com.raytheon.edex.plugin.noaa.ascii.taf.TafRecord -->
    <xs:complexType name="TAF">
      <xs:sequence>
        <xs:element name="tafInfo">
          <xs:complexType>
            <xs:sequence>
              <xs:element minOccurs="0" name="wmoID" type="xs:string"/>
              <xs:element minOccurs="0" name="stationID" type="xs:string"/>
              <xs:element minOccurs="0" name="latitude" type="xs:string"/>
              <xs:element minOccurs="0" name="longitude" type="xs:string"/>
              <xs:element minOccurs="0" name="elevation" type="xs:string"/>
              <xs:element minOccurs="0" name="raw_text" type="xs:string"/>
              <xs:element minOccurs="0" name="issue_time" type="xs:dateTime"/>
              <xs:element minOccurs="0" name="bulletin_time" type="xs:dateTime"/>
              <xs:element minOccurs="0" name="valid_time_from" type="xs:dateTime"/>
              <xs:element minOccurs="0" name="valid_time_to" type="xs:dateTime"/>
              <xs:element minOccurs="0" name="remarks" type="xs:string"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element maxOccurs="unbounded" minOccurs="0" name="changeGroup" type="changeGroup"/>
      </xs:sequence>
    </xs:complexType>

  <!-- Created from mapping for class com.raytheon.edex.plugin.noaa.ascii.taf.ChangeGroup -->
    <xs:complexType name="changeGroup">
      <xs:sequence>
        <xs:element minOccurs="0" name="change_indicator" type="xs:string"/>
        <xs:element minOccurs="0" name="theChangeGroup" type="xs:string"/>
        <xs:element minOccurs="0" name="tafPeriod" type="tafPeriod"/>
        <xs:element minOccurs="0" name="time_becoming" type="xs:dateTime"/>
        <xs:element minOccurs="0" name="probability" type="xs:string"/>
        <xs:element minOccurs="0" name="wind_dir_degrees" type="xs:string"/>
        <xs:element minOccurs="0" name="wind_speed_kt" type="xs:string"/>
        <xs:element minOccurs="0" name="wind_gust_kt" type="xs:string"/>
        <xs:element minOccurs="0" name="wind_shear_hgt_ft_agl" type="xs:string"/>
        <xs:element minOccurs="0" name="wind_shear_dir_degrees" type="xs:string"/>
        <xs:element minOccurs="0" name="wind_shear_speed_kt" type="xs:string"/>
        <xs:element minOccurs="0" name="visibiilty_mi" type="xs:string"/>
        <xs:element minOccurs="0" name="altim_in_hg" type="xs:string"/>
        <xs:element minOccurs="0" name="vert_vis_ft" type="xs:string"/>
        <xs:element minOccurs="0" name="max_temp_c" type="xs:string"/>
        <xs:element minOccurs="0" name="min_temp_c" type="xs:string"/>
        <xs:element name="weather">
          <xs:complexType>
            <xs:sequence>
              <xs:element maxOccurs="unbounded" minOccurs="0" name="phenomena" type="xs:string"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="sky_coverage">
          <xs:complexType>
            <xs:sequence>
              <xs:element maxOccurs="unbounded" minOccurs="0" name="coverage" type="xs:string"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element maxOccurs="unbounded" minOccurs="0" name="icingLayer" type="icingLayer"/>
        <xs:element maxOccurs="unbounded" minOccurs="0" name="turbulenceLayer" type="turbulenceLayer"/>
        <xs:element maxOccurs="unbounded" minOccurs="0" name="temperatureForecast" type="temperatureForecast"/>
      </xs:sequence>
    </xs:complexType>

  <!-- Created from mapping for class com.raytheon.edex.plugin.noaa.ascii.taf.TafPeriod -->
    <xs:complexType name="tafPeriod">
      <xs:sequence>
        <xs:element minOccurs="0" name="the-start-date" type="xs:dateTime"/>
        <xs:element minOccurs="0" name="the-end-date" type="xs:dateTime"/>
      </xs:sequence>
    </xs:complexType>

  <!-- Created from mapping for class com.raytheon.edex.plugin.noaa.ascii.taf.IcingLayer -->
    <xs:complexType name="icingLayer">
      <xs:sequence>
        <xs:element minOccurs="0" name="icing_intensity" type="xs:string"/>
        <xs:element minOccurs="0" name="icing_min_alt_ft_agl" type="xs:string"/>
        <xs:element minOccurs="0" name="icing_max_alt_ft_agl" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>

  <!-- Created from mapping for class com.raytheon.edex.plugin.noaa.ascii.taf.TurbulenceLayer -->
    <xs:complexType name="turbulenceLayer">
      <xs:sequence>
        <xs:element minOccurs="0" name="turbulence_intensity" type="xs:string"/>
        <xs:element minOccurs="0" name="turbulence_min_alt_ft_agl" type="xs:string"/>
        <xs:element minOccurs="0" name="turbulence_max_alt_ft_agl" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>

  <!-- Created from mapping for class com.raytheon.edex.plugin.noaa.ascii.taf.TemperatureForecast -->
    <xs:complexType name="temperatureForecast">
      <xs:sequence>
        <xs:element minOccurs="0" name="valid_time" type="xs:string"/>
        <xs:element minOccurs="0" name="sfc_temp_c" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
  
  <!-- Created from mapping for class com.raytheon.edex.msg.ResponseMessageError -->
  <xs:element name="responseError">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" minOccurs="0" name="errorChain" type="xs:string"/>
        <xs:element name="fileType" type="xs:string"/>
        <xs:element name="dataURI" type="xs:string"/>
        <xs:element name="validTime" type="xs:dateTime"/>
        <xs:element name="errorSource" type="xs:string"/>
        <xs:element name="errorMsg" type="xs:string"/>
        <xs:element name="errorCause" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>