Common Definitions Format

Reusable schema component definitions for use across all META-AIML schema files. These common definitions provide standardized structures for modules, identifiers, contact information, metadata, images, multilingual content, person data, and deprecated field management.

Available Definitions (8 total)

modulesDef

Recursive structure for nesting modules with versioning and properties

Module system organization

identifierDef

Standard identifier structure with alternate IDs and systems

Entity identification

contactInfoDef

Standardized contact information including email, phone, address

Contact data standardization

metadataDef

Standard metadata structure with versioning and change tracking

Entity lifecycle management

imageDef

Standard image information with specifications and licensing

Media asset management

multilingualDef

Standard multilingual content structure with translation metadata

Internationalization support

personDef

Standard person information structure with contact details

Personnel data standardization

deprecatedFieldsDef

Information about deprecated fields with replacement guidance

Schema evolution management
JSON Schema Definition
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "Common Schema Definitions",
  "description": "Reusable schema component definitions for use across all schema files",
  "type": "object",
  "aimlVersion": "2.0.1",
  "schemaVersion": "2.0.1",
  "$defs": {
    "modulesDef": {
      "type": "object",
      "description": "Recursive structure for nesting modules",
      "patternProperties": {
        "^[a-zA-Z0-9_]+$": {
          "type": "object",
          "properties": {
            "moduleType": { "type": "string" },
            "version": { "type": "string", "pattern": "^\\d+\\.\\d+\\.\\d+$" },
            "required": { "type": "boolean" },
            "properties": { "type": "object", "additionalProperties": true },
            "modules": { "$ref": "#/$defs/modulesDef" }
          }
        }
      }
    },
    "identifierDef": {
      "type": "object",
      "description": "Standard identifier structure",
      "properties": {
        "@id": { "type": "string" },
        "alternateIds": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": { "type": "string" },
              "idType": { "type": "string" },
              "idSystem": { "type": "string" }
            }
          }
        }
      }
    },
    "contactInfoDef": {
      "type": "object",
      "description": "Standardized contact information",
      "properties": {
        "email": { "type": "string", "format": "email" },
        "phone": { "type": "string" },
        "website": { "type": "string", "format": "uri" },
        "address": { "$ref": "./components/address-format.json" },
        "socialProfiles": {
          "type": "object",
          "additionalProperties": { "type": "string", "format": "uri" }
        }
      }
    }
  }
}
Usage in Entity Schemas
How common definitions are implemented within schemas - data is included directly, not via $ref

Note: Common definitions provide the structure standard, but entity schemas include definition data directly rather than using $ref references.

Common definitions serve as templates - the actual data structures are embedded directly in schemas:

Contact info included directly in entity schema
{
  "contact": {
    "email": "contact@restaurant.com",
    "phone": "+1-555-0123",
    "website": "https://restaurant.com",
    "address": {
      "streetAddress": "123 Main St",
      "addressLocality": "New York",
      "addressRegion": "NY",
      "postalCode": "10001",
      "addressCountry": "US"
    },
    "socialProfiles": {
      "facebook": "https://facebook.com/restaurant",
      "instagram": "https://instagram.com/restaurant"
    }
  }
}
Key Features

Standardization

  • • Consistent data structures across all schemas
  • • Reusable components reduce duplication
  • • Standardized contact and metadata formats

Extensibility

  • • Recursive module structure support
  • • Flexible identifier system with alternates
  • • Multilingual content support

Common definitions provide standardized structures for consistent data modeling across all META-AIML entity schemas.