Skip to content

Bootstrap Digital Registries 3.0.0-alpha.2 - #57

Draft
jeremi wants to merge 2 commits into
GovStackWorkingGroup:mainfrom
jeremi:codex/registry-v0-bootstrap
Draft

Bootstrap Digital Registries 3.0.0-alpha.2#57
jeremi wants to merge 2 commits into
GovStackWorkingGroup:mainfrom
jeremi:codex/registry-v0-bootstrap

Conversation

@jeremi

@jeremi jeremi commented Aug 10, 2026

Copy link
Copy Markdown

Summary

  • restructures the active specification around a shared Registry Core and Consultation Retrieve as the target Base Registry Profile
  • adds concise adopter-facing pages for all eight API families and an editable SVG overview
  • defines six Core and three Consultation Retrieve DRAFT requirements with aligned data structures, service semantics, workflow, and verification rows
  • records the disposition of all previous DRS-1 through DRS-37 requirements
  • isolates generated CRUD contracts, tests, examples, and historical pages so they cannot be mistaken for current conformance artifacts

Why

The previous specification combined a domain-neutral Registry scope with the behaviour of a generated CRUD/database-builder product. That made product-specific storage, UI, and endpoint assumptions appear mandatory across registries with different institutional responsibilities and trust models.

This prerelease establishes a smaller interoperability foundation. It separates Registry operations, common metadata, semantic models, and protocol bindings while retaining the useful intent and attribution of earlier work.

Adopter and implementer impact

  • architects can identify the minimum proposed Registry behaviour and the boundaries with neighbouring Building Blocks
  • adopters can assess additional capability families without treating them as current obligations
  • implementers have nine deterministic DRAFT requirements and matching verification intent for the first vertical slice
  • existing implementations can use an adaptor and are not required to replace their internal storage or administration model

This remains an alpha. It does not publish a canonical OpenAPI contract or executable conformance suite, and no implementation can claim conformance from this revision.

Validation

  • git diff --check
  • 91 of 91 active documentation links validated
  • SVG validated as XML and rendered without clipping
  • archived JSON and YAML contracts parsed successfully
  • 9 of 9 DRAFT requirements mapped to verification rows
  • all 37 previous DRS requirements present in the migration ledger
  • independent read-only consistency review completed with a GO assessment

Follow-up

jeremi added 2 commits August 6, 2026 16:00
Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>
Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>

@sleidig sleidig left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Some general thoughts about the structure. I love the overall approach and hope we can merge this as a foundational structure ASAP.

Comment thread README.md
Comment on lines +9 to +24
Start with the [Digital Registries Building Block Specification](spec/README.md).

```sh
README.md
/spec # the markdown files which are used to build the specification in GitBook
/api # the openapi specification
/test # the test plan and tests
plan.md
/examples # examples for deploying, configuring, and testing applications which implement the behaviors specified by this building block
/application-a
README.md # instructions for deployment/testing
docker-compose.yaml # example deployment file
db
web
adaptor
security-server
Caddyfile # example config for "adaptor"
Dockerfile # dockerfile to build "adaptor"
/application-b
/application-c
```
## Repository structure

## Test data
| Path | Contents | Current status |
|---|---|---|
| `spec/` | Human-readable specification published through GitBook | 3.0.0-alpha.2 draft |
| `api/` | Machine-readable service contracts | Previous generated CRUD contracts retained as legacy; no 3.0.0-alpha.2 contract published |
| `test/` | Conformance and contract tests | Previous generated CRUD tests retained as legacy; draft scenarios are documented in `spec/11-testing.md` |
| `examples/` | Product and integration examples | Historical examples; not evidence of 3.0.0-alpha.2 conformance |

In order to properly call the tests, a file with input data has been created.
## Alpha coverage

The data must exist in tested software before running the tests.
The alpha publishes the proposed scope, terminology, Base Registry Profile, DRAFT Core and Retrieve requirements, conceptual Record model, workflow, verification intent, and migration from the previous `DRS-1` through `DRS-37` requirements.

This data are compatible with the data used in the tests and they are stored in
the `openAPI` folder in the `test-data.json`.
It does not publish a canonical OpenAPI contract or executable conformance suite. No implementation can claim conformance with this alpha.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Let's move the alpha coverage details up into status section? that's where I was looking for it.

Suggested change
Start with the [Digital Registries Building Block Specification](spec/README.md).
```sh
README.md
/spec # the markdown files which are used to build the specification in GitBook
/api # the openapi specification
/test # the test plan and tests
plan.md
/examples # examples for deploying, configuring, and testing applications which implement the behaviors specified by this building block
/application-a
README.md # instructions for deployment/testing
docker-compose.yaml # example deployment file
db
web
adaptor
security-server
Caddyfile # example config for "adaptor"
Dockerfile # dockerfile to build "adaptor"
/application-b
/application-c
```
## Repository structure
## Test data
| Path | Contents | Current status |
|---|---|---|
| `spec/` | Human-readable specification published through GitBook | 3.0.0-alpha.2 draft |
| `api/` | Machine-readable service contracts | Previous generated CRUD contracts retained as legacy; no 3.0.0-alpha.2 contract published |
| `test/` | Conformance and contract tests | Previous generated CRUD tests retained as legacy; draft scenarios are documented in `spec/11-testing.md` |
| `examples/` | Product and integration examples | Historical examples; not evidence of 3.0.0-alpha.2 conformance |
In order to properly call the tests, a file with input data has been created.
## Alpha coverage
The data must exist in tested software before running the tests.
The alpha publishes the proposed scope, terminology, Base Registry Profile, DRAFT Core and Retrieve requirements, conceptual Record model, workflow, verification intent, and migration from the previous `DRS-1` through `DRS-37` requirements.
This data are compatible with the data used in the tests and they are stored in
the `openAPI` folder in the `test-data.json`.
It does not publish a canonical OpenAPI contract or executable conformance suite. No implementation can claim conformance with this alpha.
Start with the [Digital Registries Building Block Specification](spec/README.md).
### Alpha coverage
The alpha publishes the proposed scope, terminology, Base Registry Profile, DRAFT Core and Retrieve requirements, conceptual Record model, workflow, verification intent, and migration from the previous `DRS-1` through `DRS-37` requirements.
It does not publish a canonical OpenAPI contract or executable conformance suite. No implementation can claim conformance with this alpha.
## Repository structure
| Path | Contents | Current status |
|---|---|---|
| `spec/` | Human-readable specification published through GitBook | 3.0.0-alpha.2 draft |
| `api/` | Machine-readable service contracts | Previous generated CRUD contracts retained as legacy; no 3.0.0-alpha.2 contract published |
| `test/` | Conformance and contract tests | Previous generated CRUD tests retained as legacy; draft scenarios are documented in `spec/11-testing.md` |
| `examples/` | Product and integration examples | Historical examples; not evidence of 3.0.0-alpha.2 conformance |

Comment on lines +5 to +11
# Identity Federation

> **Status:** Informative and not claimable in this release. No Identity Federation requirements, claim profile, protocol profile, or tests are published.

## Purpose and applicability

Identity Federation enables a sectoral Registry containing Records about people, or a service acting for its authority, to authenticate the person represented by a Registry Record to a Relying Service and release authorised claims. It applies to sector populations such as farmers, students, health-service users, or licensed professionals.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Is this different from the GovStack ID Building Block?
(https://app.gitbook.com/o/pxmRWOPoaU8fUAbbcrus/s/Vqte0R2TeBFaehnRpdeG/2-description)

Before we add this into the general structure here (which pushes us to research and fill this), I would understand the boundary (and if this shouldn't rather go into their BB).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

can we do folder names with leading zero (--> "01-version-history") to get a properly ordered structure 😊

description: Archived decision discussions from earlier Digital Registries versions.
---

# Historical Key Decision Log

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

if we keep a Key Decision Log (is that still part of GovStack BB standard?), then I would not mark it historic and instead continue it, adding our decisions for 3.0 here?

description: Archived future-consideration backlog from earlier Digital Registries versions.
---

# Historical Future Considerations

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

if we do not want to consider these anymore, I would delete this page completely in the new version (git history still preserves).

I would like to have as clean a slate as possible for our work on 3.0

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I have no hard feelings about this. Maybe delete and move it to a Jira issue to revisit at a later time? It probably doesn't align with our current discussion very well anymore.

Comment thread spec/SUMMARY.md
* [4 Key Digital Functionalities](4-key-digital-functionalities.md)
* [5 Cross Functional Requirements](5-cross-cutting-requirements.md)
* [4 Conformance](4-conformance.md)
* [5 Key Functionalities: API Families](5-key-functionalities.md)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

do we stick with a pattern of the main page in the root folder and only sub-pages in the sub-folder (5-api-families/*)?

Or follow the other pattern of putting the main page into the subfolder (1-version-history/README.md)?

aligning this would make it easier to work here on git. I kinda like the former.

Comment thread spec/README.md
<figure><img src=".gitbook/assets/Registries.svg" alt=""><figcaption></figcaption></figure>
This alpha is structured around a domain-neutral Registry Core, mandatory Consultation Retrieve, and optional capability families. Earlier contributions, authors, coordinators, editors, and reviewers remain recorded in the [Version History](1-version-history/README.md) and [Release Notes](1-version-history/release-notes.md).

_**Coordinating authors of the 3.0.0-alpha.1 work:**_ Dr. Bimal Kumar, Xilene Siquero, and Sebastian Leidig

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I think for the current version we can drop the inactive people here? But happy to add you, Jeremi and David?

Suggested change
_**Coordinating authors of the 3.0.0-alpha.1 work:**_ Dr. Bimal Kumar, Xilene Siquero, and Sebastian Leidig
_**Coordinating authors of the 3.0.0-alpha.2 work:**_Sebastian Leidig, Jeremi Joslin, David Higgins

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants