Discovering Data Collections Note

Markus Demleitner msdemlei at ari.uni-heidelberg.de
Mon Nov 7 10:16:56 CET 2016


Hi Pat,

On Fri, Nov 04, 2016 at 11:47:26AM -0700, Patrick Dowler wrote:
> A coupe of comments on the note:
> 
> In the second paragraph of 2.1.2 you have the wrong standardID for SIA
> (should be #query-2.0).

Thanks for catching this.  Fixed in rev. 3691.

> In that same paragraph, the recommendation is to insert "aux" between
> the tag and the version. That effectively means that the fragment is
> now a parseable construct as clients will have to be able insert and
> extract the "aux" nature of the standardID. So at first glance it

Well, I wouldn't call it "parsing" the standard id.  This notation was
chosen to enable simple prefix patterns in the discovery of services,
potentially versioned, and for both the enumeration and the discovery
use case.  That's what section 2.2 is about.

> groovy:000> new URI("ivo://ivoa.net/std/SIA#query-2.0@aux").getFragment()
> ===> query-2.0 at aux
> groovy:000> new URI("ivo://ivoa.net/std/SIA#query-2.0~aux").getFragment()
> ===> query-2.0~aux
> groovy:000> new URI("ivo://ivoa.net/std/SIA#aux~query-2.0").getFragment()
> ===> aux~query-2.0
> groovy:000> new URI("ivo://ivoa.net/std/SIA#aux:query-2.0").getFragment()
> ===> aux:query-2.0
> groovy:000> new URI("ivo://ivoa.net/std/SIA#query-2.0&aux").getFragment()
> ===> query-2.0&aux
> groovy:000> new URI("ivo://ivoa.net/std/SIA#query-2.0*aux").getFragment()
> ===> query-2.0*aux
> groovy:000> new URI("ivo://ivoa.net/std/SIA#query-2.0;aux").getFragment()
> ===> query-2.0;aux

What we shouldn't do is have the aux as a prefix, as that would make
the query pattern for the data discovery use case ("primary and
auxiliary capabilities for all services I can talk to matching a
certain metadata profile") ugly; it would have to be something like
"...SIA#%query-2.0", which is more difficult to match (using an
index) and has a larger risk of blocking patterns we might want to
use later ("targetquery-2.0", "positionquery-2.0").

Postfixing the aux is less problematic, and might even make
version-constrained queries easier.  I'd have to see if there's any
hidden pitfalls if people really liked them a lot better.  

I'd still not introduce extra "magic" characters and just use "-aux".
What we're dealing with here are still just StandardRegExt keys.
That they happen to be formed to enable certain pattern searches
doesn't imply any actual structure.

        -- Markus


More information about the registry mailing list