RE: [EXTERNAL] Re: "Derivative predicate" of W3C VC WG and "Expression Language" of OIDF ekyc-ida WG

Wow, if that's the case, it's super unfortunate, because they can do literally every other type/value evaluation with JSON Schema. Have they consider working to add a stringified numeric type to JSON Schema? Seems like such a good opportunity to add value to an existing thing that does 90% of what they want.

- Daniel

-----Original Message-----
From: Wayne Chang <wyc@fastmail.fm> 
Sent: Wednesday, July 15, 2020 7:04 PM
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>
Subject: Re: [EXTERNAL] Re: "Derivative predicate" of W3C VC WG and "Expression Language" of OIDF ekyc-ida WG

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://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgruposantander.github.io%2Fdigital-trust-docs%2Fassertions%2Fclaim-assertions-00.html%23name-example&amp;data=02%7C01%7CDaniel.Buchner%40microsoft.com%7C8856a60f31f142f0399508d8292c9f9c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304618921838596&amp;sdata=NBWdWBbcwRiE6v1ay%2FjbQG8U36MHs8O8m0tauiZnVHw%3D&amp;reserved=0

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://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fschema.bigbankstandards.com%2Foperators%2Fgt&amp;data=02%7C01%7CDaniel.Buchner%40microsoft.com%7C8856a60f31f142f0399508d8292c9f9c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304618921838596&amp;sdata=KubWXoHDWMzF6FoNfxrLn4cXLoyCotwBJFrWjOW7bho%3D&amp;reserved=0". 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://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fw3c-
> ccg.github.io%2Fvp-request-spec%2F&amp;data=02%7C01%7CDaniel.Buchner%4
> 0microsoft.com%7C8856a60f31f142f0399508d8292c9f9c%7C72f988bf86f141af91
> ab2d7cd011db47%7C1%7C0%7C637304618921838596&amp;sdata=64kakuLf5f3F%2Bo
> L39cjYY05nIRZZGN8dOHuBZXNPWGU%3D&amp;reserved=0 
> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fw3c
> -ccg.github.io%2Fvp-request-spec%2F&amp;data=02%7C01%7CDaniel.Buchner%
> 40microsoft.com%7C8856a60f31f142f0399508d8292c9f9c%7C72f988bf86f141af9
> 1ab2d7cd011db47%7C1%7C0%7C637304618921838596&amp;sdata=64kakuLf5f3F%2B
> oL39cjYY05nIRZZGN8dOHuBZXNPWGU%3D&amp;reserved=0>

> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fiden
> tity.foundation%2Fpresentation-exchange%2F&amp;data=02%7C01%7CDaniel.B
> uchner%40microsoft.com%7C8856a60f31f142f0399508d8292c9f9c%7C72f988bf86
> f141af91ab2d7cd011db47%7C1%7C0%7C637304618921848592&amp;sdata=wAVCy3Nd
> VrdTBykEW373ATo%2FxOj2sUs1FdarG7QJlws%3D&amp;reserved=0 
> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fide
> ntity.foundation%2Fpresentation-exchange%2F&amp;data=02%7C01%7CDaniel.
> Buchner%40microsoft.com%7C8856a60f31f142f0399508d8292c9f9c%7C72f988bf8
> 6f141af91ab2d7cd011db47%7C1%7C0%7C637304618921848592&amp;sdata=wAVCy3N
> dVrdTBykEW373ATo%2FxOj2sUs1FdarG7QJlws%3D&amp;reserved=0>

> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmatt
> rglobal.github.io%2Foidc-client-bound-assertions-spec%2F&amp;data=02%7
> C01%7CDaniel.Buchner%40microsoft.com%7C8856a60f31f142f0399508d8292c9f9
> c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304618921848592&amp;
> sdata=UGG%2Fw4IWYH7oieOqoMV9G9Moj0QYv0QYxE24SAXKdBg%3D&amp;reserved=0 
> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmat
> trglobal.github.io%2Foidc-client-bound-assertions-spec%2F&amp;data=02%
> 7C01%7CDaniel.Buchner%40microsoft.com%7C8856a60f31f142f0399508d8292c9f
> 9c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304618921848592&amp
> ;sdata=UGG%2Fw4IWYH7oieOqoMV9G9Moj0QYv0QYxE24SAXKdBg%3D&amp;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&amp;data=02%7C01%7CDaniel.Buchner%40microsoft.com%7C8856a60f31f142f0399508d8292c9f9c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304618921848592&amp;sdata=V1XyhD%2BfIi9Ik0rc8C7SYFl2yN1corqUgzYjJ0Ggt7g%3D&amp;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&amp;data=02%7C01%7CDaniel.Buchner%40microsoft.com%7C8856a60f31f142f0399508d8292c9f9c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304618921848592&amp;sdata=ST34SttSNb1xFPcJeDENG%2BsOEKQs7P3OfK0sxrz2deY%3D&amp;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&amp;data=02%7C01%7CDaniel.Buchner%40microsoft.com%7C8856a60f31f142f0399508d8292c9f9c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304618921848592&amp;sdata=EmOdBs%2FiPK74aLtDDzSmod7PCv1AxHpHffdLziAtqJQ%3D&amp;reserved=0>  in the context of selective disclosure.

>>  

>> This part 
>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fw3
>> c.github.io%2Fvc-imp-guide%2F%23predicates&amp;data=02%7C01%7CDaniel.
>> Buchner%40microsoft.com%7C8856a60f31f142f0399508d8292c9f9c%7C72f988bf
>> 86f141af91ab2d7cd011db47%7C1%7C0%7C637304618921848592&amp;sdata=Qtt8u
>> tmjeG2PJgr8VVjhU094KQppi7eS7ZgvgcgIHQ8%3D&amp;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&amp;data=02%7C01%7CDaniel.Buchner%40microsoft.com%7C8856a60f31f142f0399508d8292c9f9c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637304618921848592&amp;sdata=ST34SttSNb1xFPcJeDENG%2BsOEKQs7P3OfK0sxrz2deY%3D&amp;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:22:44 UTC