Skip to main content
drupalreleases

Use direct release data with your AI assistant.

Learn more

Schemata

Security covered Under active development 13,096 sites

Schemata generates schema definitions for Drupal's data models, such as JSON Schema for JSON, HAL JSON, and JSON API serialized content entities. This helps describe the structure of your content and can be used for testing, code generation, and documentation when working with Drupal's REST system.

Facilitate generation of schema definitions of Drupal 8 data models as produced by Serialization for Drupal 8 REST. Currently supported: JSON Schema for JSON, HAL JSON, and JSON API serialized Drupal Content Entities.

What is a (non-Database) Schema for Drupal?

A schema is a declarative definition of an entity's makeup. A way of describing the different pieces that make up the entity, much like an interface defines a class and exactly like an XML DTD describes an XML document. This project uses Drupal's new Typed Data system to facilitate the creation of schemas for your site.

This is especially powerful in conjunction with the Drupal REST system, as your content model schemata can help with testing, client code generation, documentation generation, and more, especially in conjunction with external tools that process schemas.

All Entity Types and Bundles have a schema automatically via the Schemata module.

Requirements

Schemata-the-module is a dependency for a sub-module that provides a first schema format: Schemata JSON Schema. This adds JSON Schema descriptions of JSON, HAL JSON, and JSON API

From a "product" standpoint, JSON Schema is the valuable thing, and Schemata the technical dependency. Only install Schemata if you plan to install a module that provides a Serializer implementation that can use it.

Schemata-powered Projects

Use the Docson module to visualize the JSON Schemas generated by the Schemata module.

Use the OpenAPI module to create schemas defining your REST resources.

Architecture & Development

For more on the architecture and configuration, please see the README

Development

If you wish to contribute to development of this project, please submit Pull Requests on Github

Automated Testing is handled with Travis-CI.

Drupal 9–11 PHP >=8.1

Ask your assistant about Schemata

Check compatibility with your Drupal and PHP version, maintenance and security coverage, from current release data. How it works

Depends on

Dependencies of the latest stable release

  • serialization Drupal core

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
2
Tracked since
Sep 2024
Latest release
1 month ago
Releases (12 mo)
1 ▲ from 0
Maintenance
Active

Releases

Version Type Core PHP Release date
8.x-1.1 Stable 9–11 PHP >=8.1 Sep 16, 2026
8.x-1.0 Stable 9–11 PHP >=8.1 Sep 12, 2024