System Ontology
Technical Reference for Card Data Schema
This document serves as the authoritative reference for the CardDataSchema used in the backend. When defining a Card's data field, strict
adherence to this ontology is enforced.
Ontology Model
The Card object is composed of three distinct layers.
CardDataSchema - license
- runtime_type
- protocol
System Tag Registry
To ensure consistency in The Oracle (recommendation engine), tags starting with reserved prefixes MUST
use values from the SYSTEM_TAG_REGISTRY.
These categories are strictly forbidden in the data field. They must be provided as prefix:value tags.
Core Attributes
license
string | null Must be a valid SPDX License Identifier (e.g., 'MIT', 'Apache-2.0').
website
ExternalLink | string | null Official website or documentation URL.
repository
ExternalLink | string | null Source code repository (GitHub, GitLab, etc.).
resource_intensity
string | null Green-Ops impact assessment: 'low', 'medium', or 'high'.
Languages & Runtimes
Required if type is language.
runtime_type
enum compiledinterpretedjitvmhybridtranspiled
concurrency_models
list[enum] single-threadmulti-threadasync-event-loopactorsgreen-threadsvirtual-threadscspsoftware-transactional-memory
memory_management
enum manualgarbage-collectedarcreference-countingownershipnone
Databases & Gateways
Required if type is database.
consistency_model
enum strongeventualcausalacidbase
protocol
enum restgraphqlgrpcthriftwebsocketsoapbinarysql
Card Natures
The nature field defines the fundamental category
of a technology. This drives which specific rule in
the compatibility engine applies.
Relations & Compatibility
Explicit Relations
Defined manually via CardRelation edges in the graph.
parent/child(Composition)dependency/dependent(Requirement)alternative(Substitution)conflict(Mutually Exclusive)synergy(Works well with)
Compatibility Rules
The "Oracle" uses CompatibilityRule logic to infer
relationships dynamically.