Cadastry Chain Schema Overview

This document provides an overview of the Cadastry Chain schema. The schema is designed to represent various entities and their relationships in a flexible and extensible manner.

Key Components

  1. Document: The base type for all entities in the system, providing core functionality like versioning and permissions.
  2. Field: Various field types used to store and manage different types of data within documents.
  3. Actor: Represents individuals, organizations, or any entity capable of actions.
  4. Object: Represents physical or digital items that can be grouped and categorized.
  5. Event: Represents occurrences with timing information and recurrence capabilities.
  6. Place: Represents physical or virtual locations with flexible properties.
  7. Resource: Represents digital assets such as images, videos, or 3D models.

Schema Design Principles

  • Flexibility: The schema accommodates diverse entities and relationships while maintaining structure.
  • Extensibility: Uses a class-based system for entity categorization, enabling specialization.
  • Consistency: All entities inherit from Document, ensuring uniform core properties.
  • Interoperability: Facilitates complex relationships between different entity types.

Core Concepts

Document

The Document interface provides the foundation with properties including:

  • CDID (unique identifier)
  • Version tracking (height)
  • Timestamps (createdAt, updatedAt)
  • Creator and updater information (createdBy, updatedBy)
  • Content hash
  • Class designation
  • Record or Resource content
  • Evaluations
  • Additional identifiers
  • Document references
  • Power specifications
  • Permissions
  • Signatures

Fields

The schema supports multiple field types, each extending from BaseField:

  • StringField: For text data
  • NumberField: For numeric values
  • BooleanField: For true/false values
  • DateField: For temporal data
  • ArrayField: For collections
  • ObjectField: For complex structures
  • ReferenceField: For document references
  • ResourceField: For digital assets
  • EncryptedField: For sensitive data
  • SelectField: For enumerated values
  • ImageField: For image data
  • UrlField: For web addresses

Each field type includes properties for type identification, value storage, and optional features like encryption and privacy settings.

Specialized Entity Types

Actor

  • Represents entities capable of actions
  • Can be individuals, organizations, or systems
  • Includes identity and capability information

Object

  • Represents physical or digital items
  • Supports grouping and categorization
  • Can reference collections or exhibitions

Event

  • Handles temporal information
  • Supports one-time and recurring events
  • Includes timezone and duration handling

Place

  • Represents locations of all types
  • Can include geographic data
  • Supports relationships with other entities

Resource

  • Manages digital assets
  • Specialized handling for different media types
  • Includes metadata and access controls

Usage Guidelines

  1. Begin with Document as the foundation
  2. Select appropriate Field types for data structure
  3. Use specialized entity types based on requirements
  4. Create relationships using the reference system
  5. Apply permissions and encryption as needed

Detailed Documentation

For comprehensive information on each component, refer to:

  • Document - Base document structure
  • Fields - Available field types
  • Actor - Actor entity specification
  • Object - Object entity specification
  • Event - Event entity specification
  • Place - Place entity specification
  • Resource - Resource entity specification

Each document provides detailed specifications, property tables, usage examples, and implementation considerations.