W3C home > Mailing lists > Public > public-credentials@w3.org > November 2019

Re: GS1's work on identifiers, resolvers and resources

From: Phil Archer <phil.archer@gs1.org>
Date: Tue, 26 Nov 2019 12:24:20 +0000
To: Kim Hamilton <kimdhamilton@gmail.com>
CC: Credentials Community Group <public-credentials@w3.org>
Message-ID: <DM6PR08MB4972925C6837BCAF7807E55FB7450@DM6PR08MB4972.namprd08.prod.outlook.com>
Sorry for the slow response, Kim,

I guess that, yes, you could use a btcr DID as the running example. The
obvious problem there is that it favours that one DID Method over the
others which may or may not be a problem, even with a big bold statement
saying "this is just an example" up front somewhere. The alternative is
making up a fictitious method, which may not be practical.

We (GS1) are looking at what we could/might/will do with DIDs. We know
it's more than nothing - we're just working out what works for us and
our community.

Phil

On 22/11/2019 01:51, Kim Hamilton wrote:
> Phil - I’m interested in a couple of topics you touched on.
>
>> it would be really to have a running example throughout - that would make the whole thing easier to understand I'd say.
>
> This is a great readability suggestion. To clarify resolution, do you mean
> running examples using a specific did method (e.g btcr, which is a good
> candidate because it is simple and not tied to a vendor)? Not necessarily
> getting into (in this doc) implementation details of how btcr achieves it, but
> something along the lines of: "for example, given this btcr input, you'd
> expect this output, and see more details here"
>
> Second, it sounds like an interesting parallel you mention with GTIN. And +1 for
> exploring usability implications that you call out.
>
> My motive: while I haven’t paid attention to DID resolution progress in a while,
> the idea of matrix parameters and possible developer usability implications
> (because they seem less standard) is something I keep meaning to revisit. Yours
> sounds like a great forcing function for this discussion.
>
> On Mon, Nov 18, 2019 at 1:27 PM Michael Herman (Parallelspace)
> <mwherman@parallelspace.net <mailto:mwherman@parallelspace.net>> wrote:
>
>      Phil, I like your examples.  We need more of them.____
>
>      __ __
>
>      Although the results are formatted in HTML (to make them easier to read for
>      a retail consumer), each /linkType/ is actually the name of a Credential
>      (Credential Type) associated with the Subject's (product's) Digital
>      Identifier (e.g. gtin/09506000134352) that, in turn, serves as the
>      underlying data for building the web page – that is, each linkType or
>      Credential represents different (possibly overlapping) collections of Claims
>      (name-value pairs) for the Subject product (and its web page).____
>
>      __ __
>
>      We need more of these real-life non-fungble entities (NFE) examples.____
>
>      __ __
>
>      Best regards,____
>
>      Michael Herman____
>
>      Self-Sovereign Blockchain Architect____
>
>      Hyperonomy Digital Identity Lab____
>
>      Parallelspace Corporation____
>
>      __ __
>
>      Trusted Digital Web Certificate 0.1____
>
>      __ __
>
>      __ __
>
>      __ __
>
>      -----Original Message-----
>      From: Phil Archer <phil.archer@gs1.org <mailto:phil.archer@gs1.org>>
>      Sent: November 18, 2019 7:37 AM
>      To: Credentials Community Group <public-credentials@w3.org
>      <mailto:public-credentials@w3.org>>
>      Subject: GS1's work on identifiers, resolvers and resources
>
>      __ __
>
>      TL;DR - concepts of resolving identifiers to multiple possible destinations
>      is being actively discussed elsewhere as well as here and there *may* be
>      room for some commonality of approach with DID resolution. There's likely to
>      be some ISO work in this area soon.____
>
>      __ __
>
>      Dear all,____
>
>      __ __
>
>      I finally (finally!) got around to reading the resolution spec which is very
>      interesting if difficult to read. As a suggestion, because you're writing
>      something abstract that only becomes real for a given DID Method, it would
>      be really to have a running example throughout - that would make the whole
>      thing easier to understand I'd say.____
>
>      __ __
>
>      Anyway...____
>
>      __ __
>
>      GS1 has been issuing identifiers for 45 years, the best known of which is
>      what we nowadays call the GTIN but you may know it as the EAN/UPC or simply
>      'barcode.' My work is primarily about making those identifiers resolvable on
>      the Web so that things like this will work:____
>
>      __ __
>
>      https://id.gs1.org/gtin/09506000134352____
>
>      __ __
>
>      which is a concrete example of the more general____
>
>      __ __
>
>      https://{resolver}/{idType}/{idValue}
>      <https://%7bresolver%7d/%7bidType%7d/%7bidValue%7d>____
>
>      __ __
>
>      We can add things like batch numbers, serial numbers, expiry dates and more
>      but that'll do for now.____
>
>      __ __
>
>      If you resolve a GTIN (product barcode) and you're a consumer, you're
>      probably after something like a product information page - which is what you
>      get if you click that first link. As that's a food item, you might want to
>      find something like a recipe idea for that product____
>
>      __ __
>
>      https://id.gs1.org/gtin/09506000134352?linkType=recipeInfo____
>
>      __ __
>
>      or product sustainability information____
>
>      __ __
>
>      https://id.gs1.org/gtin/09506000134352?linkType=productSustainabilityInfo____
>
>      __ __
>
>      If you're a developer, you might want all the links available for a given
>      item, which is what you get if you click____
>
>      __ __
>
>      https://id.gs1.org/gtin/09506000134352?linkType=all____
>
>      __ __
>
>      (conneg gives you that in HTML or JSON, with JSON-LD coming soon).____
>
>      __ __
>
>      So there's a difference with DIDs: in the GS1 context, the default that
>      makes sense is to pass you on to 'something directly useful' rather than a
>      document that contains links to things that might be useful but you can get
>      the machine readable list of stuff if you want. In contrast, DIDs give you
>      the machine readable document by default and redirect you somewhere else if
>      you really want it.____
>
>      __ __
>
>      But there's a lot of common thinking there, no?____
>
>      __ __
>
>      Btw, I'll make a comment in GH about the notion of a resolver description
>      file - we have such a thing____
>
>      __ __
>
>      https://id.gs1.org/.well-known/gs1resolver____
>
>      __ __
>
>      and we have things like one resolver redirecting to another if it doesn't
>      have info about the identified item, and we're thinking that, in future, we
>      might define a format for a small data file that can help you find the right
>      resolver for your identifier without going through multiple HTTP redirects.____
>
>      __ __
>
>      GS1 is working with HTTP, so the thinking is all Webby and Link Data.____
>
>      Try this, for example____
>
>      __ __
>
>      curl -I https://id.gs1.org/gtin/09506000134352____
>
>      HTTP/1.1 307 Temporary Redirect____
>
>      Date: Mon, 18 Nov 2019 12:22:21 GMT____
>
>      Server: Apache/2.4.38 (Debian)____
>
>      X-Powered-By: PHP/7.3.11____
>
>      Link: <https://dalgiardino.com/risotto-rice-with-mushrooms/>; rel="pip";
>      type="text/html"; hreflang="en"; title="Product information page",
>      <https://dalgiardino.com/mushroom-squash-risotto/>; rel="recipeinfo";
>      type="text/html"; hreflang="en"; title="Recipe website",
>      <https://dalgiardino.com/where-to-buy/>; rel="hasretailers";
>      type="text/html"; hreflang="en"; title="Retailers",
>      <https://dalgiardino.com/about/>; rel="productsustainabilityinfo";
>      type="text/html"; hreflang="en"; title="sustainability and recycling"____
>
>      Location: https://dalgiardino.com/risotto-rice-with-mushrooms/____
>
>      Access-Control-Allow-Origin: *____
>
>      Access-Control-Allow-Methods: HEAD, GET, OPTIONS____
>
>      Access-Control-Expose-Headers: Link, Content-Length____
>
>      Cache-Control: max-age=0, no-cache, no-store, must-revalidate____
>
>      Content-Type: text/html; charset=UTF-8____
>
>      __ __
>
>      Note the HTTP Link Header that has all the available links in it, including
>      what we can linkTypes (@rel values), titles and hreflang attributes.____
>
>      __ __
>
>      We can add more than just the linkType in the query params, we can also have
>      a 'context' which can be anything, but location is a typical use case (tell
>      me about this product in the UK cf. this product in France) and we support
>      Accept and Accept-Language HTTP request headers. That's a bunch of
>      parameters that form a matrix of possible redirections :-)____
>
>      __ __
>
>      Related conversations are going on elsewhere that I think are likely to lead
>      to some standardisation work at ISO before long. From GS1's POV, that will
>      be important and I hope ideas around resolvers, defaults, redirections, link
>      types etc. will be part of that discussion - but it's too early to offer any
>      concrete info as yet.____
>
>      __ __
>
>      Chapter and verse on what we call GS1 Digital Link is in a draft standard at
>      https://www.gs1.org/sites/default/files/docs/gsmp/gs1_digital_link_1.1_comrev_version_786.pdf.____
>
>      Chapter 8 is about resolvers.____
>
>      __ __
>
>      Enough for one email.____
>
>      __ __
>
>      I'm happy to talk more about any of this if people want, but equally happy
>      to keep quiet.____
>
>      __ __
>
>      Cheers____
>
>      __ __
>
>      Phil____
>
>      __ __
>
>      --____
>
>      Phil Archer____
>
>      Director, Web Solutions, GS1____
>
>      https://www.gs1.org____
>
>      __ __
>
>      https://philarcher.org____
>
>      +44 (0)7887 767755____
>
>      @philarcher1____
>
>      Skype: philarcher____
>
>      A word on abbreviations I sometimes use in email:____
>
>      https://philarcher.org/diary/2019/emailabbreviations/____
>
>      __ __
>
>      CONFIDENTIALITY / DISCLAIMER: The contents of this e-mail are  confidential
>      and are not to be regarded as a contractual offer or acceptance from GS1
>      (registered in Belgium). ____
>
>      If you are not the addressee, or if this has been copied or sent to you in
>      error, you must not use data herein for any purpose, you must delete it, and
>      should inform the sender. ____
>
>      GS1 disclaims liability for accuracy or completeness, and opinions expressed
>      are those of the author alone. ____
>
>      GS1 may monitor communications. ____
>
>      Third party rights acknowledged. ____
>
>      (c) 2016.____
>
>      __ __
>
>      __ __
>

--
Phil Archer
Director, Web Solutions, GS1
https://www.gs1.org

https://philarcher.org
+44 (0)7887 767755
@philarcher1
Skype: philarcher
A word on abbreviations I sometimes use in email:
https://philarcher.org/diary/2019/emailabbreviations/

CONFIDENTIALITY / DISCLAIMER: The contents of this e-mail are  confidential and are not to be regarded as a contractual offer or acceptance from GS1 (registered in Belgium). 
If you are not the addressee, or if this has been copied or sent to you in error, you must not use data herein for any purpose, you must delete it, and should inform the sender. 
GS1 disclaims liability for accuracy or completeness, and opinions expressed are those of the author alone. 
GS1 may monitor communications. 
Third party rights acknowledged. 
(c) 2016.
Received on Tuesday, 26 November 2019 12:24:32 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:19:03 UTC