# Schemas

A Schema in Guardian is a structured data definition that describes the format, attributes, and validation rules for Verifiable Credentials (VCs) and Verifiable Presentations (VPs) within policies and methodologies.

Schemas ensure that all participants (Standard Registries, Project Developers, Auditors, Validators, Buyers, etc.) use a common, consistent, and machine-readable structure when exchanging sustainability-related data on the Hedera network.

#### **Key Characteristics of Schemas**

1. **Standardized Data Model**
   * Defines the fields, data types, and relationships for a specific entity (e.g., a project description, monitoring report, or carbon credit issuance record).
   * Guarantees interoperability across policies, methodologies, and different Standard Registries.
2. **Validation Rules**
   * Enforces constraints like required fields, value ranges, or enumerations.
   * Ensures data integrity and consistency before being issued on-chain.
3. **Reusability**
   * Once published, schemas can be reused across multiple policies and methodologies.
   * Promotes standardization across ecosystems (e.g., all carbon projects may use the same Emission Reduction Schema).
4. **Version Control**
   * Schemas are versioned, enabling updates or modifications without breaking existing data structures.
   * Allows migration from old to new schema versions when standards evolve.

#### **Types of Schemas in Guardian**

* **System Schemas** → Provided by Guardian (for core functions like DID, VP, VC, token definitions).
* **Custom Schemas** → Defined by Standard Registries or methodology authors for their specific workflows (e.g., Project Registration Schema, Monitoring Report Schema).
* **Policy-bound Schemas** → Linked directly to a policy to structure its credentials and reports.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://guardian.hedera.com/guardian-dev/guardian/standard-registry/schemas.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
