- From: Wayne Chang <wyc@fastmail.fm>
- Date: Wed, 15 Jul 2020 22:04:28 -0400
- To: "Daniel Buchner" <Daniel.Buchner@microsoft.com>, "Kristina Yasuda" <Kristina.Yasuda@microsoft.com>, "W3C Credentials CG" <public-credentials@w3.org>, "Brent Zundel" <brent.zundel@evernym.com>, "Dave Longley" <dlongley@digitalbazaar.com>, "Tobias Looker" <tobias.looker@mattr.global>
Hey Dan, just some initial thoughts here after a brief review of the spec. In the following example, it seems that the spec allows for certain semantic/industry-specific comparison using the "gt" operator on strings, which would be not possible in JSON Schema: https://gruposantander.github.io/digital-trust-docs/assertions/claim-assertions-00.html#name-example It's pretty common in the financial sector to represent currencies as strings as prevent unintentional IEEE 754 mantissa-bending from getting settlements wrong and sending everyone to jail. There is also a capabilities negotiation section with "assertion_claims_query_language_supported" that may benefit from universal identifiers like "https://schema.bigbankstandards.com/operators/gt". These semantics might be different enough to target a goal other than recreating JSON Schema. On Wed, Jul 15, 2020, at 9:53 PM, Daniel Buchner wrote: > I guess my first question would be: why are the folks who created this Open ID proposal trying to recreate JSON Schema, when we already have JSON Schema? > > *From:* Wayne Chang <wyc@fastmail.fm> > *Sent:* Wednesday, July 15, 2020 6:05 PM > *To:* Kristina Yasuda <Kristina.Yasuda@microsoft.com>; W3C Credentials CG <public-credentials@w3.org>; Brent Zundel <brent.zundel@evernym.com>; Daniel Buchner <Daniel.Buchner@microsoft.com>; Dave Longley <dlongley@digitalbazaar.com>; Tobias Looker <tobias.looker@mattr.global> > *Subject:* [EXTERNAL] Re: "Derivative predicate" of W3C VC WG and "Expression Language" of OIDF ekyc-ida WG > > Thanks for your message, Kristina! Directly adding Brent + Dan + Dave + Tobias here, whom I believe have been working on related efforts in this problem space across Aries, DIF, and CCG. I hope there's an opportunity consolidate efforts. > > https://w3c-ccg.github.io/vp-request-spec/ <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fw3c-ccg.github.io%2Fvp-request-spec%2F&data=02%7C01%7CDaniel.Buchner%40microsoft.com%7Caa040cf30e4340b7d0da08d829245995%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304583419347773&sdata=%2BlTtgwuAL%2Bv8ZC8ZuuwRyg2beojEqqXw4LPtPZ56MYs%3D&reserved=0> > https://identity.foundation/presentation-exchange/ <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fidentity.foundation%2Fpresentation-exchange%2F&data=02%7C01%7CDaniel.Buchner%40microsoft.com%7Caa040cf30e4340b7d0da08d829245995%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304583419357767&sdata=opJgbI%2BN2Whnug91Ypz%2Fopv%2FEJKDCzMDitDEhpI9Avg%3D&reserved=0> > https://mattrglobal.github.io/oidc-client-bound-assertions-spec/ <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmattrglobal.github.io%2Foidc-client-bound-assertions-spec%2F&data=02%7C01%7CDaniel.Buchner%40microsoft.com%7Caa040cf30e4340b7d0da08d829245995%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304583419357767&sdata=dXooPcvzonoh0USME9KfDvMYwhjqA8jLb46pvndRomQ%3D&reserved=0> > > Best, > - Wayne > > On Wed, Jul 15, 2020, at 7:58 PM, Kristina Yasuda wrote: >> Hi, >> >> I am reaching out since there seems to be synergy with 'derived predicate' concept <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.w3.org%2FTR%2Fvc-data-model%2F%23dfn-predicates&data=02%7C01%7CDaniel.Buchner%40microsoft.com%7Caa040cf30e4340b7d0da08d829245995%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304583419367766&sdata=BPMiYeGRLyZt184FrbA%2BdsWZ%2BkoUnFLITScLSwfQ14k%3D&reserved=0> of W3C VC spec and expression language <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgruposantander.github.io%2Fdigital-trust-docs%2Fassertions%2Fclaim-assertions-00.html%23name-expression-language&data=02%7C01%7CDaniel.Buchner%40microsoft.com%7Caa040cf30e4340b7d0da08d829245995%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304583419377761&sdata=kUF1VwImNBrobG3iagbzDerel2Ohffh%2B9%2F012nqLdWc%3D&reserved=0> concept being discussed in OpenID Foundation(OIDF)'s ekyc-ida (identity assurance) WG <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fopenid.net%2Fwg%2Fekyc-ida%2F&data=02%7C01%7CDaniel.Buchner%40microsoft.com%7Caa040cf30e4340b7d0da08d829245995%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304583419377761&sdata=ICCKlbo%2FZDVXSJgs6Bui2mksfZrG5VLGxygDHrSXxw8%3D&reserved=0> in the context of selective disclosure. >> >> This part <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fw3c.github.io%2Fvc-imp-guide%2F%23predicates&data=02%7C01%7CDaniel.Buchner%40microsoft.com%7Caa040cf30e4340b7d0da08d829245995%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304583419387754&sdata=Q3NwG7EjKg9L6u13zpFIunYUEMBRUJiqWUhVH9yBfo8%3D&reserved=0> in the vc-imp-guide is the most detailed implementation of derived predicate that I have seen. Do you know if >> * there is more specific proposal for how to express the derived predicates >> * there is anyone actually implementing this feature >> OIDF is discussing the concept of expression language <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgruposantander.github.io%2Fdigital-trust-docs%2Fassertions%2Fclaim-assertions-00.html%23name-expression-language&data=02%7C01%7CDaniel.Buchner%40microsoft.com%7Caa040cf30e4340b7d0da08d829245995%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304583419397751&sdata=v2yxpMqI%2BOeJwbKPVj9Dm2FHnRqXlEPOeA9wcw2wEGo%3D&reserved=0> which could be more generic than "ageOver18" property in VC imp-guide and ekyc-ida wg has been wondering if we could work together on this important topic. >> OIDF's current proposal is outlined here <https://gruposantander.github..io/digital-trust-docs/assertions/claim-assertions-00.html>. For example for the alcohol purchase age, in the US it is ageOver18, but in Japan it is ageOver20. The concept of expression language would allow to express this as {"age" : { "gt" : "18", "lt" : "20" } } where gt is 'greater than' and 'lt' is less than.. >> >> Best, >> Kristina >> *Identity Standards Team, Microsoft Corp.* >> >> >> >
Received on Thursday, 16 July 2020 02:05:35 UTC