welements 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +1 -0
- data/README.md +62 -0
- data/lib/welements.rb +25 -0
- data/lib/welements/http_service.rb +12 -0
- data/lib/welements/version.rb +3 -0
- data/lib/welements/welements.rb +146 -0
- data/test/data/4-day.xml +116 -0
- data/test/data/KVAY.xml +52 -0
- data/test/data/welements.xml +749 -0
- data/test/test_helper.rb +11 -0
- data/test/test_http_service.rb +35 -0
- data/test/test_integration.rb +10 -0
- data/test/test_welements.rb +112 -0
- metadata +117 -0
data/CHANGELOG
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
v0.1.0. Initial release
|
data/README.md
ADDED
@@ -0,0 +1,62 @@
|
|
1
|
+
# welements
|
2
|
+
|
3
|
+
http://github.com/matmmalone/welements
|
4
|
+
|
5
|
+
## Description
|
6
|
+
|
7
|
+
welements is a library that provides an API for the National Weather
|
8
|
+
Service's National Digital Forecast Database (NDFD). This provides a
|
9
|
+
broad array of different forecast elements that can be queried.
|
10
|
+
|
11
|
+
## Features
|
12
|
+
|
13
|
+
- Find detailed forecasts using lat/lng.
|
14
|
+
- Access all relevant data the NDFD feed.
|
15
|
+
|
16
|
+
## Requirements
|
17
|
+
|
18
|
+
- libxml-ruby >= 0.9.7
|
19
|
+
- geokit >= 1.5.0
|
20
|
+
|
21
|
+
## Installation
|
22
|
+
|
23
|
+
sudo gem install welements
|
24
|
+
|
25
|
+
## Usage
|
26
|
+
|
27
|
+
### Get current conditions
|
28
|
+
forecast = Welements.welements(lat, lng)
|
29
|
+
puts "The next hourly forecast temperature is #{forecast.temperature_hourly[0][:value]} Celcius at #{forecast.temperature_hourly[0][:time]}."
|
30
|
+
|
31
|
+
## Contact
|
32
|
+
|
33
|
+
Mat Malone (m2@innerlogic.org)
|
34
|
+
|
35
|
+
## Fork
|
36
|
+
welements is originally based on Mat Brown's outoftime-noaa project:
|
37
|
+
http://github.com/outoftime/noaa. outoftime-noaa Copyright 2008 Mat Brown.
|
38
|
+
|
39
|
+
## License
|
40
|
+
|
41
|
+
(The MIT License)
|
42
|
+
|
43
|
+
Copyright (c) 2012 Mat Malone
|
44
|
+
|
45
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
46
|
+
a copy of this software and associated documentation files (the
|
47
|
+
'Software'), to deal in the Software without restriction, including
|
48
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
49
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
50
|
+
permit persons to whom the Software is furnished to do so, subject to
|
51
|
+
the following conditions:
|
52
|
+
|
53
|
+
The above copyright notice and this permission notice shall be
|
54
|
+
included in all copies or substantial portions of the Software.
|
55
|
+
|
56
|
+
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
57
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
58
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
59
|
+
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
60
|
+
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
61
|
+
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
62
|
+
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/lib/welements.rb
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
begin
|
2
|
+
require 'time'
|
3
|
+
require 'nokogiri'
|
4
|
+
require 'geokit'
|
5
|
+
require 'libxml'
|
6
|
+
rescue LoadError => e
|
7
|
+
if require 'rubygems' then retry
|
8
|
+
else raise(e)
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
%w(welements http_service).each { |file| require File.join(File.dirname(__FILE__), 'welements', file) }
|
13
|
+
|
14
|
+
#
|
15
|
+
# The Welements singleton provides methods to conveniently access information from the NWS NDFD feed.
|
16
|
+
module Welements
|
17
|
+
autoload :VERSION, File.join(File.dirname(__FILE__), 'welements', 'version')
|
18
|
+
|
19
|
+
class << self
|
20
|
+
# Retrieve complex forecast elements
|
21
|
+
def welements(lat, lng)
|
22
|
+
ForecastParameters.from_xml(HttpService.new.get_welements(lat, lng))
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
module Welements
|
2
|
+
class HttpService #:nodoc:
|
3
|
+
def initialize(http = Net::HTTP)
|
4
|
+
@HTTP = http
|
5
|
+
end
|
6
|
+
|
7
|
+
def get_welements(lat, lng)
|
8
|
+
LibXML::XML::Document.string(@HTTP.get(URI.parse("http://graphical.weather.gov/xml/SOAP_server/ndfdXMLclient.php?whichClient=NDFDgen&lat=#{lat}&lon=#{lng}&product=time-series&Unit=m&maxt=maxt&mint=mint&temp=temp&qpf=qpf&pop12=pop12&snow=snow&dew=dew&wspd=wspd&wdir=wdir&sky=sky&wx=wx&waveh=waveh&rh=rh&appt=appt&dryfireo=dryfireo&ptornado=ptornado&phail=phail&wgust=wgust")))
|
9
|
+
end
|
10
|
+
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,146 @@
|
|
1
|
+
module Welements
|
2
|
+
#
|
3
|
+
#
|
4
|
+
class ForecastParameters
|
5
|
+
|
6
|
+
private_class_method :new
|
7
|
+
|
8
|
+
def self.from_xml(doc) #:nodoc:
|
9
|
+
new(doc)
|
10
|
+
end
|
11
|
+
|
12
|
+
def initialize(doc) #:noinit:
|
13
|
+
@doc = doc
|
14
|
+
end
|
15
|
+
|
16
|
+
#
|
17
|
+
# The number of days provided by the forecast
|
18
|
+
#
|
19
|
+
def length
|
20
|
+
@length ||= @doc.find("/dwml/data/time-layout[@summarization='24hourly'][1]/start-valid-time").length
|
21
|
+
end
|
22
|
+
|
23
|
+
# datetime of the first reading in the forecast
|
24
|
+
def starts
|
25
|
+
starts = nil
|
26
|
+
@doc.find("/dwml/data/time-layout/start-valid-time/text()").map do |node|
|
27
|
+
t = Time.parse(node.to_s)
|
28
|
+
starts = t if !starts || t < starts
|
29
|
+
end
|
30
|
+
@starts = starts
|
31
|
+
end
|
32
|
+
|
33
|
+
# datetime of the last reading in the forecast
|
34
|
+
def ends
|
35
|
+
ends = nil
|
36
|
+
@doc.find("/dwml/data/time-layout/end-valid-time/text()").map do |node|
|
37
|
+
t = Time.parse(node.to_s)
|
38
|
+
ends = t if !ends || t > ends
|
39
|
+
end
|
40
|
+
@ends = ends
|
41
|
+
end
|
42
|
+
|
43
|
+
# TODO remove
|
44
|
+
def maxima
|
45
|
+
@maxima ||= @doc.find("/dwml/data/parameters[1]/temperature[@type='maximum'][@units='Fahrenheit'][1]/value/text()").map do |node|
|
46
|
+
node.to_s.to_i
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
# TODO remove
|
51
|
+
def minima
|
52
|
+
@minima ||= @doc.find("/dwml/data/parameters[1]/temperature[@type='minimum'][@units='Fahrenheit'][1]/value/text()").map do |node|
|
53
|
+
node.to_s.to_i
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
def probability_of_precipitation
|
58
|
+
build('probability-of-precipitation')
|
59
|
+
end
|
60
|
+
|
61
|
+
def relative_humidity
|
62
|
+
build('humidity')
|
63
|
+
end
|
64
|
+
|
65
|
+
def temperature_maximum
|
66
|
+
build('temperature', {'type' => 'maximum'})
|
67
|
+
end
|
68
|
+
|
69
|
+
def temperature_minimum
|
70
|
+
build('temperature', {'type' => 'minimum'})
|
71
|
+
end
|
72
|
+
|
73
|
+
def temperature_hourly
|
74
|
+
build('temperature', {'type' => 'hourly'})
|
75
|
+
end
|
76
|
+
|
77
|
+
def temperature_dew_point
|
78
|
+
build('temperature', {'type' => 'dew point'})
|
79
|
+
end
|
80
|
+
|
81
|
+
def temperature_apparent
|
82
|
+
build('temperature', {'type' => 'apparent'})
|
83
|
+
end
|
84
|
+
|
85
|
+
def precipitation_liquid
|
86
|
+
build('precipitation', {'type' => 'liquid'})
|
87
|
+
end
|
88
|
+
|
89
|
+
def precipitation_snow
|
90
|
+
build('precipitation', {'type' => 'snow'})
|
91
|
+
end
|
92
|
+
|
93
|
+
def wind_speed_sustained
|
94
|
+
build('wind-speed', {'type' => 'sustained'})
|
95
|
+
end
|
96
|
+
|
97
|
+
def wind_speed_gust
|
98
|
+
build('wind-speed', {'type' => 'gust'})
|
99
|
+
end
|
100
|
+
|
101
|
+
def wind_direction
|
102
|
+
build('direction', {'type' => 'wind'})
|
103
|
+
end
|
104
|
+
|
105
|
+
def cloud_cover
|
106
|
+
build('cloud-amount')
|
107
|
+
end
|
108
|
+
|
109
|
+
def fire_outlook_from_dry_thunderstorms
|
110
|
+
build('fire-weather', {'type' => 'risk from dry thunderstorms'},
|
111
|
+
:string)
|
112
|
+
end
|
113
|
+
|
114
|
+
#private
|
115
|
+
|
116
|
+
def build(parameter, attributes={}, value_type=:integer)
|
117
|
+
attributes_filter = ''
|
118
|
+
attributes.each {|k, v| attributes_filter += "[@#{k}='#{v}']" }
|
119
|
+
|
120
|
+
values = @doc.find("/dwml/data/parameters[1]/#{parameter}#{attributes_filter}[1]/value/text()").map do |node|
|
121
|
+
value_type == :integer ? node.to_s.to_i : node.to_s
|
122
|
+
end
|
123
|
+
|
124
|
+
layout_key = @doc.find("/dwml/data/parameters[1]/#{parameter}#{attributes_filter}[1]").first[:'time-layout']
|
125
|
+
|
126
|
+
layout = nil
|
127
|
+
@doc.find("/dwml/data/time-layout").each do |node|
|
128
|
+
node.each_element do |el|
|
129
|
+
# the layout key will always be the first element, check it
|
130
|
+
# then go on to the next layout node
|
131
|
+
layout = node if el.first.to_s == layout_key
|
132
|
+
break
|
133
|
+
end
|
134
|
+
end
|
135
|
+
|
136
|
+
data = []
|
137
|
+
layout.each do |el|
|
138
|
+
if el.name == 'start-valid-time'
|
139
|
+
data.push({:time => Time.parse(el.first.to_s),
|
140
|
+
:value => values[data.length]})
|
141
|
+
end
|
142
|
+
end
|
143
|
+
data
|
144
|
+
end
|
145
|
+
end
|
146
|
+
end
|
data/test/data/4-day.xml
ADDED
@@ -0,0 +1,116 @@
|
|
1
|
+
<?xml version="1.0"?>
|
2
|
+
<dwml version="1.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.nws.noaa.gov/forecasts/xml/DWMLgen/schema/DWML.xsd">
|
3
|
+
<head>
|
4
|
+
<product srsName="WGS 1984" concise-name="dwmlByDay" operational-mode="official">
|
5
|
+
<title>NOAA's National Weather Service Forecast by 24 Hour Period</title>
|
6
|
+
<field>meteorological</field>
|
7
|
+
<category>forecast</category>
|
8
|
+
<creation-date refresh-frequency="PT1H">2008-12-23T21:46:52Z</creation-date>
|
9
|
+
</product>
|
10
|
+
<source>
|
11
|
+
<more-information>http://www.nws.noaa.gov/forecasts/xml/</more-information>
|
12
|
+
<production-center>Meteorological Development Laboratory<sub-center>Product Generation Branch</sub-center></production-center>
|
13
|
+
<disclaimer>http://www.nws.noaa.gov/disclaimer.html</disclaimer>
|
14
|
+
<credit>http://www.weather.gov/</credit>
|
15
|
+
<credit-logo>http://www.weather.gov/images/xml_logo.gif</credit-logo>
|
16
|
+
<feedback>http://www.weather.gov/feedback.php</feedback>
|
17
|
+
</source>
|
18
|
+
</head>
|
19
|
+
<data>
|
20
|
+
<location>
|
21
|
+
<location-key>point1</location-key>
|
22
|
+
<point latitude="40.72" longitude="-73.99"/>
|
23
|
+
</location>
|
24
|
+
<moreWeatherInformation applicable-location="point1">http://forecast.weather.gov/MapClick.php?textField1=40.72&textField2=-73.99</moreWeatherInformation>
|
25
|
+
<time-layout time-coordinate="local" summarization="24hourly">
|
26
|
+
<layout-key>k-p24h-n4-1</layout-key>
|
27
|
+
<start-valid-time>2008-12-23T06:00:00-05:00</start-valid-time>
|
28
|
+
<end-valid-time>2008-12-24T06:00:00-05:00</end-valid-time>
|
29
|
+
<start-valid-time>2008-12-24T06:00:00-05:00</start-valid-time>
|
30
|
+
<end-valid-time>2008-12-25T06:00:00-05:00</end-valid-time>
|
31
|
+
<start-valid-time>2008-12-25T06:00:00-05:00</start-valid-time>
|
32
|
+
<end-valid-time>2008-12-26T06:00:00-05:00</end-valid-time>
|
33
|
+
<start-valid-time>2008-12-26T06:00:00-05:00</start-valid-time>
|
34
|
+
<end-valid-time>2008-12-27T06:00:00-05:00</end-valid-time>
|
35
|
+
</time-layout>
|
36
|
+
<time-layout time-coordinate="local" summarization="12hourly">
|
37
|
+
<layout-key>k-p12h-n8-2</layout-key>
|
38
|
+
<start-valid-time>2008-12-23T06:00:00-05:00</start-valid-time>
|
39
|
+
<end-valid-time>2008-12-23T18:00:00-05:00</end-valid-time>
|
40
|
+
<start-valid-time>2008-12-23T18:00:00-05:00</start-valid-time>
|
41
|
+
<end-valid-time>2008-12-24T06:00:00-05:00</end-valid-time>
|
42
|
+
<start-valid-time>2008-12-24T06:00:00-05:00</start-valid-time>
|
43
|
+
<end-valid-time>2008-12-24T18:00:00-05:00</end-valid-time>
|
44
|
+
<start-valid-time>2008-12-24T18:00:00-05:00</start-valid-time>
|
45
|
+
<end-valid-time>2008-12-25T06:00:00-05:00</end-valid-time>
|
46
|
+
<start-valid-time>2008-12-25T06:00:00-05:00</start-valid-time>
|
47
|
+
<end-valid-time>2008-12-25T18:00:00-05:00</end-valid-time>
|
48
|
+
<start-valid-time>2008-12-25T18:00:00-05:00</start-valid-time>
|
49
|
+
<end-valid-time>2008-12-26T06:00:00-05:00</end-valid-time>
|
50
|
+
<start-valid-time>2008-12-26T06:00:00-05:00</start-valid-time>
|
51
|
+
<end-valid-time>2008-12-26T18:00:00-05:00</end-valid-time>
|
52
|
+
<start-valid-time>2008-12-26T18:00:00-05:00</start-valid-time>
|
53
|
+
<end-valid-time>2008-12-27T06:00:00-05:00</end-valid-time>
|
54
|
+
</time-layout>
|
55
|
+
<time-layout time-coordinate="local" summarization="24hourly">
|
56
|
+
<layout-key>k-p4d-n1-3</layout-key>
|
57
|
+
<start-valid-time>2008-12-23T06:00:00-05:00</start-valid-time>
|
58
|
+
<end-valid-time>2008-12-27T06:00:00-05:00</end-valid-time>
|
59
|
+
</time-layout>
|
60
|
+
<parameters applicable-location="point1">
|
61
|
+
<temperature type="maximum" units="Fahrenheit" time-layout="k-p24h-n4-1">
|
62
|
+
<name>Daily Maximum Temperature</name>
|
63
|
+
<value>32</value>
|
64
|
+
<value>49</value>
|
65
|
+
<value>43</value>
|
66
|
+
<value>41</value>
|
67
|
+
</temperature>
|
68
|
+
<temperature type="minimum" units="Fahrenheit" time-layout="k-p24h-n4-1">
|
69
|
+
<name>Daily Minimum Temperature</name>
|
70
|
+
<value>31</value>
|
71
|
+
<value>41</value>
|
72
|
+
<value>33</value>
|
73
|
+
<value>39</value>
|
74
|
+
</temperature>
|
75
|
+
<probability-of-precipitation type="12 hour" units="percent" time-layout="k-p12h-n8-2">
|
76
|
+
<name>12 Hourly Probability of Precipitation</name>
|
77
|
+
<value>5</value>
|
78
|
+
<value>77</value>
|
79
|
+
<value>94</value>
|
80
|
+
<value>84</value>
|
81
|
+
<value>22</value>
|
82
|
+
<value>19</value>
|
83
|
+
<value>50</value>
|
84
|
+
<value>50</value>
|
85
|
+
</probability-of-precipitation>
|
86
|
+
<weather time-layout="k-p24h-n4-1">
|
87
|
+
<name>Weather Type, Coverage, and Intensity</name>
|
88
|
+
<weather-conditions weather-summary="Rain">
|
89
|
+
<value coverage="definitely" intensity="light" weather-type="rain" qualifier="none"/>
|
90
|
+
<value coverage="areas" intensity="none" additive="and" weather-type="fog" qualifier="none"/>
|
91
|
+
</weather-conditions>
|
92
|
+
<weather-conditions weather-summary="Rain">
|
93
|
+
<value coverage="definitely" intensity="light" weather-type="rain" qualifier="none"/>
|
94
|
+
<value coverage="areas" intensity="none" additive="and" weather-type="fog" qualifier="none"/>
|
95
|
+
</weather-conditions>
|
96
|
+
<weather-conditions weather-summary="Slight Chance Rain">
|
97
|
+
<value coverage="slight chance" intensity="light" weather-type="rain" qualifier="none"/>
|
98
|
+
</weather-conditions>
|
99
|
+
<weather-conditions weather-summary="Chance Rain">
|
100
|
+
<value coverage="chance" intensity="light" weather-type="rain" qualifier="none"/>
|
101
|
+
</weather-conditions>
|
102
|
+
</weather>
|
103
|
+
<conditions-icon type="forecast-NWS" time-layout="k-p24h-n4-1">
|
104
|
+
<name>Conditions Icons</name>
|
105
|
+
<icon-link>http://www.nws.noaa.gov/weather/images/fcicons/ra80.jpg</icon-link>
|
106
|
+
<icon-link>http://www.nws.noaa.gov/weather/images/fcicons/ra90.jpg</icon-link>
|
107
|
+
<icon-link>http://www.nws.noaa.gov/weather/images/fcicons/ra20.jpg</icon-link>
|
108
|
+
<icon-link>http://www.nws.noaa.gov/weather/images/fcicons/ra50.jpg</icon-link>
|
109
|
+
</conditions-icon>
|
110
|
+
<hazards time-layout="k-p4d-n1-3">
|
111
|
+
<name>Watches, Warnings, and Advisories</name>
|
112
|
+
<hazard-conditions xsi:nil="true"/>
|
113
|
+
</hazards>
|
114
|
+
</parameters>
|
115
|
+
</data>
|
116
|
+
</dwml>
|
data/test/data/KVAY.xml
ADDED
@@ -0,0 +1,52 @@
|
|
1
|
+
<?xml version="1.0" encoding="ISO-8859-1"?>
|
2
|
+
<current_observation version="1.0"
|
3
|
+
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
4
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
5
|
+
xsi:noNamespaceSchemaLocation="http://www.weather.gov/xml/current_obs/current_observation.xsd">
|
6
|
+
<credit>NOAA's National Weather Service</credit>
|
7
|
+
<credit_URL>http://weather.gov/</credit_URL>
|
8
|
+
<image>
|
9
|
+
<url>http://weather.gov/images/xml_logo.gif</url>
|
10
|
+
<title>NOAA's National Weather Service</title>
|
11
|
+
<link>http://weather.gov</link>
|
12
|
+
</image>
|
13
|
+
<suggested_pickup>15 minutes after the hour</suggested_pickup>
|
14
|
+
<suggested_pickup_period>60</suggested_pickup_period>
|
15
|
+
<location>Mount Holly, South Jersey Regional Airport, NJ</location>
|
16
|
+
<station_id>KVAY</station_id>
|
17
|
+
<latitude>39.95</latitude>
|
18
|
+
<longitude>-74.84</longitude>
|
19
|
+
<observation_time>Last Updated on Dec 23, 10:54 am EST</observation_time>
|
20
|
+
<observation_time_rfc822>Tue, 23 Dec 2008 10:54:00 -0500 EST</observation_time_rfc822>
|
21
|
+
<weather>Fair</weather>
|
22
|
+
<temperature_string>24 F (-4 C)</temperature_string>
|
23
|
+
<temp_f>24</temp_f>
|
24
|
+
<temp_c>-4</temp_c>
|
25
|
+
<relative_humidity>52</relative_humidity>
|
26
|
+
<wind_string>From the Northwest at 3 MPH</wind_string>
|
27
|
+
<wind_dir>Northwest</wind_dir>
|
28
|
+
<wind_degrees>330</wind_degrees>
|
29
|
+
<wind_mph>3.45</wind_mph>
|
30
|
+
<wind_gust_mph>10.25</wind_gust_mph>
|
31
|
+
<pressure_string>30.70" (1039.5 mb)</pressure_string>
|
32
|
+
<pressure_mb>1039.5</pressure_mb>
|
33
|
+
<pressure_in>30.70</pressure_in>
|
34
|
+
<dewpoint_string>9 F (-13 C)</dewpoint_string>
|
35
|
+
<dewpoint_f>9</dewpoint_f>
|
36
|
+
<dewpoint_c>-13</dewpoint_c>
|
37
|
+
<heat_index_string>NA</heat_index_string>
|
38
|
+
<heat_index_f>105</heat_index_f>
|
39
|
+
<heat_index_c>41</heat_index_c>
|
40
|
+
<windchill_string>NA</windchill_string>
|
41
|
+
<windchill_f>19</windchill_f>
|
42
|
+
<windchill_c>-7</windchill_c>
|
43
|
+
<visibility_mi>10.00</visibility_mi>
|
44
|
+
<icon_url_base>http://weather.gov/weather/images/fcicons/</icon_url_base>
|
45
|
+
<icon_url_name>skc.jpg</icon_url_name>
|
46
|
+
<two_day_history_url>http://www.weather.gov/data/obhistory/KVAY.html</two_day_history_url>
|
47
|
+
<ob_url>http://www.nws.noaa.gov/data/METAR/KVAY.1.txt</ob_url>
|
48
|
+
<disclaimer_url>http://weather.gov/disclaimer.html</disclaimer_url>
|
49
|
+
<copyright_url>http://weather.gov/disclaimer.html</copyright_url>
|
50
|
+
<privacy_policy_url>http://weather.gov/notice.html</privacy_policy_url>
|
51
|
+
</current_observation>
|
52
|
+
|
@@ -0,0 +1,749 @@
|
|
1
|
+
<?xml version="1.0"?>
|
2
|
+
<dwml version="1.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://graphical.weather.gov/xml/DWMLgen/schema/DWML.xsd">
|
3
|
+
<head>
|
4
|
+
<product srsName="WGS 1984" concise-name="time-series" operational-mode="official">
|
5
|
+
<title>NOAA's National Weather Service Forecast Data</title>
|
6
|
+
<field>meteorological</field>
|
7
|
+
<category>forecast</category>
|
8
|
+
<creation-date refresh-frequency="PT1H">2011-12-17T07:55:32Z</creation-date>
|
9
|
+
</product>
|
10
|
+
<source>
|
11
|
+
<more-information>http://graphical.weather.gov/xml/</more-information>
|
12
|
+
<production-center>Meteorological Development Laboratory<sub-center>Product Generation Branch</sub-center></production-center>
|
13
|
+
<disclaimer>http://www.nws.noaa.gov/disclaimer.html</disclaimer>
|
14
|
+
<credit>http://www.weather.gov/</credit>
|
15
|
+
<credit-logo>http://www.weather.gov/images/xml_logo.gif</credit-logo>
|
16
|
+
<feedback>http://www.weather.gov/feedback.php</feedback>
|
17
|
+
</source>
|
18
|
+
</head>
|
19
|
+
<data>
|
20
|
+
<location>
|
21
|
+
<location-key>point1</location-key>
|
22
|
+
<point latitude="40.72" longitude="-73.99"/>
|
23
|
+
</location>
|
24
|
+
<moreWeatherInformation applicable-location="point1">http://forecast.weather.gov/MapClick.php?textField1=40.72&textField2=-73.99</moreWeatherInformation>
|
25
|
+
<time-layout time-coordinate="local" summarization="none">
|
26
|
+
<layout-key>k-p24h-n7-1</layout-key>
|
27
|
+
<start-valid-time>2011-12-17T07:00:00-05:00</start-valid-time>
|
28
|
+
<end-valid-time>2011-12-17T19:00:00-05:00</end-valid-time>
|
29
|
+
<start-valid-time>2011-12-18T07:00:00-05:00</start-valid-time>
|
30
|
+
<end-valid-time>2011-12-18T19:00:00-05:00</end-valid-time>
|
31
|
+
<start-valid-time>2011-12-19T07:00:00-05:00</start-valid-time>
|
32
|
+
<end-valid-time>2011-12-19T19:00:00-05:00</end-valid-time>
|
33
|
+
<start-valid-time>2011-12-20T07:00:00-05:00</start-valid-time>
|
34
|
+
<end-valid-time>2011-12-20T19:00:00-05:00</end-valid-time>
|
35
|
+
<start-valid-time>2011-12-21T07:00:00-05:00</start-valid-time>
|
36
|
+
<end-valid-time>2011-12-21T19:00:00-05:00</end-valid-time>
|
37
|
+
<start-valid-time>2011-12-22T07:00:00-05:00</start-valid-time>
|
38
|
+
<end-valid-time>2011-12-22T19:00:00-05:00</end-valid-time>
|
39
|
+
<start-valid-time>2011-12-23T07:00:00-05:00</start-valid-time>
|
40
|
+
<end-valid-time>2011-12-23T19:00:00-05:00</end-valid-time>
|
41
|
+
</time-layout>
|
42
|
+
<time-layout time-coordinate="local" summarization="none">
|
43
|
+
<layout-key>k-p24h-n7-2</layout-key>
|
44
|
+
<start-valid-time>2011-12-16T19:00:00-05:00</start-valid-time>
|
45
|
+
<end-valid-time>2011-12-17T08:00:00-05:00</end-valid-time>
|
46
|
+
<start-valid-time>2011-12-17T19:00:00-05:00</start-valid-time>
|
47
|
+
<end-valid-time>2011-12-18T08:00:00-05:00</end-valid-time>
|
48
|
+
<start-valid-time>2011-12-18T19:00:00-05:00</start-valid-time>
|
49
|
+
<end-valid-time>2011-12-19T08:00:00-05:00</end-valid-time>
|
50
|
+
<start-valid-time>2011-12-19T19:00:00-05:00</start-valid-time>
|
51
|
+
<end-valid-time>2011-12-20T08:00:00-05:00</end-valid-time>
|
52
|
+
<start-valid-time>2011-12-20T19:00:00-05:00</start-valid-time>
|
53
|
+
<end-valid-time>2011-12-21T08:00:00-05:00</end-valid-time>
|
54
|
+
<start-valid-time>2011-12-21T19:00:00-05:00</start-valid-time>
|
55
|
+
<end-valid-time>2011-12-22T08:00:00-05:00</end-valid-time>
|
56
|
+
<start-valid-time>2011-12-22T19:00:00-05:00</start-valid-time>
|
57
|
+
<end-valid-time>2011-12-23T08:00:00-05:00</end-valid-time>
|
58
|
+
</time-layout>
|
59
|
+
<time-layout time-coordinate="local" summarization="none">
|
60
|
+
<layout-key>k-p12h-n14-3</layout-key>
|
61
|
+
<start-valid-time>2011-12-16T19:00:00-05:00</start-valid-time>
|
62
|
+
<end-valid-time>2011-12-17T07:00:00-05:00</end-valid-time>
|
63
|
+
<start-valid-time>2011-12-17T07:00:00-05:00</start-valid-time>
|
64
|
+
<end-valid-time>2011-12-17T19:00:00-05:00</end-valid-time>
|
65
|
+
<start-valid-time>2011-12-17T19:00:00-05:00</start-valid-time>
|
66
|
+
<end-valid-time>2011-12-18T07:00:00-05:00</end-valid-time>
|
67
|
+
<start-valid-time>2011-12-18T07:00:00-05:00</start-valid-time>
|
68
|
+
<end-valid-time>2011-12-18T19:00:00-05:00</end-valid-time>
|
69
|
+
<start-valid-time>2011-12-18T19:00:00-05:00</start-valid-time>
|
70
|
+
<end-valid-time>2011-12-19T07:00:00-05:00</end-valid-time>
|
71
|
+
<start-valid-time>2011-12-19T07:00:00-05:00</start-valid-time>
|
72
|
+
<end-valid-time>2011-12-19T19:00:00-05:00</end-valid-time>
|
73
|
+
<start-valid-time>2011-12-19T19:00:00-05:00</start-valid-time>
|
74
|
+
<end-valid-time>2011-12-20T07:00:00-05:00</end-valid-time>
|
75
|
+
<start-valid-time>2011-12-20T07:00:00-05:00</start-valid-time>
|
76
|
+
<end-valid-time>2011-12-20T19:00:00-05:00</end-valid-time>
|
77
|
+
<start-valid-time>2011-12-20T19:00:00-05:00</start-valid-time>
|
78
|
+
<end-valid-time>2011-12-21T07:00:00-05:00</end-valid-time>
|
79
|
+
<start-valid-time>2011-12-21T07:00:00-05:00</start-valid-time>
|
80
|
+
<end-valid-time>2011-12-21T19:00:00-05:00</end-valid-time>
|
81
|
+
<start-valid-time>2011-12-21T19:00:00-05:00</start-valid-time>
|
82
|
+
<end-valid-time>2011-12-22T07:00:00-05:00</end-valid-time>
|
83
|
+
<start-valid-time>2011-12-22T07:00:00-05:00</start-valid-time>
|
84
|
+
<end-valid-time>2011-12-22T19:00:00-05:00</end-valid-time>
|
85
|
+
<start-valid-time>2011-12-22T19:00:00-05:00</start-valid-time>
|
86
|
+
<end-valid-time>2011-12-23T07:00:00-05:00</end-valid-time>
|
87
|
+
<start-valid-time>2011-12-23T07:00:00-05:00</start-valid-time>
|
88
|
+
<end-valid-time>2011-12-23T19:00:00-05:00</end-valid-time>
|
89
|
+
</time-layout>
|
90
|
+
<time-layout time-coordinate="local" summarization="none">
|
91
|
+
<layout-key>k-p3h-n38-4</layout-key>
|
92
|
+
<start-valid-time>2011-12-17T04:00:00-05:00</start-valid-time>
|
93
|
+
<start-valid-time>2011-12-17T07:00:00-05:00</start-valid-time>
|
94
|
+
<start-valid-time>2011-12-17T10:00:00-05:00</start-valid-time>
|
95
|
+
<start-valid-time>2011-12-17T13:00:00-05:00</start-valid-time>
|
96
|
+
<start-valid-time>2011-12-17T16:00:00-05:00</start-valid-time>
|
97
|
+
<start-valid-time>2011-12-17T19:00:00-05:00</start-valid-time>
|
98
|
+
<start-valid-time>2011-12-17T22:00:00-05:00</start-valid-time>
|
99
|
+
<start-valid-time>2011-12-18T01:00:00-05:00</start-valid-time>
|
100
|
+
<start-valid-time>2011-12-18T04:00:00-05:00</start-valid-time>
|
101
|
+
<start-valid-time>2011-12-18T07:00:00-05:00</start-valid-time>
|
102
|
+
<start-valid-time>2011-12-18T10:00:00-05:00</start-valid-time>
|
103
|
+
<start-valid-time>2011-12-18T13:00:00-05:00</start-valid-time>
|
104
|
+
<start-valid-time>2011-12-18T16:00:00-05:00</start-valid-time>
|
105
|
+
<start-valid-time>2011-12-18T19:00:00-05:00</start-valid-time>
|
106
|
+
<start-valid-time>2011-12-18T22:00:00-05:00</start-valid-time>
|
107
|
+
<start-valid-time>2011-12-19T01:00:00-05:00</start-valid-time>
|
108
|
+
<start-valid-time>2011-12-19T04:00:00-05:00</start-valid-time>
|
109
|
+
<start-valid-time>2011-12-19T07:00:00-05:00</start-valid-time>
|
110
|
+
<start-valid-time>2011-12-19T10:00:00-05:00</start-valid-time>
|
111
|
+
<start-valid-time>2011-12-19T13:00:00-05:00</start-valid-time>
|
112
|
+
<start-valid-time>2011-12-19T16:00:00-05:00</start-valid-time>
|
113
|
+
<start-valid-time>2011-12-19T19:00:00-05:00</start-valid-time>
|
114
|
+
<start-valid-time>2011-12-20T01:00:00-05:00</start-valid-time>
|
115
|
+
<start-valid-time>2011-12-20T07:00:00-05:00</start-valid-time>
|
116
|
+
<start-valid-time>2011-12-20T13:00:00-05:00</start-valid-time>
|
117
|
+
<start-valid-time>2011-12-20T19:00:00-05:00</start-valid-time>
|
118
|
+
<start-valid-time>2011-12-21T01:00:00-05:00</start-valid-time>
|
119
|
+
<start-valid-time>2011-12-21T07:00:00-05:00</start-valid-time>
|
120
|
+
<start-valid-time>2011-12-21T13:00:00-05:00</start-valid-time>
|
121
|
+
<start-valid-time>2011-12-21T19:00:00-05:00</start-valid-time>
|
122
|
+
<start-valid-time>2011-12-22T01:00:00-05:00</start-valid-time>
|
123
|
+
<start-valid-time>2011-12-22T07:00:00-05:00</start-valid-time>
|
124
|
+
<start-valid-time>2011-12-22T13:00:00-05:00</start-valid-time>
|
125
|
+
<start-valid-time>2011-12-22T19:00:00-05:00</start-valid-time>
|
126
|
+
<start-valid-time>2011-12-23T01:00:00-05:00</start-valid-time>
|
127
|
+
<start-valid-time>2011-12-23T07:00:00-05:00</start-valid-time>
|
128
|
+
<start-valid-time>2011-12-23T13:00:00-05:00</start-valid-time>
|
129
|
+
<start-valid-time>2011-12-23T19:00:00-05:00</start-valid-time>
|
130
|
+
</time-layout>
|
131
|
+
<time-layout time-coordinate="local" summarization="none">
|
132
|
+
<layout-key>k-p6h-n11-5</layout-key>
|
133
|
+
<start-valid-time>2011-12-17T01:00:00-05:00</start-valid-time>
|
134
|
+
<end-valid-time>2011-12-17T07:00:00-05:00</end-valid-time>
|
135
|
+
<start-valid-time>2011-12-17T07:00:00-05:00</start-valid-time>
|
136
|
+
<end-valid-time>2011-12-17T13:00:00-05:00</end-valid-time>
|
137
|
+
<start-valid-time>2011-12-17T13:00:00-05:00</start-valid-time>
|
138
|
+
<end-valid-time>2011-12-17T19:00:00-05:00</end-valid-time>
|
139
|
+
<start-valid-time>2011-12-17T19:00:00-05:00</start-valid-time>
|
140
|
+
<end-valid-time>2011-12-18T01:00:00-05:00</end-valid-time>
|
141
|
+
<start-valid-time>2011-12-18T01:00:00-05:00</start-valid-time>
|
142
|
+
<end-valid-time>2011-12-18T07:00:00-05:00</end-valid-time>
|
143
|
+
<start-valid-time>2011-12-18T07:00:00-05:00</start-valid-time>
|
144
|
+
<end-valid-time>2011-12-18T13:00:00-05:00</end-valid-time>
|
145
|
+
<start-valid-time>2011-12-18T13:00:00-05:00</start-valid-time>
|
146
|
+
<end-valid-time>2011-12-18T19:00:00-05:00</end-valid-time>
|
147
|
+
<start-valid-time>2011-12-18T19:00:00-05:00</start-valid-time>
|
148
|
+
<end-valid-time>2011-12-19T01:00:00-05:00</end-valid-time>
|
149
|
+
<start-valid-time>2011-12-19T01:00:00-05:00</start-valid-time>
|
150
|
+
<end-valid-time>2011-12-19T07:00:00-05:00</end-valid-time>
|
151
|
+
<start-valid-time>2011-12-19T07:00:00-05:00</start-valid-time>
|
152
|
+
<end-valid-time>2011-12-19T13:00:00-05:00</end-valid-time>
|
153
|
+
<start-valid-time>2011-12-19T13:00:00-05:00</start-valid-time>
|
154
|
+
<end-valid-time>2011-12-19T19:00:00-05:00</end-valid-time>
|
155
|
+
</time-layout>
|
156
|
+
<time-layout time-coordinate="local" summarization="none">
|
157
|
+
<layout-key>k-p6h-n7-6</layout-key>
|
158
|
+
<start-valid-time>2011-12-17T01:00:00-05:00</start-valid-time>
|
159
|
+
<end-valid-time>2011-12-17T07:00:00-05:00</end-valid-time>
|
160
|
+
<start-valid-time>2011-12-17T07:00:00-05:00</start-valid-time>
|
161
|
+
<end-valid-time>2011-12-17T13:00:00-05:00</end-valid-time>
|
162
|
+
<start-valid-time>2011-12-17T13:00:00-05:00</start-valid-time>
|
163
|
+
<end-valid-time>2011-12-17T19:00:00-05:00</end-valid-time>
|
164
|
+
<start-valid-time>2011-12-17T19:00:00-05:00</start-valid-time>
|
165
|
+
<end-valid-time>2011-12-18T01:00:00-05:00</end-valid-time>
|
166
|
+
<start-valid-time>2011-12-18T01:00:00-05:00</start-valid-time>
|
167
|
+
<end-valid-time>2011-12-18T07:00:00-05:00</end-valid-time>
|
168
|
+
<start-valid-time>2011-12-18T07:00:00-05:00</start-valid-time>
|
169
|
+
<end-valid-time>2011-12-18T13:00:00-05:00</end-valid-time>
|
170
|
+
<start-valid-time>2011-12-18T13:00:00-05:00</start-valid-time>
|
171
|
+
<end-valid-time>2011-12-18T19:00:00-05:00</end-valid-time>
|
172
|
+
</time-layout>
|
173
|
+
<time-layout time-coordinate="local" summarization="none">
|
174
|
+
<layout-key>k-p6h-n19-7</layout-key>
|
175
|
+
<start-valid-time>2011-12-17T07:00:00-05:00</start-valid-time>
|
176
|
+
<start-valid-time>2011-12-17T13:00:00-05:00</start-valid-time>
|
177
|
+
<start-valid-time>2011-12-17T19:00:00-05:00</start-valid-time>
|
178
|
+
<start-valid-time>2011-12-18T01:00:00-05:00</start-valid-time>
|
179
|
+
<start-valid-time>2011-12-18T07:00:00-05:00</start-valid-time>
|
180
|
+
<start-valid-time>2011-12-18T13:00:00-05:00</start-valid-time>
|
181
|
+
<start-valid-time>2011-12-18T19:00:00-05:00</start-valid-time>
|
182
|
+
<start-valid-time>2011-12-19T01:00:00-05:00</start-valid-time>
|
183
|
+
<start-valid-time>2011-12-19T07:00:00-05:00</start-valid-time>
|
184
|
+
<start-valid-time>2011-12-19T13:00:00-05:00</start-valid-time>
|
185
|
+
<start-valid-time>2011-12-19T19:00:00-05:00</start-valid-time>
|
186
|
+
<start-valid-time>2011-12-20T01:00:00-05:00</start-valid-time>
|
187
|
+
<start-valid-time>2011-12-20T07:00:00-05:00</start-valid-time>
|
188
|
+
<start-valid-time>2011-12-20T13:00:00-05:00</start-valid-time>
|
189
|
+
<start-valid-time>2011-12-20T19:00:00-05:00</start-valid-time>
|
190
|
+
<start-valid-time>2011-12-21T01:00:00-05:00</start-valid-time>
|
191
|
+
<start-valid-time>2011-12-21T07:00:00-05:00</start-valid-time>
|
192
|
+
<start-valid-time>2011-12-21T13:00:00-05:00</start-valid-time>
|
193
|
+
<start-valid-time>2011-12-21T19:00:00-05:00</start-valid-time>
|
194
|
+
</time-layout>
|
195
|
+
<time-layout time-coordinate="local" summarization="none">
|
196
|
+
<layout-key>k-p3h-n22-8</layout-key>
|
197
|
+
<start-valid-time>2011-12-17T04:00:00-05:00</start-valid-time>
|
198
|
+
<start-valid-time>2011-12-17T07:00:00-05:00</start-valid-time>
|
199
|
+
<start-valid-time>2011-12-17T10:00:00-05:00</start-valid-time>
|
200
|
+
<start-valid-time>2011-12-17T13:00:00-05:00</start-valid-time>
|
201
|
+
<start-valid-time>2011-12-17T16:00:00-05:00</start-valid-time>
|
202
|
+
<start-valid-time>2011-12-17T19:00:00-05:00</start-valid-time>
|
203
|
+
<start-valid-time>2011-12-17T22:00:00-05:00</start-valid-time>
|
204
|
+
<start-valid-time>2011-12-18T01:00:00-05:00</start-valid-time>
|
205
|
+
<start-valid-time>2011-12-18T04:00:00-05:00</start-valid-time>
|
206
|
+
<start-valid-time>2011-12-18T07:00:00-05:00</start-valid-time>
|
207
|
+
<start-valid-time>2011-12-18T10:00:00-05:00</start-valid-time>
|
208
|
+
<start-valid-time>2011-12-18T13:00:00-05:00</start-valid-time>
|
209
|
+
<start-valid-time>2011-12-18T16:00:00-05:00</start-valid-time>
|
210
|
+
<start-valid-time>2011-12-18T19:00:00-05:00</start-valid-time>
|
211
|
+
<start-valid-time>2011-12-18T22:00:00-05:00</start-valid-time>
|
212
|
+
<start-valid-time>2011-12-19T01:00:00-05:00</start-valid-time>
|
213
|
+
<start-valid-time>2011-12-19T04:00:00-05:00</start-valid-time>
|
214
|
+
<start-valid-time>2011-12-19T07:00:00-05:00</start-valid-time>
|
215
|
+
<start-valid-time>2011-12-19T10:00:00-05:00</start-valid-time>
|
216
|
+
<start-valid-time>2011-12-19T13:00:00-05:00</start-valid-time>
|
217
|
+
<start-valid-time>2011-12-19T16:00:00-05:00</start-valid-time>
|
218
|
+
<start-valid-time>2011-12-19T19:00:00-05:00</start-valid-time>
|
219
|
+
</time-layout>
|
220
|
+
<time-layout time-coordinate="local" summarization="none">
|
221
|
+
<layout-key>k-p24h-n3-9</layout-key>
|
222
|
+
<start-valid-time>2011-12-16T16:00:00-05:00</start-valid-time>
|
223
|
+
<end-valid-time>2011-12-17T07:00:00-05:00</end-valid-time>
|
224
|
+
<start-valid-time>2011-12-17T07:00:00-05:00</start-valid-time>
|
225
|
+
<end-valid-time>2011-12-18T07:00:00-05:00</end-valid-time>
|
226
|
+
<start-valid-time>2011-12-18T07:00:00-05:00</start-valid-time>
|
227
|
+
<end-valid-time>2011-12-19T07:00:00-05:00</end-valid-time>
|
228
|
+
</time-layout>
|
229
|
+
<time-layout time-coordinate="local" summarization="none">
|
230
|
+
<layout-key>k-p24h-n2-10</layout-key>
|
231
|
+
<start-valid-time>2011-12-17T01:00:00-05:00</start-valid-time>
|
232
|
+
<end-valid-time>2011-12-17T07:00:00-05:00</end-valid-time>
|
233
|
+
<start-valid-time>2011-12-17T07:00:00-05:00</start-valid-time>
|
234
|
+
<end-valid-time>2011-12-18T07:00:00-05:00</end-valid-time>
|
235
|
+
</time-layout>
|
236
|
+
<time-layout time-coordinate="local" summarization="none">
|
237
|
+
<layout-key>k-p24h-n1-11</layout-key>
|
238
|
+
<start-valid-time>2011-12-17T01:00:00-05:00</start-valid-time>
|
239
|
+
<end-valid-time>2011-12-17T07:00:00-05:00</end-valid-time>
|
240
|
+
</time-layout>
|
241
|
+
<parameters applicable-location="point1">
|
242
|
+
<temperature type="maximum" units="Celsius" time-layout="k-p24h-n7-1">
|
243
|
+
<name>Daily Maximum Temperature</name>
|
244
|
+
<value>6</value>
|
245
|
+
<value>3</value>
|
246
|
+
<value>8</value>
|
247
|
+
<value>8</value>
|
248
|
+
<value>9</value>
|
249
|
+
<value>9</value>
|
250
|
+
<value>8</value>
|
251
|
+
</temperature>
|
252
|
+
<temperature type="minimum" units="Celsius" time-layout="k-p24h-n7-2">
|
253
|
+
<name>Daily Minimum Temperature</name>
|
254
|
+
<value>2</value>
|
255
|
+
<value>-2</value>
|
256
|
+
<value>1</value>
|
257
|
+
<value>2</value>
|
258
|
+
<value>3</value>
|
259
|
+
<value>3</value>
|
260
|
+
<value>3</value>
|
261
|
+
</temperature>
|
262
|
+
<temperature type="hourly" units="Celsius" time-layout="k-p3h-n38-4">
|
263
|
+
<name>Temperature</name>
|
264
|
+
<value>3</value>
|
265
|
+
<value>2</value>
|
266
|
+
<value>4</value>
|
267
|
+
<value>6</value>
|
268
|
+
<value>6</value>
|
269
|
+
<value>3</value>
|
270
|
+
<value>2</value>
|
271
|
+
<value>0</value>
|
272
|
+
<value>-2</value>
|
273
|
+
<value>-2</value>
|
274
|
+
<value>-1</value>
|
275
|
+
<value>3</value>
|
276
|
+
<value>3</value>
|
277
|
+
<value>2</value>
|
278
|
+
<value>1</value>
|
279
|
+
<value>1</value>
|
280
|
+
<value>1</value>
|
281
|
+
<value>1</value>
|
282
|
+
<value>3</value>
|
283
|
+
<value>7</value>
|
284
|
+
<value>8</value>
|
285
|
+
<value>6</value>
|
286
|
+
<value>4</value>
|
287
|
+
<value>2</value>
|
288
|
+
<value>7</value>
|
289
|
+
<value>6</value>
|
290
|
+
<value>4</value>
|
291
|
+
<value>3</value>
|
292
|
+
<value>8</value>
|
293
|
+
<value>7</value>
|
294
|
+
<value>5</value>
|
295
|
+
<value>3</value>
|
296
|
+
<value>8</value>
|
297
|
+
<value>7</value>
|
298
|
+
<value>4</value>
|
299
|
+
<value>3</value>
|
300
|
+
<value>8</value>
|
301
|
+
<value>7</value>
|
302
|
+
</temperature>
|
303
|
+
<temperature type="dew point" units="Celsius" time-layout="k-p3h-n38-4">
|
304
|
+
<name>Dew Point Temperature</name>
|
305
|
+
<value>-3</value>
|
306
|
+
<value>-4</value>
|
307
|
+
<value>-5</value>
|
308
|
+
<value>-7</value>
|
309
|
+
<value>-8</value>
|
310
|
+
<value>-9</value>
|
311
|
+
<value>-9</value>
|
312
|
+
<value>-9</value>
|
313
|
+
<value>-10</value>
|
314
|
+
<value>-11</value>
|
315
|
+
<value>-11</value>
|
316
|
+
<value>-11</value>
|
317
|
+
<value>-11</value>
|
318
|
+
<value>-9</value>
|
319
|
+
<value>-8</value>
|
320
|
+
<value>-7</value>
|
321
|
+
<value>-7</value>
|
322
|
+
<value>-7</value>
|
323
|
+
<value>-6</value>
|
324
|
+
<value>-4</value>
|
325
|
+
<value>-4</value>
|
326
|
+
<value>-3</value>
|
327
|
+
<value>-2</value>
|
328
|
+
<value>-1</value>
|
329
|
+
<value>-3</value>
|
330
|
+
<value>-2</value>
|
331
|
+
<value>-1</value>
|
332
|
+
<value>2</value>
|
333
|
+
<value>5</value>
|
334
|
+
<value>3</value>
|
335
|
+
<value>0</value>
|
336
|
+
<value>-1</value>
|
337
|
+
<value>-1</value>
|
338
|
+
<value>-1</value>
|
339
|
+
<value>-2</value>
|
340
|
+
<value>-1</value>
|
341
|
+
<value>1</value>
|
342
|
+
<value>1</value>
|
343
|
+
</temperature>
|
344
|
+
<precipitation type="liquid" units="centimeters" time-layout="k-p6h-n11-5">
|
345
|
+
<name>Liquid Precipitation Amount</name>
|
346
|
+
<value>0.00</value>
|
347
|
+
<value>0.00</value>
|
348
|
+
<value>0.00</value>
|
349
|
+
<value>0.00</value>
|
350
|
+
<value>0.00</value>
|
351
|
+
<value>0.00</value>
|
352
|
+
<value>0.00</value>
|
353
|
+
<value>0.00</value>
|
354
|
+
<value>0.00</value>
|
355
|
+
<value>0.00</value>
|
356
|
+
<value>0.00</value>
|
357
|
+
</precipitation>
|
358
|
+
<wind-speed type="sustained" units="meters/second" time-layout="k-p3h-n38-4">
|
359
|
+
<name>Wind Speed</name>
|
360
|
+
<value>3</value>
|
361
|
+
<value>4</value>
|
362
|
+
<value>5</value>
|
363
|
+
<value>6</value>
|
364
|
+
<value>6</value>
|
365
|
+
<value>6</value>
|
366
|
+
<value>5</value>
|
367
|
+
<value>4</value>
|
368
|
+
<value>4</value>
|
369
|
+
<value>4</value>
|
370
|
+
<value>4</value>
|
371
|
+
<value>3</value>
|
372
|
+
<value>4</value>
|
373
|
+
<value>3</value>
|
374
|
+
<value>2</value>
|
375
|
+
<value>1</value>
|
376
|
+
<value>0</value>
|
377
|
+
<value>2</value>
|
378
|
+
<value>4</value>
|
379
|
+
<value>5</value>
|
380
|
+
<value>6</value>
|
381
|
+
<value>4</value>
|
382
|
+
<value>4</value>
|
383
|
+
<value>3</value>
|
384
|
+
<value>3</value>
|
385
|
+
<value>2</value>
|
386
|
+
<value>3</value>
|
387
|
+
<value>3</value>
|
388
|
+
<value>5</value>
|
389
|
+
<value>5</value>
|
390
|
+
<value>5</value>
|
391
|
+
<value>4</value>
|
392
|
+
<value>3</value>
|
393
|
+
<value>1</value>
|
394
|
+
<value>2</value>
|
395
|
+
<value>2</value>
|
396
|
+
<value>1</value>
|
397
|
+
<value>3</value>
|
398
|
+
</wind-speed>
|
399
|
+
<direction type="wind" units="degrees true" time-layout="k-p3h-n38-4">
|
400
|
+
<name>Wind Direction</name>
|
401
|
+
<value>300</value>
|
402
|
+
<value>320</value>
|
403
|
+
<value>330</value>
|
404
|
+
<value>330</value>
|
405
|
+
<value>330</value>
|
406
|
+
<value>330</value>
|
407
|
+
<value>340</value>
|
408
|
+
<value>340</value>
|
409
|
+
<value>340</value>
|
410
|
+
<value>340</value>
|
411
|
+
<value>350</value>
|
412
|
+
<value>320</value>
|
413
|
+
<value>320</value>
|
414
|
+
<value>280</value>
|
415
|
+
<value>280</value>
|
416
|
+
<value>270</value>
|
417
|
+
<value>250</value>
|
418
|
+
<value>230</value>
|
419
|
+
<value>230</value>
|
420
|
+
<value>230</value>
|
421
|
+
<value>230</value>
|
422
|
+
<value>240</value>
|
423
|
+
<value>260</value>
|
424
|
+
<value>290</value>
|
425
|
+
<value>340</value>
|
426
|
+
<value>60</value>
|
427
|
+
<value>120</value>
|
428
|
+
<value>160</value>
|
429
|
+
<value>260</value>
|
430
|
+
<value>300</value>
|
431
|
+
<value>310</value>
|
432
|
+
<value>290</value>
|
433
|
+
<value>290</value>
|
434
|
+
<value>150</value>
|
435
|
+
<value>200</value>
|
436
|
+
<value>210</value>
|
437
|
+
<value>270</value>
|
438
|
+
<value>310</value>
|
439
|
+
</direction>
|
440
|
+
<cloud-amount type="total" units="percent" time-layout="k-p3h-n38-4">
|
441
|
+
<name>Cloud Cover Amount</name>
|
442
|
+
<value>59</value>
|
443
|
+
<value>32</value>
|
444
|
+
<value>42</value>
|
445
|
+
<value>51</value>
|
446
|
+
<value>64</value>
|
447
|
+
<value>78</value>
|
448
|
+
<value>59</value>
|
449
|
+
<value>40</value>
|
450
|
+
<value>56</value>
|
451
|
+
<value>58</value>
|
452
|
+
<value>62</value>
|
453
|
+
<value>46</value>
|
454
|
+
<value>31</value>
|
455
|
+
<value>17</value>
|
456
|
+
<value>13</value>
|
457
|
+
<value>9</value>
|
458
|
+
<value>11</value>
|
459
|
+
<value>13</value>
|
460
|
+
<value>19</value>
|
461
|
+
<value>24</value>
|
462
|
+
<value>36</value>
|
463
|
+
<value>48</value>
|
464
|
+
<value>67</value>
|
465
|
+
<value>72</value>
|
466
|
+
<value>62</value>
|
467
|
+
<value>72</value>
|
468
|
+
<value>87</value>
|
469
|
+
<value>94</value>
|
470
|
+
<value>92</value>
|
471
|
+
<value>67</value>
|
472
|
+
<value>25</value>
|
473
|
+
<value>26</value>
|
474
|
+
<value>26</value>
|
475
|
+
<value>31</value>
|
476
|
+
<value>59</value>
|
477
|
+
<value>60</value>
|
478
|
+
<value>76</value>
|
479
|
+
<value>81</value>
|
480
|
+
</cloud-amount>
|
481
|
+
<water-state time-layout="k-p6h-n19-7">
|
482
|
+
<waves type="significant" units="meters">
|
483
|
+
<name>Wave Height</name>
|
484
|
+
<value xsi:nil="true"/>
|
485
|
+
<value xsi:nil="true"/>
|
486
|
+
<value xsi:nil="true"/>
|
487
|
+
<value xsi:nil="true"/>
|
488
|
+
<value xsi:nil="true"/>
|
489
|
+
<value xsi:nil="true"/>
|
490
|
+
<value xsi:nil="true"/>
|
491
|
+
<value xsi:nil="true"/>
|
492
|
+
<value xsi:nil="true"/>
|
493
|
+
<value xsi:nil="true"/>
|
494
|
+
<value xsi:nil="true"/>
|
495
|
+
<value xsi:nil="true"/>
|
496
|
+
<value xsi:nil="true"/>
|
497
|
+
<value xsi:nil="true"/>
|
498
|
+
<value xsi:nil="true"/>
|
499
|
+
<value xsi:nil="true"/>
|
500
|
+
<value xsi:nil="true"/>
|
501
|
+
<value xsi:nil="true"/>
|
502
|
+
<value xsi:nil="true"/>
|
503
|
+
</waves>
|
504
|
+
</water-state>
|
505
|
+
<precipitation type="snow" units="centimeters" time-layout="k-p6h-n7-6">
|
506
|
+
<name>Snow Amount</name>
|
507
|
+
<value>0.00</value>
|
508
|
+
<value>0.00</value>
|
509
|
+
<value>0.00</value>
|
510
|
+
<value>0.00</value>
|
511
|
+
<value>0.00</value>
|
512
|
+
<value>0.00</value>
|
513
|
+
<value>0.00</value>
|
514
|
+
</precipitation>
|
515
|
+
<probability-of-precipitation type="12 hour" units="percent" time-layout="k-p12h-n14-3">
|
516
|
+
<name>12 Hourly Probability of Precipitation</name>
|
517
|
+
<value>14</value>
|
518
|
+
<value>14</value>
|
519
|
+
<value>14</value>
|
520
|
+
<value>1</value>
|
521
|
+
<value>3</value>
|
522
|
+
<value>2</value>
|
523
|
+
<value>20</value>
|
524
|
+
<value>26</value>
|
525
|
+
<value>42</value>
|
526
|
+
<value>42</value>
|
527
|
+
<value>16</value>
|
528
|
+
<value>14</value>
|
529
|
+
<value>25</value>
|
530
|
+
<value>25</value>
|
531
|
+
</probability-of-precipitation>
|
532
|
+
<fire-weather type="risk from dry thunderstorms" time-layout="k-p24h-n3-9">
|
533
|
+
<name>Fire Weather Outlook from Dry Thunderstorms</name>
|
534
|
+
<value>No Areas</value>
|
535
|
+
<value>No Areas</value>
|
536
|
+
<value>No Areas</value>
|
537
|
+
</fire-weather>
|
538
|
+
<convective-hazard>
|
539
|
+
<severe-component type="tornadoes" units="percent" time-layout="k-p24h-n2-10">
|
540
|
+
<name>Probability of Tornadoes</name>
|
541
|
+
<value>0</value>
|
542
|
+
<value>0</value>
|
543
|
+
</severe-component>
|
544
|
+
</convective-hazard>
|
545
|
+
<convective-hazard>
|
546
|
+
<severe-component type="hail" units="percent" time-layout="k-p24h-n1-11">
|
547
|
+
<name>Probability of Hail</name>
|
548
|
+
<value>0</value>
|
549
|
+
</severe-component>
|
550
|
+
</convective-hazard>
|
551
|
+
<humidity type="relative" units="percent" time-layout="k-p3h-n38-4">
|
552
|
+
<name>Relative Humidity</name>
|
553
|
+
<value>64</value>
|
554
|
+
<value>64</value>
|
555
|
+
<value>53</value>
|
556
|
+
<value>40</value>
|
557
|
+
<value>35</value>
|
558
|
+
<value>39</value>
|
559
|
+
<value>44</value>
|
560
|
+
<value>49</value>
|
561
|
+
<value>53</value>
|
562
|
+
<value>53</value>
|
563
|
+
<value>44</value>
|
564
|
+
<value>35</value>
|
565
|
+
<value>37</value>
|
566
|
+
<value>43</value>
|
567
|
+
<value>49</value>
|
568
|
+
<value>56</value>
|
569
|
+
<value>58</value>
|
570
|
+
<value>56</value>
|
571
|
+
<value>52</value>
|
572
|
+
<value>44</value>
|
573
|
+
<value>43</value>
|
574
|
+
<value>53</value>
|
575
|
+
<value>64</value>
|
576
|
+
<value>78</value>
|
577
|
+
<value>49</value>
|
578
|
+
<value>55</value>
|
579
|
+
<value>70</value>
|
580
|
+
<value>93</value>
|
581
|
+
<value>79</value>
|
582
|
+
<value>74</value>
|
583
|
+
<value>70</value>
|
584
|
+
<value>72</value>
|
585
|
+
<value>53</value>
|
586
|
+
<value>57</value>
|
587
|
+
<value>65</value>
|
588
|
+
<value>75</value>
|
589
|
+
<value>60</value>
|
590
|
+
<value>65</value>
|
591
|
+
</humidity>
|
592
|
+
<temperature type="apparent" units="Celsius" time-layout="k-p3h-n38-4">
|
593
|
+
<name>Apparent Temperature</name>
|
594
|
+
<value>0</value>
|
595
|
+
<value>-2</value>
|
596
|
+
<value>0</value>
|
597
|
+
<value>2</value>
|
598
|
+
<value>2</value>
|
599
|
+
<value>-1</value>
|
600
|
+
<value>-3</value>
|
601
|
+
<value>-4</value>
|
602
|
+
<value>-6</value>
|
603
|
+
<value>-7</value>
|
604
|
+
<value>-5</value>
|
605
|
+
<value>0</value>
|
606
|
+
<value>-1</value>
|
607
|
+
<value>-1</value>
|
608
|
+
<value>-1</value>
|
609
|
+
<value>-1</value>
|
610
|
+
<value>1</value>
|
611
|
+
<value>-1</value>
|
612
|
+
<value>0</value>
|
613
|
+
<value>4</value>
|
614
|
+
<value>8</value>
|
615
|
+
<value>3</value>
|
616
|
+
<value>1</value>
|
617
|
+
<value>-1</value>
|
618
|
+
<value>5</value>
|
619
|
+
<value>5</value>
|
620
|
+
<value>2</value>
|
621
|
+
<value>0</value>
|
622
|
+
<value>8</value>
|
623
|
+
<value>4</value>
|
624
|
+
<value>2</value>
|
625
|
+
<value>0</value>
|
626
|
+
<value>8</value>
|
627
|
+
<value>6</value>
|
628
|
+
<value>3</value>
|
629
|
+
<value>1</value>
|
630
|
+
<value>8</value>
|
631
|
+
<value>5</value>
|
632
|
+
</temperature>
|
633
|
+
<wind-speed type="gust" units="meters/second" time-layout="k-p3h-n22-8">
|
634
|
+
<name>Wind Speed Gust</name>
|
635
|
+
<value>4</value>
|
636
|
+
<value>7</value>
|
637
|
+
<value>8</value>
|
638
|
+
<value>9</value>
|
639
|
+
<value>9</value>
|
640
|
+
<value>9</value>
|
641
|
+
<value>8</value>
|
642
|
+
<value>7</value>
|
643
|
+
<value>7</value>
|
644
|
+
<value>5</value>
|
645
|
+
<value>5</value>
|
646
|
+
<value>4</value>
|
647
|
+
<value>5</value>
|
648
|
+
<value>4</value>
|
649
|
+
<value>2</value>
|
650
|
+
<value>3</value>
|
651
|
+
<value>2</value>
|
652
|
+
<value>3</value>
|
653
|
+
<value>5</value>
|
654
|
+
<value>8</value>
|
655
|
+
<value>10</value>
|
656
|
+
<value>5</value>
|
657
|
+
</wind-speed>
|
658
|
+
<weather time-layout="k-p3h-n38-4">
|
659
|
+
<name>Weather Type, Coverage, and Intensity</name>
|
660
|
+
<weather-conditions/>
|
661
|
+
<weather-conditions/>
|
662
|
+
<weather-conditions/>
|
663
|
+
<weather-conditions/>
|
664
|
+
<weather-conditions/>
|
665
|
+
<weather-conditions/>
|
666
|
+
<weather-conditions/>
|
667
|
+
<weather-conditions/>
|
668
|
+
<weather-conditions/>
|
669
|
+
<weather-conditions/>
|
670
|
+
<weather-conditions/>
|
671
|
+
<weather-conditions/>
|
672
|
+
<weather-conditions/>
|
673
|
+
<weather-conditions/>
|
674
|
+
<weather-conditions/>
|
675
|
+
<weather-conditions/>
|
676
|
+
<weather-conditions/>
|
677
|
+
<weather-conditions/>
|
678
|
+
<weather-conditions/>
|
679
|
+
<weather-conditions/>
|
680
|
+
<weather-conditions/>
|
681
|
+
<weather-conditions>
|
682
|
+
<value coverage="slight chance" intensity="light" weather-type="rain showers" qualifier="none">
|
683
|
+
<visibility units="meters">8.05</visibility>
|
684
|
+
</value>
|
685
|
+
</weather-conditions>
|
686
|
+
<weather-conditions>
|
687
|
+
<value coverage="slight chance" intensity="light" weather-type="rain showers" qualifier="none">
|
688
|
+
<visibility units="meters">8.05</visibility>
|
689
|
+
</value>
|
690
|
+
</weather-conditions>
|
691
|
+
<weather-conditions>
|
692
|
+
<value coverage="slight chance" intensity="light" weather-type="rain showers" qualifier="none">
|
693
|
+
<visibility units="meters">8.05</visibility>
|
694
|
+
</value>
|
695
|
+
</weather-conditions>
|
696
|
+
<weather-conditions>
|
697
|
+
<value coverage="slight chance" intensity="light" weather-type="rain showers" qualifier="none">
|
698
|
+
<visibility units="meters">8.05</visibility>
|
699
|
+
</value>
|
700
|
+
</weather-conditions>
|
701
|
+
<weather-conditions>
|
702
|
+
<value coverage="chance" intensity="light" weather-type="rain" qualifier="none">
|
703
|
+
<visibility units="meters">8.05</visibility>
|
704
|
+
</value>
|
705
|
+
</weather-conditions>
|
706
|
+
<weather-conditions>
|
707
|
+
<value coverage="chance" intensity="light" weather-type="rain" qualifier="none">
|
708
|
+
<visibility units="meters">8.05</visibility>
|
709
|
+
</value>
|
710
|
+
</weather-conditions>
|
711
|
+
<weather-conditions>
|
712
|
+
<value coverage="chance" intensity="light" weather-type="rain" qualifier="none">
|
713
|
+
<visibility units="meters">8.05</visibility>
|
714
|
+
</value>
|
715
|
+
</weather-conditions>
|
716
|
+
<weather-conditions>
|
717
|
+
<value coverage="chance" intensity="light" weather-type="rain" qualifier="none">
|
718
|
+
<visibility units="meters">8.05</visibility>
|
719
|
+
</value>
|
720
|
+
</weather-conditions>
|
721
|
+
<weather-conditions>
|
722
|
+
<value coverage="slight chance" intensity="light" weather-type="rain showers" qualifier="none">
|
723
|
+
<visibility units="meters">8.05</visibility>
|
724
|
+
</value>
|
725
|
+
</weather-conditions>
|
726
|
+
<weather-conditions/>
|
727
|
+
<weather-conditions/>
|
728
|
+
<weather-conditions/>
|
729
|
+
<weather-conditions/>
|
730
|
+
<weather-conditions/>
|
731
|
+
<weather-conditions>
|
732
|
+
<value coverage="chance" intensity="light" weather-type="rain" qualifier="none">
|
733
|
+
<visibility units="meters">8.05</visibility>
|
734
|
+
</value>
|
735
|
+
</weather-conditions>
|
736
|
+
<weather-conditions>
|
737
|
+
<value coverage="chance" intensity="light" weather-type="rain" qualifier="none">
|
738
|
+
<visibility units="meters">8.05</visibility>
|
739
|
+
</value>
|
740
|
+
</weather-conditions>
|
741
|
+
<weather-conditions>
|
742
|
+
<value coverage="slight chance" intensity="light" weather-type="rain showers" qualifier="none">
|
743
|
+
<visibility units="meters">8.05</visibility>
|
744
|
+
</value>
|
745
|
+
</weather-conditions>
|
746
|
+
</weather>
|
747
|
+
</parameters>
|
748
|
+
</data>
|
749
|
+
</dwml>
|