VideoHosting

v3.0.0
DigitalEntity
Media

v3 schema for video hosting services that provide upload, processing, storage, and controlled playback delivery directly to customers.

Top-level required
10
Required modules
0
Capability groups
1
Entity properties
5
Inheritance Chain
https://schemas.meta-aiml.org/v3.0.0/ontology/digital_entity.json
https://schemas.meta-aiml.org/v3.0.0/archetypes/direct_service.json

Interaction archetype

DirectService
Required Top-level Fields
These fields are enforced by JSON Schema required[] at root level.
@type
ontologicalMode
interactionArchetype
domain
name
description
deliveryFormat
capabilities
structuralMetadata
modules

Non-universal required fields

interactionArchetype
Entity-specific Properties
Keys under properties.properties dedicated to this entity contract.
retentionPolicyMode
supportsAutomatedCaptioning
supportsEmbeddablePlayback
supportsLivestreaming
transcodingProfileSet
Modules Contract

Required modules

No required modules for this entity.

Optional modules

delivery
processing
upload
Capabilities Contract

Required capability groups

interaction

Optional capability groups

community
content
financial
Governance Validation Rules
Normative rule list from governanceMetadata.sdkValidationRules.
RULE-VIDEO-001: @type MUST equal "VideoHosting"
RULE-VIDEO-002: ontologicalMode MUST equal "DigitalEntity"
RULE-VIDEO-003: interactionArchetype MUST contain "DirectService"
RULE-VIDEO-004: capabilities.interaction MUST be present
RULE-VIDEO-005: structuralMetadata.topology MUST equal "binary"
RULE-VIDEO-006: supportsEmbeddablePlayback SHOULD be explicitly declared
Canonical Contract JSON
https://schemas.meta-aiml.org/v3.0.0/entity/video_hosting.json
https://schemas.meta-aiml.org/v3.0.0/entity/video_hosting.json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "@context": [
    "https://schemas.meta-aiml.org/v3.0.0/context.jsonld"
  ],
  "@id": "https://schemas.meta-aiml.org/v3.0.0/entity/video_hosting.json",
  "$id": "https://schemas.meta-aiml.org/v3.0.0/entity/video_hosting.json",
  "@type": "VideoHosting",
  "schemaVersion": "3.0.0",
  "aimlVersion": "3.0.0",
  "title": "Video Hosting Entity Schema",
  "description": "v3 schema for video hosting services that provide upload, processing, storage, and controlled playback delivery directly to customers.",
  "examples": [
    {
      "description": "Video hosting platform for SaaS products with embeddable players and API delivery",
      "reference": "video_hosting_example_saas_embedding"
    },
    {
      "description": "Enterprise training video repository with retention and access policy controls",
      "reference": "video_hosting_example_enterprise_training"
    }
  ],
  "type": "object",
  "additionalProperties": false,
  "allOf": [
    {
      "$ref": "../ontology/digital_entity.json"
    },
    {
      "$ref": "../archetypes/direct_service.json"
    }
  ],
  "properties": {
    "@type": {
      "const": "VideoHosting"
    },
    "ontologicalMode": {
      "const": "DigitalEntity"
    },
    "interactionArchetype": {
      "type": "array",
      "contains": {
        "const": "DirectService"
      },
      "items": {
        "type": "string",
        "enum": [
          "DirectService"
        ]
      }
    },
    "domain": {
      "const": "Media"
    },
    "businessModel": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "Subscription",
          "UsageBased",
          "Freemium"
        ]
      }
    },
    "deliveryFormat": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "WebApp",
          "API",
          "MobileApp"
        ]
      }
    },
    "name": {
      "$ref": "../components/multilingual_format.json#/$defs/LocalizedText"
    },
    "description": {
      "$ref": "../components/multilingual_format.json#/$defs/LocalizedText"
    },
    "shortDescription": {
      "type": "string"
    },
    "url": {
      "type": "string",
      "format": "uri"
    },
    "foundingDate": {
      "type": "string",
      "format": "date"
    },
    "properties": {
      "type": "object",
      "properties": {
        "supportsLivestreaming": {
          "type": "boolean"
        },
        "supportsEmbeddablePlayback": {
          "type": "boolean"
        },
        "transcodingProfileSet": {
          "type": "string",
          "enum": [
            "basic",
            "standard",
            "advanced"
          ]
        },
        "supportsAutomatedCaptioning": {
          "type": "boolean"
        },
        "retentionPolicyMode": {
          "type": "string",
          "enum": [
            "manual",
            "time_based",
            "policy_based"
          ]
        }
      }
    },
    "capabilities": {
      "type": "object",
      "required": [
        "interaction"
      ],
      "properties": {
        "interaction": {
          "$ref": "../components/capability_groups.json#/$defs/InteractionCapabilities"
        },
        "content": {
          "$ref": "../components/capability_groups.json#/$defs/ContentCapabilities"
        },
        "financial": {
          "$ref": "../components/capability_groups.json#/$defs/FinancialCapabilities"
        },
        "community": {
          "$ref": "../components/capability_groups.json#/$defs/CommunityCapabilities"
        }
      }
    },
    "modules": {
      "type": "object",
      "properties": {
        "upload": {
          "type": "object",
          "properties": {
            "resumableUploadsEnabled": {
              "type": "boolean"
            },
            "bulkIngestionEnabled": {
              "type": "boolean"
            },
            "uploadVirusScanningEnabled": {
              "type": "boolean"
            }
          }
        },
        "processing": {
          "type": "object",
          "properties": {
            "transcodingQueuePrioritiesEnabled": {
              "type": "boolean"
            },
            "thumbnailSelectionEnabled": {
              "type": "boolean"
            },
            "qualityAnalysisEnabled": {
              "type": "boolean"
            }
          }
        },
        "delivery": {
          "type": "object",
          "properties": {
            "signedUrlsEnabled": {
              "type": "boolean"
            },
            "geoDeliveryRoutingEnabled": {
              "type": "boolean"
            },
            "playerCustomizationEnabled": {
              "type": "boolean"
            }
          }
        }
      }
    },
    "structuralMetadata": {
      "type": "object",
      "properties": {
        "topology": {
          "const": "binary"
        },
        "roles": {
          "const": [
            "user",
            "platform"
          ]
        },
        "valueSource": {
          "const": "platform_provided"
        },
        "transactionFlow": {
          "const": "direct"
        },
        "networkEffects": {
          "const": "none"
        },
        "mediaPipelineMode": {
          "type": "string",
          "enum": [
            "upload_first",
            "livestream_first",
            "hybrid"
          ]
        }
      }
    },
    "targetAudience": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "siteCapabilities": {
      "type": "object",
      "properties": {
        "supportedDevices": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "desktop",
              "mobile",
              "tablet"
            ]
          }
        },
        "languages": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "accessibilityFeatures": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    }
  },
  "required": [
    "@type",
    "ontologicalMode",
    "interactionArchetype",
    "domain",
    "name",
    "description",
    "deliveryFormat",
    "capabilities",
    "structuralMetadata",
    "modules"
  ],
  "validationMetadata": {
    "schemaVersion": "3.0.0",
    "phase": "entity",
    "status": "draft",
    "lastValidated": "2026-02-20T12:00:00Z",
    "validator": "META-AIML QA"
  },
  "semanticAnnotations": {
    "classificationRationale": "VideoHosting is modeled as DigitalEntity + DirectService because the platform directly provides media ingestion, processing, and delivery capabilities.",
    "disambiguationNotes": "Different from streaming platforms where editorial content broadcasting is the primary value."
  },
  "governanceMetadata": {
    "entityVersion": "3.0.0",
    "introducedIn": "META-AIML v3.0.0",
    "stabilityLevel": "draft",
    "sdkValidationRules": [
      "RULE-VIDEO-001: @type MUST equal \"VideoHosting\"",
      "RULE-VIDEO-002: ontologicalMode MUST equal \"DigitalEntity\"",
      "RULE-VIDEO-003: interactionArchetype MUST contain \"DirectService\"",
      "RULE-VIDEO-004: capabilities.interaction MUST be present",
      "RULE-VIDEO-005: structuralMetadata.topology MUST equal \"binary\"",
      "RULE-VIDEO-006: supportsEmbeddablePlayback SHOULD be explicitly declared"
    ]
  }
}
Filled Example Instance
https://schemas.meta-aiml.org/v3.0.0/examples/video_hosting_example_schema_v3.json
https://schemas.meta-aiml.org/v3.0.0/examples/video_hosting_example_schema_v3.json
{
  "@context": [
    "https://schemas.meta-aiml.org/v3.0.0/context.jsonld"
  ],
  "@id": "https://data.meta-aiml.org/v3.0.0/examples/video_hosting/framevault-video-cloud",
  "$id": "https://data.meta-aiml.org/v3.0.0/examples/video_hosting/framevault-video-cloud",
  "@type": "VideoHosting",
  "schemaVersion": "3.0.0",
  "aimlVersion": "3.0.0",
  "title": "Example Filled Video Hosting Entity (FrameVault Video Cloud)",
  "ontologicalMode": "DigitalEntity",
  "interactionArchetype": [
    "DirectService"
  ],
  "domain": "Media",
  "businessModel": [
    "Subscription",
    "UsageBased",
    "Freemium"
  ],
  "deliveryFormat": [
    "WebApp",
    "API",
    "MobileApp"
  ],
  "name": {
    "en": "FrameVault Video Cloud",
    "es": "FrameVault Video Cloud",
    "fr": "FrameVault Video Cloud"
  },
  "description": {
    "en": "FrameVault Video Cloud is a fictional video hosting service offering ingestion, transcoding, secure playback delivery, and embeddable player management for product and training use cases.",
    "es": "FrameVault Video Cloud es un servicio ficticio de video hosting con ingestion, transcodificacion, entrega segura y gestion de reproductor embebible.",
    "fr": "FrameVault Video Cloud est un service fictif d hebergement video avec ingestion, transcodage, diffusion securisee et gestion de lecteur embarque."
  },
  "shortDescription": {
    "en": "Video hosting infrastructure with upload pipeline, processing controls, and secure playback delivery.",
    "es": "Infraestructura de video hosting con pipeline de carga, procesamiento y entrega segura.",
    "fr": "Infrastructure d hebergement video avec pipeline upload, traitement et diffusion securisee."
  },
  "url": "https://framevault-video-cloud.example",
  "foundingDate": "2018-08-09",
  "createdDate": "2026-02-20T21:20:00Z",
  "lastModified": "2026-02-20T21:20:00Z",
  "examples": [
    {
      "scenario": "Mass upload of training video archive",
      "note": "AI should prioritize upload and processing modules, including queue priorities and metadata extraction consistency checks."
    },
    {
      "scenario": "Playback outage in one region",
      "note": "AI should route through delivery policies such as signed URLs and geo routing fallback without changing account security assumptions."
    }
  ],
  "properties": {
    "supportsLivestreaming": true,
    "supportsEmbeddablePlayback": true,
    "transcodingProfileSet": "advanced",
    "supportsAutomatedCaptioning": true,
    "retentionPolicyMode": "policy_based",
    "contactPoints": [
      {
        "contactType": "technical",
        "telephone": "+1-415-555-0161",
        "email": "support@framevault-video-cloud.example",
        "url": "https://framevault-video-cloud.example/support",
        "areaServed": "global",
        "availableLanguages": [
          "en",
          "es"
        ]
      }
    ],
    "socialProfiles": [
      {
        "platform": "linkedin",
        "url": "https://www.linkedin.com/company/framevault-video-cloud",
        "username": "framevault-video-cloud"
      },
      {
        "platform": "github",
        "url": "https://github.com/framevault-video-cloud",
        "username": "framevault-video-cloud"
      }
    ],
    "identifiers": [
      {
        "type": "url",
        "value": "https://framevault-video-cloud.example"
      },
      {
        "type": "custom",
        "value": "VH-FVC-001"
      }
    ]
  },
  "capabilities": {
    "interaction": {
      "features": [
        "messaging",
        "notifications"
      ],
      "interactionMethods": [
        "online_form",
        "chat",
        "email"
      ],
      "availableActions": [
        "upload_video",
        "configure_player",
        "generate_embed",
        "review_analytics"
      ],
      "hasMessaging": true,
      "hasComments": false,
      "hasRating": false,
      "hasReviews": false,
      "hasSocialGraph": false,
      "hasFeed": false,
      "hasNotifications": true,
      "hasMatching": false,
      "realTimeCommunication": true,
      "moderationEnabled": true,
      "privacyControls": [
        "private"
      ]
    },
    "content": {
      "features": [
        "mediaHosting",
        "search",
        "categories",
        "tags",
        "archives"
      ],
      "contentTypes": [
        "video_asset",
        "playlist",
        "caption_track",
        "thumbnail"
      ],
      "contentFormats": [
        "mp4",
        "webm",
        "m3u8",
        "vtt"
      ],
      "contentAccess": [
        "member",
        "restricted",
        "public"
      ],
      "editorialControl": true,
      "userGeneratedContent": true,
      "mediaHosting": true,
      "searchPossible": true,
      "hasCategorization": true,
      "hasTagging": true,
      "archiveAccess": true,
      "rssFeeds": false
    },
    "financial": {
      "features": [
        "payments",
        "billing",
        "subscriptionManagement",
        "invoicing"
      ],
      "paymentMethods": [
        "credit_card",
        "bank_transfer",
        "invoice_terms"
      ],
      "acceptsCreditCards": true,
      "currencies": [
        "USD",
        "EUR"
      ],
      "priceRange": "usage_tiered",
      "commissionModel": "fixed_price",
      "commissionRate": 0,
      "supportsSubscriptions": true,
      "supportsInvoicing": true,
      "refundPolicy": "partial_refund"
    },
    "community": {
      "features": [
        "communities",
        "moderation"
      ],
      "supportsGroups": false,
      "supportsChannels": false,
      "communitiesCount": 0,
      "hasDiscovery": false,
      "hasModeration": true,
      "moderationModel": "human",
      "hasMembershipManagement": true,
      "membershipTypes": [
        "workspace_member"
      ],
      "supportsGroupEvents": false,
      "supportsPolls": false,
      "hasGovernance": false,
      "governanceModel": "centralized",
      "privacyLevels": [
        "closed"
      ]
    }
  },
  "modules": {
    "upload": {
      "resumableUploadsEnabled": true,
      "bulkIngestionEnabled": true,
      "uploadVirusScanningEnabled": true
    },
    "processing": {
      "transcodingQueuePrioritiesEnabled": true,
      "thumbnailSelectionEnabled": true,
      "qualityAnalysisEnabled": true
    },
    "delivery": {
      "signedUrlsEnabled": true,
      "geoDeliveryRoutingEnabled": true,
      "playerCustomizationEnabled": true
    }
  },
  "structuralMetadata": {
    "topology": "binary",
    "roles": [
      "user",
      "platform"
    ],
    "valueSource": "platform_provided",
    "transactionFlow": "direct",
    "networkEffects": "none",
    "mediaPipelineMode": "hybrid"
  },
  "targetAudience": [
    "edtech_platforms",
    "saas_teams",
    "media_ops_engineers"
  ],
  "siteCapabilities": {
    "supportedDevices": [
      "desktop",
      "mobile",
      "tablet"
    ],
    "languages": [
      "en",
      "es",
      "fr"
    ],
    "accessibilityFeatures": [
      "keyboard_navigation",
      "screen_reader_labels",
      "caption_support"
    ]
  },
  "validationMetadata": {
    "schemaVersion": "3.0.0",
    "phase": "example_instance",
    "status": "reference",
    "lastValidated": "2026-02-20T21:20:00Z",
    "validator": "META-AIML SDK v3"
  },
  "semanticAnnotations": {
    "classificationRationale": "VideoHosting is modeled as DigitalEntity plus DirectService because video ingestion and delivery pipelines are provided directly by platform infrastructure.",
    "disambiguationNotes": "This model is not a publisher-oriented streaming catalog. It focuses on hosting and delivery capabilities.",
    "intendedUse": "Canonical example for video hosting infrastructure platforms."
  },
  "governanceMetadata": {
    "entityVersion": "3.0.0",
    "introducedIn": "META-AIML v3.0.0",
    "stabilityLevel": "reference",
    "sdkValidationRules": [
      "RULE-VHXX-001: @type MUST equal \"VideoHosting\"",
      "RULE-VHXX-002: ontologicalMode MUST equal \"DigitalEntity\"",
      "RULE-VHXX-003: interactionArchetype MUST contain exactly one value: \"DirectService\"",
      "RULE-VHXX-004: modules.upload, modules.processing, and modules.delivery MUST be present",
      "RULE-VHXX-005: structuralMetadata constants MUST align with DirectService archetype",
      "RULE-VHXX-006: examples MUST include at least two operational scenarios"
    ]
  }
}