Docs / Introduction
Introduction
Open Register is a versatile system for creating and managing domain-specific or organisational data registers. Whether you build a social-security database, manage client information, or create any other structured data repository, Open Register gives you a storage-independent way to manage and validate data objects.
Core concepts
Open Register runs on three principles:
- JSON Schema validation. Every object is validated against a predefined JSON Schema before it lands. Data stays consistent across your application.
- Storage independence. Objects can live in Nextcloud's internal database, an external SQL database (MySQL, MariaDB, PostgreSQL), or a document store (MongoDB). The storage adapter interface lets you add more backends without changing client code.
- Flexible schema sources. Schemas can be defined manually, imported from Schema.org, imported from the Dutch GGM, or pulled from any other public standard.
Key features
| Feature | What it does | Sub-features |
|---|---|---|
| 💾 Storing objects | Core entity with validated data, metadata, relationships, and file attachments. | Schema validation · Relationships · Object locking · Soft deletion · Version history · Audit trails |
| 📝 Schema management | Define and validate data structures using JSON Schema. | JSON-Schema validation · Versioning · Import / export · Schema.org · GGM |
| ⏰ Register management | Organise collections of related objects with shared schemas. | Domain organisation · Schema grouping · Access control · Data segregation |
| 🔒 Access control | Enterprise permissions with Nextcloud RBAC and Keycloak integration. | Role-based access · ADFS · Keycloak · FCS compliance |
| 🔍 Search & facets | Advanced search with automatic faceting. | Full-text · Auto-facets · Pattern matching · Wildcards |
Basic workflow
- Define or import your register schema (a client database, a social-security record, anything).
- Client sends a JSON object via the API.
- Open Register validates it against the corresponding JSON Schema.
- If valid, the object is stored in the configured backend.
- The object can be retrieved later, regardless of the storage backend it landed in.
Tip
Start with a schema from Schema.org. You will rewrite less code, your data will speak a standard language, and external tools will recognise it without bespoke mapping.
What you get out of the box
- REST and GraphQL APIs auto-generated from every schema you define.
- An audit log signed with a citation-stable identifier, ready for WOO and BIO evidence.
- Dashboard widgets for Nextcloud that surface schema validation issues in real time.
- A storage-adapter interface so you can move from internal database to MongoDB without touching client code.
Next
Continue with the installation guide, or jump to the feature pages if you already have the app installed.