Skip to content

Commit 512b4d5

Browse files
authored
doc: add release notes for 0.6.0-beta7 (#317)
Release notes for the 0.6.0-beta7 release.
1 parent 2021b4b commit 512b4d5

File tree

1 file changed

+87
-0
lines changed

1 file changed

+87
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
These changes are the changes from v0.6.0-beta5 to v0.6.0-beta7.
2+
3+
There are two main changes and two smaller changes. Note that I also had to start the release again after [Jargon Issue 37](https://github.com/jargon-sh/issues/issues/37), hence the jump from -beta5 to -beta7.
4+
5+
6+
## Hidden redefinitions which were not being identified
7+
8+
The first is related to the discovery that [our generated contexts were hiding illegal redefinitions](https://github.com/uncefact/spec-untp/issues/316) by not always specifying that the terms should be protected. In particular, our credentials were redefining `credentialSubject` which is defined by the verified credential context. This has now been [updated in jargon](https://github.com/jargon-sh/issues/issues/34), so we need to re-save and deal with any redefinitions that we weren't aware of.
9+
10+
11+
## `Product.characteristics`
12+
13+
The second is related specifically to `Product.characteristics`. In the 0.6.0-beta5 release, we'd removed `Product.characteristics` as I'd incorrectly understood it was a placeholder only, an extension point for extensions to use (and defining it in the core `Product` meant it could not be redefined validly by an extension).
14+
15+
But it's actually meant to be able to be used in a DPP credential as a free-form key-value dict. This is tricky for jsonld (there is no free-form, terms need to be defined and [values are limited to string, number, true or false or a typed value](https://www.w3.org/TR/json-ld11/#dfn-json-ld-value) to ensure that everything can be reduced to RDF triplets).
16+
17+
The best solution I can think of is that we add `Product.characteristics` back to identify the placeholder but ensure it is also omitted from the context (using the Jargon `[jsonld.contextOmit]=true`). This means that both extensions or users of the vanilla DPP who want to specify `characteristics` will need to add the relevant context for `characteristics` to do so explicitly, for which we'll need to provide documentation. For users of Jargon, this will simply be creating their own `Product` which inherits from the core or DPP `Product` and adds the `characteristics` property with whatever items they define.
18+
19+
20+
## Defining the expected expanded URIs for template vocabulary
21+
22+
This release also updates the expected full URIs for `template` and `url` when seen in `WebRenderingTemplate2022` or `RenderTemplate2024` to match what VC-Kit expects, see [comment](https://github.com/uncefact/tests-untp/pull/221#discussion_r1978347001)
23+
24+
25+
## Hiding the `Template` classes
26+
27+
We had added the two template classes to the vocabulary with the last release, with the `#hideClass` tag so that they would not be presented on the Jargon diagram, but after each save, they re-appeared. I created [Jargon Issue 33](https://github.com/jargon-sh/issues/issues/33) which was fixed, so we just need to re-add the `#hideClass` and re-save each.
28+
29+
30+
# UNTP Core changes
31+
32+
- Re-added `#hideClass` to the two template classes
33+
- Re-added `Product.characteristics` but with `[jsonld.contextOmit]=true` as discussed above, and the new `[json.sampleOmit]=true` (see [Jargon issue 36](https://github.com/jargon-sh/issues/issues/36)).
34+
- Added `[jsonld.contextURI]=https://www.w3.org/2018/credentials#renderMethod#` with prefix `renderMethodPrefix` to the `template` properties and similar for `url` (only) of the `RenderTemplate2024` and `WebRenderingTemplate2022` classes (see [Jargon issue 35](https://github.com/jargon-sh/issues/issues/35))
35+
- Saved to ensure protected terms (see earlier).
36+
- Released 0.6.0-beta6
37+
- Re-released as 0.6.0-beta7 due to [Jargon issue 37]()
38+
39+
40+
# DigitalProductPassport changes
41+
42+
- Re-save after updating to core 0.6.0-beta6
43+
- Make textual change before saving again due to [Jargon issue 37](https://github.com/jargon-sh/issues/issues/37)
44+
- checked no other issues / redefinitions
45+
46+
When checking the result before releasing, the following was noticed additionally:
47+
- some inherited terms are redefined differently to the originals causing a redefinition error (Updated [Jargon issue 28 with comment](https://github.com/jargon-sh/issues/issues/28#issuecomment-2695996220))
48+
Alastair provided a fix and DPP is now valid.
49+
50+
- Saved and released 0.6.0-beta7
51+
52+
53+
# DigitalConformityCredential changes
54+
55+
- Added #hideClass to template classes
56+
- Added contextOmit to DCC.credentialSubject
57+
58+
With these changes, jsonld lint complains about dropped terms for different aspects of `address` such as `addressCountry`. This is because the context provided for `assessedFacility` just has
59+
60+
```
61+
"address": {
62+
"@protected": true,
63+
"@id": "untp-core:address"
64+
},
65+
```
66+
67+
This is because a Jargon object reference only supports simple types (strings, numbers, bool). Both `address` and `locationInformation` are complex information types. Removing them from the object reference works.
68+
69+
- Re-save after updating to core 0.6.0-beta7
70+
71+
72+
# Digital Identity Anchor
73+
74+
- Updated to core 0.6.0-beta7
75+
- Added #hideClass to template classes
76+
- Added contextOmit to DIA.credentialSubject
77+
- Saved and tested working version
78+
- Released 0.6.0-beta7
79+
80+
81+
# Digital Facility Record
82+
83+
- Updated to core 0.6.0-beta7
84+
- Added #hideClass to template classes
85+
- Added contextOmit to DFR.credentialSubject
86+
- Saved and tested working version
87+
- Released 0.6.0-beta7

0 commit comments

Comments
 (0)