A structured evaluation framework for W3C Decentralized Identifier method specifications.
DID method specs are protocols — they declare what use cases they serve, what standards they bind to, and what schemas and logic implement each requirement. This checklist provides a common structure for authors to document their method and for reviewers to evaluate completeness, coverage gaps, and interoperability posture.
The W3C DID Spec Registries lists 200+ DID methods. Most entries contain only a method name and a link to a spec — no standardized metadata, no coverage mapping, no way to compare methods by use case, industry, or feature set. Many specs are incomplete, abandoned, or redundant.
There is no common framework for answering:
- What focal use cases does this method actually serve?
- Which W3C requirements does it satisfy, and how?
- What standards does it bind to for each capability?
- What industries or regulatory regimes is it designed for?
- How does it interoperate with other methods and agent frameworks?
- Is it actively maintained? Is the spec live? Is there a reference implementation?
This checklist defines a standard submission form that any DID method author fills out. The result is a structured, machine-readable profile that enables:
- Apples-to-apples comparison across methods
- Use-case filtering — find methods that serve your industry or regulatory context
- Gap analysis — see which W3C requirements a method does NOT satisfy
- Interoperability mapping — understand which agent frameworks, credential formats, and protocols a method supports
- Health signals — repo activity, spec liveness, implementation count, test coverage
A DID method specification is analogous to a protocol interface:
┌─────────────────────────────────────────────────────┐
│ DID Method Spec = Protocol Definition │
│ │
│ Focal Use Case(s) → Problem domain & users │
│ Requirements → Interface contract (R1–R22) │
│ Standards Bindings → Protocol implementations │
│ Schemas & Logic → Custom per method │
│ Interop Surface → What it connects to │
└─────────────────────────────────────────────────────┘
Two methods can serve entirely different use cases (supply chain vs. financial identity) while sharing the same evaluation structure. The checklist makes coverage explicit and gaps visible.
did-method-checklist/
├── README.md # This file
├── checklist.md # The full submission questionnaire
├── schema/
│ ├── method-profile.schema.json # JSON Schema for machine-readable profiles
│ ├── requirements.json # W3C R1–R22 requirement definitions
│ ├── use-cases.json # Focal + non-focal use case definitions
│ └── standards-catalog.json # Known standards a method can bind to
├── examples/
│ └── did-sns.md # Reference submission (first completed checklist)
└── scripts/
└── validate-submission.mjs # Validates a completed checklist against schema
- Fork this repo
- Copy
checklist.md→submissions/did-yourmethod.md - Fill out every section — use
N/Afor sections that genuinely don't apply, with a brief explanation - Submit a PR
- Use the checklist to evaluate submission completeness
- Run
node scripts/validate-submission.mjs submissions/did-yourmethod.mdto check coverage - Compare profiles using the standardized property set
Completed checklists are compiled into a unified, filterable index where methods can be compared by:
- Focal use case or industry (Enterprise, Healthcare, Education, Legal, Finance, Communication)
- W3C requirement coverage (R1–R22)
- Feature set (key rotation, selective disclosure, DIDComm, etc.)
- Blockchain / registry type
- Crypto support (Ed25519, secp256k1, post-quantum, etc.)
- Health signals (active repo, live spec, implementation count)
This framework was built by analyzing 199 DID methods from the W3C DID Spec Registries:
- 22 W3C requirements mapped per method
- 6 focal use cases + 12 non-focal use cases with per-method scoring
- Feature flags, crypto support, repo metadata, and benefit alignment extracted from specs and GitHub repos
- Reference implementation:
did:sns(first method to complete the full checklist)
| Channel | Address |
|---|---|
| Author | Eduardo Chongkan (@chongkan) |
| Standards Group | standards@attestto.com |
| Website | attestto.com |
Published under the W3C Software and Document License.