Closed GoogleCodeExporter closed 8 years ago
You may view the SWE samples at http://sdftest.ndbc.noaa.gov/sos/ to see how we
have added station and sensor ids to the responses. These responses are a
first attempt and feedback is invited.
Original comment by mike.gar...@gmail.com
on 21 Mar 2012 at 7:40
Original comment by dpsnowde...@gmail.com
on 18 Apr 2012 at 3:28
Original comment by dpsnowde...@gmail.com
on 24 Apr 2012 at 1:57
Station:
<swe:field name="station_id">
<swe:Text definition="http://fixme.vocab/station">
<swe:value>urn:ioos:station:wmo:41001</swe:value>
</swe:Text>
</swe:field>
Sensor:
<swe:field name="sensor_id">
<swe:Text definition="http://fixme.vocab/sensor">
<swe:value>urn:ioos:sensor:wmo:41001::baro1</swe:value>
</swe:Text>
</swe:field>
Original comment by wilcox.k...@gmail.com
on 24 Apr 2012 at 3:01
Well, apparently, you can't edit comments.
Above is what NDBC has implemented. Aside from figuring out what the
"definition" should reference, it looks to me like:
https://geo-ide.noaa.gov/wiki/index.php?title=IOOS_Conventions_for_Observing_Ass
et_Identifiers.
Are there any objections to using the IOOS asset identifier conventions?
Since those conventions are DRAFT, we need to make a more concrete decision.
Original comment by wilcox.k...@gmail.com
on 24 Apr 2012 at 3:10
At the workshop we agreed to using the current urn scheme so I think that
question is settled for now.
But we also acknowledged that we need some modifications to it.
1. We needed to add guidance for the appropriate URN to identify a procedure
that describes a network.
2. We need a discussion of when and how to move from URN to URLs. I suggest a
new issue and a milestone of v2.0 not 1.0 so that we don't forget it but it's
also not something we need to worry about now.
3. As a corollary to 2, we need to address the definition element that Kyle
mentioned. The geo-ide wiki is one solution but there are also several
existing vocabularies and ontologies that document various aspects. (e.g.
http://mmisw.org/orr/#http://mmisw.org/ont/mmi/platform) In my mind the
question is, is the "definition" attribute pointing to the definition of the
term or concept called "platform" (or sensor or station). Or, is it pointing
to the syntax of the particular URN scheme we chose to encode station
identifiers? If the answer is the former, then we go down the ontology road,
if it is the latter then we can use the geo-ide wiki for now.
Original comment by dpsnowde...@gmail.com
on 24 Apr 2012 at 4:24
Separate issue for URN -> URL migration sounds good.
> In my mind the question is, is the "definition" attribute pointing to the
> definition of the term or concept called "platform" (or sensor or station).
Or,
> is it pointing to the syntax of the particular URN scheme we chose to encode
> station identifiers? If the answer is the former, then we go down the
ontology
> road, if it is the latter then we can use the geo-ide wiki for now.
It seems more useful to me to use the URN scheme definition as the swe:Text
definition. This would allow us to link to a single definition doc that
described the hardened URN standard and optionally included ontological links
to terms like sensor, station, network, etc. The SWE standard suggests that
either approach is ok (one example links to the definition of a Manufacturer,
one links to the definition of ModelID).
Original comment by sh...@axiomalaska.com
on 24 Apr 2012 at 5:59
I agree with Shane: let's go with the URN scheme definition document (the
GEO-IDE wiki page) as the swe:Text definition for Milestone 1.0.
> 2. We need a discussion of when and how to move from URN to URLs.
> I suggest a new issue and a milestone of v2.0 not 1.0
Also agree with Derrick and Shane on making this a v2.0 issue. Let's not bother
too much with a discussion on this until 1.0 is reached.
> 1. We needed to add guidance for the appropriate URN to identify
> a procedure that describes a network.
I'm not sure we reached sufficient consensus and discussion of all
ramifications to feel confident that this can be a 1.0 issue. My hunch is that
we should not make it an official 1.0 issue, but still have a proposed draft
implementation when 1.0 is reached. But maybe I'm off and we really can make it
a 1.0 issue??
Regarding Kyle's dump of the SWE blocks for station and sensor ID definitions
in the NDBC test SOS (thanks, Kyle): eg, for a sensor:
urn:ioos:sensor:wmo:41001::baro1
This looks to me like it doesn't follow the syntax/convention laid out here:
https://geo-ide.noaa.gov/wiki/index.php?title=IOOS_Conventions_for_Observing_Ass
et_Identifiers
According to that page, it should be: urn:ioos:sensor:wmo:41001:baro1 (no
double colon)
The examples used on the IOOS CSV/TSV encoding page also seem inconsistent:
https://geo-ide.noaa.gov/wiki/index.php?title=IOOS_Conventions_for_CSV_and_TSV_E
ncoding
eg:
urn:ioos:station:wmo:41012:,urn:ioos:sensor:wmo:41012::watertemp1:
According to the IOOS urn convention page, the NDBC SWE definition blocks, and
all existing usage I'm aware of, the station and sensor urn's never end in ":".
Finally, since this is the time to finalize these conventions, a
comment/question at
https://geo-ide.noaa.gov/wiki/index.php?title=IOOS_Conventions_for_Observing_Ass
et_Identifiers#Sensor_Identifiers
asks if the "sensor" asset type is redundant. The questions posed seem
appropriate. They should be resolved (eg, ignored) before we call it final.
Original comment by emilioma...@gmail.com
on 24 Apr 2012 at 7:15
I agree, the way I read it is that identifiers shouldn't end with a colon and
shouldn't have double colons.
Is there a suggestion on where the finalized IOOS identifier definitions could
be hosted? Seems like MMI holds only vocabularies and mappings.
How about this for the network format? I don't think a single network
identifier should try to capture a full network hierarchy.
Network:
<swe:field name="network_id">
<swe:Text definition="http://home.of.ioos.conventions/network">
<swe:value>urn:ioos:network:aoos:all-barometric</swe:value>
</swe:Text>
</swe:field>
Station:
<swe:field name="station_id">
<swe:Text definition="http://home.of.ioos.conventions/station">
<swe:value>urn:ioos:station:wmo:41001</swe:value>
</swe:Text>
</swe:field>
Sensor:
<swe:field name="sensor_id">
<swe:Text definition="http://home.of.ioos.conventions/sensor">
<swe:value>urn:ioos:sensor:wmo:41001:baro1</swe:value>
</swe:Text>
</swe:field>
Original comment by sh...@axiomalaska.com
on 3 May 2012 at 5:55
Ah, after looking at the DescribeSensor templates I see that network is more
complicated than that, with parentNetworks and networkOfferings, etc. Seems
like that should be its own issue.
Original comment by sh...@axiomalaska.com
on 3 May 2012 at 6:11
Right or wrong, the double-colon is a place holder for an optional station
version. Both stations and sensors may have versions. These are not
implemented at this time, but the intent was for the version to represent the
deployment date (YYYYMMDD) of the station and the install date of the sensor
(YYYYMMDD). When omitted, the service would return the most recent
version/deployment/installation.
URNs would be something like this...
urn:ioos:station:wmo:41001:20110213
urn:ioos:sensor:wmo:41001:20110213:baro1:20120110
-- or --
urn:ioos:station:wmo:41001
urn:ioos:sensor:wmo:41001::baro1
Original comment by mike.gar...@gmail.com
on 3 May 2012 at 2:41
[deleted comment]
Ah, ok. If we go this route, it seems like an identifier with an omitted
station version could be considered a kind of virtual parent procedure, meaning:
urn:ioos:station:wmo:41001
is a parent of
urn:ioos:station:wmo:41001:20110512 and
urn:ioos:station:wmo:41001:20090602
and
urn:ioos:sensor:wmo:41001::baro1
is a parent of
urn:ioos:sensor:wmo:41001:20110512:baro1 and
urn:ioos:sensor:wmo:41001:20090602:baro1
I was a little concerned about having to translate procedure identifiers in an
IOOS specific way, but handling them as parent procedures would eliminate the
need to do so (and simplify implementation for SOSs that don't include
deployment information in the procedure identifier).
Edit: fixed sensor example.
Original comment by sh...@axiomalaska.com
on 3 May 2012 at 5:24
The concept of parent ID is at odds with the way the original conventions were
drafted. See the geo-ide referenced above for more info. The particular text
from the "versions" section of the wiki is:
If an identifier has one or more values with version numbers, then a value
without the version must also exist, and the unversioned value must refer to
the most recent version. For example, if urn:ioos:platform:foo:a:1 and
urn:ioos:platform:foo:a:2 both exist, then urn:ioos:platform:foo:a must refer
to the same asset as urn:ioos:platform:foo:a:2.
So, the unversioned URN isn't a parent so much as the most recent instance.
Are these two concepts incompatible?
Before we go too far down the road of building software around the semantics of
URN schemes, we should make sure it's necessary.
Finally, the concept of unversioned URIs pointing to the most recent resource
is consistent with other semantic frameworks. At the MMI OR & R the following
two URIs point to the same resource...
http://mmisw.org/ont/cf/20120323T163922/parameter/sea_water_temperature
http://mmisw.org/ont/cf/parameter/sea_water_temperature
ahem, one of them isn't working now but you get the idea.
Original comment by dpsnowde...@gmail.com
on 3 May 2012 at 6:28
> So, the unversioned URN isn't a parent so much as the most recent instance.
Are these two concepts incompatible?
In practice I think the main difference would be that an unversioned identifier
implemented as a parent could refer to more than one versioned identifier. For
example if you requested all observations from urn:ioos:platform:foo:a you
would get back all observations from both urn:ioos:platform:foo:a:1 and
urn:ioos:platform:foo:a:2. If the unversioned identifier is instead treated as
an alias for the most recent version, you would only get
urn:ioos:platform:foo:a:2 back.
Treating unversioned identifiers as parents seems more intuitive from a user's
perspective to me, and would be easier to implement (for me at least). However,
I'm no sensor expert and there may be very good reasons for treating
unversioned identifiers as pointers, especially considering this was previously
codified in the geo-ide wiki. What do others think?
Original comment by sh...@axiomalaska.com
on 3 May 2012 at 6:39
Note issue #22 on use of swe:Category over swe:Text
Original comment by wilcox.k...@gmail.com
on 5 Jun 2012 at 8:31
Two things. First, the IOOS conventions page
(https://geo-ide.noaa.gov/wiki/index.php?title=IOOS_Conventions_for_Observing_As
set_Identifiers) lists this as the general asset identifier format:
urn:ioos:asset_type:authority:label[:component][:version]
However, all the examples we've been working with actually have this format
(component and version are switched):
urn:ioos:asset_type:authority:label[:version][:component]
e.g. urn:ioos:sensor:wmo:42001::wpm1
Q1: Should the IOOS page be corrected?
Second, we need to address the unversioned parent procedure question.
Q2: Should an unversioned parent procedure (station/platform) be an alias for
a) all versions of the station, or b) only the most recent version of the
station?
Please vote if you have an opinion, or let us know if the questions need
adjustment.
I vote Q1 yes and Q2 a) all versions.
Original comment by sh...@axiomalaska.com
on 8 Jun 2012 at 4:02
See this ioostech_dev thread where I (and Derrick) tried to outline decisions
on outstanding issues regarding the urn conventions:
https://groups.google.com/d/topic/ioostech_dev/F1SBuamGUrI/discussion
These are tentative for the next couple of days, while we reach sufficient
agreement.
* Regarding your Q1: Yes, but not yet. Once we truly finalize the urn
conventions, I'll draft an ioostech wiki page on this topic alone. At that
point we can start proposing revisions to the IOOS Geo-IDE wiki page
* Regarding Q2: As we discussed in that email thread I pointed out, the
proposal on the table (mainly from me, but with Derrick's acceptance, though
somewhat kicking and screaming) is to remove the version code altogether from
the urn convention. ie:
urn:ioos:asset_type:authority:label[:component]
If we go with this recommendation, Q2 will become moot.
Original comment by emilioma...@gmail.com
on 8 Jun 2012 at 11:23
The discussion on this Issue ended up expanding to include urn conventions,
which was already the focus of Issue 5
(http://code.google.com/p/ioostech/issues/detail?id=5). We've resolved urn
conventions, and the decisions have been documented on Issue 5, which has now
been closed.
Please don't add more discussions on urn conventions here, as that would only
confuse things. Further discussions here should focus on the original scope of
this Issue: "How to represent (or where to put) Station and Sensor IDs in SOS
responses."
Network ID has been discussed here as well. Network procedures have additional,
unique ramifications. Therefore, we may decide to expand this issue to include
Network ID, or create a separate, focused issue.
Original comment by emilioma...@gmail.com
on 15 Jun 2012 at 6:28
Issue is ready to be closed. Here's a summary of decisions:
- Supported ids are network, sensor, and station. Platform is not a supported
id.
- Formats:
-- Station: urn:ioos:station:wmo:41001
-- Sensor: urn:ioos:sensor:wmo:41001:baro1
-- Network: urn:ioos:network:aoos:all-barometric
- Version (deployment date, etc) is not included in the URN standard at this
time. The wiki needs to be updated to reflect this.
References:
http://code.google.com/p/ioostech/issues/detail?id=14
https://groups.google.com/forum/#!topic/ioostech_dev/F1SBuamGUrI/discussion
Closing on Friday 12/28/2012 pending comments.
Original comment by srstcl...@gmail.com
on 27 Dec 2012 at 10:02
Closing issue, rule added to guidelines:
http://code.google.com/p/ioostech/wiki/SOSGuidelines_final#Asset_URN_identifiers
Original comment by sh...@axiomalaska.com
on 29 Dec 2012 at 12:02
I happen to be looking at this, and just wanted to update the guideline URL
listed in the last comment (#21); that URL is out of date, and the new URL is:
https://code.google.com/p/ioostech/wiki/SOSGuidelines#Asset_URN_identifiers
Original comment by emilioma...@gmail.com
on 27 Sep 2013 at 4:15
Original issue reported on code.google.com by
wilcox.k...@gmail.com
on 21 Mar 2012 at 7:14