ObsRSS | ||||||||
| Added: | ||||||||
| > > |
See also ObsKML | |||||||
| Lately (September 2006) I've been wondering if the below xml rss type feeds might be more suitable to simple sharing of latest observation data from platforms. ObsRSS is shorthand for Observations RSS. A common concern is collecting latest observations in near real-time from various platforms and many different entities are trying both to provide and consume these latest data via both the usual http/ascii/xml type feeds and web services/SOAP/REST type feeds. | ||||||||
ObsRSS | ||||||||
| Line: 30 to 30 | ||||||||
|---|---|---|---|---|---|---|---|---|
| The filename includes a reference to the platform handle, unique timestamp for the file creation date or latest obs and convention version. | ||||||||
| Changed: | ||||||||
| < < |
The platform handle in the below reference is a concatenation of the organization name, platform name and platform type(like carocoops_SUN2_buoy ). The platform type can be used to break up different messages from different parts of the platform like '..._buoy','..._met','..._waves',etc. This has been a useful convention for my purposes, but this convention does not have to be followed as long as the handle provides some description and forms a unique string key. | |||||||
| > > |
The platform handle in the below reference is a concatenation of the organization name, platform name and platform type(like carocoops:SUN2:buoy ). The platform type can be used to break up different messages from different parts of the platform like '..._buoy','..._met','..._waves',etc. This has been a useful convention for my purposes, but this convention does not have to be followed as long as the handle provides some description and forms a unique string key. | |||||||
| A new obs rss file would be produced with each latest set of (say hourly) observation data. These files could accumulate for say the previous day's worth of data or possibly just the latest obs only is shared depending on the data provider. The xml could be extended to reference a subscription time, frequency and possible secondary source. | ||||||||
| Line: 39 to 39 | ||||||||
#filename convention like follows: #<platformHandle>_<datetime=YYYYMMDDHHMM>_latest_obs_v1.xml | ||||||||
| Changed: | ||||||||
| < < |
#carocoops_SUN2_buoy_200608171400_latest_obs_v1.xml | |||||||
| > > |
#carocoops:SUN2:buoy:latest.xml | |||||||
| <platform xmlns:georss="http://www.georss.org/georss" xmlns:platforms="http://nautilus.baruch.sc.edu/obsrss/platforms.xml" | ||||||||
| Line: 48 to 48 | ||||||||
|
| ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > |
| |||||||
|
| ||||||||
| Line: 75 to 75 | ||||||||
#filename convention like follows: | ||||||||
| Changed: | ||||||||
| < < |
# | |||||||
| > > |
# | |||||||
| <platform xmlns:georss="http://www.georss.org/georss" xmlns:organizations="http://nautilus.baruch.sc.edu/obsrss/organizations.xml" | ||||||||
| Line: 91 to 91 | ||||||||
|
| ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > |
| |||||||
|
| ||||||||
| Line: 124 to 124 | ||||||||
|
<GML elements>
| ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > |
| |||||||
|
| ||||||||
| Line: 139 to 139 | ||||||||
|
platformHandle,observationType,time,latitude,longitude,z,measurement
| ||||||||
| Changed: | ||||||||
| < < |
carocoops_SUN2_buoy,sea_surface_temperature,2006-08-17T14:00:00Z,33.83,-78.48,-1,20 | |||||||
| > > |
carocoops:SUN2:buoy,sea_surface_temperature,2006-08-17T14:00:00Z,33.83,-78.48,-1,20 | |||||||
| For folks familiar with SWE(Sensor Web Enablement) efforts and getObservation web service, the following mapping of terms would apply: | ||||||||
ObsRSS | ||||||||
| Line: 52 to 52 | ||||||||
|---|---|---|---|---|---|---|---|---|
|
| ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > |
| |||||||
|
| ||||||||
| Line: 60 to 60 | ||||||||
|
| ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > |
| |||||||
|
| ||||||||
| Line: 96 to 96 | ||||||||
|
| ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > |
| |||||||
|
| ||||||||
| Line: 106 to 106 | ||||||||
|
| ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > |
| |||||||
|
| ||||||||
| Line: 126 to 126 | ||||||||
<platformHandle>carocoops_SUN2_buoy</platformHandle> <observationType>sea_surface_temperature</observationType> | ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > |
| |||||||
|
| ||||||||
| Line: 136 to 136 | ||||||||
| Since CSV (Comma Separated Value) is a simple and common way of passing data, here's a draft at a possible CSV type feed record. Platform elements are repeated with each observation record. | ||||||||
| Changed: | ||||||||
| < < |
platformHandle,observation | |||||||
| > > |
platformHandle,observationType,time,latitude,longitude,z,measurement | |||||||
|
| ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > |
carocoops_SUN2_buoy,sea_surface_temperature,2006-08-17T14:00:00Z,33.83,-78.48,-1,20
2006-08-17T14:00:00Z,33.83,-78.48,-1,20 <nop> | |||||||
| Added: | ||||||||
| > > |
||||||||
Future development | ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > |
| |||||||
| ||||||||
ObsRSS | ||||||||
| Line: 132 to 132 | ||||||||
|---|---|---|---|---|---|---|---|---|
|
| ||||||||
| Added: | ||||||||
| > > |
CSV formSince CSV (Comma Separated Value) is a simple and common way of passing data, here's a draft at a possible CSV type feed record. Platform elements are repeated with each observation record. platformHandle,observation<platformHandle>carocoops_SUN2_buoy</platformHandle> <observationType>sea_surface_temperature</observationType> <dateTime>2006-08-17T14:00:00-00</dateTime> #ISO8601 time format GMT <value>20<value> <uom>celcius</uom> <elev>-1</elev> | |||||||
Future development
| ||||||||
ObsRSS | ||||||||
| Line: 122 to 122 | ||||||||
|---|---|---|---|---|---|---|---|---|
| Since OGC WFS (Web Feature Service) has been useful in the past for GML tagging recordsets, here's a draft at a possible WFS type feed record. Platform elements are repeated with each observation record. | ||||||||
| Changed: | ||||||||
| < < |
GML elements | |||||||
| > > |
<GML elements> | |||||||
<platformHandle>carocoops_SUN2_buoy</platformHandle> <observationType>sea_surface_temperature</observationType> | ||||||||
ObsRSS | ||||||||
| Line: 15 to 15 | ||||||||
|---|---|---|---|---|---|---|---|---|
| ||||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > |
| |||||||
| ||||||||
| Line: 117 to 117 | ||||||||
| Added: | ||||||||
| > > |
WFS formSince OGC WFS (Web Feature Service) has been useful in the past for GML tagging recordsets, here's a draft at a possible WFS type feed record. Platform elements are repeated with each observation record. GML elements<platformHandle>carocoops_SUN2_buoy</platformHandle> <observationType>sea_surface_temperature</observationType> <dateTime>2006-08-17T14:00:00-00</dateTime> #ISO8601 time format GMT <value>20<value> <uom>celcius</uom> <elev>-1</elev> | |||||||
Future development
| ||||||||
ObsRSS | ||||||||
| Line: 123 to 123 | ||||||||
|---|---|---|---|---|---|---|---|---|
| ||||||||
| Added: | ||||||||
| > > |
| |||||||
Other earlier and ongoing workThe above xml rss forms are related to and derive from earlier and ongoing work related to ocean observing system web services development documented at | ||||||||
ObsRSS | ||||||||
| Line: 30 to 30 | ||||||||
|---|---|---|---|---|---|---|---|---|
| The filename includes a reference to the platform handle, unique timestamp for the file creation date or latest obs and convention version. | ||||||||
| Changed: | ||||||||
| < < |
The platform handle in the below reference is a concatenation of the organization name, platform name and platform type. This has been a useful convention for my purposes, but this convention does not have to be followed as long as the handle provides some description and forms a unique string key. | |||||||
| > > |
The platform handle in the below reference is a concatenation of the organization name, platform name and platform type(like carocoops_SUN2_buoy ). The platform type can be used to break up different messages from different parts of the platform like '..._buoy','..._met','..._waves',etc. This has been a useful convention for my purposes, but this convention does not have to be followed as long as the handle provides some description and forms a unique string key. | |||||||
| A new obs rss file would be produced with each latest set of (say hourly) observation data. These files could accumulate for say the previous day's worth of data or possibly just the latest obs only is shared depending on the data provider. The xml could be extended to reference a subscription time, frequency and possible secondary source. | ||||||||
| Added: | ||||||||
| > > |
ObsRSS | |||||||
| TOC: No TOC in "Main.ObsRSS" Lately (September 2006) I've been wondering if the below xml rss type feeds might be more suitable to simple sharing of latest observation data from platforms. ObsRSS is shorthand for Observations RSS. A common concern is collecting latest observations in near real-time from various platforms and many different entities are trying both to provide and consume these latest data via both the usual http/ascii/xml type feeds and web services/SOAP/REST type feeds. | ||||||||
| Changed: | ||||||||
| < < |
In addition to a more complex query based web services model(SOAP or REST based) which can be time consuming/resource intensive to develop and maintain, what's needed for this simpler publishing/report issue is an rss type approach where there is agreement on the rss/xml format and methods for providing cross-organizational mapping for the content elements. | |||||||
| > > |
In addition to a more complex query based web services approach(SOAP or REST based) which can be time consuming/resource intensive to develop and maintain, what's needed for this simpler publishing/report issue is an rss type approach where there is agreement on the rss/xml format and methods for providing cross-organizational mapping for the content elements. | |||||||
| If existing data feeds were mapped by platform to a more community standard rss/xml type feed below once then the duplicated effort of understanding/mapping to the various individual feeds could be reduced. | ||||||||
| Changed: | ||||||||
| < < |
Below are listed what I would consider the critical elements to achieving a useful rss type feed. | |||||||
| > > |
Below are listed what I would consider the critical elements to achieving a useful rss type feed listed in the 'minimal form' section.
| |||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > |
The platform handle in the below reference is a concatenation of the organization name, platform name and platform type. This has been a useful convention for my purposes, but this convention does not have to be followed as long as the handle provides some description and forms a unique string key. | |||||||
| Changed: | ||||||||
| < < |
| |||||||
| > > |
A new obs rss file would be produced with each latest set of (say hourly) observation data. These files could accumulate for say the previous day's worth of data or possibly just the latest obs only is shared depending on the data provider. The xml could be extended to reference a subscription time, frequency and possible secondary source. | |||||||
Minimal form#filename convention like follows: | ||||||||
| Changed: | ||||||||
| < < |
# | |||||||
| > > |
# | |||||||
| #carocoops_SUN2_buoy_200608171400_latest_obs_v1.xml <platform xmlns:georss="http://www.georss.org/georss" | ||||||||
| Line: 55 to 71 | ||||||||
|---|---|---|---|---|---|---|---|---|
Full form | ||||||||
| Added: | ||||||||
| > > |
Below is the 'full form' version of the above. I've added useful additional reference tags such as platform and data url's, quality flags and a breakout of the elements which form the platform handle. Other additional tags could be added for additional metadata or data product specific elements. | |||||||
#filename convention like follows: | ||||||||
| Changed: | ||||||||
| < < |
# | |||||||
| > > |
# | |||||||
| #carocoops_SUN2_buoy_200608171400_latest_obs_v1.xml <platform xmlns:georss="http://www.georss.org/georss" | ||||||||
| Line: 110 to 128 | ||||||||
|
The above xml rss forms are related to and derive from earlier and ongoing work related to ocean observing system web services development documented at
http://twiki.sura.org/twiki/bin/view/Main/OosTechServiceDefinition | ||||||||
| Deleted: | ||||||||
| < < |
http://twiki.sura.org/twiki/bin/view/Main/SoapliteSeacoos | |||||||
|
http://twiki.sura.org/twiki/bin/view/Main/OOSTechSWE Also at the relational database level I'm working to provide a generalized table schema which would be used to collect and share data/products from documented at http://nautilus.baruch.sc.edu/twiki_dmcc/bin/view/Main/XeniaPackage | ||||||||
| Added: | ||||||||
| > > |
Data feedsCurrently the latest observations from the Seacoos database (1000+ platforms, federal and institution level) are hourly provided as both: | |||||||
| Added: | ||||||||
| > > |
zipped xml file http://nautilus.baruch.sc.edu/gearth/oostech.xml.zip kmz file for display in google earth http://nautilus.baruch.sc.edu/gearth/latest_placemarks.kmz Smaller bounding boxes, individual platforms and observations can be queried via examples of the REST oriented web service documented at http://twiki.sura.org/twiki/bin/view/Main/SoapliteSeacoos | |||||||
| Added: | ||||||||
| > > |
Work done to convert data from their hourly raw ascii feeds to other formats is documented at http://nautilus.baruch.sc.edu/twiki_dmcc/bin/view/Main/CarolinasCoastGetData | |||||||
| -- JeremyCothran - 07 Sep 2025 | ||||||||
| Line: 1 to 1 | ||||||||
|---|---|---|---|---|---|---|---|---|
| Added: | ||||||||
| > > |
Lately (September 2006) I've been wondering if the below xml rss type feeds might be more suitable to simple sharing of latest observation data from platforms. ObsRSS is shorthand for Observations RSS.
A common concern is collecting latest observations in near real-time from various platforms and many different entities are trying both to provide and consume these latest data via both the usual http/ascii/xml type feeds and web services/SOAP/REST type feeds.
In addition to a more complex query based web services model(SOAP or REST based) which can be time consuming/resource intensive to develop and maintain, what's needed for this simpler publishing/report issue is an rss type approach where there is agreement on the rss/xml format and methods for providing cross-organizational mapping for the content elements.
If existing data feeds were mapped by platform to a more community standard rss/xml type feed below once then the duplicated effort of understanding/mapping to the various individual feeds could be reduced.
Below are listed what I would consider the critical elements to achieving a useful rss type feed.
Minimal form
#filename convention like follows:
#<platform_handle>_<datetime=YYYYMMDDHHMM>_latest_obs_v1.xml
#carocoops_SUN2_buoy_200608171400_latest_obs_v1.xml
<platform xmlns:georss="http://www.georss.org/georss"
xmlns:platforms="http://nautilus.baruch.sc.edu/obsrss/platforms.xml"
xmlns:observationTypes="http://nautilus.baruch.sc.edu/obsrss/observation_types.xml"
xmlns:uomTypes="http://nautilus.baruch.sc.edu/obsrss/uom_types.xml">
<georss:point>33.83 -78.48</georss:point>
<platforms:platformHandle>carocoops_SUN2_buoy</platforms:platformHandle>
<observation>
<observationTypes:type>sea_surface_temperature</observationTypes:type>
<dateTime>2006-08-17T14:00:00-00</dateTime> #ISO8601 time format GMT
<value>20<value>
<uomTypes:uom>celcius</uomTypes:uom>
<elev>-1</elev>
</observation>
<observation>
<observationTypes:type>air_pressure</observationTypes:type>
<dateTime>2006-08-17T14:00:00-00</dateTime> #ISO8601 time format GMT
<value>1016<value>
<uomTypes:uom>millibar</uomTypes:uom>
<elev>3</elev>
</observation>
</platform>
Full form
#filename convention like follows:
#<platform_handle>_<datetime=YYYYMMDDHHMM>_latest_obs_v1.xml
#carocoops_SUN2_buoy_200608171400_latest_obs_v1.xml
<platform xmlns:georss="http://www.georss.org/georss"
xmlns:organizations="http://nautilus.baruch.sc.edu/obsrss/organizations.xml"
xmlns:platformTypes="http://nautilus.baruch.sc.edu/obsrss/platform_types.xml"
xmlns:platforms="http://nautilus.baruch.sc.edu/obsrss/platforms.xml"
xmlns:observationTypes="http://nautilus.baruch.sc.edu/obsrss/observation_types.xml"
xmlns:uomTypes="http://nautilus.baruch.sc.edu/obsrss/uom_types.xml"
xmlns:qualityFlagTypes="http://nautilus.baruch.sc.edu/obsrss/quality_flag_types.xml">
<georss:point>33.83 -78.48</georss:point>
<organizations:organizationName>carocoops</organizations:organizationName>
<platformName>SUN2</platformName>
<platformTypes:platformType>buoy</platformTypes:platformType>
<platforms:platformHandle>carocoops_SUN2_buoy</platforms:platformHandle>
<platformURL>http://nautilus.baruch.sc.edu/carocoops_website/buoy_detail.php?buoy=buoy6</platformURL>
<observation>
<observationTypes:type>sea_surface_temperature</observationTypes:type>
<dateTime>2006-08-17T14:00:00-00</dateTime> #ISO8601 time format GMT
<value>20<value>
<uomTypes:uom>celcius</uomTypes:uom>
<elev>-1</elev>
<qualityFlagTypes:qualityFlag>3</qualityFlagTypes:qualityFlag>
<dataURL>http://nautilus.baruch.sc.edu/carocoops_website/buoy_graph.php?buoy=buoy6&graph_type=temperature_surface</dataURL>
</observation>
<observation>
<observationTypes:type>air_pressure</observationTypes:type>
<dateTime>2006-08-17T14:00:00-00</dateTime> #ISO8601 time format GMT
<value>1016<value>
<uomTypes:uom>millibar</uomTypes:uom>
<elev>3</elev>
<qualityFlagTypes:qualityFlag>3</qualityFlagTypes:qualityFlag>
<dataURL>http://nautilus.baruch.sc.edu/carocoops_website/buoy_graph.php?buoy=buoy6&graph_type=air_pressure</dataURL>
</observation>
</platform>
Future development
Other earlier and ongoing workThe above xml rss forms are related to and derive from earlier and ongoing work related to ocean observing system web services development documented at http://twiki.sura.org/twiki/bin/view/Main/OosTechServiceDefinitionhttp://twiki.sura.org/twiki/bin/view/Main/SoapliteSeacoos http://twiki.sura.org/twiki/bin/view/Main/OOSTechSWE Also at the relational database level I'm working to provide a generalized table schema which would be used to collect and share data/products from documented at http://nautilus.baruch.sc.edu/twiki_dmcc/bin/view/Main/XeniaPackage -- JeremyCothran - 07 Sep 2025 | |||||||