Skip to content
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

Add README for context directory. #91

Closed
wants to merge 2 commits into from
Closed
Changes from 1 commit
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
45 changes: 45 additions & 0 deletions contexts/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# DID Contexts

## Background

JSON-LD Context versioning (and schema versioning in general) is a complex
msporny marked this conversation as resolved.
Show resolved Hide resolved
topic, involving the need to balance security with developer convenience.

On one end of the spectrum, some use cases require cryptographically bound and
immutable contexts, and will need to enforce immutability at the code level
(for example, by using a content-addressable URL scheme such as the in-progress
[Hashlink](https://tools.ietf.org/html/draft-sporny-hashlink-03) spec, by
forcing the resolution of a given URL to a known hard-coded embedded context,
or any other appropriate mechanism).

On the opposite end of the spectrum, developers that can tolerate the fact that
the DID context is still changing (in the Credentials Community Group and the
forthcoming DID Working Group), may want a way to just say "I want to use the
latest in-progress `@context`", without constraining the versions.

And between the two extremes, some developers may want to use strongly versioned
contexts (without necessarily cryptographically binding assurance).

## DID Context Versions

The current system for DID context versioning is:

1. Use `https://www.w3.org/2019/did/v1` as an alias to the latest version of the
Copy link
Contributor

@OR13 OR13 Feb 7, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The specific file that this resolves to should be linked here. We should also make it clear that file is meant to be the only one that received PRs for new property definitions.

spec. Once the DID Working Group work concludes, the final v1 version will be
frozen and made immutable.
2. Use intermediate pre-v1 versioned URLs such as `https://w3id.org/did/v0.11`
if you need to refer to a specific context version.
3. Use additional immutability enforcement mechanisms if your use case requires
it.

Contexts will be versioned according to a modified Semantic Versioning scheme.

Before v1.0 (minted at the end of the Working Group process), **all changes to
the context will be marked as BREAKING changes**, by incrementing the minor
`v0.x` version, with no patch component.

## Changelog

### v0.11 - `https://w3id.org/did/v0.11`

Start of changelog