Skip to content

Remove @vocab from the base context. #1520

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Jul 20, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion contexts/credentials/v2
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
{
"@context": {
"@protected": true,
"@vocab": "https://www.w3.org/ns/credentials/issuer-dependent#",

"id": "@id",
"type": "@type",
Expand Down
20 changes: 9 additions & 11 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3216,17 +3216,15 @@ <h4>Semantic Interoperability</h4>
</p>

<p>
The base JSON-LD Context file for this specification also includes an extra
feature, using the <a data-cite="JSON-LD11/#default-vocabulary">`@vocab`</a>
keyword, which ensures that any undefined term in a [=verifiable credential=] or
a [=verifiable presentation=] is automatically mapped to a URL prefixed with
`https://www.w3.org/ns/credentials/issuer-dependent#`. This is to allow early
experimentation with terms during the development phase, without requiring a
formal definition in every cycle of that experimentation. Note that developers
SHOULD NOT use this feature in production; this could lead to name clashes,
yielding semantic ambiguities with other applications. Instead, they SHOULD
define all the terms, as described earlier in this section, to achieve proper
interoperability.
A [=conforming document=] SHOULD NOT use the
<a data-cite="JSON-LD11/#default-vocabulary">`@vocab`</a> feature in production
as it can lead to JSON term clashes, resulting in semantic ambiguities with
other applications. Instead, to achieve proper interoperability, a [=conforming
document=] SHOULD use JSON-LD Contexts that define all terms used by their
applications, as described earlier in Section [[[#extensibility]]]. If a
[=conforming document=] does not use JSON-LD Contexts that define all terms
used, it MUST include the `https://www.w3.org/ns/credentials/undefined-terms/v2`
as the last value in the `@context` property.
</p>
</section>
</section>
Expand Down