VOCABULARY

Canonical Schema

A canonical schema is a design pattern or a blueprint used in the field of software engineering to standardize the structure, attributes, and semantics of data between different systems, applications, or databases. The aim is to provide a common and generic data format that all systems can understand, reducing complexity and increasing compatibility across diverse system architectures.

How it works

The process of establishing a canonical schema involves carefully mapping out the data elements across different systems and then standardizing them into a common schema. Each system or application in the organization then communicates using this common data format, converting its native data format to and from the canonical schema as required. This way, every system doesn’t need to understand the unique schemas of every other system, they only need to understand the canonical schema.

For example, consider a situation where three systems - A, B, and C are connected. Without a canonical schema, system A would need to understand both system B’s and C’s data formats (2 mappings). The same would apply for systems B and C, leading to a total of 6 different mappings.

With a canonical schema, however, there only needs to be a mapping between each system and the common schema (3 mappings in total). This significantly reduces the complexity of communication and enhances the system's interoperability.

In addition to simpler data integration, a canonical schema also promotes data consistency, improves the efficiency of data processing, and simplifies the management of changes to data structures. Despite the initial effort of devising and implementing a canonical schema, many organizations find it provides significant long-term benefits.

Lakera LLM Security Playbook
Learn how to protect against the most common LLM vulnerabilities

Download this guide to delve into the most common LLM security risks and ways to mitigate them.

Related terms
Activate
untouchable mode.
Get started for free.

Lakera Guard protects your LLM applications from cybersecurity risks with a single line of code. Get started in minutes. Become stronger every day.

Join our Slack Community.

Several people are typing about AI/ML security. 
Come join us and 1000+ others in a chat that’s thoroughly SFW.