{
  "namespace": "xananode.com",
  "nodes": [
    {
      "id": "xananode-implementation-stack-trail",
      "protocol_id": "xananode.com:trail/xananode-implementation-stack-trail",
      "title": "XanaNode Implementation Stack Trail",
      "type": "trail",
      "facets": [],
      "section": "trails",
      "importance": 5,
      "summary": "A curated path through the XanaNode repositories in dependency order: Protocol, Core SDK, Hugo, Workspace, and Studio.",
      "content": "This trail orders the active XanaNode implementation repositories by dependency and responsibility.\n\nThe protocol repository defines the canonical rules.\n\nThe Core SDK repository consumes those rules and exposes reusable validation, fragment, graph, and artifact APIs.\n\nThe Hugo repository adapts Hugo content and static publishing to Core-validated protocol artifacts.\n\nThe Workspace repository manages multiple local substrates and their operational workflows.\n\nThe Studio repository provides the desktop workbench for editing, previewing, validating, and navigating those substrates.\n\n{{< node ref=\"xananode-protocol-repo\" >}}\n{{< node ref=\"xananode-core-sdk-repo\" >}}\n{{< node ref=\"xananode-hugo-repo\" >}}\n{{< node ref=\"xananode-workspace-repo\" >}}\n{{< node ref=\"xananode-studio-repo\" >}}",
      "html": "",
      "url": "/trail/xananode-implementation-stack-trail/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [
        "xananode-protocol-repo",
        "xananode-core-sdk-repo",
        "xananode-hugo-repo",
        "xananode-workspace-repo",
        "xananode-studio-repo"
      ],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode-core-trail",
      "protocol_id": "xananode.com:trail/xananode-core-trail",
      "title": "XanaNode Core Trail",
      "type": "trail",
      "facets": [],
      "section": "trails",
      "importance": 5,
      "summary": "A curated path through the core concepts that define XanaNode.",
      "content": "This trail introduces XanaNode as a protocol, ontology, and publishing architecture for interoperable knowledge substrates.\n\nIt moves from the problem of isolated documents to typed relationships, provenance, transclusion, tumbler addressing, namespacing, protocol artifacts, merge validation, compatibility levels, federated knowledge substrates, semantic route health, and civilizational memory.\n\n{{< node ref=\"start-here\" >}}\n{{< node ref=\"xananode\" >}}\n{{< node ref=\"knowledge-substrate\" >}}\n{{< node ref=\"typed-relationships\" >}}\n{{< node ref=\"provenance\" >}}\n{{< node ref=\"transclusion\" >}}\n{{< node ref=\"tumbler-addressing\" >}}\n{{< node ref=\"namespacing\" >}}\n{{< node ref=\"merge-validation\" >}}\n{{< node ref=\"protocol-artifacts\" >}}\n{{< node ref=\"compatibility-levels\" >}}\n{{< node ref=\"federated-knowledge-substrates\" >}}\n{{< node ref=\"semantic-route-health\" >}}\n{{< node ref=\"civilizational-memory\" >}}",
      "html": "",
      "url": "/trail/xananode-core-trail/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [
        "start-here",
        "xananode",
        "knowledge-substrate",
        "typed-relationships",
        "provenance",
        "transclusion",
        "tumbler-addressing",
        "namespacing",
        "schema-extension",
        "protocol-artifacts",
        "merge-validation",
        "compatibility-levels",
        "federated-knowledge-substrates",
        "semantic-route-health",
        "civilizational-memory"
      ],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "semantic-health-lineage-trail",
      "protocol_id": "xananode.com:trail/semantic-health-lineage-trail",
      "title": "Semantic Health Lineage Trail",
      "type": "trail",
      "facets": [],
      "section": "trails",
      "importance": 5,
      "summary": "A curated health-check route from Douglas Adams through Hyperland, Xanadu, transclusion, Engelbart, and XanaNode.",
      "content": "This trail is a deliberate health check.\n\nThe route should be able to say more than \"Douglas Adams reaches XanaNode.\" It should explain that Adams popularized the fundamental interconnectedness of things, that Hyperland dramatized navigable knowledge media, that Bush's Memex framed associative trails, that Nelson's Project Xanadu made transclusion and visible interconnection central, and that Engelbart's augmentation work gives the lineage a human-purpose frame.\n\nIf the graph finds a different route first, that route may still be valid. This trail records the route the canonical substrate considers semantically strongest.",
      "html": "",
      "url": "/trail/semantic-health-lineage-trail/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [
        "xananode.lineage:person/douglas-adams",
        "xananode.lineage:publication/dirk-gentlys-holistic-detective-agency",
        "xananode.lineage:publication/hyperland",
        "vannevar-bush",
        "as-we-may-think",
        "memex",
        "ted-nelson",
        "project-xanadu",
        "transclusion",
        "douglas-engelbart",
        "nls",
        "xananode",
        "semantic-route-health"
      ],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "protocol-artifacts-trail",
      "protocol_id": "xananode.com:trail/protocol-artifacts-trail",
      "title": "Protocol Artifacts Trail",
      "type": "trail",
      "facets": [],
      "section": "trails",
      "importance": 5,
      "summary": "A curated path through the concrete JSON files, reports, registries, and governance documents that make a XanaNode substrate interoperable.",
      "content": "This trail follows the artifacts a XanaNode implementation publishes or consumes.\n\nIt begins with the substrate manifest, substrate node records, and substrate relationship list, then moves through compatibility levels, the compatibility report, the merge report, the namespace registry, the known implementations registry, review suggestions, the canonical type policy, the custom extension substrate, the federation example, and federation rules.\n\n{{< node ref=\"protocol-artifacts\" >}}\n{{< node ref=\"substrate-manifest\" >}}\n{{< node ref=\"substrate-node-record\" >}}\n{{< node ref=\"substrate-relationship-list\" >}}\n{{< node ref=\"compatibility-levels\" >}}\n{{< node ref=\"compatibility-report\" >}}\n{{< node ref=\"merge-report\" >}}\n{{< node ref=\"namespace-registry\" >}}\n{{< node ref=\"known-implementations-registry\" >}}\n{{< node ref=\"review-suggestions\" >}}\n{{< node ref=\"canonical-type-policy\" >}}\n{{< node ref=\"custom-extension-substrate\" >}}\n{{< node ref=\"federation-example\" >}}\n{{< node ref=\"federation-rules\" >}}",
      "html": "",
      "url": "/trail/protocol-artifacts-trail/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [
        "protocol-artifacts",
        "substrate-manifest",
        "substrate-node-record",
        "substrate-relationship-list",
        "compatibility-levels",
        "compatibility-report",
        "merge-report",
        "namespace-registry",
        "known-implementations-registry",
        "review-suggestions",
        "canonical-type-policy",
        "custom-extension-substrate",
        "federation-example",
        "federation-rules"
      ],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "historical-lineage-trail",
      "protocol_id": "xananode.com:trail/historical-lineage-trail",
      "title": "Historical Lineage Trail",
      "type": "trail",
      "facets": [],
      "section": "trails",
      "importance": 4,
      "summary": "A curated path through Bush, Engelbart, Nelson, and XanaNode.",
      "content": "This trail follows the historical lineage behind XanaNode: Bush's associative trails, Engelbart's augmentation work, Nelson's transclusion and visible interconnection, and the protocol's current focus on typed relationships and stable fragments.",
      "html": "",
      "url": "/trail/historical-lineage-trail/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [
        "vannevar-bush",
        "as-we-may-think",
        "memex",
        "douglas-engelbart",
        "nls",
        "ted-nelson",
        "project-xanadu",
        "transclusion",
        "xananode"
      ],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "federated-disagreement-health-trail",
      "protocol_id": "xananode.com:trail/federated-disagreement-health-trail",
      "title": "Federated Disagreement Health Trail",
      "type": "trail",
      "facets": [],
      "section": "trails",
      "importance": 4,
      "summary": "A trail showing how a substrate can preserve a local claim, a counterclaim, and a mounted lineage example without collapsing them into one voice.",
      "content": "This trail keeps two things visible at once: the local substrate's claim that meaning-weighted routes matter, and the counterclaim that shortest paths are enough.\n\nThe mounted lineage pack adds a second kind of evidence. It contributes people, works, events, and disputed-identity concepts without being absorbed into the local namespace. XanaNode can then compare the routes, preserve the disagreement, and show whether a concept is better explained by one path, another path, or the tension between them.",
      "html": "",
      "url": "/trail/federated-disagreement-health-trail/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [
        "semantic-route-health",
        "claim-graph-connectivity-is-not-semantic-health",
        "claim-shortest-paths-are-enough",
        "claim-federation-preserves-disagreement-as-health-signal",
        "federated-knowledge-substrates",
        "merge-validation",
        "xananode.lineage:concept/conflict-disputed-identity",
        "xananode.lineage:trail/lost-lineage-intertwingled-trail"
      ],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "branching-orientation-trail",
      "protocol_id": "xananode.com:trail/branching-orientation-trail",
      "title": "Branching Orientation Trail",
      "type": "trail",
      "facets": [],
      "section": "trails",
      "importance": 5,
      "summary": "A choose-your-path trail used to test mobile-friendly branch choices in guided tours.",
      "content": "This trail deliberately branches after XanaNode so the viewer can test a guided choose-your-path experience that returns either to Start Here or onward into a deeper protocol path.\n\n{{< node ref=\"start-here\" >}}\n{{< node ref=\"xananode\" >}}",
      "html": "",
      "url": "/trail/branching-orientation-trail/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [
        "start-here",
        "xananode"
      ],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "static-publishing",
      "protocol_id": "xananode.com:technology/static-publishing",
      "title": "Static Publishing",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "Publishing files that can be hosted without a dynamic application server.",
      "content": "Static publishing makes a substrate easy to host, mirror, archive, and inspect.",
      "html": "",
      "url": "/technology/static-publishing/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "python",
      "protocol_id": "xananode.com:technology/python",
      "title": "Python",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 4,
      "summary": "The programming language used by the protocol repository validator.",
      "content": "Python supports the protocol repository's schema validation workflow.",
      "html": "",
      "url": "/technology/python/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "nodejs",
      "protocol_id": "xananode.com:technology/nodejs",
      "title": "Node.js",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 4,
      "summary": "The JavaScript runtime used by XanaNode build and validation tooling.",
      "content": "Node.js runs the JavaScript build scripts that prepare XanaNode Hugo sites and the Core SDK tooling.",
      "html": "",
      "url": "/technology/nodejs/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "hugo",
      "protocol_id": "xananode.com:technology/hugo",
      "title": "Hugo",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "A static site generator used to publish XanaNode substrates as public websites.",
      "content": "Hugo provides the static publishing layer for XanaNode sites.",
      "html": "",
      "url": "/technology/hugo/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "github",
      "protocol_id": "xananode.com:technology/github",
      "title": "GitHub",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 4,
      "summary": "A source hosting and collaboration platform used by the public XanaNode repositories.",
      "content": "GitHub hosts the public XanaNode repositories, issues, collaboration surfaces, and support links represented in this substrate.",
      "html": "",
      "url": "/technology/github/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "git",
      "protocol_id": "xananode.com:technology/git",
      "title": "Git",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 5,
      "summary": "The distributed version control system used for XanaNode repository history, review, and synchronization.",
      "content": "Git provides the versioned repository layer underneath XanaNode substrates, packs, review, and deployment workflows.",
      "html": "",
      "url": "/technology/git/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "cytoscape-js",
      "protocol_id": "xananode.com:technology/cytoscape-js",
      "title": "Cytoscape.js",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "A JavaScript graph visualization library used by the reference viewer to render nodes and relationships.",
      "content": "Cytoscape.js renders the visible graph. It is a presentation dependency, not the knowledge model itself.",
      "html": "",
      "url": "/technology/cytoscape-js/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode-workspace-repo",
      "protocol_id": "xananode.com:source/xananode-workspace-repo",
      "title": "XanaNode Workspace Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "The workspace orchestration repository for managing multiple local XanaNode substrates, imports, Git state, and build workflows.",
      "content": "The Workspace repository manages multiple substrates and their operational lifecycle: folder layout, imports, Git state, builds, and health checks.",
      "html": "",
      "url": "/source/xananode-workspace-repo/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Workspace",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode-studio-repo",
      "protocol_id": "xananode.com:source/xananode-studio-repo",
      "title": "XanaNode Studio Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "The desktop workbench repository for editing, previewing, validating, and navigating local XanaNode substrates.",
      "content": "The Studio repository provides the local-first desktop workbench for editing nodes, previewing Hugo output, validating substrates, and managing author workflows.",
      "html": "",
      "url": "/source/xananode-studio-repo/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Studio",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode-protocol-repo",
      "protocol_id": "xananode.com:source/xananode-protocol-repo",
      "title": "XanaNode Protocol Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 5,
      "summary": "The canonical XanaNode protocol repository containing schemas, registries, examples, specs, governance, and proposals.",
      "content": "The protocol repository is the source of truth for XanaNode schemas, registries, specs, examples, governance, and proposals.",
      "html": "",
      "url": "/source/xananode-protocol-repo/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/xananode",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode-org-domain",
      "protocol_id": "xananode.com:source/xananode-org-domain",
      "title": "XanaNode.org",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A project-owned alias domain that resolves to the same canonical XanaNode projection as XanaNode.com.",
      "content": "XanaNode.org is a project-owned alias that resolves to the same canonical projection as XanaNode.com.\n\nIt exists so the XanaNode project does not compete with itself in search, linking, or naming.",
      "html": "",
      "url": "/source/xananode-org-domain/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://xananode.org/",
      "license": "",
      "license_url": "",
      "rights_status": "owned",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode-net-domain",
      "protocol_id": "xananode.com:source/xananode-net-domain",
      "title": "XanaNode.net",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A project-owned alias domain that resolves to the same canonical XanaNode projection as XanaNode.com.",
      "content": "XanaNode.net is a project-owned alias that resolves to the same canonical projection as XanaNode.com.\n\nIt exists so the XanaNode project does not compete with itself in search, linking, or naming.",
      "html": "",
      "url": "/source/xananode-net-domain/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://xananode.net/",
      "license": "",
      "license_url": "",
      "rights_status": "owned",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode-hugo-repo",
      "protocol_id": "xananode.com:source/xananode-hugo-repo",
      "title": "XanaNode Hugo Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 5,
      "summary": "The Hugo theme repository that publishes XanaNode substrates as static websites while using Core for protocol validation.",
      "content": "The Hugo repository contains the public-site theme, example substrate, and graph viewer for publishing XanaNode substrates on a static host.",
      "html": "",
      "url": "/source/xananode-hugo-repo/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Hugo",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode-core-sdk-repo",
      "protocol_id": "xananode.com:source/xananode-core-sdk-repo",
      "title": "XanaNode Core SDK Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 5,
      "summary": "The reusable Core SDK repository for building, validating, and exporting XanaNode protocol artifacts across renderers and tools.",
      "content": "The Core SDK is the shared implementation layer for protocol validation, fragment handling, relationship normalization, graph construction, and artifact export.",
      "html": "",
      "url": "/source/xananode-core-sdk-repo/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Core-SDK",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode-com-domain",
      "protocol_id": "xananode.com:source/xananode-com-domain",
      "title": "XanaNode.com",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 5,
      "summary": "The stable long-term public home of the canonical XanaNode projection.",
      "content": "XanaNode.com is the stable long-term public home of the personally authored canonical XanaNode substrate.\n\nIt publishes the project as a navigable knowledge substrate, not only as a conventional website.\n\nXanaNode.org and XanaNode.net are project-owned aliases that resolve to the same canonical projection so the project does not fight itself in search, linking, or identity.",
      "html": "",
      "url": "/source/xananode-com-domain/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://xananode.com/",
      "license": "",
      "license_url": "",
      "rights_status": "owned",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xanadu-document-interconnection",
      "protocol_id": "xananode.com:source/xanadu-document-interconnection",
      "title": "Xanadu: Document Interconnection Enabling Re-use",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 5,
      "summary": "A paper describing Xanadu concepts including reusable media, visible interconnection, and transclusion.",
      "content": "Nelson's work provides a key source layer for transclusion, reusable media, and visible interconnection.",
      "html": "",
      "url": "/source/xanadu-document-interconnection/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://www.xanadu.net/",
      "license": "",
      "license_url": "",
      "rights_status": "copyrighted",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "source-code-link-decay-study",
      "protocol_id": "xananode.com:source/source-code-link-decay-study",
      "title": "9.6 Million Links in Source Code Comments",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A large-scale empirical study of link decay in source-code comments.",
      "content": "This source records empirical evidence that embedded references in digital artifacts can decay or lose context over time.",
      "html": "",
      "url": "/source/source-code-link-decay-study/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://arxiv.org/abs/1901.07440",
      "license": "",
      "license_url": "",
      "rights_status": "open-access",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "software-freedom-conservancy-site",
      "protocol_id": "xananode.com:source/software-freedom-conservancy-site",
      "title": "Software Freedom Conservancy Site",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "The official website for Software Freedom Conservancy.",
      "content": "The Software Freedom Conservancy site documents the nonprofit connected to Git stewardship and trademark governance.",
      "html": "",
      "url": "/source/software-freedom-conservancy-site/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://sfconservancy.org/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "python-official-site",
      "protocol_id": "xananode.com:source/python-official-site",
      "title": "Python Official Site",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "The official website and documentation home for Python.",
      "content": "The Python official site documents the language used by XanaNode Protocol validation tooling.",
      "html": "",
      "url": "/source/python-official-site/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://www.python.org/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "openjs-foundation-site",
      "protocol_id": "xananode.com:source/openjs-foundation-site",
      "title": "OpenJS Foundation Site",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "The official website for the OpenJS Foundation.",
      "content": "The OpenJS Foundation site documents the foundation that supports Node.js.",
      "html": "",
      "url": "/source/openjs-foundation-site/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://openjsf.org/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "nodejs-repository",
      "protocol_id": "xananode.com:source/nodejs-repository",
      "title": "Node.js Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "The public source repository for Node.js.",
      "content": "The Node.js repository records the runtime source, releases, issues, and project history.",
      "html": "",
      "url": "/source/nodejs-repository/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/nodejs/node",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "nodejs-official-site",
      "protocol_id": "xananode.com:source/nodejs-official-site",
      "title": "Node.js Official Site",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "The official website and documentation home for Node.js.",
      "content": "The Node.js official site documents the runtime used by XanaNode's JavaScript tooling.",
      "html": "",
      "url": "/source/nodejs-official-site/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://nodejs.org/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "mother-of-all-demos",
      "protocol_id": "xananode.com:source/mother-of-all-demos",
      "title": "Mother of All Demos",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "Engelbart's demonstration of interactive computing, hypertext navigation, collaboration, and tools for thought.",
      "content": "The demonstration showed computers as tools for augmenting human intelligence and navigating structured knowledge work.",
      "html": "",
      "url": "/source/mother-of-all-demos/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://www.dougengelbart.org/content/view/209/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "hugo-repository",
      "protocol_id": "xananode.com:source/hugo-repository",
      "title": "Hugo Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "The public source repository for Hugo.",
      "content": "The Hugo repository records Hugo source code, releases, issues, and project history.",
      "html": "",
      "url": "/source/hugo-repository/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/gohugoio/hugo",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "hugo-official-site",
      "protocol_id": "xananode.com:source/hugo-official-site",
      "title": "Hugo Official Site",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "The official website and documentation home for Hugo.",
      "content": "The Hugo official site documents the static site generator used by the XanaNode Hugo theme.",
      "html": "",
      "url": "/source/hugo-official-site/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://gohugo.io/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "github-official-site",
      "protocol_id": "xananode.com:source/github-official-site",
      "title": "GitHub Official Site",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "The public website for GitHub.",
      "content": "The GitHub site hosts the public XanaNode repositories and broader software collaboration surface.",
      "html": "",
      "url": "/source/github-official-site/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "github-docs",
      "protocol_id": "xananode.com:source/github-docs",
      "title": "GitHub Docs",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "The official documentation site for GitHub.",
      "content": "GitHub Docs documents the platform behavior around repositories, collaboration, actions, and publishing workflows.",
      "html": "",
      "url": "/source/github-docs/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://docs.github.com/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "git-repository",
      "protocol_id": "xananode.com:source/git-repository",
      "title": "Git Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A public mirror of the Git source repository.",
      "content": "The Git repository records the source and development history for Git.",
      "html": "",
      "url": "/source/git-repository/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/git/git",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "git-official-site",
      "protocol_id": "xananode.com:source/git-official-site",
      "title": "Git Official Site",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "The official website and documentation home for Git.",
      "content": "The Git official site documents the version control system used by XanaNode repositories and federation workflows.",
      "html": "",
      "url": "/source/git-official-site/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://git-scm.com/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "cytoscape-js-repository",
      "protocol_id": "xananode.com:source/cytoscape-js-repository",
      "title": "Cytoscape.js Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "The public source repository for Cytoscape.js.",
      "content": "The Cytoscape.js repository records the library source, releases, issues, and development history.",
      "html": "",
      "url": "/source/cytoscape-js-repository/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/cytoscape/cytoscape.js",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "cytoscape-js-official-site",
      "protocol_id": "xananode.com:source/cytoscape-js-official-site",
      "title": "Cytoscape.js Official Site",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "The official documentation site for Cytoscape.js.",
      "content": "The Cytoscape.js site documents the graph visualization library used by the XanaNode viewer.",
      "html": "",
      "url": "/source/cytoscape-js-official-site/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://js.cytoscape.org/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "cpython-repository",
      "protocol_id": "xananode.com:source/cpython-repository",
      "title": "CPython Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "The public source repository for CPython, the reference Python implementation.",
      "content": "The CPython repository records the reference Python implementation's source, releases, issues, and project history.",
      "html": "",
      "url": "/source/cpython-repository/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/python/cpython",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "as-we-may-think",
      "protocol_id": "xananode.com:source/as-we-may-think",
      "title": "As We May Think",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 5,
      "summary": "Bush's essay proposing associative trails and the Memex as responses to information overload.",
      "content": "Bush argued that the growing record of knowledge required better associative methods for navigation and recall.",
      "html": "",
      "url": "/source/as-we-may-think/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://www.theatlantic.com/magazine/archive/1945/07/as-we-may-think/303881/",
      "license": "",
      "license_url": "",
      "rights_status": "copyrighted",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode-relationship-types",
      "protocol_id": "xananode.com:schema/xananode-relationship-types",
      "title": "XanaNode Relationship Types",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The canonical relationship type registry for XanaNode substrates.",
      "content": "Relationship types describe why nodes are connected.\n\nThe current canonical registry contains 144 typed relationships, including evidence, authorship, lineage, identity, media, trail, governance, transclusion, deep-linking, compatibility, and extension relationships.\n\nExamples include supports, contradicts, explains, derived_from, memorializes, transcludes, and deep_links_to.",
      "html": "",
      "url": "/schema/xananode-relationship-types/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode-node-types",
      "protocol_id": "xananode.com:schema/xananode-node-types",
      "title": "XanaNode Node Types",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The canonical node type registry for XanaNode substrates.",
      "content": "Node types describe what kind of thing a node represents.\n\nThe current canonical registry contains 19 core node types: person, concept, claim, source, essay, observation, media, event, place, organization, project, technology, publication, community, relationship, revision, trail, schema, and fragment.",
      "html": "",
      "url": "/schema/xananode-node-types/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode-core-schema",
      "protocol_id": "xananode.com:schema/xananode-core-schema",
      "title": "XanaNode Core Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The canonical core node and relationship vocabulary used to make independent substrates interoperable.",
      "content": "XanaNode Core is the shared compatibility layer.\n\nA substrate may extend it, but the core gives other tools a stable set of meanings to validate, display, map, and merge.\n\nIn the current protocol, Core includes the xananode-node-types.v0.3.0.json registry, the xananode-relationship-types.v0.4.0.json registry, and JSON Schemas for substrate manifests, node records, relationship lists, namespace records, merge reports, and compatibility reports.",
      "html": "",
      "url": "/schema/xananode-core-schema/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "substrate-relationships-schema",
      "protocol_id": "xananode.com:schema/substrate-relationships-schema",
      "title": "Substrate Relationships Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The JSON Schema that validates the protocol relationship list for a substrate.",
      "content": "This schema validates relationships.json.\n\nIt requires each relationship to have an id, source, target, type, and summary. Optional fields preserve weight, visibility, assertion provenance, confidence, evidence, tumbler address, external-target metadata, and federation metadata.",
      "html": "",
      "url": "/schema/substrate-relationships-schema/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "substrate-node-schema",
      "protocol_id": "xananode.com:schema/substrate-node-schema",
      "title": "Substrate Node Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The JSON Schema that validates machine-readable XanaNode node records.",
      "content": "This schema validates each exported node record.\n\nIt requires a protocol id, title, type, importance, summary, and relationship summaries. It also accepts provenance fields and fragment metadata such as source_node, fragment_id, tumbler, and selector.",
      "html": "",
      "url": "/schema/substrate-node-schema/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "substrate-manifest-schema",
      "protocol_id": "xananode.com:schema/substrate-manifest-schema",
      "title": "Substrate Manifest Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The JSON Schema that validates a XanaNode substrate manifest.",
      "content": "This schema validates substrate.json.\n\nIt checks the substrate identifier, name, namespace, version, optional description, schema version, maintainers, imports, and extension declarations.",
      "html": "",
      "url": "/schema/substrate-manifest-schema/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "namespace-schema",
      "protocol_id": "xananode.com:schema/namespace-schema",
      "title": "Namespace Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for namespace registry entries.",
      "content": "Namespace records help identify who owns a prefix and how it should be interpreted.\n\nThey support registry tooling, extension discovery, and federation checks while allowing unknown namespaces to remain preserved rather than rejected.",
      "html": "",
      "url": "/schema/namespace-schema/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "merge-report-schema",
      "protocol_id": "xananode.com:schema/merge-report-schema",
      "title": "Merge Report Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema that validates merge reports for substrate comparison and federation workflows.",
      "content": "This schema validates the record of a proposed merge or comparison.\n\nIt preserves mappings, conflicts, identity decisions, unresolved questions, and warnings so downstream tools can inspect what happened without treating a comparison as a destructive merge.",
      "html": "",
      "url": "/schema/merge-report-schema/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "compatibility-report-schema",
      "protocol_id": "xananode.com:schema/compatibility-report-schema",
      "title": "Compatibility Report Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema that validates compatibility reports between tools and substrates.",
      "content": "This schema validates reports about what one implementation can safely understand.\n\nThose reports let a tool say more than pass or fail. They record the achieved compatibility level, recognized schemas, unsupported extensions, warnings, and blocking issues.",
      "html": "",
      "url": "/schema/compatibility-report-schema/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode-hugo-theme",
      "protocol_id": "xananode.com:project/xananode-hugo-theme",
      "title": "XanaNode Hugo Theme",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 4,
      "summary": "A Hugo theme that publishes XanaNode substrates as readable pages and a navigable graph.",
      "content": "The Hugo theme is not XanaNode itself.\n\nIt turns substrate nodes, relationships, media, and trails into a readable public site with a graph beside the prose.",
      "html": "",
      "url": "/project/xananode-hugo-theme/",
      "primary_media": "xananode.com:media/xananode-icon",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "project-xanadu",
      "protocol_id": "xananode.com:project/project-xanadu",
      "title": "Project Xanadu",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 5,
      "summary": "Ted Nelson's long-running hypertext project focused on deep linking, transclusion, versioning, and visible interconnection.",
      "content": "Project Xanadu is the clearest historical predecessor for persistent transclusion, deep linking, and relationship-preserving media.",
      "html": "",
      "url": "/project/project-xanadu/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "nls",
      "protocol_id": "xananode.com:project/nls",
      "title": "NLS",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 4,
      "summary": "Douglas Engelbart's oN-Line System, an early interactive computing environment for augmenting human intellect.",
      "content": "NLS demonstrated interactive navigation, collaborative editing, and computer-supported knowledge work decades before those ideas became common.",
      "html": "",
      "url": "/project/nls/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "memex",
      "protocol_id": "xananode.com:project/memex",
      "title": "Memex",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 5,
      "summary": "Vannevar Bush's proposed associative memory device for navigating trails through recorded knowledge.",
      "content": "The Memex is an ancestor concept for associative trails and human-centered knowledge navigation.",
      "html": "",
      "url": "/project/memex/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "vannevar-bush",
      "protocol_id": "xananode.com:person/vannevar-bush",
      "title": "Vannevar Bush",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 5,
      "summary": "Engineer and science administrator whose Memex proposal described associative trails as a response to information overload.",
      "content": "Vannevar Bush framed the problem as one of navigation through a growing record of knowledge.",
      "html": "",
      "url": "/person/vannevar-bush/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "ted-nelson",
      "protocol_id": "xananode.com:person/ted-nelson",
      "title": "Ted Nelson",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 5,
      "summary": "Hypertext theorist and founder of Project Xanadu, associated with transclusion, visible interconnection, and nonsequential writing.",
      "content": "Ted Nelson argued that documents were the wrong primitive and that systems should preserve reusable, visibly connected media.",
      "html": "",
      "url": "/person/ted-nelson/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "douglas-engelbart",
      "protocol_id": "xananode.com:person/douglas-engelbart",
      "title": "Douglas Engelbart",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 5,
      "summary": "Computer pioneer focused on augmenting human intellect through interactive computing.",
      "content": "Engelbart treated computers as tools for increasing human ability to reason, collaborate, and navigate complex problems.",
      "html": "",
      "url": "/person/douglas-engelbart/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "software-freedom-conservancy",
      "protocol_id": "xananode.com:organization/software-freedom-conservancy",
      "title": "Software Freedom Conservancy",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 3,
      "summary": "A nonprofit home for free and open-source software projects.",
      "content": "Software Freedom Conservancy is connected to Git stewardship and trademark governance.",
      "html": "",
      "url": "/organization/software-freedom-conservancy/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://sfconservancy.org/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "python-software-foundation",
      "protocol_id": "xananode.com:organization/python-software-foundation",
      "title": "Python Software Foundation",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 3,
      "summary": "The nonprofit foundation that supports the Python programming language and community.",
      "content": "The Python Software Foundation supports Python, which XanaNode Protocol uses for its repository validator.",
      "html": "",
      "url": "/organization/python-software-foundation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://www.python.org/psf/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "openjs-foundation",
      "protocol_id": "xananode.com:organization/openjs-foundation",
      "title": "OpenJS Foundation",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 3,
      "summary": "A foundation supporting JavaScript and web ecosystem projects, including Node.js.",
      "content": "The OpenJS Foundation supports Node.js and other JavaScript ecosystem projects used around the XanaNode build workflow.",
      "html": "",
      "url": "/organization/openjs-foundation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://openjsf.org/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "hugo-project",
      "protocol_id": "xananode.com:organization/hugo-project",
      "title": "Hugo Project",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 3,
      "summary": "The open-source project community that maintains Hugo.",
      "content": "The Hugo Project maintains the Hugo static site generator used by the XanaNode public-site workflow.",
      "html": "",
      "url": "/organization/hugo-project/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "github-organization",
      "protocol_id": "xananode.com:organization/github-organization",
      "title": "GitHub",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 3,
      "summary": "The software collaboration platform where the public XanaNode repositories are hosted.",
      "content": "GitHub hosts the public XanaNode repositories and exposes the repository URLs used as source nodes in this substrate.",
      "html": "",
      "url": "/organization/github-organization/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "cytoscape-consortium",
      "protocol_id": "xananode.com:organization/cytoscape-consortium",
      "title": "Cytoscape Consortium",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 3,
      "summary": "The open-source community around Cytoscape and Cytoscape.js.",
      "content": "The Cytoscape community provides the graph visualization project that XanaNode Hugo uses for its read-only 2D graph projection.",
      "html": "",
      "url": "/organization/cytoscape-consortium/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "link-rot",
      "protocol_id": "xananode.com:observation/link-rot",
      "title": "Link Rot",
      "type": "observation",
      "facets": [],
      "section": "observations",
      "importance": 4,
      "summary": "A failure mode where references embedded in digital artifacts decay, move, disappear, or lose context over time.",
      "content": "Link rot shows why ordinary document-embedded references are fragile.\n\nThe target may disappear, move, change meaning, or lose its surrounding context.",
      "html": "",
      "url": "/observation/link-rot/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode-icon",
      "protocol_id": "xananode.com:media/xananode-icon",
      "title": "XanaNode Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 5,
      "summary": "The abstract X-shaped network icon used as the visual mark for the XanaNode protocol family.",
      "content": "This icon is the visual mark for the XanaNode theme.\n\r\nThe crossing lines and central node are meant to suggest typed relationships, visible lineage, and a substrate whose meaning comes from the connections between things rather than from isolated documents.",
      "html": "",
      "url": "/media/xananode-icon/",
      "primary_media": "",
      "media_type": "image/svg+xml",
      "file": "/xananode-icon.svg",
      "alt": "An abstract X-shaped network logo with a central node and four outer nodes connected by blue and orange relationship lines.",
      "caption": "",
      "creator": "Christian Siefen",
      "created_date": "2026-06-16T00:00:00.000Z",
      "source_name": "XanaNode protocol branding asset",
      "source_url": "https://xananode.com/xananode-icon.svg",
      "license": "MIT",
      "license_url": "/LICENSE",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "what-is-xananode",
      "protocol_id": "xananode.com:essay/what-is-xananode",
      "title": "What Is XanaNode?",
      "type": "essay",
      "facets": [],
      "section": "essays",
      "importance": 5,
      "summary": "XanaNode is a protocol for interoperable knowledge substrates, not merely a graph viewer or static site theme.",
      "content": "XanaNode is best understood in layers.\n\nThe ontology defines what kinds of things can be represented.\n\nThe relationship vocabulary defines why those things are connected.\n\nA substrate is an independently authored graph using that vocabulary.\n\nProtocol artifacts make that graph portable: substrate.json identifies the substrate, node records describe addressable objects, relationships.json preserves typed edges, schemas validate the artifacts, and reports explain compatibility or merge decisions.\n\nA renderer, such as this Hugo theme, is one way to publish and navigate a substrate. It is not the protocol itself.\n\nThe larger goal is federation: many independently moderated substrates that can still interoperate because they declare their schemas and relationships clearly.",
      "html": "",
      "url": "/essay/what-is-xananode/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "start-here",
      "protocol_id": "xananode.com:essay/start-here",
      "title": "Start Here",
      "type": "essay",
      "facets": [],
      "section": "essays",
      "importance": 5,
      "summary": "The canonical starting essay for the XanaNode example substrate.",
      "content": "XanaNode begins with a simple claim: civilization is good at publishing information and bad at preserving the relationships that make information understandable.\n\nA page can say something. A graph can show where that statement came from, what supports it, what challenges it, what it depends on, and how it changed.\n\nThis substrate explains XanaNode using XanaNode itself. Each page is a node, and the graph around it carries the claims, sources, lineage, and relationships that make the page understandable.\n\nFollow the core trail from the problem of isolated documents, through typed relationships, provenance, transclusion, namespacing, merge validation, and federation.\n\nThe broader lineage passes through Douglas Adams, Hyperland, TED2, Brown, Intermedia, HyperCard, and parallel hypertext systems before arriving at the web we inherited.\n\nThen follow the protocol artifacts trail to see the manifest, node records, relationship list, schemas, registries, extension examples, reports, and governance rules that make federation concrete.",
      "html": "",
      "url": "/essay/start-here/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode",
      "protocol_id": "xananode.com:concept/xananode",
      "title": "XanaNode",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A protocol for interoperable, independently authored knowledge substrates that preserve relationships, provenance, lineage, disagreement, and addressable fragments.",
      "content": "XanaNode is a protocol, ontology, and publishing architecture for interoperable knowledge substrates.\n\nIt treats relationships as first-class structures, not decoration around documents. Claims, sources, people, events, media, trails, schemas, fragments, and revisions become addressable nodes connected by typed relationships.\n\nThe core schema gives independently authored substrates enough shared meaning to validate, compare, merge, federate, or analyze them without requiring a single central source of truth.",
      "html": "",
      "url": "/concept/xananode/",
      "primary_media": "xananode.com:media/xananode-icon",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "unlabeled-hyperlink",
      "protocol_id": "xananode.com:concept/unlabeled-hyperlink",
      "title": "Unlabeled Hyperlink",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 3,
      "summary": "A link that connects two resources without preserving why the connection matters.",
      "content": "The web hyperlink is powerful because it is simple. It spread because it was easy.\n\nIts weakness is that it usually does not say whether the target supports, contradicts, defines, documents, quotes, explains, or merely mentions the source.",
      "html": "",
      "url": "/concept/unlabeled-hyperlink/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "typed-relationships",
      "protocol_id": "xananode.com:concept/typed-relationships",
      "title": "Typed Relationships",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "Explicit relationship meanings that explain why two nodes are connected.",
      "content": "A normal hyperlink says that two things are connected.\n\nA typed relationship says how they are connected.\n\nThat difference matters. supports, contradicts, explains, derived_from, memorializes, transcludes, and deep_links_to carry different meanings and should not be flattened into generic relatedness.",
      "html": "",
      "url": "/concept/typed-relationships/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "tumbler-addressing",
      "protocol_id": "xananode.com:concept/tumbler-addressing",
      "title": "Tumbler Addressing",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "Persistent, location-independent addressing for nodes, relationships, revisions, and fragments inside a substrate.",
      "content": "Tumbler addressing keeps content addressable when files move, URLs change, or layouts are rebuilt.\n\nXanaNode uses stable node identifiers and stable fragment identifiers for deep linking and transclusion.\n\nThe protocol-level address profile uses namespaced ids such as example.minimal:source/as-we-may-think#fragment/0004 so fragments can remain identifiable across renderers and rebuilds.\n\nThis page resolves a local stable fragment. The shortcode below points at fragment 0004 inside the as-we-may-think source node:\n\n{{< xana ref=\"as-we-may-think@v1/0004\" label=\"Tumbler-addressed fragment\" >}}\n\nIf the source file moves or the page layout changes, the reference still names the logical node, version, and fragment id rather than a fragile screen location.",
      "html": "",
      "url": "/concept/tumbler-addressing/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "transclusion",
      "protocol_id": "xananode.com:concept/transclusion",
      "title": "Transclusion",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "Including a specific versioned fragment by reference rather than copying it, preserving identity, attribution, and revision lineage.",
      "content": "Transclusion includes a source fragment by reference instead of turning it into an anonymous copy.\n\nIn this XanaNode substrate, a transclusion points to a stable fragment id inside a versioned source node.\n\nThe rendered passage keeps its source identity, selector metadata, attribution path, and protocol tumbler address.\n\nThis page includes fragment 0001 from the Xanadu source node:\n\n{{< xana ref=\"xanadu-document-interconnection@v1/0001\" label=\"Transcluded source fragment\" >}}\n\nThe block above is backed by xanadu-document-interconnection@v1/0001, which resolves to the protocol address xananode.example:source/xanadu-document-interconnection#fragment/0001.",
      "html": "",
      "url": "/concept/transclusion/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "substrate-relationship-list",
      "protocol_id": "xananode.com:concept/substrate-relationship-list",
      "title": "Substrate Relationship List",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "The protocol-level relationship file containing typed edges with stable ids, source and target ids, summaries, visibility, weights, and assertion provenance.",
      "content": "relationships.json is the edge list for a substrate.\n\nEach relationship has its own id, source, target, type, and summary. It can also carry weight, visibility, assertion provenance, confidence, evidence, federation metadata, and tumbler references.\n\nA relationship list can be authored directly, imported from packs, or derived from structured content such as primary media links, trail membership, and stable transclusion references.",
      "html": "",
      "url": "/concept/substrate-relationship-list/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "substrate-node-record",
      "protocol_id": "xananode.com:concept/substrate-node-record",
      "title": "Substrate Node Record",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A JSON representation of a node with a protocol identifier, type, summary, importance, provenance fields, and incoming or outgoing relationship summaries.",
      "content": "A node record is the machine-readable counterpart to a human-readable page.\n\nIt preserves the protocol id, title, type, importance, summary, provenance fields, and incoming or outgoing relationship summaries needed for tools to traverse the substrate without scraping HTML.\n\nAddressable fragments can also be published as protocol fragment node records with source_node, fragment_id, tumbler, and selector metadata.",
      "html": "",
      "url": "/concept/substrate-node-record/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "substrate-manifest",
      "protocol_id": "xananode.com:concept/substrate-manifest",
      "title": "Substrate Manifest",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "The root metadata file that identifies a substrate, its namespace, version, schema version, imports, maintainers, and extension declarations.",
      "content": "substrate.json is the first file another tool should read.\n\nIt identifies the substrate, namespace, substrate version, targeted core schema version, imports, maintainers, and extension declarations.\n\nThis theme generates substrate.json during preparation so the human site and machine-readable substrate stay aligned.",
      "html": "",
      "url": "/concept/substrate-manifest/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "single-source-of-truth",
      "protocol_id": "xananode.com:concept/single-source-of-truth",
      "title": "Single Source of Truth",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "A centralized model where one canonical location or authority controls what is treated as valid.",
      "content": "Single-source-of-truth systems are useful when consensus, control, and simplicity matter.\n\nThey become fragile when knowledge is disputed, partial, culturally specific, politically sensitive, or evolving.\n\nXanaNode favors interoperable sources of context over one enforced source of truth.",
      "html": "",
      "url": "/concept/single-source-of-truth/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "semantic-route-health",
      "protocol_id": "xananode.com:concept/semantic-route-health",
      "title": "Semantic Route Health",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A concept-health diagnostic that asks whether a node can explain its origins, influences, evidence, disagreement, revisions, examples, and consequences as coherent semantic paths.",
      "content": "Semantic route health asks whether a concept can tell the story it claims to know.\n\nThat is different from asking whether the graph is connected. A path can be valid and still miss the meaning. It may pass through generic bridge nodes, overuse weak relationships, skip obvious works, or route around the evidence that actually matters.\n\nA healthy concept can trace its origins, influences, sources, counterclaims, revisions, examples, consequences, dependencies, authorship, disputes, and cross-substrate identity. The result should be readable as a short semantic story, not just a list of hops.\n\nIn this substrate, Douglas Adams is a useful test case because the broad lineage pack connects him to Hyperland, Dirk Gently's Holistic Detective Agency, Vannevar Bush, Memex, Ted Nelson, Project Xanadu, transclusion, Douglas Engelbart, and XanaNode.\n\nIf the path from Adams to XanaNode exists but avoids Hyperland, Xanadu, transclusion, or augmentation, the substrate is technically connected but narratively weak. That weakness is not a bug in the graph viewer. It is a sign that the substrate needs better claims, relationship types, weights, evidence, or curated trails.\n\nSemantic route health is a",
      "html": "",
      "url": "/concept/semantic-route-health/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "schema-extension",
      "protocol_id": "xananode.com:concept/schema-extension",
      "title": "Schema Extension",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "The ability for a substrate to add custom node or relationship types while remaining compatible with XanaNode Core.",
      "content": "XanaNode Core is intentionally shared, but it is not the only vocabulary a substrate can use.\n\nThe core schema provides shared interoperability. Extension schemas allow local domains to define additional meanings without breaking the whole system.\n\nA custom type is valid when it is namespaced, described, versioned, machine-readable, and preserved even by tools that do not understand it.\n\nThe custom extension substrate example shows this in practice: a local domain can define additional types while still publishing the core manifest, node, relationship, and schema files expected by XanaNode tools.",
      "html": "",
      "url": "/concept/schema-extension/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "review-suggestions",
      "protocol_id": "xananode.com:concept/review-suggestions",
      "title": "Review Suggestions",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "Generated, user-approved suggestions for autolinking node titles, aliases, repeated fragments, and imported substrate changes without rewriting content automatically.",
      "content": "The suggestion scanner looks for existing node titles and aliases in Markdown content, plus repeated fragment text that could become a transclusion.\n\nReview suggestions are invitations, not automatic edits. The review queue lets an author decide which ordinary links, transclusions, merge candidates, or imported relationships should become part of the substrate.\n\n{{< review-suggestions >}}",
      "html": "",
      "url": "/concept/review-suggestions/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "provenance",
      "protocol_id": "xananode.com:concept/provenance",
      "title": "Provenance",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "The visible lineage of where information came from, how it changed, who asserted it, and what evidence it depends on.",
      "content": "Provenance is not decorative metadata. It is part of meaning.\n\nA claim without provenance may still be useful, but its status is different from a claim tied to sources, authorship, revisions, and evidence.",
      "html": "",
      "url": "/concept/provenance/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "protocol-artifacts",
      "protocol_id": "xananode.com:concept/protocol-artifacts",
      "title": "Protocol Artifacts",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "The machine-readable files and reports that let a XanaNode substrate be validated, compared, merged, and federated.",
      "content": "The protocol is not only a set of ideas. It is a set of publishable artifacts.\n\nA published substrate can expose those artifacts as static JSON: substrate.json, relationships.json, one JSON record per node, schema files, fragment data, and pending review suggestions.\n\nHuman pages make the substrate readable. Protocol artifacts make it inspectable, validatable, comparable, and federatable by other tools.",
      "html": "",
      "url": "/concept/protocol-artifacts/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "namespacing",
      "protocol_id": "xananode.com:concept/namespacing",
      "title": "Namespacing",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A way to identify which substrate or schema owns a node type, relationship type, node, or fragment.",
      "content": "Namespacing prevents independent substrates and extension vocabularies from colliding.\n\nThe core namespace is xananode. A substrate can use its own namespace for local nodes and extension types, such as example.museum:artifact or example.researcher_a:concept/knowledge-substrate.\n\nUnknown namespaced types are not invalid knowledge. They are declared extensions that can be displayed, preserved, mapped, or quarantined until another system understands them.",
      "html": "",
      "url": "/concept/namespacing/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "namespace-registry",
      "protocol_id": "xananode.com:concept/namespace-registry",
      "title": "Namespace Registry",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "A registry of known namespace identifiers used to avoid collisions and help tools recognize who owns a substrate, schema, or extension vocabulary.",
      "content": "The namespace registry records known namespace ids and their owners.\n\nIt does not make every other namespace invalid. It helps tools distinguish recognized namespaces from private, experimental, or not-yet-registered ones while still preserving unknown data.",
      "html": "",
      "url": "/concept/namespace-registry/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "moderation-model",
      "protocol_id": "xananode.com:concept/moderation-model",
      "title": "Moderation Model",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "The governance model that lets each substrate decide its own trust, inclusion, review, and publication rules.",
      "content": "XanaNode does not require one global moderation authority.\n\nEach substrate can decide what it publishes, imports, hides, rejects, or marks as disputed. Federation works because those decisions are visible rather than silently normalized away.",
      "html": "",
      "url": "/concept/moderation-model/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "merge-validation",
      "protocol_id": "xananode.com:concept/merge-validation",
      "title": "Merge Validation",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "The process of safely combining or comparing substrates without destroying authorship, provenance, disagreement, or local moderation.",
      "content": "Merge validation is not deduplication.\n\nA merge-safe system does not automatically collapse two nodes with similar titles into one truth. It compares identity, provenance, source lineage, schema compatibility, and relationship meaning.\n\nThe goal is to preserve both substrates while making their overlaps and differences navigable.\n\nCompatibility reports explain whether two substrates can be compared safely. Merge reports preserve the proposed mappings, conflicts, unresolved issues, and identity decisions produced by that comparison.",
      "html": "",
      "url": "/concept/merge-validation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "merge-report",
      "protocol_id": "xananode.com:concept/merge-report",
      "title": "Merge Report",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A report that explains proposed mappings, conflicts, identity decisions, preserved disagreements, and unresolved issues when substrates are compared or merged.",
      "content": "A merge report is not a command to flatten two substrates into one truth.\n\nIt is an audit trail for a comparison. It preserves proposed identity matches, conflicts, unresolved decisions, warnings, and the reasoning behind mappings so disagreement remains navigable after analysis.\n\nThe canonical federation example uses a merge report to keep two overlapping concepts distinct while still recording their possible relationship.",
      "html": "",
      "url": "/concept/merge-report/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "known-implementations-registry",
      "protocol_id": "xananode.com:concept/known-implementations-registry",
      "title": "Known Implementations Registry",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "A registry of tools, themes, validators, renderers, and substrates that claim some level of XanaNode compatibility.",
      "content": "The known implementations registry is a discovery aid for the ecosystem.\n\nIt lists tools, themes, validators, renderers, and example substrates that claim a level of XanaNode compatibility.\n\nThe registry does not replace validation. It gives implementers real targets to inspect, compare, and test against.",
      "html": "",
      "url": "/concept/known-implementations-registry/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "knowledge-substrate",
      "protocol_id": "xananode.com:concept/knowledge-substrate",
      "title": "Knowledge Substrate",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "The structure that determines how information relates, persists, evolves, and can be navigated as knowledge.",
      "content": "A knowledge substrate is not the information itself. It is the structure that lets information remain understandable across time.\n\nThe same facts arranged as isolated documents, unlabeled hyperlinks, or typed relationships produce different knowledge capabilities. XanaNode makes that structure explicit.",
      "html": "",
      "url": "/concept/knowledge-substrate/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "independent-moderation",
      "protocol_id": "xananode.com:concept/independent-moderation",
      "title": "Independent Moderation",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "The principle that each substrate may govern its own content while still remaining interoperable with others.",
      "content": "Independent moderation means each substrate controls what it accepts, rejects, disputes, hides, deprecates, or marks as uncertain.\n\nFederation does not require one moderation team to control validity for everyone. Local decisions remain visible as provenance, confidence, claims, counterclaims, evidence, and mappings across substrates.",
      "html": "",
      "url": "/concept/independent-moderation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "fragment-node",
      "protocol_id": "xananode.com:concept/fragment-node",
      "title": "Fragment Node",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "A node representing a stable addressable portion of another source, publication, media object, or node.",
      "content": "Fragment nodes represent stable addressable parts of larger objects.\n\nInstead of pointing only to a whole source, a fragment carries its own id, selector metadata, tumbler address, and relationship history.\n\nFor example, this concept cites a specific fragment of the Mother of All Demos source node:\n\n{{< xana ref=\"mother-of-all-demos@v1/0001\" label=\"Fragment node example\" >}}\n\nThat fragment is not copied into this page. It is rendered from the source node's authored stable fragment map.",
      "html": "",
      "url": "/concept/fragment-node/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "federation-rules",
      "protocol_id": "xananode.com:concept/federation-rules",
      "title": "Federation Rules",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "The rules for exchanging, comparing, and preserving independently governed substrates without collapsing them into one authority.",
      "content": "Federation starts from substrate sovereignty.\n\nAnother substrate may import, map, compare, or reject data, but it must not silently overwrite provenance, collapse disagreement, or erase local moderation decisions.\n\nThe canonical rule is simple: merge by adding structure, not by destroying context.",
      "html": "",
      "url": "/concept/federation-rules/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "federation-example",
      "protocol_id": "xananode.com:concept/federation-example",
      "title": "Federation Example",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A protocol example showing two independently authored substrates being compared through compatibility and merge reports.",
      "content": "The canonical federation example makes the protocol concrete.\n\nIt compares two independently authored substrates: one models a knowledge substrate, the other models a memory substrate. Each keeps its own namespace and local records.\n\nThe compatibility report records how much interoperability is safe. The merge report records mappings and the decision not to collapse overlapping concepts into one forced truth.",
      "html": "",
      "url": "/concept/federation-example/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "federated-knowledge-substrates",
      "protocol_id": "xananode.com:concept/federated-knowledge-substrates",
      "title": "Federated Knowledge Substrates",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "Independently authored XanaNode substrates that can interoperate, merge, compare, and preserve disagreement without a central authority.",
      "content": "Federation connects independently authored substrates without making them surrender ownership.\n\nEach person, lab, community, archive, or institution keeps its own namespace, governance, and provenance. Those substrates do not need to agree. They need to describe nodes, relationships, schemas, and provenance clearly enough that another tool can ingest, map, compare, or ignore them safely.\n\nFederation turns isolated knowledge graphs into comparable civilizational memory.\n\nIn protocol terms, federation depends on manifests, namespaces, compatibility reports, merge reports, and governance rules that prevent one substrate from silently overwriting another.\n\nIt also makes concept health testable across authored boundaries. A mounted pack can strengthen a trail, reveal a missing bridge, or preserve a disagreement that should not be flattened.",
      "html": "",
      "url": "/concept/federated-knowledge-substrates/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "dispute-resolution",
      "protocol_id": "xananode.com:concept/dispute-resolution",
      "title": "Dispute Resolution",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "A governance process for preserving contested claims, identity matches, relationships, and moderation decisions without pretending disagreement has disappeared.",
      "content": "Disputes are knowledge, not cleanup errors.\n\nXanaNode preserves disagreement about claims, relationships, identity mappings, and merge decisions. The contested state remains traceable through provenance, evidence, counterevidence, and explicit relationship types such as contradicts, disputes, possible_match, and disputed_identity.\n\nThe goal is navigable uncertainty, not instant consensus.",
      "html": "",
      "url": "/concept/dispute-resolution/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "deep-linking",
      "protocol_id": "xananode.com:concept/deep-linking",
      "title": "Deep Linking",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "Pointing to a specific addressable fragment rather than only to a whole document or node.",
      "content": "Deep linking points at an addressable part of a node rather than only at a whole page.\n\nIn XanaNode, stable fragment ids and tumbler addresses give those links protocol identity. A deep link can identify the source node, version, and fragment being discussed or transcluded.\n\nThat is the practical bridge between ordinary hyperlinks and the provenance-preserving reuse imagined by Xanadu.",
      "html": "",
      "url": "/concept/deep-linking/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "custom-extension-substrate",
      "protocol_id": "xananode.com:concept/custom-extension-substrate",
      "title": "Custom Extension Substrate",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "An example substrate that defines namespaced domain-specific node and relationship types while preserving compatibility with XanaNode Core.",
      "content": "The custom extension substrate example shows local vocabulary coexisting with XanaNode Core.\n\nThe canonical example defines a museum namespace with a custom artifact node type and custom curatorial relationship types.\n\nTools that do not understand those custom types still preserve them as declared, namespaced, versioned extensions instead of discarding them.",
      "html": "",
      "url": "/concept/custom-extension-substrate/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "compatibility-report",
      "protocol_id": "xananode.com:concept/compatibility-report",
      "title": "Compatibility Report",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A report that records how one substrate or tool understands another substrate, including compatibility level, supported schemas, warnings, and blocking issues.",
      "content": "A compatibility report records how one implementation understands a substrate.\n\nIt names the compatibility level reached, the schema versions recognized, unsupported extensions, warnings, and any blocking issues.\n\nThe canonical protocol example publishes a compatibility report for its federation example, and this Hugo implementation publishes the schema needed to validate that report shape.",
      "html": "",
      "url": "/concept/compatibility-report/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "compatibility-levels",
      "protocol_id": "xananode.com:concept/compatibility-levels",
      "title": "Compatibility Levels",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A staged way to describe how much of a substrate another implementation can recognize, validate, extend, merge, or federate.",
      "content": "Compatibility is not all-or-nothing.\n\nThe protocol describes six practical levels: opaque storage, manifest recognition, core validation, declared extensions, merge candidacy, and federation readiness.\n\nThe point is preservation. A tool can keep data it does not fully understand, report the compatibility level it reached, and avoid pretending that unknown extensions are invalid knowledge.",
      "html": "",
      "url": "/concept/compatibility-levels/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "civilizational-memory",
      "protocol_id": "xananode.com:concept/civilizational-memory",
      "title": "Civilizational Memory",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A long-term, federated memory layer where knowledge remains traceable, disputed, interoperable, and navigable across generations.",
      "content": "Civilizational memory is the long-term horizon for XanaNode.\n\nIt is not one website, database, or moderation team. It is a network of independently authored substrates that preserve lineage, disagreement, evidence, and context while remaining interoperable.\n\nThe protocol pieces in this example are deliberately small, but they point at that larger pattern: locally owned knowledge that can still be compared, mapped, cited, and preserved across systems.",
      "html": "",
      "url": "/concept/civilizational-memory/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "canonical-type-policy",
      "protocol_id": "xananode.com:concept/canonical-type-policy",
      "title": "Canonical Type Policy",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "The governance rule that separates shared core node and relationship types from namespaced extension types.",
      "content": "Canonical types are the shared vocabulary that let independent substrates understand one another.\n\nThe core stays small, stable, and broadly useful. Domain-specific meanings belong in namespaced extension schemas unless they become common enough to justify canonical status.\n\nThis keeps the core interoperable while still letting local substrates model museums, legal records, biology, archives, or other specialized domains precisely.",
      "html": "",
      "url": "/concept/canonical-type-policy/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "claim-substrate-is-structure",
      "protocol_id": "xananode.com:claim/claim-substrate-is-structure",
      "title": "A knowledge substrate is structure, not information",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "A knowledge substrate is not the information itself; it is the structure that determines how information relates, persists, and can be understood.",
      "content": "Most information systems focus on what is stored.\n\nXanaNode focuses on how what is stored relates.",
      "html": "",
      "url": "/claim/claim-substrate-is-structure/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "claim-shortest-paths-are-enough",
      "protocol_id": "xananode.com:claim/claim-shortest-paths-are-enough",
      "title": "Shortest paths are enough",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 2,
      "summary": "A counterclaim that a concept is healthy when the graph can find any short path between important nodes.",
      "content": "This counterclaim treats path length as the main measure of health.\n\nIt is useful because it gives the substrate something explicit to reject. XanaNode should prefer paths that explain why each hop matters, even when a shorter but weaker route is available.",
      "html": "",
      "url": "/claim/claim-shortest-paths-are-enough/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "claim-relationships-preserve-context",
      "protocol_id": "xananode.com:claim/claim-relationships-preserve-context",
      "title": "Typed relationships preserve context that hyperlinks lose",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "Typed relationships preserve why nodes are connected, while ordinary hyperlinks usually preserve only that a connection exists.",
      "content": "A hyperlink can connect a source to a target without saying whether the source cites, defines, contradicts, explains, quotes, or merely mentions the target.\n\nTyped relationships make that missing meaning explicit.",
      "html": "",
      "url": "/claim/claim-relationships-preserve-context/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "claim-merge-without-collapse",
      "protocol_id": "xananode.com:claim/claim-merge-without-collapse",
      "title": "Substrates should merge without collapsing disagreement",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "Federated substrates should preserve authorship, provenance, and disagreement rather than forcing one merged source of truth.",
      "content": "The goal of merging substrates is not to erase differences.\n\nThe goal is to expose correspondences, conflicts, overlaps, and gaps while preserving who asserted what and why.",
      "html": "",
      "url": "/claim/claim-merge-without-collapse/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "claim-healthy-paths-tell-coherent-stories",
      "protocol_id": "xananode.com:claim/claim-healthy-paths-tell-coherent-stories",
      "title": "Healthy paths tell coherent semantic stories",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "A healthy path should be short enough to follow, typed enough to explain each hop, and grounded enough to show why the route matters.",
      "content": "A good semantic path reads like an argument.\n\nDouglas Adams authored Hyperland. Hyperland explains Xanadu and associative media. Project Xanadu defines transclusion. XanaNode preserves transclusion inside typed knowledge substrates.\n\nThe same nodes can be connected other ways, but this route carries the lineage the substrate is trying to preserve.",
      "html": "",
      "url": "/claim/claim-healthy-paths-tell-coherent-stories/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "claim-graph-connectivity-is-not-semantic-health",
      "protocol_id": "xananode.com:claim/claim-graph-connectivity-is-not-semantic-health",
      "title": "Graph connectivity is not semantic health",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "A graph can connect two nodes while still failing to explain why that connection matters.",
      "content": "Connectivity proves that a route exists.\n\nSemantic health asks whether the route preserves meaning. A path that reaches the right destination through irrelevant bridge nodes may satisfy a graph query while losing the origin, evidence, or lineage that made the route worth following.",
      "html": "",
      "url": "/claim/claim-graph-connectivity-is-not-semantic-health/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "claim-federation-preserves-disagreement-as-health-signal",
      "protocol_id": "xananode.com:claim/claim-federation-preserves-disagreement-as-health-signal",
      "title": "Federation preserves disagreement as a health signal",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 4,
      "summary": "When mounted substrates disagree, the disagreement should remain visible as evidence about the health and shape of a concept.",
      "content": "Federation should not smooth every difference into one answer.\n\nIf two substrates explain a concept through different origins, sources, or consequences, those routes should remain inspectable. The disagreement may reveal a conflict, a missing bridge, or a richer concept than either substrate can show alone.",
      "html": "",
      "url": "/claim/claim-federation-preserves-disagreement-as-health-signal/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "source-creator",
      "protocol_id": "xananode.com:source/source-creator",
      "title": "Creator",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 2,
      "summary": "Christian Siefen's canonical XanaNode website and public project home.",
      "content": "",
      "html": "",
      "url": "/source/source-creator/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "Creator",
      "source_url": "https://xananode.com/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": true,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "source-github",
      "protocol_id": "xananode.com:source/source-github",
      "title": "GitHub",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 2,
      "summary": "XanaNode project repositories and public development activity.",
      "content": "",
      "html": "",
      "url": "/source/source-github/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "GitHub",
      "source_url": "https://github.com/kingc95",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": true,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "source-support",
      "protocol_id": "xananode.com:source/source-support",
      "title": "Support",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 2,
      "summary": "Support the ongoing XanaNode project work.",
      "content": "",
      "html": "",
      "url": "/source/source-support/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "Support",
      "source_url": "https://github.com/sponsors/kingc95",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": true,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "example.merge:concept/non-destructive-merge-review",
      "protocol_id": "example.merge:concept/non-destructive-merge-review",
      "title": "Non-Destructive Merge Review",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "A review state where overlapping nodes are mounted together, compared, and kept distinct until a human approves stronger identity claims.",
      "content": "A review state where overlapping nodes are mounted together, compared, and kept distinct until a human approves stronger identity claims.",
      "html": "<p>A review state where overlapping nodes are mounted together, compared, and kept distinct until a human approves stronger identity claims.</p>",
      "url": "/concept/non-destructive-merge-review/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.merge_concept_non-destructive-merge-review.json"
    },
    {
      "id": "example.merge:trail/federation-review-proof",
      "protocol_id": "example.merge:trail/federation-review-proof",
      "title": "Federation Review Proof",
      "type": "trail",
      "facets": [],
      "section": "trails",
      "importance": 4,
      "summary": "A short trail showing that mounted overlap can stay visible and reviewable without forcing a final merge.",
      "content": "A short trail showing that mounted overlap can stay visible and reviewable without forcing a final merge.",
      "html": "<p>A short trail showing that mounted overlap can stay visible and reviewable without forcing a final merge.</p>",
      "url": "/trail/federation-review-proof/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.merge_trail_federation-review-proof.json"
    },
    {
      "id": "example.minimal:claim/substrate-is-structure",
      "protocol_id": "example.minimal:claim/substrate-is-structure",
      "title": "A knowledge substrate is structure, not just information",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "The same information arranged through different relationships can produce different epistemic capabilities.",
      "content": "The same information arranged through different relationships can produce different epistemic capabilities.",
      "html": "<p>The same information arranged through different relationships can produce different epistemic capabilities.</p>",
      "url": "/claim/substrate-is-structure/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.minimal_claim_substrate-is-structure.json"
    },
    {
      "id": "example.minimal:communication/minimal-substrate-discussion",
      "protocol_id": "example.minimal:communication/minimal-substrate-discussion",
      "title": "Minimal Substrate Discussion",
      "type": "communication",
      "facets": [],
      "section": "communications",
      "importance": 3,
      "summary": "A small example communication showing that questions and responses can be modeled as knowledge flow.",
      "content": "A small example communication showing that questions and responses can be modeled as knowledge flow.",
      "html": "<p>A small example communication showing that questions and responses can be modeled as knowledge flow.</p>",
      "url": "/communication/minimal-substrate-discussion/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.minimal_communication_minimal-substrate-discussion.json"
    },
    {
      "id": "example.minimal:concept/associative-trails",
      "protocol_id": "example.minimal:concept/associative-trails",
      "title": "Associative Trails",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "A way of navigating knowledge by following meaningful associations rather than only linear order or hierarchy.",
      "content": "A way of navigating knowledge by following meaningful associations rather than only linear order or hierarchy.",
      "html": "<p>A way of navigating knowledge by following meaningful associations rather than only linear order or hierarchy.</p>",
      "url": "/concept/associative-trails/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.minimal_concept_associative-trails.json"
    },
    {
      "id": "example.minimal:concept/knowledge-substrate",
      "protocol_id": "example.minimal:concept/knowledge-substrate",
      "title": "Knowledge Substrate",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A structure that determines how information relates, persists, and can be navigated.",
      "content": "A structure that determines how information relates, persists, and can be navigated.",
      "html": "<p>A structure that determines how information relates, persists, and can be navigated.</p>",
      "url": "/concept/knowledge-substrate/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.minimal_concept_knowledge-substrate.json"
    },
    {
      "id": "example.minimal:essay/relationship-navigation-intro",
      "protocol_id": "example.minimal:essay/relationship-navigation-intro",
      "title": "Relationship Navigation Intro",
      "type": "essay",
      "facets": [],
      "section": "essays",
      "importance": 4,
      "summary": "A short example essay that includes an addressable source fragment by reference rather than duplicating it.",
      "content": "A short example essay that includes an addressable source fragment by reference rather than duplicating it.",
      "html": "<p>A short example essay that includes an addressable source fragment by reference rather than duplicating it.</p>",
      "url": "/essay/relationship-navigation-intro/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.minimal_essay_relationship-navigation-intro.json"
    },
    {
      "id": "example.minimal:fragment/as-we-may-think-0004",
      "protocol_id": "example.minimal:fragment/as-we-may-think-0004",
      "title": "As We May Think Fragment 0004",
      "type": "fragment",
      "facets": [],
      "section": "fragments",
      "importance": 4,
      "summary": "An addressable fragment of the source used to demonstrate stable fragment references and transclusion.",
      "content": "An addressable fragment of the source used to demonstrate stable fragment references and transclusion.",
      "html": "<p>An addressable fragment of the source used to demonstrate stable fragment references and transclusion.</p>",
      "url": "/fragment/as-we-may-think-0004/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "copyrighted",
      "tumbler": "example.minimal:source/as-we-may-think@git:8e47e70:examples/minimal-substrate/nodes/source-as-we-may-think.json#fragment/0004@sha256:example-as-we-may-think-fragment-0004",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.minimal_fragment_as-we-may-think-0004.json"
    },
    {
      "id": "example.minimal:knowledge_gap/missing-relationship-evidence",
      "protocol_id": "example.minimal:knowledge_gap/missing-relationship-evidence",
      "title": "Missing Relationship Evidence",
      "type": "knowledge_gap",
      "facets": [],
      "section": "knowledge_gaps",
      "importance": 4,
      "summary": "The substrate should show when a claim needs more source evidence rather than hiding that absence.",
      "content": "The substrate should show when a claim needs more source evidence rather than hiding that absence.",
      "html": "<p>The substrate should show when a claim needs more source evidence rather than hiding that absence.</p>",
      "url": "/knowledge_gap/missing-relationship-evidence/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.minimal_knowledge_gap_missing-relationship-evidence.json"
    },
    {
      "id": "example.minimal:media/xananode-icon",
      "protocol_id": "example.minimal:media/xananode-icon",
      "title": "XanaNode Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 5,
      "summary": "The canonical XanaNode protocol icon used as a portable branding asset.",
      "content": "The canonical XanaNode protocol icon used as a portable branding asset.",
      "html": "<p>The canonical XanaNode protocol icon used as a portable branding asset.</p>",
      "url": "/media/xananode-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "An abstract X-shaped network logo with a central node and blue and orange relationship lines connecting outer nodes.",
      "caption": "XanaNode protocol icon",
      "creator": "Christian Siefen",
      "created_date": "2026-06-16T00:00:00Z",
      "source_name": "XanaNode Protocol",
      "source_url": "https://github.com/kingc95/XanaNode",
      "license": "",
      "license_url": "",
      "rights_status": "trademarked - see TRADEMARK.md for permissions and reuse restrictions",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.minimal_media_xananode-icon.json"
    },
    {
      "id": "example.minimal:person/example-maintainer",
      "protocol_id": "example.minimal:person/example-maintainer",
      "title": "Example Maintainer",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 3,
      "summary": "The local actor responsible for asserting and curating the minimal example substrate.",
      "content": "The local actor responsible for asserting and curating the minimal example substrate.",
      "html": "<p>The local actor responsible for asserting and curating the minimal example substrate.</p>",
      "url": "/person/example-maintainer/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.minimal_person_example-maintainer.json"
    },
    {
      "id": "example.minimal:question/why-relationships-matter",
      "protocol_id": "example.minimal:question/why-relationships-matter",
      "title": "Why do relationships matter?",
      "type": "question",
      "facets": [],
      "section": "questions",
      "importance": 5,
      "summary": "An inquiry into why preserving relationship structure changes what a knowledge system can do.",
      "content": "An inquiry into why preserving relationship structure changes what a knowledge system can do.",
      "html": "<p>An inquiry into why preserving relationship structure changes what a knowledge system can do.</p>",
      "url": "/question/why-relationships-matter/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.minimal_question_why-relationships-matter.json"
    },
    {
      "id": "example.minimal:response/relationships-preserve-context",
      "protocol_id": "example.minimal:response/relationships-preserve-context",
      "title": "Relationships Preserve Context",
      "type": "response",
      "facets": [],
      "section": "responses",
      "importance": 4,
      "summary": "A response that answers the example question by connecting relationship structure to preserved context.",
      "content": "A response that answers the example question by connecting relationship structure to preserved context.",
      "html": "<p>A response that answers the example question by connecting relationship structure to preserved context.</p>",
      "url": "/response/relationships-preserve-context/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.minimal_response_relationships-preserve-context.json"
    },
    {
      "id": "example.minimal:source/as-we-may-think",
      "protocol_id": "example.minimal:source/as-we-may-think",
      "title": "As We May Think",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 5,
      "summary": "Vannevar Bush's 1945 essay describing associative trails and the problem of navigating expanding scientific knowledge.",
      "content": "Vannevar Bush's 1945 essay describing associative trails and the problem of navigating expanding scientific knowledge.",
      "html": "<p>Vannevar Bush&#39;s 1945 essay describing associative trails and the problem of navigating expanding scientific knowledge.</p>",
      "url": "/source/as-we-may-think/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://www.theatlantic.com/magazine/archive/1945/07/as-we-may-think/303881/",
      "license": "",
      "license_url": "",
      "rights_status": "copyrighted",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.minimal_source_as-we-may-think.json"
    },
    {
      "id": "example.minimal:trail/start-here",
      "protocol_id": "example.minimal:trail/start-here",
      "title": "Start Here",
      "type": "trail",
      "facets": [],
      "section": "trails",
      "importance": 5,
      "summary": "A short curated route introducing the substrate through source, claim, supporting context, and concept.",
      "content": "A short curated route introducing the substrate through source, claim, supporting context, and concept.",
      "html": "<p>A short curated route introducing the substrate through source, claim, supporting context, and concept.</p>",
      "url": "/trail/start-here/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.minimal_trail_start-here.json"
    },
    {
      "id": "example.researcher_a:concept/knowledge-substrate",
      "protocol_id": "example.researcher_a:concept/knowledge-substrate",
      "title": "Knowledge Substrate",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "A structure for preserving relationships among knowledge objects.",
      "content": "A structure for preserving relationships among knowledge objects.",
      "html": "<p>A structure for preserving relationships among knowledge objects.</p>",
      "url": "/concept/knowledge-substrate/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.researcher_a_concept_knowledge-substrate.json"
    },
    {
      "id": "example.researcher_a:person/researcher-a",
      "protocol_id": "example.researcher_a:person/researcher-a",
      "title": "Researcher A",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 3,
      "summary": "The local actor responsible for assertions in federation example substrate A.",
      "content": "The local actor responsible for assertions in federation example substrate A.",
      "html": "<p>The local actor responsible for assertions in federation example substrate A.</p>",
      "url": "/person/researcher-a/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.researcher_a_person_researcher-a.json"
    },
    {
      "id": "example.researcher_b:concept/memory-substrate",
      "protocol_id": "example.researcher_b:concept/memory-substrate",
      "title": "Memory Substrate",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "A system for preserving context, lineage, and navigable memory over time.",
      "content": "A system for preserving context, lineage, and navigable memory over time.",
      "html": "<p>A system for preserving context, lineage, and navigable memory over time.</p>",
      "url": "/concept/memory-substrate/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.researcher_b_concept_memory-substrate.json"
    },
    {
      "id": "example.researcher_b:person/researcher-b",
      "protocol_id": "example.researcher_b:person/researcher-b",
      "title": "Researcher B",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 3,
      "summary": "The local actor responsible for assertions in federation example substrate B.",
      "content": "The local actor responsible for assertions in federation example substrate B.",
      "html": "<p>The local actor responsible for assertions in federation example substrate B.</p>",
      "url": "/person/researcher-b/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/example.researcher_b_person_researcher-b.json"
    },
    {
      "id": "xananode.canonical:claim/canonical-assembles-federated-stack-layer-substrates",
      "protocol_id": "xananode.canonical:claim/canonical-assembles-federated-stack-layer-substrates",
      "title": "The canonical substrate assembles federated stack-layer substrates",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "The canonical substrate is no longer only a monolithic description of XanaNode; it explicitly points to the real stack-layer substrate sources that make the system work.",
      "content": "The canonical substrate should teach that the stack is composed, not merely listed. Its project nodes describe the layers, and its federated substrate source nodes point at the real repositories and substrate roots for those layers. That lets people inspect the stack as a working federation of independently authored and versioned parts instead of assuming the canonical bundle is only a flat merge.",
      "html": "<p>The canonical substrate should teach that the stack is composed, not merely listed. Its project nodes describe the layers, and its federated substrate source nodes point at the real repositories and substrate roots for those layers. That lets people inspect the stack as a working federation of independently authored and versioned parts instead of assuming the canonical bundle is only a flat merge.</p>",
      "url": "/claim/canonical-assembles-federated-stack-layer-substrates/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_claim_canonical-assembles-federated-stack-layer-substrates.json"
    },
    {
      "id": "xananode.canonical:claim/canonical-distinguishes-embedded-examples-from-federated-sources",
      "protocol_id": "xananode.canonical:claim/canonical-distinguishes-embedded-examples-from-federated-sources",
      "title": "The canonical substrate distinguishes embedded examples from federated sources",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "Embedded teaching namespaces inside the canonical bundle are different from the real stack-layer substrate sources represented as federation targets.",
      "content": "The canonical bundle contains several kinds of composition at once. Namespaces such as example.minimal, example.researcher_a, and example.researcher_b are embedded inside the bundle for teaching, testing, and portable inspection. By contrast, the Protocol, Core, Workspace, Studio, Mobile, and Hugo substrate entries point to real independently versioned substrate sources. That distinction matters because it tells readers what is bundled here and what exists as its own substrate outside the bundle.",
      "html": "<p>The canonical bundle contains several kinds of composition at once. Namespaces such as example.minimal, example.researcher_a, and example.researcher_b are embedded inside the bundle for teaching, testing, and portable inspection. By contrast, the Protocol, Core, Workspace, Studio, Mobile, and Hugo substrate entries point to real independently versioned substrate sources. That distinction matters because it tells readers what is bundled here and what exists as its own substrate outside the bundle.</p>",
      "url": "/claim/canonical-distinguishes-embedded-examples-from-federated-sources/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_claim_canonical-distinguishes-embedded-examples-from-federated-sources.json"
    },
    {
      "id": "xananode.canonical:claim/copy-paste-breaks-lineage",
      "protocol_id": "xananode.canonical:claim/copy-paste-breaks-lineage",
      "title": "Copy and paste breaks lineage",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "When knowledge is reused by duplication instead of reference, provenance, attribution, surrounding context, and revision history become harder to preserve.",
      "content": "Ordinary reuse usually means making another anonymous copy. Once a quote, summary, screenshot, or excerpt is pasted into a new document, the connection back to the exact source version often becomes social rather than structural.\n\nXanaNode treats that break as a core failure mode. Addressable fragments, typed relationships, and transclusion let a later projection show not only the reused passage, but where it came from, which version it came from, and how it is being used now.",
      "html": "<p>Ordinary reuse usually means making another anonymous copy. Once a quote, summary, screenshot, or excerpt is pasted into a new document, the connection back to the exact source version often becomes social rather than structural.</p>\n<p>XanaNode treats that break as a core failure mode. Addressable fragments, typed relationships, and transclusion let a later projection show not only the reused passage, but where it came from, which version it came from, and how it is being used now.</p>",
      "url": "/claim/copy-paste-breaks-lineage/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_claim_copy-paste-breaks-lineage.json"
    },
    {
      "id": "xananode.canonical:claim/documents-collapse-knowledge-structure",
      "protocol_id": "xananode.canonical:claim/documents-collapse-knowledge-structure",
      "title": "Document boundaries collapse knowledge structure",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "When a document is treated as the main unit of knowledge, many of the relationships that give meaning to the material become implicit, hidden, or lost.",
      "content": "A page, file, note, or database row can store information, but it does not automatically preserve why one idea supports another, where a quote came from, who disagreed, or what later changed. Those relationships usually live in a human reader's head or in conventions that a machine cannot reliably inspect.\n\nThat is why document-centric systems feel good for publication but weak for durable knowledge transfer. The information survives. The structure that made it useful often does not.",
      "html": "<p>A page, file, note, or database row can store information, but it does not automatically preserve why one idea supports another, where a quote came from, who disagreed, or what later changed. Those relationships usually live in a human reader&#39;s head or in conventions that a machine cannot reliably inspect.</p>\n<p>That is why document-centric systems feel good for publication but weak for durable knowledge transfer. The information survives. The structure that made it useful often does not.</p>",
      "url": "/claim/documents-collapse-knowledge-structure/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_claim_documents-collapse-knowledge-structure.json"
    },
    {
      "id": "xananode.canonical:claim/fragments-can-address-ranges-timecodes-and-media-regions",
      "protocol_id": "xananode.canonical:claim/fragments-can-address-ranges-timecodes-and-media-regions",
      "title": "Fragments can address ranges, timecodes, and media regions",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "XanaNode fragments can point to granular spans such as quoted text, word ranges, timecoded audio/video segments, and other media-native chunks, not only paragraph blocks.",
      "content": "The protocol already separates durable addressing from extraction detail. The tumbler identifies the exact fragment and source version. The selector describes how to locate the chunk inside that source version. That lets a fragment represent a quoted sentence, a word or character range, a page region, or a timecoded media segment while preserving one interoperable transclusion model.",
      "html": "<p>The protocol already separates durable addressing from extraction detail. The tumbler identifies the exact fragment and source version. The selector describes how to locate the chunk inside that source version. That lets a fragment represent a quoted sentence, a word or character range, a page region, or a timecoded media segment while preserving one interoperable transclusion model.</p>",
      "url": "/claim/fragments-can-address-ranges-timecodes-and-media-regions/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_claim_fragments-can-address-ranges-timecodes-and-media-regions.json"
    },
    {
      "id": "xananode.canonical:claim/implementations-identify-compatibility",
      "protocol_id": "xananode.canonical:claim/implementations-identify-compatibility",
      "title": "Implementations Identify XanaNode Compatibility",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "Implementations should identify themselves as XanaNode-compatible and reference the canonical specification without implying official ownership.",
      "content": "Implementations should identify themselves as XanaNode-compatible and reference the canonical specification without implying official ownership.",
      "html": "<p>Implementations should identify themselves as XanaNode-compatible and reference the canonical specification without implying official ownership.</p>",
      "url": "/claim/implementations-identify-compatibility/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_claim_implementations-identify-compatibility.json"
    },
    {
      "id": "xananode.canonical:claim/local-first-without-federation-is-not-enough",
      "protocol_id": "xananode.canonical:claim/local-first-without-federation-is-not-enough",
      "title": "Local-first without federation is not enough",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "Owning local files is important, but durable knowledge transfer also requires a shared protocol for portability, identity, raw assets, and federation.",
      "content": "Local-first tools solve a real problem: people should own their data. But ownership alone does not create interoperability. If a tool stores files locally without a strong substrate model for node identity, relationships, fragments, assets, and exchange, the knowledge still tends to stay trapped inside that tool's habits and assumptions.\n\nXanaNode tries to keep the benefits of local-first authorship while adding a protocol layer that allows federation, mounting, merging, projection, and transport without discarding meaning.",
      "html": "<p>Local-first tools solve a real problem: people should own their data. But ownership alone does not create interoperability. If a tool stores files locally without a strong substrate model for node identity, relationships, fragments, assets, and exchange, the knowledge still tends to stay trapped inside that tool&#39;s habits and assumptions.</p>\n<p>XanaNode tries to keep the benefits of local-first authorship while adding a protocol layer that allows federation, mounting, merging, projection, and transport without discarding meaning.</p>",
      "url": "/claim/local-first-without-federation-is-not-enough/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_claim_local-first-without-federation-is-not-enough.json"
    },
    {
      "id": "xananode.canonical:claim/possible-match-preserves-local-identity-until-review",
      "protocol_id": "xananode.canonical:claim/possible-match-preserves-local-identity-until-review",
      "title": "A possible match preserves local identity until review",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "Overlap can be recorded as a possible match while both local concepts remain intact pending human review.",
      "content": "Knowledge Substrate and Memory Substrate are similar enough to map but not safe to collapse automatically. The merge report records a possible match, the compatibility report says the two substrates can be analyzed together, and the diff records the added nodes and relationships. None of those artifacts overwrites either author's local node. That is the intended merge posture.",
      "html": "<p>Knowledge Substrate and Memory Substrate are similar enough to map but not safe to collapse automatically. The merge report records a possible match, the compatibility report says the two substrates can be analyzed together, and the diff records the added nodes and relationships. None of those artifacts overwrites either author&#39;s local node. That is the intended merge posture.</p>",
      "url": "/claim/possible-match-preserves-local-identity-until-review/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_claim_possible-match-preserves-local-identity-until-review.json"
    },
    {
      "id": "xananode.canonical:claim/projections-are-lenses-over-a-stable-substrate",
      "protocol_id": "xananode.canonical:claim/projections-are-lenses-over-a-stable-substrate",
      "title": "Projections are lenses over a stable substrate",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "Studio, Mobile, Hugo, and future tools are projections of the same substrate rather than separate competing sources of truth.",
      "content": "A projection is the interface a person happens to use, not the canonical knowledge itself. The same substrate should be able to appear as a desktop workbench, a mobile capture tool, a static website, a printed booklet, or another compatible interface without rewriting the underlying node identities, relationships, fragments, or media.\n\nThis is why XanaNode separates the substrate from the projection layer. The lens can change. The knowledge should not have to start over.",
      "html": "<p>A projection is the interface a person happens to use, not the canonical knowledge itself. The same substrate should be able to appear as a desktop workbench, a mobile capture tool, a static website, a printed booklet, or another compatible interface without rewriting the underlying node identities, relationships, fragments, or media.</p>\n<p>This is why XanaNode separates the substrate from the projection layer. The lens can change. The knowledge should not have to start over.</p>",
      "url": "/claim/projections-are-lenses-over-a-stable-substrate/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_claim_projections-are-lenses-over-a-stable-substrate.json"
    },
    {
      "id": "xananode.canonical:claim/protocol-docs-licensed-cc-by-4-0",
      "protocol_id": "xananode.canonical:claim/protocol-docs-licensed-cc-by-4-0",
      "title": "Protocol Docs Are Licensed CC-BY 4.0",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "XanaNode protocol documentation is licensed under CC-BY 4.0 so the docs can be shared and adapted with attribution.",
      "content": "XanaNode protocol documentation is licensed under CC-BY 4.0 so the docs can be shared and adapted with attribution.",
      "html": "<p>XanaNode protocol documentation is licensed under CC-BY 4.0 so the docs can be shared and adapted with attribution.</p>",
      "url": "/claim/protocol-docs-licensed-cc-by-4-0/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_claim_protocol-docs-licensed-cc-by-4-0.json"
    },
    {
      "id": "xananode.canonical:claim/relationships-preserve-knowledge",
      "protocol_id": "xananode.canonical:claim/relationships-preserve-knowledge",
      "title": "Relationships Preserve Knowledge",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "Knowledge survives movement between tools when relationships carry meaning, evidence, authorship, and addressable context instead of collapsing into anonymous links.",
      "content": "Relationships preserve knowledge because they carry the structure that explains why one thing matters to another. A claim is not equivalent to its source, a person is not equivalent to the work they authored, and a fragment is not equivalent to the whole document it came from.\n\nIf a system preserves only isolated notes or files, much of that meaning dissolves during copying, migration, summarization, or machine processing. When the typed relationships remain intact, the knowledge can still be inspected as a coherent structure with evidence, disagreement, provenance, lineage, and context.",
      "html": "<p>Relationships preserve knowledge because they carry the structure that explains why one thing matters to another. A claim is not equivalent to its source, a person is not equivalent to the work they authored, and a fragment is not equivalent to the whole document it came from.</p>\n<p>If a system preserves only isolated notes or files, much of that meaning dissolves during copying, migration, summarization, or machine processing. When the typed relationships remain intact, the knowledge can still be inspected as a coherent structure with evidence, disagreement, provenance, lineage, and context.</p>",
      "url": "/claim/relationships-preserve-knowledge/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_claim_relationships-preserve-knowledge.json"
    },
    {
      "id": "xananode.canonical:claim/schemas-validators-reference-code-apache-2-0",
      "protocol_id": "xananode.canonical:claim/schemas-validators-reference-code-apache-2-0",
      "title": "Schemas, Validators, And Reference Code Are Apache-2.0",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "XanaNode schemas, validators, tooling, and reference implementation code are licensed under Apache-2.0 for broad adoption.",
      "content": "XanaNode schemas, validators, tooling, and reference implementation code are licensed under Apache-2.0 for broad adoption.",
      "html": "<p>XanaNode schemas, validators, tooling, and reference implementation code are licensed under Apache-2.0 for broad adoption.</p>",
      "url": "/claim/schemas-validators-reference-code-apache-2-0/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_claim_schemas-validators-reference-code-apache-2-0.json"
    },
    {
      "id": "xananode.canonical:claim/stack-demonstrates-federation-through-layer-substrates",
      "protocol_id": "xananode.canonical:claim/stack-demonstrates-federation-through-layer-substrates",
      "title": "The XanaNode stack demonstrates federation through layer substrates",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "The major XanaNode layers are published as their own substrate sources, so the stack records federation in live substrate targets rather than only describing it in prose.",
      "content": "Protocol, Core, Workspace, Studio, Mobile, and Hugo each publish or point to their own substrate source. The canonical substrate can therefore link to real substrate targets for the stack, not only to prose about the stack. This is a stronger proof than a diagram alone because each layer is addressable, versionable, and independently federatable.",
      "html": "<p>Protocol, Core, Workspace, Studio, Mobile, and Hugo each publish or point to their own substrate source. The canonical substrate can therefore link to real substrate targets for the stack, not only to prose about the stack. This is a stronger proof than a diagram alone because each layer is addressable, versionable, and independently federatable.</p>",
      "url": "/claim/stack-demonstrates-federation-through-layer-substrates/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_claim_stack-demonstrates-federation-through-layer-substrates.json"
    },
    {
      "id": "xananode.canonical:claim/xananode-is-an-open-kernel-for-knowledge",
      "protocol_id": "xananode.canonical:claim/xananode-is-an-open-kernel-for-knowledge",
      "title": "XanaNode is an open kernel for knowledge",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "XanaNode should function as a shared substrate layer for knowledge the way Linux functions as a shared kernel layer for computing: open, reusable, and separable from any one end-user interface.",
      "content": "The Linux comparison matters because it shifts XanaNode out of the category of one more application. The protocol, Core SDK, workspace behavior, fragment model, and federation rules are intended to become the shared plumbing underneath many projections rather than a single locked experience.\n\nThat is why the substrate must remain durable when a viewer changes. If the underlying knowledge survives the loss of one projection, the protocol is doing the job a kernel-like substrate layer is supposed to do.",
      "html": "<p>The Linux comparison matters because it shifts XanaNode out of the category of one more application. The protocol, Core SDK, workspace behavior, fragment model, and federation rules are intended to become the shared plumbing underneath many projections rather than a single locked experience.</p>\n<p>That is why the substrate must remain durable when a viewer changes. If the underlying knowledge survives the loss of one projection, the protocol is doing the job a kernel-like substrate layer is supposed to do.</p>",
      "url": "/claim/xananode-is-an-open-kernel-for-knowledge/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_claim_xananode-is-an-open-kernel-for-knowledge.json"
    },
    {
      "id": "xananode.canonical:claim/xananode-name-and-logo-are-trademarked",
      "protocol_id": "xananode.canonical:claim/xananode-name-and-logo-are-trademarked",
      "title": "XanaNode Name And Logo Are Trademarked",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "The XanaNode name, logo, and related brand assets are governed as trademarks even when protocol docs and code are openly licensed.",
      "content": "The XanaNode name, logo, and related brand assets are governed as trademarks even when protocol docs and code are openly licensed.",
      "html": "<p>The XanaNode name, logo, and related brand assets are governed as trademarks even when protocol docs and code are openly licensed.</p>",
      "url": "/claim/xananode-name-and-logo-are-trademarked/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_claim_xananode-name-and-logo-are-trademarked.json"
    },
    {
      "id": "xananode.canonical:community/xananode-contributors",
      "protocol_id": "xananode.canonical:community/xananode-contributors",
      "title": "XanaNode Contributors",
      "type": "community",
      "facets": [],
      "section": "communitys",
      "importance": 4,
      "summary": "The people and future maintainers who author, review, preserve, and project XanaNode-compatible substrates.",
      "content": "The people and future maintainers who author, review, preserve, and project XanaNode-compatible substrates.",
      "html": "<p>The people and future maintainers who author, review, preserve, and project XanaNode-compatible substrates.</p>",
      "url": "/community/xananode-contributors/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_community_xananode-contributors.json"
    },
    {
      "id": "xananode.canonical:concept/addressable-fragment-selectors",
      "protocol_id": "xananode.canonical:concept/addressable-fragment-selectors",
      "title": "Addressable Fragment Selectors",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "Selectors carry the precise in-source chunking detail for a fragment, while the tumbler preserves the durable address of the exact source version and fragment version.",
      "content": "A XanaNode fragment is not limited to a paragraph block. The same tumbler model can point to a quoted sentence, a character range, a word range, a page region, an image region, or an audio/video time span.\n\nThe durable identity comes from the versioned fragment tumbler. The selector explains how the implementation found or preserved that exact span inside the source version. That is how XanaNode gets closer to Nelson's finer-grained reuse model without inventing a separate address family for each medium.",
      "html": "<p>A XanaNode fragment is not limited to a paragraph block. The same tumbler model can point to a quoted sentence, a character range, a word range, a page region, an image region, or an audio/video time span.</p>\n<p>The durable identity comes from the versioned fragment tumbler. The selector explains how the implementation found or preserved that exact span inside the source version. That is how XanaNode gets closer to Nelson&#39;s finer-grained reuse model without inventing a separate address family for each medium.</p>",
      "url": "/concept/addressable-fragment-selectors/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_addressable-fragment-selectors.json"
    },
    {
      "id": "xananode.canonical:concept/attribution-license",
      "protocol_id": "xananode.canonical:concept/attribution-license",
      "title": "Attribution License",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "A license pattern that allows reuse while requiring credit to the original author or project.",
      "content": "A license pattern that allows reuse while requiring credit to the original author or project.",
      "html": "<p>A license pattern that allows reuse while requiring credit to the original author or project.</p>",
      "url": "/concept/attribution-license/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_attribution-license.json"
    },
    {
      "id": "xananode.canonical:concept/compatibility-attribution",
      "protocol_id": "xananode.canonical:concept/compatibility-attribution",
      "title": "Compatibility Attribution",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "The convention that implementations should identify themselves as XanaNode-compatible and point to the canonical specification without implying ownership or endorsement.",
      "content": "The convention that implementations should identify themselves as XanaNode-compatible and point to the canonical specification without implying ownership or endorsement.",
      "html": "<p>The convention that implementations should identify themselves as XanaNode-compatible and point to the canonical specification without implying ownership or endorsement.</p>",
      "url": "/concept/compatibility-attribution/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_compatibility-attribution.json"
    },
    {
      "id": "xananode.canonical:concept/content-license",
      "protocol_id": "xananode.canonical:concept/content-license",
      "title": "Content License",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "A license applied to authored text, documentation, examples, or explanatory material rather than executable reference code.",
      "content": "A license applied to authored text, documentation, examples, or explanatory material rather than executable reference code.",
      "html": "<p>A license applied to authored text, documentation, examples, or explanatory material rather than executable reference code.</p>",
      "url": "/concept/content-license/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_content-license.json"
    },
    {
      "id": "xananode.canonical:concept/embedded-example-namespaces",
      "protocol_id": "xananode.canonical:concept/embedded-example-namespaces",
      "title": "Embedded Example Namespaces",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "The canonical substrate carries small embedded teaching namespaces directly inside its own bundle without pretending they are live mounted external substrates.",
      "content": "The canonical substrate includes preserved namespaced records from example.minimal, example.researcher_a, and example.researcher_b. They are embedded so readers and tools can inspect small substrate structure and federation patterns in one portable bundle. That is different from the real stack-layer substrate sources, which are represented as independently versioned federation targets.",
      "html": "<p>The canonical substrate includes preserved namespaced records from example.minimal, example.researcher_a, and example.researcher_b. They are embedded so readers and tools can inspect small substrate structure and federation patterns in one portable bundle. That is different from the real stack-layer substrate sources, which are represented as independently versioned federation targets.</p>",
      "url": "/concept/embedded-example-namespaces/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_embedded-example-namespaces.json"
    },
    {
      "id": "xananode.canonical:concept/knowledge-substrate",
      "protocol_id": "xananode.canonical:concept/knowledge-substrate",
      "title": "Knowledge Substrate",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "The graph-shaped structure that lets information remain understandable across time by making claims, sources, media, fragments, and relationships explicit.",
      "content": "A knowledge substrate is not the same thing as a pile of information. It is the structure that makes information navigable, reviewable, and preservable over time.\n\nIn XanaNode, a substrate keeps nodes, relationships, raw assets, fragments, provenance, and authorship together so meaning does not disappear when the material moves between tools or formats. The same facts arranged through different relationships can produce very different explanatory power, which is why the structure itself matters.\n\nA substrate can be authored locally, transmitted as a portable bundle, mounted from another source, or projected into a site, app, archive, or physical medium. The substrate is the underlying knowledge; projections are only lenses over it.",
      "html": "<p>A knowledge substrate is not the same thing as a pile of information. It is the structure that makes information navigable, reviewable, and preservable over time.</p>\n<p>In XanaNode, a substrate keeps nodes, relationships, raw assets, fragments, provenance, and authorship together so meaning does not disappear when the material moves between tools or formats. The same facts arranged through different relationships can produce very different explanatory power, which is why the structure itself matters.</p>\n<p>A substrate can be authored locally, transmitted as a portable bundle, mounted from another source, or projected into a site, app, archive, or physical medium. The substrate is the underlying knowledge; projections are only lenses over it.</p>",
      "url": "/concept/knowledge-substrate/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_knowledge-substrate.json"
    },
    {
      "id": "xananode.canonical:concept/licensing",
      "protocol_id": "xananode.canonical:concept/licensing",
      "title": "Licensing",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "The legal layer that describes how documents, schemas, code, media, and names may be copied, reused, attributed, modified, or governed.",
      "content": "The legal layer that describes how documents, schemas, code, media, and names may be copied, reused, attributed, modified, or governed.",
      "html": "<p>The legal layer that describes how documents, schemas, code, media, and names may be copied, reused, attributed, modified, or governed.</p>",
      "url": "/concept/licensing/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_licensing.json"
    },
    {
      "id": "xananode.canonical:concept/non-destructive-merge-review",
      "protocol_id": "xananode.canonical:concept/non-destructive-merge-review",
      "title": "Non-Destructive Merge Review",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A federation pass should surface overlap, compatibility, and candidate mappings without silently collapsing distinct local nodes.",
      "content": "XanaNode merge behavior is review-first. A federation pass can detect overlap, record possible matches, score compatibility, and show a structural diff without pretending two authors meant exactly the same thing. That is why merge reports, compatibility reports, and diffs are protocol artifacts in their own right: they let tools expose the overlap before any permanent collapse or absorption happens.",
      "html": "<p>XanaNode merge behavior is review-first. A federation pass can detect overlap, record possible matches, score compatibility, and show a structural diff without pretending two authors meant exactly the same thing. That is why merge reports, compatibility reports, and diffs are protocol artifacts in their own right: they let tools expose the overlap before any permanent collapse or absorption happens.</p>",
      "url": "/concept/non-destructive-merge-review/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_non-destructive-merge-review.json"
    },
    {
      "id": "xananode.canonical:concept/open-license",
      "protocol_id": "xananode.canonical:concept/open-license",
      "title": "Open License",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "A license that grants broad public permission to use, share, adapt, or implement a work while preserving stated conditions such as attribution or notices.",
      "content": "A license that grants broad public permission to use, share, adapt, or implement a work while preserving stated conditions such as attribution or notices.",
      "html": "<p>A license that grants broad public permission to use, share, adapt, or implement a work while preserving stated conditions such as attribution or notices.</p>",
      "url": "/concept/open-license/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_open-license.json"
    },
    {
      "id": "xananode.canonical:concept/permissive-open-source-license",
      "protocol_id": "xananode.canonical:concept/permissive-open-source-license",
      "title": "Permissive Open Source License",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "An open source license family that allows broad reuse, modification, distribution, and commercial adoption with limited obligations.",
      "content": "An open source license family that allows broad reuse, modification, distribution, and commercial adoption with limited obligations.",
      "html": "<p>An open source license family that allows broad reuse, modification, distribution, and commercial adoption with limited obligations.</p>",
      "url": "/concept/permissive-open-source-license/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_permissive-open-source-license.json"
    },
    {
      "id": "xananode.canonical:concept/protocol-artifacts",
      "protocol_id": "xananode.canonical:concept/protocol-artifacts",
      "title": "Protocol Artifacts",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "The portable JSON files, schemas, fragments, reports, and media references that allow tools to validate, compare, mount, import, merge, and render substrates.",
      "content": "Protocol artifacts are the portable files that make a XanaNode substrate inspectable by both people and machines. They include the manifest, node records, relationship lists, fragments, validation reports, suggestions, registries, media references, and any other standardized outputs the protocol defines.\n\nThese artifacts matter because tools should not need private in-memory state or one specific application in order to understand a substrate. If the artifacts are present and valid, another compatible tool should be able to open the substrate, validate it, compare it, federate it, or project it.\n\nWhen the protocol stack is working properly, the artifacts are not a side effect. They are part of the knowledge being preserved and transmitted.",
      "html": "<p>Protocol artifacts are the portable files that make a XanaNode substrate inspectable by both people and machines. They include the manifest, node records, relationship lists, fragments, validation reports, suggestions, registries, media references, and any other standardized outputs the protocol defines.</p>\n<p>These artifacts matter because tools should not need private in-memory state or one specific application in order to understand a substrate. If the artifacts are present and valid, another compatible tool should be able to open the substrate, validate it, compare it, federate it, or project it.</p>\n<p>When the protocol stack is working properly, the artifacts are not a side effect. They are part of the knowledge being preserved and transmitted.</p>",
      "url": "/concept/protocol-artifacts/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_protocol-artifacts.json"
    },
    {
      "id": "xananode.canonical:concept/self-federating-stack",
      "protocol_id": "xananode.canonical:concept/self-federating-stack",
      "title": "Self-Federating Stack",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "The XanaNode stack is federated because its major layers are represented as independently versioned substrates that can still interoperate as one system.",
      "content": "The stack itself is federated. Protocol, Core, Workspace, Studio, Mobile, Hugo, Canonical, Alphabet, and Lineage are all represented as distinct substrates or substrate targets with their own namespace, repository, transport shape, and governance path. The canonical bundle also carries embedded teaching namespaces for inspection and testing, but those are not the same thing as the real stack-layer substrate sources. Together, these patterns show that each layer can stand on its own while the layers can still be mounted, compared, validated, projected, and carried together without collapsing into one monolithic blob.",
      "html": "<p>The stack itself is federated. Protocol, Core, Workspace, Studio, Mobile, Hugo, Canonical, Alphabet, and Lineage are all represented as distinct substrates or substrate targets with their own namespace, repository, transport shape, and governance path. The canonical bundle also carries embedded teaching namespaces for inspection and testing, but those are not the same thing as the real stack-layer substrate sources. Together, these patterns show that each layer can stand on its own while the layers can still be mounted, compared, validated, projected, and carried together without collapsing into one monolithic blob.</p>",
      "url": "/concept/self-federating-stack/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_self-federating-stack.json"
    },
    {
      "id": "xananode.canonical:concept/software-license",
      "protocol_id": "xananode.canonical:concept/software-license",
      "title": "Software License",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "A license applied to source code, validators, tooling, schemas, and implementation artifacts.",
      "content": "A license applied to source code, validators, tooling, schemas, and implementation artifacts.",
      "html": "<p>A license applied to source code, validators, tooling, schemas, and implementation artifacts.</p>",
      "url": "/concept/software-license/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_software-license.json"
    },
    {
      "id": "xananode.canonical:concept/substrate-projection-layer",
      "protocol_id": "xananode.canonical:concept/substrate-projection-layer",
      "title": "Substrate Projection Layer",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A renderer or lens that presents a substrate for a particular use without becoming the substrate itself.",
      "content": "A renderer or lens that presents a substrate for a particular use without becoming the substrate itself.",
      "html": "<p>A renderer or lens that presents a substrate for a particular use without becoming the substrate itself.</p>",
      "url": "/concept/substrate-projection-layer/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_substrate-projection-layer.json"
    },
    {
      "id": "xananode.canonical:concept/trademark",
      "protocol_id": "xananode.canonical:concept/trademark",
      "title": "Trademark",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A protected name, logo, or mark that identifies the source and reputation of a project, product, organization, or community.",
      "content": "A protected name, logo, or mark that identifies the source and reputation of a project, product, organization, or community.",
      "html": "<p>A protected name, logo, or mark that identifies the source and reputation of a project, product, organization, or community.</p>",
      "url": "/concept/trademark/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_trademark.json"
    },
    {
      "id": "xananode.canonical:concept/trifecta-of-computing-failure",
      "protocol_id": "xananode.canonical:concept/trifecta-of-computing-failure",
      "title": "The Trifecta of Computing Failure",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A three-part failure pattern in modern computing where knowledge is trapped in isolated documents, copied without durable lineage, and kept in tools that do not naturally federate.",
      "content": "The Trifecta of Computing Failure names the pattern XanaNode is trying to escape.\n\nFirst, most systems treat the document or file as the primary container of meaning. Second, when people need to reuse or synthesize knowledge, they usually copy and paste excerpts into new places, which severs provenance, surrounding context, and revision lineage. Third, even tools that improve local note-linking rarely provide a durable protocol for independent authorship, portable raw assets, and federation across many tools and owners.\n\nXanaNode is meant to answer all three at once: relationships become first-class, transclusion and fragment identity preserve lineage, and the substrate can move between projection layers without collapsing back into one app's private format.",
      "html": "<p>The Trifecta of Computing Failure names the pattern XanaNode is trying to escape.</p>\n<p>First, most systems treat the document or file as the primary container of meaning. Second, when people need to reuse or synthesize knowledge, they usually copy and paste excerpts into new places, which severs provenance, surrounding context, and revision lineage. Third, even tools that improve local note-linking rarely provide a durable protocol for independent authorship, portable raw assets, and federation across many tools and owners.</p>\n<p>XanaNode is meant to answer all three at once: relationships become first-class, transclusion and fragment identity preserve lineage, and the substrate can move between projection layers without collapsing back into one app&#39;s private format.</p>",
      "url": "/concept/trifecta-of-computing-failure/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_trifecta-of-computing-failure.json"
    },
    {
      "id": "xananode.canonical:concept/xananode",
      "protocol_id": "xananode.canonical:concept/xananode",
      "title": "XanaNode",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A protocol for independently authored knowledge substrates that preserve relationships, provenance, lineage, disagreement, and addressable fragments so knowledge can move across tools and media without losing its structure.",
      "content": "XanaNode is a protocol for independently authored knowledge substrates that preserve relationships, provenance, lineage, disagreement, and addressable fragments, so knowledge can move across tools and media without losing its structure.\n\nThe protocol does not define a single viewer or one mandatory application. It defines the durable substrate shape, the validation rules, the registries, and the artifact contracts that let many tools read, compare, merge, and project the same knowledge.\n\nA XanaNode-compatible stack should be able to carry people, places, things, ideas, claims, questions, evidence, uncertainty, raw assets, and typed relationships in a form that survives transmission. That is why the protocol centers relationships, authorship, source lineage, and stable references instead of treating a document as the only meaningful unit.",
      "html": "<p>XanaNode is a protocol for independently authored knowledge substrates that preserve relationships, provenance, lineage, disagreement, and addressable fragments, so knowledge can move across tools and media without losing its structure.</p>\n<p>The protocol does not define a single viewer or one mandatory application. It defines the durable substrate shape, the validation rules, the registries, and the artifact contracts that let many tools read, compare, merge, and project the same knowledge.</p>\n<p>A XanaNode-compatible stack should be able to carry people, places, things, ideas, claims, questions, evidence, uncertainty, raw assets, and typed relationships in a form that survives transmission. That is why the protocol centers relationships, authorship, source lineage, and stable references instead of treating a document as the only meaningful unit.</p>",
      "url": "/concept/xananode/",
      "primary_media": "xananode.canonical:media/xananode-icon",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_concept_xananode.json"
    },
    {
      "id": "xananode.canonical:essay/what-is-xananode",
      "protocol_id": "xananode.canonical:essay/what-is-xananode",
      "title": "What Is XanaNode?",
      "type": "essay",
      "facets": [],
      "section": "essays",
      "importance": 5,
      "summary": "An explanation of XanaNode as a layered protocol, not a single viewer, website, repository, or graph visualization.",
      "content": "XanaNode is a layered protocol and working stack for knowledge substrates. It is not the website, not the graph alone, not the Hugo projection, and not a single repository.\n\nAt the bottom, the protocol defines the shared rules: canonical schemas, registries, artifact contracts, validation expectations, and governance conventions. Core reads and writes those protocol records. Workspace manages substrate folders, bundles, and federation intake. Studio and Mobile are authoring tools built on top of that substrate model. Hugo is one projection layer that renders the same underlying substrate as a public static site.\n\nThat layering matters because the knowledge should remain usable even when one projection changes. A substrate can be moved to another tool, shared as a `.substrate` bundle, mounted from a registry target, or rendered through a different projection without rewriting its meaning from scratch.\n\nXanaNode is also an explicit answer to a three-part computing failure: document boundaries collapse knowledge structure, copied excerpts lose durable lineage, and local-first tools without a shared substrate protocol still do not federate cleanly. The protocol tries to solve that by keeping relationships first-class, making fragments addressable, preserving raw assets and provenance, and separating the substrate from any one projection layer.\n\nThe canonical XanaNode substrate is intentionally self-referential. It carries its own schemas, artifacts, sources, branding, project nodes, implementation links, and explanatory trails so the stack can demonstrate the thing it claims to provide.",
      "html": "<p>XanaNode is a layered protocol and working stack for knowledge substrates. It is not the website, not the graph alone, not the Hugo projection, and not a single repository.</p>\n<p>At the bottom, the protocol defines the shared rules: canonical schemas, registries, artifact contracts, validation expectations, and governance conventions. Core reads and writes those protocol records. Workspace manages substrate folders, bundles, and federation intake. Studio and Mobile are authoring tools built on top of that substrate model. Hugo is one projection layer that renders the same underlying substrate as a public static site.</p>\n<p>That layering matters because the knowledge should remain usable even when one projection changes. A substrate can be moved to another tool, shared as a <code>.substrate</code> bundle, mounted from a registry target, or rendered through a different projection without rewriting its meaning from scratch.</p>\n<p>XanaNode is also an explicit answer to a three-part computing failure: document boundaries collapse knowledge structure, copied excerpts lose durable lineage, and local-first tools without a shared substrate protocol still do not federate cleanly. The protocol tries to solve that by keeping relationships first-class, making fragments addressable, preserving raw assets and provenance, and separating the substrate from any one projection layer.</p>\n<p>The canonical XanaNode substrate is intentionally self-referential. It carries its own schemas, artifacts, sources, branding, project nodes, implementation links, and explanatory trails so the stack can demonstrate the thing it claims to provide.</p>",
      "url": "/essay/what-is-xananode/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_essay_what-is-xananode.json"
    },
    {
      "id": "xananode.canonical:essay/xananode-as-a-kernel-for-human-thought",
      "protocol_id": "xananode.canonical:essay/xananode-as-a-kernel-for-human-thought",
      "title": "XanaNode As A Kernel For Human Thought",
      "type": "essay",
      "facets": [],
      "section": "essays",
      "importance": 5,
      "summary": "A canonical essay explaining XanaNode as an open substrate layer for knowledge, with stable fragment transclusions that tie the comparison back to the authored source text and the protocol's core claims.",
      "content": "XanaNode makes more sense when compared to Linux than when compared to another notes app.\n\nLinux became important because it was not merely a product. It was an open kernel: a shared plumbing layer other people could build on, distribute differently, and keep using even when one interface, company, or distribution changed. Android, servers, embedded devices, and supercomputers all diverged at the projection layer while still relying on the same foundational contract underneath.\n\nXanaNode is trying to do that for knowledge.\n\nThe protocol defines the common contract. Core enforces the substrate shape, fragment model, validation, and export behavior. Workspace manages folders, portable `.substrate` bundles, and federation intake. Studio, Mobile, and Hugo are projections over that same substrate rather than isolated silos pretending to be the knowledge itself.\n\nThat separation is the point. If the substrate outlives a projection, then the knowledge has not been taken hostage by a single product decision. A viewer can fail. A pricing model can change. A company can disappear. The substrate should still open somewhere else with its identities, relationships, provenance, fragments, and raw assets intact.\n\nThis is where the protocol's three recurring failure claims come together. Document boundaries collapse knowledge structure. Copy-and-paste reuse breaks lineage. Local-first storage without federation still leaves knowledge trapped inside tool-specific habits. XanaNode tries to solve all three by making the structure explicit and portable.\n\nThe Linux comparison also clarifies why federation matters. Linux succeeded because many independent actors could share a common base without surrendering ownership of their own layers. XanaNode aims for the same pattern with independently authored substrates that can be mounted, compared, merged, and projected without flattening disagreement or provenance.\n\nThe goal is not one more application. The goal is an open substrate ecosystem for durable human-to-machine knowledge transfer.\n\n## Transcluded anchor passages\n\nThis essay keeps the authored source alive by carrying four stable fragment transclusions from `xananode.canonical:source/xananode-kernel-for-human-thought-draft`.\n\n> The Core SDK plays the role of shared plumbing. It is renderer-independent and handles the baseline rules of structure, relationship typing, fragment tracking, validation, and export so every projection does not have to reinvent them.\n\n`xananode.canonical:source/xananode-kernel-for-human-thought-draft@sha256:xananode-kernel-for-human-thought-draft-source-v1#fragment/0001@sha256:xananode-kernel-thought-fragment-0001`\n\n> The substrate and the projection are intentionally separated. In Linux, people interact through distributions such as Ubuntu, Fedora, or Red Hat while the kernel remains the underlying contract. In XanaNode, the same substrate can be viewed through Studio, Mobile, Hugo, or a future projection that does not exist yet. The tool is a lens over the data, not the data itself.\n\n`xananode.canonical:source/xananode-kernel-for-human-thought-draft@sha256:xananode-kernel-for-human-thought-draft-source-v1#fragment/0002@sha256:xananode-kernel-thought-fragment-0002`\n\n> That separation matters because it prevents knowledge from being held hostage by one product. If a proprietary notes tool collapses, changes pricing, or drifts away from its users, the knowledge goes with it. XanaNode keeps the substrate local, protocol-shaped, and portable, so another compatible projection can pick it up and keep going.\n\n`xananode.canonical:source/xananode-kernel-for-human-thought-draft@sha256:xananode-kernel-for-human-thought-draft-source-v1#fragment/0003@sha256:xananode-kernel-thought-fragment-0003`\n\n> Federation is the ecosystem layer. Linux did not become important because one company owned all computation. It mattered because many independent actors could build on a common base. XanaNode aims for the same pattern with independently authored substrates that can mount, compare, and merge without surrendering provenance, lineage, disagreement, or ownership.\n\n`xananode.canonical:source/xananode-kernel-for-human-thought-draft@sha256:xananode-kernel-for-human-thought-draft-source-v1#fragment/0004@sha256:xananode-kernel-thought-fragment-0004`\n\nThose tumbler addresses are the proof that the comparison survives as referenceable structure instead of dissolving into another anonymous copy.",
      "html": "<p>XanaNode makes more sense when compared to Linux than when compared to another notes app.</p>\n<p>Linux became important because it was not merely a product. It was an open kernel: a shared plumbing layer other people could build on, distribute differently, and keep using even when one interface, company, or distribution changed. Android, servers, embedded devices, and supercomputers all diverged at the projection layer while still relying on the same foundational contract underneath.</p>\n<p>XanaNode is trying to do that for knowledge.</p>\n<p>The protocol defines the common contract. Core enforces the substrate shape, fragment model, validation, and export behavior. Workspace manages folders, portable <code>.substrate</code> bundles, and federation intake. Studio, Mobile, and Hugo are projections over that same substrate rather than isolated silos pretending to be the knowledge itself.</p>\n<p>That separation is the point. If the substrate outlives a projection, then the knowledge has not been taken hostage by a single product decision. A viewer can fail. A pricing model can change. A company can disappear. The substrate should still open somewhere else with its identities, relationships, provenance, fragments, and raw assets intact.</p>\n<p>This is where the protocol&#39;s three recurring failure claims come together. Document boundaries collapse knowledge structure. Copy-and-paste reuse breaks lineage. Local-first storage without federation still leaves knowledge trapped inside tool-specific habits. XanaNode tries to solve all three by making the structure explicit and portable.</p>\n<p>The Linux comparison also clarifies why federation matters. Linux succeeded because many independent actors could share a common base without surrendering ownership of their own layers. XanaNode aims for the same pattern with independently authored substrates that can be mounted, compared, merged, and projected without flattening disagreement or provenance.</p>\n<p>The goal is not one more application. The goal is an open substrate ecosystem for durable human-to-machine knowledge transfer.</p>\n<h2>Transcluded anchor passages</h2>\n<p>This essay keeps the authored source alive by carrying four stable fragment transclusions from <code>xananode.canonical:source/xananode-kernel-for-human-thought-draft</code>.</p>\n<blockquote><p>The Core SDK plays the role of shared plumbing. It is renderer-independent and handles the baseline rules of structure, relationship typing, fragment tracking, validation, and export so every projection does not have to reinvent them.</p></blockquote>\n<p><code>xananode.canonical:source/xananode-kernel-for-human-thought-draft@sha256:xananode-kernel-for-human-thought-draft-source-v1#fragment/0001@sha256:xananode-kernel-thought-fragment-0001</code></p>\n<blockquote><p>The substrate and the projection are intentionally separated. In Linux, people interact through distributions such as Ubuntu, Fedora, or Red Hat while the kernel remains the underlying contract. In XanaNode, the same substrate can be viewed through Studio, Mobile, Hugo, or a future projection that does not exist yet. The tool is a lens over the data, not the data itself.</p></blockquote>\n<p><code>xananode.canonical:source/xananode-kernel-for-human-thought-draft@sha256:xananode-kernel-for-human-thought-draft-source-v1#fragment/0002@sha256:xananode-kernel-thought-fragment-0002</code></p>\n<blockquote><p>That separation matters because it prevents knowledge from being held hostage by one product. If a proprietary notes tool collapses, changes pricing, or drifts away from its users, the knowledge goes with it. XanaNode keeps the substrate local, protocol-shaped, and portable, so another compatible projection can pick it up and keep going.</p></blockquote>\n<p><code>xananode.canonical:source/xananode-kernel-for-human-thought-draft@sha256:xananode-kernel-for-human-thought-draft-source-v1#fragment/0003@sha256:xananode-kernel-thought-fragment-0003</code></p>\n<blockquote><p>Federation is the ecosystem layer. Linux did not become important because one company owned all computation. It mattered because many independent actors could build on a common base. XanaNode aims for the same pattern with independently authored substrates that can mount, compare, and merge without surrendering provenance, lineage, disagreement, or ownership.</p></blockquote>\n<p><code>xananode.canonical:source/xananode-kernel-for-human-thought-draft@sha256:xananode-kernel-for-human-thought-draft-source-v1#fragment/0004@sha256:xananode-kernel-thought-fragment-0004</code></p>\n<p>Those tumbler addresses are the proof that the comparison survives as referenceable structure instead of dissolving into another anonymous copy.</p>",
      "url": "/essay/xananode-as-a-kernel-for-human-thought/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_essay_xananode-as-a-kernel-for-human-thought.json"
    },
    {
      "id": "xananode.canonical:essay/xananode-compared-to-networked-notes-tools",
      "protocol_id": "xananode.canonical:essay/xananode-compared-to-networked-notes-tools",
      "title": "XanaNode compared to networked notes tools",
      "type": "essay",
      "facets": [],
      "section": "essays",
      "importance": 4,
      "summary": "A comparison between XanaNode and note-linking tools such as Logseq, Obsidian, and Anytype, focusing on protocol-level portability, transclusion, lineage, and federation.",
      "content": "Tools such as Logseq, Obsidian, and Anytype move closer to networked thought than ordinary flat documents do. They help people connect ideas, reuse material, and work locally with less dependence on one central service.\n\nXanaNode is not a rejection of those tools. It is an attempt to define the missing protocol layer beneath them.\n\nLogseq is strong at block-oriented thinking. Obsidian is strong at page-linking and a broad plugin ecosystem. Anytype is strong at object-oriented modeling and local-first ownership. What they do not yet provide in the same way is a shared, renderer-independent substrate contract for independently authored nodes, typed relationships, addressable fragments, portable raw assets, explicit provenance, mergeable federation, and many possible projection layers.\n\nIn other words, those tools can help a person think in a networked way. XanaNode tries to make the knowledge itself portable as a network, even when it leaves the original tool.\n\nThat is the deeper goal behind the comparison to Bush, Engelbart, Nelson, and Douglas Adams's Hyperland demonstration. The point is not just to create nicer linked notes. The point is to preserve the structure of thought, the source path behind it, and the assets that support it in a form that can survive transmission.",
      "html": "<p>Tools such as Logseq, Obsidian, and Anytype move closer to networked thought than ordinary flat documents do. They help people connect ideas, reuse material, and work locally with less dependence on one central service.</p>\n<p>XanaNode is not a rejection of those tools. It is an attempt to define the missing protocol layer beneath them.</p>\n<p>Logseq is strong at block-oriented thinking. Obsidian is strong at page-linking and a broad plugin ecosystem. Anytype is strong at object-oriented modeling and local-first ownership. What they do not yet provide in the same way is a shared, renderer-independent substrate contract for independently authored nodes, typed relationships, addressable fragments, portable raw assets, explicit provenance, mergeable federation, and many possible projection layers.</p>\n<p>In other words, those tools can help a person think in a networked way. XanaNode tries to make the knowledge itself portable as a network, even when it leaves the original tool.</p>\n<p>That is the deeper goal behind the comparison to Bush, Engelbart, Nelson, and Douglas Adams&#39;s Hyperland demonstration. The point is not just to create nicer linked notes. The point is to preserve the structure of thought, the source path behind it, and the assets that support it in a form that can survive transmission.</p>",
      "url": "/essay/xananode-compared-to-networked-notes-tools/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_essay_xananode-compared-to-networked-notes-tools.json"
    },
    {
      "id": "xananode.canonical:event/xananode-canonical-pack-bootstrap",
      "protocol_id": "xananode.canonical:event/xananode-canonical-pack-bootstrap",
      "title": "XanaNode Canonical Pack Bootstrap",
      "type": "event",
      "facets": [],
      "section": "events",
      "importance": 4,
      "summary": "The point where Core begins shipping a mountable canonical XanaNode substrate pack as protocol JSON.",
      "content": "The point where Core begins shipping a mountable canonical XanaNode substrate pack as protocol JSON.",
      "html": "<p>The point where Core begins shipping a mountable canonical XanaNode substrate pack as protocol JSON.</p>",
      "url": "/event/xananode-canonical-pack-bootstrap/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_event_xananode-canonical-pack-bootstrap.json"
    },
    {
      "id": "xananode.canonical:fragment/relationships-preserve-knowledge-sentence",
      "protocol_id": "xananode.canonical:fragment/relationships-preserve-knowledge-sentence",
      "title": "Relationships Preserve Knowledge Sentence",
      "type": "fragment",
      "facets": [],
      "section": "fragments",
      "importance": 4,
      "summary": "Relationships preserve knowledge.",
      "content": "Relationships preserve knowledge.",
      "html": "<p>Relationships preserve knowledge.</p>",
      "url": "/fragment/relationships-preserve-knowledge-sentence/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "xananode.canonical:claim/relationships-preserve-knowledge@sha256:canonical-pack-v0-1-0#fragment/0001@sha256:relationship-preservation-sentence",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_fragment_relationships-preserve-knowledge-sentence.json"
    },
    {
      "id": "xananode.canonical:fragment/xananode-kernel-thought-0001",
      "protocol_id": "xananode.canonical:fragment/xananode-kernel-thought-0001",
      "title": "XanaNode Kernel Thought Fragment 0001",
      "type": "fragment",
      "facets": [],
      "section": "fragments",
      "importance": 4,
      "summary": "The shared-plumbing comparison between Linux and XanaNode.",
      "content": "The Core SDK plays the role of shared plumbing. It is renderer-independent and handles the baseline rules of structure, relationship typing, fragment tracking, validation, and export so every projection does not have to reinvent them.",
      "html": "<p>The Core SDK plays the role of shared plumbing. It is renderer-independent and handles the baseline rules of structure, relationship typing, fragment tracking, validation, and export so every projection does not have to reinvent them.</p>",
      "url": "/fragment/xananode-kernel-thought-0001/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "canonical-public",
      "tumbler": "xananode.canonical:source/xananode-kernel-for-human-thought-draft@sha256:xananode-kernel-for-human-thought-draft-source-v1#fragment/0001@sha256:xananode-kernel-thought-fragment-0001",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_fragment_xananode-kernel-thought-0001.json"
    },
    {
      "id": "xananode.canonical:fragment/xananode-kernel-thought-0002",
      "protocol_id": "xananode.canonical:fragment/xananode-kernel-thought-0002",
      "title": "XanaNode Kernel Thought Fragment 0002",
      "type": "fragment",
      "facets": [],
      "section": "fragments",
      "importance": 4,
      "summary": "The distributions-versus-projections comparison.",
      "content": "The substrate and the projection are intentionally separated. In Linux, people interact through distributions such as Ubuntu, Fedora, or Red Hat while the kernel remains the underlying contract. In XanaNode, the same substrate can be viewed through Studio, Mobile, Hugo, or a future projection that does not exist yet. The tool is a lens over the data, not the data itself.",
      "html": "<p>The substrate and the projection are intentionally separated. In Linux, people interact through distributions such as Ubuntu, Fedora, or Red Hat while the kernel remains the underlying contract. In XanaNode, the same substrate can be viewed through Studio, Mobile, Hugo, or a future projection that does not exist yet. The tool is a lens over the data, not the data itself.</p>",
      "url": "/fragment/xananode-kernel-thought-0002/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "canonical-public",
      "tumbler": "xananode.canonical:source/xananode-kernel-for-human-thought-draft@sha256:xananode-kernel-for-human-thought-draft-source-v1#fragment/0002@sha256:xananode-kernel-thought-fragment-0002",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_fragment_xananode-kernel-thought-0002.json"
    },
    {
      "id": "xananode.canonical:fragment/xananode-kernel-thought-0003",
      "protocol_id": "xananode.canonical:fragment/xananode-kernel-thought-0003",
      "title": "XanaNode Kernel Thought Fragment 0003",
      "type": "fragment",
      "facets": [],
      "section": "fragments",
      "importance": 4,
      "summary": "The tool-hostage and portability argument.",
      "content": "That separation matters because it prevents knowledge from being held hostage by one product. If a proprietary notes tool collapses, changes pricing, or drifts away from its users, the knowledge goes with it. XanaNode keeps the substrate local, protocol-shaped, and portable, so another compatible projection can pick it up and keep going.",
      "html": "<p>That separation matters because it prevents knowledge from being held hostage by one product. If a proprietary notes tool collapses, changes pricing, or drifts away from its users, the knowledge goes with it. XanaNode keeps the substrate local, protocol-shaped, and portable, so another compatible projection can pick it up and keep going.</p>",
      "url": "/fragment/xananode-kernel-thought-0003/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "canonical-public",
      "tumbler": "xananode.canonical:source/xananode-kernel-for-human-thought-draft@sha256:xananode-kernel-for-human-thought-draft-source-v1#fragment/0003@sha256:xananode-kernel-thought-fragment-0003",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_fragment_xananode-kernel-thought-0003.json"
    },
    {
      "id": "xananode.canonical:fragment/xananode-kernel-thought-0004",
      "protocol_id": "xananode.canonical:fragment/xananode-kernel-thought-0004",
      "title": "XanaNode Kernel Thought Fragment 0004",
      "type": "fragment",
      "facets": [],
      "section": "fragments",
      "importance": 4,
      "summary": "The federation and ecosystem argument.",
      "content": "Federation is the ecosystem layer. Linux did not become important because one company owned all computation. It mattered because many independent actors could build on a common base. XanaNode aims for the same pattern with independently authored substrates that can mount, compare, and merge without surrendering provenance, lineage, disagreement, or ownership.",
      "html": "<p>Federation is the ecosystem layer. Linux did not become important because one company owned all computation. It mattered because many independent actors could build on a common base. XanaNode aims for the same pattern with independently authored substrates that can mount, compare, and merge without surrendering provenance, lineage, disagreement, or ownership.</p>",
      "url": "/fragment/xananode-kernel-thought-0004/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "canonical-public",
      "tumbler": "xananode.canonical:source/xananode-kernel-for-human-thought-draft@sha256:xananode-kernel-for-human-thought-draft-source-v1#fragment/0004@sha256:xananode-kernel-thought-fragment-0004",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_fragment_xananode-kernel-thought-0004.json"
    },
    {
      "id": "xananode.canonical:media/protocol-artifact-examples-minimal-substrate-assets-branding-xananode-icon.svg",
      "protocol_id": "xananode.canonical:media/protocol-artifact-examples-minimal-substrate-assets-branding-xananode-icon.svg",
      "title": "Examples / Minimal Substrate / Assets / Branding / XanaNode Icon Svg",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "An example protocol artifact used by Examples / Minimal Substrate / Assets / Branding / XanaNode Icon Svg.",
      "content": "An example protocol artifact used by Examples / Minimal Substrate / Assets / Branding / XanaNode Icon Svg.",
      "html": "<p>An example protocol artifact used by Examples / Minimal Substrate / Assets / Branding / XanaNode Icon Svg.</p>",
      "url": "/media/protocol-artifact-examples-minimal-substrate-assets-branding-xananode-icon.svg/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/assets/branding/xananode-icon.svg",
      "license": "",
      "license_url": "",
      "rights_status": "trademarked - see TRADEMARK.md for permissions and reuse restrictions",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_protocol-artifact-examples-minimal-substrate-assets-branding-xananode-icon.svg.json"
    },
    {
      "id": "xananode.canonical:media/protocol-artifact-media-images-xananode-icon.svg",
      "protocol_id": "xananode.canonical:media/protocol-artifact-media-images-xananode-icon.svg",
      "title": "Media / Images / XanaNode Icon Svg",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical XanaNode icon asset used across official projections and tools.",
      "content": "The canonical XanaNode icon asset used across official projections and tools.",
      "html": "<p>The canonical XanaNode icon asset used across official projections and tools.</p>",
      "url": "/media/protocol-artifact-media-images-xananode-icon.svg/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/images/xananode-icon.svg",
      "license": "",
      "license_url": "",
      "rights_status": "trademarked - see TRADEMARK.md for permissions and reuse restrictions",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_protocol-artifact-media-images-xananode-icon.svg.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-attention-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-attention-projection-icon",
      "title": "attention Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the attention relationship category.",
      "content": "The canonical projection icon for the attention relationship category.",
      "html": "<p>The canonical projection icon for the attention relationship category.</p>",
      "url": "/media/relationship-category-attention-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/attention.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-attention-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-causation-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-causation-projection-icon",
      "title": "causation Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the causation relationship category.",
      "content": "The canonical projection icon for the causation relationship category.",
      "html": "<p>The canonical projection icon for the causation relationship category.</p>",
      "url": "/media/relationship-category-causation-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/causation.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-causation-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-citation-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-citation-projection-icon",
      "title": "citation Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the citation relationship category.",
      "content": "The canonical projection icon for the citation relationship category.",
      "html": "<p>The canonical projection icon for the citation relationship category.</p>",
      "url": "/media/relationship-category-citation-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/citation.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-citation-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-claim_structure-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-claim_structure-projection-icon",
      "title": "claim structure Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the claim_structure relationship category.",
      "content": "The canonical projection icon for the claim_structure relationship category.",
      "html": "<p>The canonical projection icon for the claim_structure relationship category.</p>",
      "url": "/media/relationship-category-claim_structure-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/claim_structure.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-claim_structure-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-cognition-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-cognition-projection-icon",
      "title": "cognition Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the cognition relationship category.",
      "content": "The canonical projection icon for the cognition relationship category.",
      "html": "<p>The canonical projection icon for the cognition relationship category.</p>",
      "url": "/media/relationship-category-cognition-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/cognition.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-cognition-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-communication-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-communication-projection-icon",
      "title": "communication Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the communication relationship category.",
      "content": "The canonical projection icon for the communication relationship category.",
      "html": "<p>The canonical projection icon for the communication relationship category.</p>",
      "url": "/media/relationship-category-communication-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/communication.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-communication-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-comparison-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-comparison-projection-icon",
      "title": "comparison Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the comparison relationship category.",
      "content": "The canonical projection icon for the comparison relationship category.",
      "html": "<p>The canonical projection icon for the comparison relationship category.</p>",
      "url": "/media/relationship-category-comparison-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/comparison.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-comparison-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-composition-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-composition-projection-icon",
      "title": "composition Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the composition relationship category.",
      "content": "The canonical projection icon for the composition relationship category.",
      "html": "<p>The canonical projection icon for the composition relationship category.</p>",
      "url": "/media/relationship-category-composition-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/composition.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-composition-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-creation-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-creation-projection-icon",
      "title": "creation Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the creation relationship category.",
      "content": "The canonical projection icon for the creation relationship category.",
      "html": "<p>The canonical projection icon for the creation relationship category.</p>",
      "url": "/media/relationship-category-creation-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/creation.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-creation-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-definition-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-definition-projection-icon",
      "title": "definition Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the definition relationship category.",
      "content": "The canonical projection icon for the definition relationship category.",
      "html": "<p>The canonical projection icon for the definition relationship category.</p>",
      "url": "/media/relationship-category-definition-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/definition.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-definition-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-discovery-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-discovery-projection-icon",
      "title": "discovery Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the discovery relationship category.",
      "content": "The canonical projection icon for the discovery relationship category.",
      "html": "<p>The canonical projection icon for the discovery relationship category.</p>",
      "url": "/media/relationship-category-discovery-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/discovery.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-discovery-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-evidence-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-evidence-projection-icon",
      "title": "evidence Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the evidence relationship category.",
      "content": "The canonical projection icon for the evidence relationship category.",
      "html": "<p>The canonical projection icon for the evidence relationship category.</p>",
      "url": "/media/relationship-category-evidence-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/evidence.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-evidence-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-evolution-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-evolution-projection-icon",
      "title": "evolution Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the evolution relationship category.",
      "content": "The canonical projection icon for the evolution relationship category.",
      "html": "<p>The canonical projection icon for the evolution relationship category.</p>",
      "url": "/media/relationship-category-evolution-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/evolution.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-evolution-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-explanation-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-explanation-projection-icon",
      "title": "explanation Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the explanation relationship category.",
      "content": "The canonical projection icon for the explanation relationship category.",
      "html": "<p>The canonical projection icon for the explanation relationship category.</p>",
      "url": "/media/relationship-category-explanation-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/explanation.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-explanation-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-generic-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-generic-projection-icon",
      "title": "generic Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the generic relationship category.",
      "content": "The canonical projection icon for the generic relationship category.",
      "html": "<p>The canonical projection icon for the generic relationship category.</p>",
      "url": "/media/relationship-category-generic-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/generic.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-generic-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-governance-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-governance-projection-icon",
      "title": "governance Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the governance relationship category.",
      "content": "The canonical projection icon for the governance relationship category.",
      "html": "<p>The canonical projection icon for the governance relationship category.</p>",
      "url": "/media/relationship-category-governance-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/governance.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-governance-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-historical-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-historical-projection-icon",
      "title": "historical Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the historical relationship category.",
      "content": "The canonical projection icon for the historical relationship category.",
      "html": "<p>The canonical projection icon for the historical relationship category.</p>",
      "url": "/media/relationship-category-historical-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/historical.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-historical-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-identity-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-identity-projection-icon",
      "title": "identity Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the identity relationship category.",
      "content": "The canonical projection icon for the identity relationship category.",
      "html": "<p>The canonical projection icon for the identity relationship category.</p>",
      "url": "/media/relationship-category-identity-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/identity.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-identity-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-influence-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-influence-projection-icon",
      "title": "influence Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the influence relationship category.",
      "content": "The canonical projection icon for the influence relationship category.",
      "html": "<p>The canonical projection icon for the influence relationship category.</p>",
      "url": "/media/relationship-category-influence-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/influence.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-influence-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-inquiry-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-inquiry-projection-icon",
      "title": "inquiry Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the inquiry relationship category.",
      "content": "The canonical projection icon for the inquiry relationship category.",
      "html": "<p>The canonical projection icon for the inquiry relationship category.</p>",
      "url": "/media/relationship-category-inquiry-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/inquiry.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-inquiry-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-knowledge_workflow-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-knowledge_workflow-projection-icon",
      "title": "knowledge workflow Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the knowledge_workflow relationship category.",
      "content": "The canonical projection icon for the knowledge_workflow relationship category.",
      "html": "<p>The canonical projection icon for the knowledge_workflow relationship category.</p>",
      "url": "/media/relationship-category-knowledge_workflow-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/knowledge_workflow.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-knowledge_workflow-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-lineage-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-lineage-projection-icon",
      "title": "lineage Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the lineage relationship category.",
      "content": "The canonical projection icon for the lineage relationship category.",
      "html": "<p>The canonical projection icon for the lineage relationship category.</p>",
      "url": "/media/relationship-category-lineage-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/lineage.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-lineage-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-location-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-location-projection-icon",
      "title": "location Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the location relationship category.",
      "content": "The canonical projection icon for the location relationship category.",
      "html": "<p>The canonical projection icon for the location relationship category.</p>",
      "url": "/media/relationship-category-location-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/location.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-location-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-participation-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-participation-projection-icon",
      "title": "participation Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the participation relationship category.",
      "content": "The canonical projection icon for the participation relationship category.",
      "html": "<p>The canonical projection icon for the participation relationship category.</p>",
      "url": "/media/relationship-category-participation-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/participation.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-participation-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-reasoning-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-reasoning-projection-icon",
      "title": "reasoning Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the reasoning relationship category.",
      "content": "The canonical projection icon for the reasoning relationship category.",
      "html": "<p>The canonical projection icon for the reasoning relationship category.</p>",
      "url": "/media/relationship-category-reasoning-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/reasoning.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-reasoning-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-representation-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-representation-projection-icon",
      "title": "representation Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the representation relationship category.",
      "content": "The canonical projection icon for the representation relationship category.",
      "html": "<p>The canonical projection icon for the representation relationship category.</p>",
      "url": "/media/relationship-category-representation-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/representation.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-representation-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-research_workflow-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-research_workflow-projection-icon",
      "title": "research workflow Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the research_workflow relationship category.",
      "content": "The canonical projection icon for the research_workflow relationship category.",
      "html": "<p>The canonical projection icon for the research_workflow relationship category.</p>",
      "url": "/media/relationship-category-research_workflow-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/research_workflow.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-research_workflow-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-revision-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-revision-projection-icon",
      "title": "revision Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the revision relationship category.",
      "content": "The canonical projection icon for the revision relationship category.",
      "html": "<p>The canonical projection icon for the revision relationship category.</p>",
      "url": "/media/relationship-category-revision-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/revision.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-revision-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-schema_mapping-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-schema_mapping-projection-icon",
      "title": "schema mapping Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the schema_mapping relationship category.",
      "content": "The canonical projection icon for the schema_mapping relationship category.",
      "html": "<p>The canonical projection icon for the schema_mapping relationship category.</p>",
      "url": "/media/relationship-category-schema_mapping-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/schema_mapping.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-schema_mapping-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-social-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-social-projection-icon",
      "title": "social Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the social relationship category.",
      "content": "The canonical projection icon for the social relationship category.",
      "html": "<p>The canonical projection icon for the social relationship category.</p>",
      "url": "/media/relationship-category-social-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/social.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-social-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-temporal-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-temporal-projection-icon",
      "title": "temporal Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the temporal relationship category.",
      "content": "The canonical projection icon for the temporal relationship category.",
      "html": "<p>The canonical projection icon for the temporal relationship category.</p>",
      "url": "/media/relationship-category-temporal-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/temporal.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-temporal-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/relationship-category-uncertainty-projection-icon",
      "protocol_id": "xananode.canonical:media/relationship-category-uncertainty-projection-icon",
      "title": "uncertainty Relationship Category Projection Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "The canonical projection icon for the uncertainty relationship category.",
      "content": "The canonical projection icon for the uncertainty relationship category.",
      "html": "<p>The canonical projection icon for the uncertainty relationship category.</p>",
      "url": "/media/relationship-category-uncertainty-projection-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/media/projection/relationship-categories/uncertainty.svg",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_relationship-category-uncertainty-projection-icon.json"
    },
    {
      "id": "xananode.canonical:media/xananode-android-chrome-192",
      "protocol_id": "xananode.canonical:media/xananode-android-chrome-192",
      "title": "XanaNode Android Chrome Icon 192x192",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "192 pixel Android Chrome icon for XanaNode projections.",
      "content": "192 pixel Android Chrome icon for XanaNode projections.",
      "html": "<p>192 pixel Android Chrome icon for XanaNode projections.</p>",
      "url": "/media/xananode-android-chrome-192/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "XanaNode branding icon derived from the canonical XanaNode mark.",
      "caption": "",
      "creator": "Christian Siefen",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "trademarked - see TRADEMARK.md for permissions and reuse restrictions",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_xananode-android-chrome-192.json"
    },
    {
      "id": "xananode.canonical:media/xananode-android-chrome-512",
      "protocol_id": "xananode.canonical:media/xananode-android-chrome-512",
      "title": "XanaNode Android Chrome Icon 512x512",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "512 pixel Android Chrome icon for XanaNode projections.",
      "content": "512 pixel Android Chrome icon for XanaNode projections.",
      "html": "<p>512 pixel Android Chrome icon for XanaNode projections.</p>",
      "url": "/media/xananode-android-chrome-512/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "XanaNode branding icon derived from the canonical XanaNode mark.",
      "caption": "",
      "creator": "Christian Siefen",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "trademarked - see TRADEMARK.md for permissions and reuse restrictions",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_xananode-android-chrome-512.json"
    },
    {
      "id": "xananode.canonical:media/xananode-apple-touch-icon",
      "protocol_id": "xananode.canonical:media/xananode-apple-touch-icon",
      "title": "XanaNode Apple Touch Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 3,
      "summary": "Apple touch icon for XanaNode projections.",
      "content": "Apple touch icon for XanaNode projections.",
      "html": "<p>Apple touch icon for XanaNode projections.</p>",
      "url": "/media/xananode-apple-touch-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "XanaNode branding icon derived from the canonical XanaNode mark.",
      "caption": "",
      "creator": "Christian Siefen",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "trademarked - see TRADEMARK.md for permissions and reuse restrictions",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_xananode-apple-touch-icon.json"
    },
    {
      "id": "xananode.canonical:media/xananode-favicon-16",
      "protocol_id": "xananode.canonical:media/xananode-favicon-16",
      "title": "XanaNode Favicon 16x16",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 4,
      "summary": "16 pixel PNG favicon for XanaNode projections.",
      "content": "16 pixel PNG favicon for XanaNode projections.",
      "html": "<p>16 pixel PNG favicon for XanaNode projections.</p>",
      "url": "/media/xananode-favicon-16/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "XanaNode branding icon derived from the canonical XanaNode mark.",
      "caption": "",
      "creator": "Christian Siefen",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "trademarked - see TRADEMARK.md for permissions and reuse restrictions",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_xananode-favicon-16.json"
    },
    {
      "id": "xananode.canonical:media/xananode-favicon-32",
      "protocol_id": "xananode.canonical:media/xananode-favicon-32",
      "title": "XanaNode Favicon 32x32",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 4,
      "summary": "32 pixel PNG favicon for XanaNode projections.",
      "content": "32 pixel PNG favicon for XanaNode projections.",
      "html": "<p>32 pixel PNG favicon for XanaNode projections.</p>",
      "url": "/media/xananode-favicon-32/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "XanaNode branding icon derived from the canonical XanaNode mark.",
      "caption": "",
      "creator": "Christian Siefen",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "trademarked - see TRADEMARK.md for permissions and reuse restrictions",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_xananode-favicon-32.json"
    },
    {
      "id": "xananode.canonical:media/xananode-favicon-ico",
      "protocol_id": "xananode.canonical:media/xananode-favicon-ico",
      "title": "XanaNode Favicon ICO",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 4,
      "summary": "Browser favicon bundle for XanaNode projections.",
      "content": "Browser favicon bundle for XanaNode projections.",
      "html": "<p>Browser favicon bundle for XanaNode projections.</p>",
      "url": "/media/xananode-favicon-ico/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "XanaNode branding icon derived from the canonical XanaNode mark.",
      "caption": "",
      "creator": "Christian Siefen",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "trademarked - see TRADEMARK.md for permissions and reuse restrictions",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_xananode-favicon-ico.json"
    },
    {
      "id": "xananode.canonical:media/xananode-icon",
      "protocol_id": "xananode.canonical:media/xananode-icon",
      "title": "XanaNode Icon",
      "type": "media",
      "facets": [],
      "section": "medias",
      "importance": 5,
      "summary": "The XanaNode project icon used as primary media for XanaNode nodes and projection branding.",
      "content": "The XanaNode project icon used as primary media for XanaNode nodes and projection branding.",
      "html": "<p>The XanaNode project icon used as primary media for XanaNode nodes and projection branding.</p>",
      "url": "/media/xananode-icon/",
      "primary_media": "",
      "media_type": "image",
      "file": "",
      "alt": "A connected node mark with orange and blue paths crossing around a bright central node.",
      "caption": "",
      "creator": "Christian Siefen",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "trademarked - see trademark node for permissions and reuse restrictions",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_media_xananode-icon.json"
    },
    {
      "id": "xananode.canonical:observation/markdown-recreation-friction",
      "protocol_id": "xananode.canonical:observation/markdown-recreation-friction",
      "title": "Markdown Recreation Friction",
      "type": "observation",
      "facets": [],
      "section": "observations",
      "importance": 4,
      "summary": "Forcing authors to recreate validated protocol nodes as Markdown creates duplicate governance surfaces and loses the benefit of portable substrate artifacts.",
      "content": "Forcing authors to recreate validated protocol nodes as Markdown creates duplicate governance surfaces and loses the benefit of portable substrate artifacts.",
      "html": "<p>Forcing authors to recreate validated protocol nodes as Markdown creates duplicate governance surfaces and loses the benefit of portable substrate artifacts.</p>",
      "url": "/observation/markdown-recreation-friction/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_observation_markdown-recreation-friction.json"
    },
    {
      "id": "xananode.canonical:organization/built-by-bots",
      "protocol_id": "xananode.canonical:organization/built-by-bots",
      "title": "Built By Bots",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 4,
      "summary": "A historical bridge identity recorded in XanaNode's lineage. It is preserved for provenance, but XanaNode's current and durable public identity lives at XanaNode.com under Christian Siefen's authorship.",
      "content": "A historical bridge identity recorded in XanaNode's lineage. It is preserved for provenance, but XanaNode's current and durable public identity lives at XanaNode.com under Christian Siefen's authorship.",
      "html": "<p>A historical bridge identity recorded in XanaNode&#39;s lineage. It is preserved for provenance, but XanaNode&#39;s current and durable public identity lives at XanaNode.com under Christian Siefen&#39;s authorship.</p>",
      "url": "/organization/built-by-bots/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_organization_built-by-bots.json"
    },
    {
      "id": "xananode.canonical:organization/cytoscape-consortium",
      "protocol_id": "xananode.canonical:organization/cytoscape-consortium",
      "title": "Cytoscape Consortium",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 3,
      "summary": "The organization and community associated with Cytoscape and Cytoscape.js development.",
      "content": "The organization and community associated with Cytoscape and Cytoscape.js development.",
      "html": "<p>The organization and community associated with Cytoscape and Cytoscape.js development.</p>",
      "url": "/organization/cytoscape-consortium/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://cytoscape.org/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_organization_cytoscape-consortium.json"
    },
    {
      "id": "xananode.canonical:organization/hugo-authors",
      "protocol_id": "xananode.canonical:organization/hugo-authors",
      "title": "Hugo Authors",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 3,
      "summary": "The open source project community responsible for Hugo.",
      "content": "The open source project community responsible for Hugo.",
      "html": "<p>The open source project community responsible for Hugo.</p>",
      "url": "/organization/hugo-authors/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/gohugoio/hugo",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_organization_hugo-authors.json"
    },
    {
      "id": "xananode.canonical:person/christian-siefen",
      "protocol_id": "xananode.canonical:person/christian-siefen",
      "title": "Christian Siefen",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 5,
      "summary": "Author of XanaNode and maintainer of its canonical substrate, carrying the project from the Douglas Adams and Hyperland lineage toward a durable knowledge protocol.",
      "content": "Christian Siefen is the human author of XanaNode and the maintainer of its canonical substrate.\n\nThis project did not begin as a detached software exercise. It comes out of the older human-augmentation lineage carried through Vannevar Bush, Douglas Engelbart, Ted Nelson, and the way Douglas Adams made that problem feel vivid and public through Hyperland and the broader Hitchhiker's worldview of interconnected meaning.\n\nXanaNode is where that line of thought becomes an implemented protocol and working stack. The goal is not only to publish documents about knowledge, but to preserve the relationships, provenance, lineage, disagreement, fragments, and raw assets that make knowledge durable when it moves between tools and people.\n\nXanaNode.com is the stable public home of that work. The GitHub profile at kingc95 is the public development surface where the protocol, Core SDK, Workspace, Studio, Mobile, Hugo, and related substrate repositories continue to evolve.",
      "html": "<p>Christian Siefen is the human author of XanaNode and the maintainer of its canonical substrate.</p>\n<p>This project did not begin as a detached software exercise. It comes out of the older human-augmentation lineage carried through Vannevar Bush, Douglas Engelbart, Ted Nelson, and the way Douglas Adams made that problem feel vivid and public through Hyperland and the broader Hitchhiker&#39;s worldview of interconnected meaning.</p>\n<p>XanaNode is where that line of thought becomes an implemented protocol and working stack. The goal is not only to publish documents about knowledge, but to preserve the relationships, provenance, lineage, disagreement, fragments, and raw assets that make knowledge durable when it moves between tools and people.</p>\n<p>XanaNode.com is the stable public home of that work. The GitHub profile at kingc95 is the public development surface where the protocol, Core SDK, Workspace, Studio, Mobile, Hugo, and related substrate repositories continue to evolve.</p>",
      "url": "/person/christian-siefen/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_person_christian-siefen.json"
    },
    {
      "id": "xananode.canonical:place/world-wide-web",
      "protocol_id": "xananode.canonical:place/world-wide-web",
      "title": "World Wide Web",
      "type": "place",
      "facets": [],
      "section": "places",
      "importance": 3,
      "summary": "The public networked space where XanaNode domains, repositories, documentation, and published substrates are reached.",
      "content": "The public networked space where XanaNode domains, repositories, documentation, and published substrates are reached.",
      "html": "<p>The public networked space where XanaNode domains, repositories, documentation, and published substrates are reached.</p>",
      "url": "/place/world-wide-web/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_place_world-wide-web.json"
    },
    {
      "id": "xananode.canonical:project/xananode-core-sdk",
      "protocol_id": "xananode.canonical:project/xananode-core-sdk",
      "title": "XanaNode Core SDK",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 4,
      "summary": "Renderer-independent parser, validator, graph builder, fragment engine, pack composer, suggestion engine, and exporter for XanaNode substrates.",
      "content": "Renderer-independent parser, validator, graph builder, fragment engine, pack composer, suggestion engine, and exporter for XanaNode substrates.",
      "html": "<p>Renderer-independent parser, validator, graph builder, fragment engine, pack composer, suggestion engine, and exporter for XanaNode substrates.</p>",
      "url": "/project/xananode-core-sdk/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Core-SDK",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_project_xananode-core-sdk.json"
    },
    {
      "id": "xananode.canonical:project/xananode-hugo-theme",
      "protocol_id": "xananode.canonical:project/xananode-hugo-theme",
      "title": "XanaNode Hugo Theme",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 4,
      "summary": "Static-site renderer and graph viewer for XanaNode-compatible substrates.",
      "content": "Static-site renderer and graph viewer for XanaNode-compatible substrates.",
      "html": "<p>Static-site renderer and graph viewer for XanaNode-compatible substrates.</p>",
      "url": "/project/xananode-hugo-theme/",
      "primary_media": "xananode.canonical:media/xananode-icon",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/xananode-hugo",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_project_xananode-hugo-theme.json"
    },
    {
      "id": "xananode.canonical:project/xananode-mobile",
      "protocol_id": "xananode.canonical:project/xananode-mobile",
      "title": "XanaNode Mobile",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 4,
      "summary": "Android capture companion for quick substrate intake, field notes, media capture, file import, URL import, QR intake, and portable .substrate handoff.",
      "content": "Android capture companion for quick substrate intake, field notes, media capture, file import, URL import, QR intake, and portable .substrate handoff.",
      "html": "<p>Android capture companion for quick substrate intake, field notes, media capture, file import, URL import, QR intake, and portable .substrate handoff.</p>",
      "url": "/project/xananode-mobile/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Mobile",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_project_xananode-mobile.json"
    },
    {
      "id": "xananode.canonical:project/xananode-protocol",
      "protocol_id": "xananode.canonical:project/xananode-protocol",
      "title": "XanaNode Protocol",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 4,
      "summary": "Canonical XanaNode protocol repository containing schemas, registries, specs, governance, examples, branding, and proposals.",
      "content": "Canonical XanaNode protocol repository containing schemas, registries, specs, governance, examples, branding, and proposals.",
      "html": "<p>Canonical XanaNode protocol repository containing schemas, registries, specs, governance, examples, branding, and proposals.</p>",
      "url": "/project/xananode-protocol/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_project_xananode-protocol.json"
    },
    {
      "id": "xananode.canonical:project/xananode-studio",
      "protocol_id": "xananode.canonical:project/xananode-studio",
      "title": "XanaNode Studio",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 4,
      "summary": "Electron authoring workbench for creating nodes, editing protocol metadata, navigating graph context, and previewing projection layers.",
      "content": "Electron authoring workbench for creating nodes, editing protocol metadata, navigating graph context, and previewing projection layers.",
      "html": "<p>Electron authoring workbench for creating nodes, editing protocol metadata, navigating graph context, and previewing projection layers.</p>",
      "url": "/project/xananode-studio/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Studio",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_project_xananode-studio.json"
    },
    {
      "id": "xananode.canonical:project/xananode-workspace",
      "protocol_id": "xananode.canonical:project/xananode-workspace",
      "title": "XanaNode Workspace",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 4,
      "summary": "Local-first workspace engine for creating, opening, validating, building, importing, and snapshotting XanaNode substrates.",
      "content": "Local-first workspace engine for creating, opening, validating, building, importing, and snapshotting XanaNode substrates.",
      "html": "<p>Local-first workspace engine for creating, opening, validating, building, importing, and snapshotting XanaNode substrates.</p>",
      "url": "/project/xananode-workspace/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Workspace",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_project_xananode-workspace.json"
    },
    {
      "id": "xananode.canonical:publication/xnp-0004-merge-validation",
      "protocol_id": "xananode.canonical:publication/xnp-0004-merge-validation",
      "title": "XNP-0004 Merge Validation",
      "type": "publication",
      "facets": [],
      "section": "publications",
      "importance": 4,
      "summary": "A protocol proposal describing merge validation for independently authored substrates.",
      "content": "A protocol proposal describing merge validation for independently authored substrates.",
      "html": "<p>A protocol proposal describing merge validation for independently authored substrates.</p>",
      "url": "/publication/xnp-0004-merge-validation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/proposals/XNP-0004-merge-validation.md",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_publication_xnp-0004-merge-validation.json"
    },
    {
      "id": "xananode.canonical:question/how-do-i-use-xananode-myself",
      "protocol_id": "xananode.canonical:question/how-do-i-use-xananode-myself",
      "title": "How do I use XanaNode myself?",
      "type": "question",
      "facets": [],
      "section": "questions",
      "importance": 5,
      "summary": "Start with a substrate, add nodes and typed relationships, validate it with Core, and project or capture it with tools such as Studio, Mobile, or Hugo.",
      "content": "A user can begin with a small question, claim, source, or trail. Core can initialize a substrate, validate nodes and relationships, generate review suggestions, and build bundles. Mobile can capture notes, files, URLs, and field media into a compliant working substrate. Studio can open a substrate as a local working copy so authors can edit without pretending they own someone else's substrate. Hugo can mount or import validated substrate data for a public website.",
      "html": "<p>A user can begin with a small question, claim, source, or trail. Core can initialize a substrate, validate nodes and relationships, generate review suggestions, and build bundles. Mobile can capture notes, files, URLs, and field media into a compliant working substrate. Studio can open a substrate as a local working copy so authors can edit without pretending they own someone else&#39;s substrate. Hugo can mount or import validated substrate data for a public website.</p>",
      "url": "/question/how-do-i-use-xananode-myself/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_question_how-do-i-use-xananode-myself.json"
    },
    {
      "id": "xananode.canonical:question/how-do-sharing-rules-work",
      "protocol_id": "xananode.canonical:question/how-do-sharing-rules-work",
      "title": "How do sharing rules work?",
      "type": "question",
      "facets": [],
      "section": "questions",
      "importance": 5,
      "summary": "Nodes are shareable by default, but a substrate can exclude individual nodes, relationships, trails, or selected groups from shared exports.",
      "content": "XanaNode assumes portability unless an author says otherwise. A private workspace can hold a large substrate while its pack export omits sensitive records. Sharing rules can live on the substrate manifest or on individual nodes, and official tools must respect those rules before publishing, exporting, mounting, or federating records.",
      "html": "<p>XanaNode assumes portability unless an author says otherwise. A private workspace can hold a large substrate while its pack export omits sensitive records. Sharing rules can live on the substrate manifest or on individual nodes, and official tools must respect those rules before publishing, exporting, mounting, or federating records.</p>",
      "url": "/question/how-do-sharing-rules-work/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_question_how-do-sharing-rules-work.json"
    },
    {
      "id": "xananode.canonical:question/is-xananode-a-real-working-stack",
      "protocol_id": "xananode.canonical:question/is-xananode-a-real-working-stack",
      "title": "Is XanaNode a real working stack?",
      "type": "question",
      "facets": [],
      "section": "questions",
      "importance": 5,
      "summary": "Yes. XanaNode has a protocol, Core SDK, Workspace layer, Studio authoring application, Mobile capture companion, and Hugo projection layer that work together.",
      "content": "XanaNode is not only a design idea. The current stack includes protocol schemas and governance rules, a Core SDK for validation and pack building, Workspace for local substrate handling, Studio for desktop authoring, Mobile for capture-first substrate intake, and Hugo for static public projection. The pieces are versioned so a reader can trace what each part does and why it exists.",
      "html": "<p>XanaNode is not only a design idea. The current stack includes protocol schemas and governance rules, a Core SDK for validation and pack building, Workspace for local substrate handling, Studio for desktop authoring, Mobile for capture-first substrate intake, and Hugo for static public projection. The pieces are versioned so a reader can trace what each part does and why it exists.</p>",
      "url": "/question/is-xananode-a-real-working-stack/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_question_is-xananode-a-real-working-stack.json"
    },
    {
      "id": "xananode.canonical:question/who-made-xananode",
      "protocol_id": "xananode.canonical:question/who-made-xananode",
      "title": "Who made XanaNode?",
      "type": "question",
      "facets": [],
      "section": "questions",
      "importance": 5,
      "summary": "XanaNode is authored by Christian Siefen. Built By Bots remains part of the project's historical lineage, but XanaNode.com is the long-term public home of the work.",
      "content": "The canonical project substrate identifies Christian Siefen as the human author of XanaNode. It also preserves historical lineage records, including the temporary Built By Bots bridge period, the current XanaNode.com domain, the public repositories, branding, and support links. That provenance matters because people should be able to trace who authored a substrate, how the public identity evolved, and where project work now lives.",
      "html": "<p>The canonical project substrate identifies Christian Siefen as the human author of XanaNode. It also preserves historical lineage records, including the temporary Built By Bots bridge period, the current XanaNode.com domain, the public repositories, branding, and support links. That provenance matters because people should be able to trace who authored a substrate, how the public identity evolved, and where project work now lives.</p>",
      "url": "/question/who-made-xananode/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_question_who-made-xananode.json"
    },
    {
      "id": "xananode.canonical:question/why-does-xananode-exist",
      "protocol_id": "xananode.canonical:question/why-does-xananode-exist",
      "title": "Why does XanaNode exist?",
      "type": "question",
      "facets": [],
      "section": "questions",
      "importance": 5,
      "summary": "XanaNode exists to preserve relationships, provenance, disagreement, lineage, and reusable fragments as durable knowledge structure.",
      "content": "A normal website can publish text. XanaNode publishes the relationships behind the text. It is meant for authored knowledge substrates where sources, claims, trails, versions, transclusions, conflicts, and projection layers remain inspectable instead of disappearing into a flat page.",
      "html": "<p>A normal website can publish text. XanaNode publishes the relationships behind the text. It is meant for authored knowledge substrates where sources, claims, trails, versions, transclusions, conflicts, and projection layers remain inspectable instead of disappearing into a flat page.</p>",
      "url": "/question/why-does-xananode-exist/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_question_why-does-xananode-exist.json"
    },
    {
      "id": "xananode.canonical:relationship/protocol-implements-claim",
      "protocol_id": "xananode.canonical:relationship/protocol-implements-claim",
      "title": "Protocol Implements Relationship Preservation",
      "type": "relationship",
      "facets": [],
      "section": "relationships",
      "importance": 4,
      "summary": "A first-class relationship node representing that the XanaNode protocol implements the claim that relationships preserve knowledge.",
      "content": "A first-class relationship node representing that the XanaNode protocol implements the claim that relationships preserve knowledge.",
      "html": "<p>A first-class relationship node representing that the XanaNode protocol implements the claim that relationships preserve knowledge.</p>",
      "url": "/relationship/protocol-implements-claim/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_relationship_protocol-implements-claim.json"
    },
    {
      "id": "xananode.canonical:revision/canonical-pack-v0-1-0",
      "protocol_id": "xananode.canonical:revision/canonical-pack-v0-1-0",
      "title": "Canonical Pack v0.1.0",
      "type": "revision",
      "facets": [],
      "section": "revisions",
      "importance": 3,
      "summary": "The first Core-bundled revision of the canonical XanaNode pack.",
      "content": "The first Core-bundled revision of the canonical XanaNode pack.",
      "html": "<p>The first Core-bundled revision of the canonical XanaNode pack.</p>",
      "url": "/revision/canonical-pack-v0-1-0/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_revision_canonical-pack-v0-1-0.json"
    },
    {
      "id": "xananode.canonical:schema/canonical-schema-author-profile",
      "protocol_id": "xananode.canonical:schema/canonical-schema-author-profile",
      "title": "Author Profile Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "Canonical schema registry entry for author-profile.",
      "content": "Canonical schema registry entry for author-profile.",
      "html": "<p>Canonical schema registry entry for author-profile.</p>",
      "url": "/schema/canonical-schema-author-profile/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/author-profile.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_canonical-schema-author-profile.json"
    },
    {
      "id": "xananode.canonical:schema/canonical-schema-compatibility-report",
      "protocol_id": "xananode.canonical:schema/canonical-schema-compatibility-report",
      "title": "Compatibility Report Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "Canonical schema registry entry for compatibility-report.",
      "content": "Canonical schema registry entry for compatibility-report.",
      "html": "<p>Canonical schema registry entry for compatibility-report.</p>",
      "url": "/schema/canonical-schema-compatibility-report/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/compatibility-report.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_canonical-schema-compatibility-report.json"
    },
    {
      "id": "xananode.canonical:schema/canonical-schema-merge-report",
      "protocol_id": "xananode.canonical:schema/canonical-schema-merge-report",
      "title": "Merge Report Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "Canonical schema registry entry for merge-report.",
      "content": "Canonical schema registry entry for merge-report.",
      "html": "<p>Canonical schema registry entry for merge-report.</p>",
      "url": "/schema/canonical-schema-merge-report/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/merge-report.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_canonical-schema-merge-report.json"
    },
    {
      "id": "xananode.canonical:schema/canonical-schema-nanopublication",
      "protocol_id": "xananode.canonical:schema/canonical-schema-nanopublication",
      "title": "Nanopublication Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "Canonical schema registry entry for nanopublication.",
      "content": "Canonical schema registry entry for nanopublication.",
      "html": "<p>Canonical schema registry entry for nanopublication.</p>",
      "url": "/schema/canonical-schema-nanopublication/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/nanopublication.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_canonical-schema-nanopublication.json"
    },
    {
      "id": "xananode.canonical:schema/canonical-schema-ro-crate-metadata",
      "protocol_id": "xananode.canonical:schema/canonical-schema-ro-crate-metadata",
      "title": "Ro Crate Metadata Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "Canonical schema registry entry for ro-crate-metadata.",
      "content": "Canonical schema registry entry for ro-crate-metadata.",
      "html": "<p>Canonical schema registry entry for ro-crate-metadata.</p>",
      "url": "/schema/canonical-schema-ro-crate-metadata/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/ro-crate-metadata.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_canonical-schema-ro-crate-metadata.json"
    },
    {
      "id": "xananode.canonical:schema/canonical-schema-substrate-diff",
      "protocol_id": "xananode.canonical:schema/canonical-schema-substrate-diff",
      "title": "Substrate Diff Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "Canonical schema registry entry for substrate-diff.",
      "content": "Canonical schema registry entry for substrate-diff.",
      "html": "<p>Canonical schema registry entry for substrate-diff.</p>",
      "url": "/schema/canonical-schema-substrate-diff/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/substrate-diff.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_canonical-schema-substrate-diff.json"
    },
    {
      "id": "xananode.canonical:schema/canonical-schema-substrate-manifest",
      "protocol_id": "xananode.canonical:schema/canonical-schema-substrate-manifest",
      "title": "Substrate Manifest Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "Canonical schema registry entry for substrate-manifest.",
      "content": "Canonical schema registry entry for substrate-manifest.",
      "html": "<p>Canonical schema registry entry for substrate-manifest.</p>",
      "url": "/schema/canonical-schema-substrate-manifest/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/substrate-manifest.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_canonical-schema-substrate-manifest.json"
    },
    {
      "id": "xananode.canonical:schema/canonical-schema-substrate-node",
      "protocol_id": "xananode.canonical:schema/canonical-schema-substrate-node",
      "title": "Substrate Node Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "Canonical schema registry entry for substrate-node.",
      "content": "Canonical schema registry entry for substrate-node.",
      "html": "<p>Canonical schema registry entry for substrate-node.</p>",
      "url": "/schema/canonical-schema-substrate-node/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/substrate-node.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_canonical-schema-substrate-node.json"
    },
    {
      "id": "xananode.canonical:schema/canonical-schema-substrate-relationships",
      "protocol_id": "xananode.canonical:schema/canonical-schema-substrate-relationships",
      "title": "Substrate Relationships Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "Canonical schema registry entry for substrate-relationships.",
      "content": "Canonical schema registry entry for substrate-relationships.",
      "html": "<p>Canonical schema registry entry for substrate-relationships.</p>",
      "url": "/schema/canonical-schema-substrate-relationships/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/substrate-relationships.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_canonical-schema-substrate-relationships.json"
    },
    {
      "id": "xananode.canonical:schema/canonical-schema-xananode-node-types",
      "protocol_id": "xananode.canonical:schema/canonical-schema-xananode-node-types",
      "title": "XanaNode Node Types Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "Canonical schema registry entry for xananode-node-types.",
      "content": "Canonical schema registry entry for xananode-node-types.",
      "html": "<p>Canonical schema registry entry for xananode-node-types.</p>",
      "url": "/schema/canonical-schema-xananode-node-types/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/xananode-node-types.schema.v0.3.0.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_canonical-schema-xananode-node-types.json"
    },
    {
      "id": "xananode.canonical:schema/canonical-schema-xananode-property-registry",
      "protocol_id": "xananode.canonical:schema/canonical-schema-xananode-property-registry",
      "title": "XanaNode Property Registry Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "Canonical schema registry entry for xananode-property-registry.",
      "content": "Canonical schema registry entry for xananode-property-registry.",
      "html": "<p>Canonical schema registry entry for xananode-property-registry.</p>",
      "url": "/schema/canonical-schema-xananode-property-registry/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/property-registry.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_canonical-schema-xananode-property-registry.json"
    },
    {
      "id": "xananode.canonical:schema/canonical-schema-xananode-relationship-types",
      "protocol_id": "xananode.canonical:schema/canonical-schema-xananode-relationship-types",
      "title": "XanaNode Relationship Types Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "Canonical schema registry entry for xananode-relationship-types.",
      "content": "Canonical schema registry entry for xananode-relationship-types.",
      "html": "<p>Canonical schema registry entry for xananode-relationship-types.</p>",
      "url": "/schema/canonical-schema-xananode-relationship-types/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/xananode-relationship-types.schema.v0.5.0.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_canonical-schema-xananode-relationship-types.json"
    },
    {
      "id": "xananode.canonical:schema/canonical-schemas-registry",
      "protocol_id": "xananode.canonical:schema/canonical-schemas-registry",
      "title": "Canonical Schemas Registry",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The protocol registry that identifies canonical schema artifacts and their current versions.",
      "content": "The protocol registry that identifies canonical schema artifacts and their current versions.",
      "html": "<p>The protocol registry that identifies canonical schema artifacts and their current versions.</p>",
      "url": "/schema/canonical-schemas-registry/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/registry/canonical-schemas.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_canonical-schemas-registry.json"
    },
    {
      "id": "xananode.canonical:schema/federation-targets-registry",
      "protocol_id": "xananode.canonical:schema/federation-targets-registry",
      "title": "Federation Targets Registry",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The protocol registry of known substrate repositories, mounted substrate targets, and recommended federation entry points.",
      "content": "The protocol registry of known substrate repositories, mounted substrate targets, and recommended federation entry points.",
      "html": "<p>The protocol registry of known substrate repositories, mounted substrate targets, and recommended federation entry points.</p>",
      "url": "/schema/federation-targets-registry/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/registry/federation-targets.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_federation-targets-registry.json"
    },
    {
      "id": "xananode.canonical:schema/known-implementations-registry",
      "protocol_id": "xananode.canonical:schema/known-implementations-registry",
      "title": "Known Implementations Registry",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The protocol registry of tools, renderers, validators, and substrates that declare XanaNode compatibility.",
      "content": "The protocol registry of tools, renderers, validators, and substrates that declare XanaNode compatibility.",
      "html": "<p>The protocol registry of tools, renderers, validators, and substrates that declare XanaNode compatibility.</p>",
      "url": "/schema/known-implementations-registry/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/registry/known-implementations.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_known-implementations-registry.json"
    },
    {
      "id": "xananode.canonical:schema/namespace-example.merge",
      "protocol_id": "xananode.canonical:schema/namespace-example.merge",
      "title": "Federation Merge Report Example Namespace",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "Namespace used for merge report and mapping records in the federation example.",
      "content": "Namespace used for merge report and mapping records in the federation example.",
      "html": "<p>Namespace used for merge report and mapping records in the federation example.</p>",
      "url": "/schema/namespace-example.merge/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_namespace-example.merge.json"
    },
    {
      "id": "xananode.canonical:schema/namespace-example.minimal",
      "protocol_id": "xananode.canonical:schema/namespace-example.minimal",
      "title": "Minimal Example Namespace",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "Namespace used by the minimal example substrate.",
      "content": "Namespace used by the minimal example substrate.",
      "html": "<p>Namespace used by the minimal example substrate.</p>",
      "url": "/schema/namespace-example.minimal/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_namespace-example.minimal.json"
    },
    {
      "id": "xananode.canonical:schema/namespace-example.researcher_a",
      "protocol_id": "xananode.canonical:schema/namespace-example.researcher_a",
      "title": "Federation Example A Namespace",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "Namespace used by the first independently authored federation example substrate.",
      "content": "Namespace used by the first independently authored federation example substrate.",
      "html": "<p>Namespace used by the first independently authored federation example substrate.</p>",
      "url": "/schema/namespace-example.researcher_a/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_namespace-example.researcher_a.json"
    },
    {
      "id": "xananode.canonical:schema/namespace-example.researcher_b",
      "protocol_id": "xananode.canonical:schema/namespace-example.researcher_b",
      "title": "Federation Example B Namespace",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "Namespace used by the second independently authored federation example substrate.",
      "content": "Namespace used by the second independently authored federation example substrate.",
      "html": "<p>Namespace used by the second independently authored federation example substrate.</p>",
      "url": "/schema/namespace-example.researcher_b/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_namespace-example.researcher_b.json"
    },
    {
      "id": "xananode.canonical:schema/namespace-registry",
      "protocol_id": "xananode.canonical:schema/namespace-registry",
      "title": "Namespace Registry",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The protocol registry of known namespace identifiers, owners, and extension vocabularies.",
      "content": "The protocol registry of known namespace identifiers, owners, and extension vocabularies.",
      "html": "<p>The protocol registry of known namespace identifiers, owners, and extension vocabularies.</p>",
      "url": "/schema/namespace-registry/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/registry/namespaces.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_namespace-registry.json"
    },
    {
      "id": "xananode.canonical:schema/namespace-schema",
      "protocol_id": "xananode.canonical:schema/namespace-schema",
      "title": "Namespace Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for declaring interoperable XanaNode namespaces.",
      "content": "The JSON Schema for declaring interoperable XanaNode namespaces.",
      "html": "<p>The JSON Schema for declaring interoperable XanaNode namespaces.</p>",
      "url": "/schema/namespace-schema/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/namespace.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_namespace-schema.json"
    },
    {
      "id": "xananode.canonical:schema/namespace-xananode",
      "protocol_id": "xananode.canonical:schema/namespace-xananode",
      "title": "XanaNode Core",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "Canonical namespace for core XanaNode node and relationship types.",
      "content": "Canonical namespace for core XanaNode node and relationship types.",
      "html": "<p>Canonical namespace for core XanaNode node and relationship types.</p>",
      "url": "/schema/namespace-xananode/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_namespace-xananode.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-claim-causal",
      "protocol_id": "xananode.canonical:schema/node-subtype-claim-causal",
      "title": "Claim subtype: causal",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "causal is an allowed subtype of the claim node type.",
      "content": "causal is an allowed subtype of the claim node type.",
      "html": "<p>causal is an allowed subtype of the claim node type.</p>",
      "url": "/schema/node-subtype-claim-causal/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-claim-causal.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-claim-comparative",
      "protocol_id": "xananode.canonical:schema/node-subtype-claim-comparative",
      "title": "Claim subtype: comparative",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "comparative is an allowed subtype of the claim node type.",
      "content": "comparative is an allowed subtype of the claim node type.",
      "html": "<p>comparative is an allowed subtype of the claim node type.</p>",
      "url": "/schema/node-subtype-claim-comparative/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-claim-comparative.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-claim-definition",
      "protocol_id": "xananode.canonical:schema/node-subtype-claim-definition",
      "title": "Claim subtype: definition",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "definition is an allowed subtype of the claim node type.",
      "content": "definition is an allowed subtype of the claim node type.",
      "html": "<p>definition is an allowed subtype of the claim node type.</p>",
      "url": "/schema/node-subtype-claim-definition/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-claim-definition.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-claim-historical",
      "protocol_id": "xananode.canonical:schema/node-subtype-claim-historical",
      "title": "Claim subtype: historical",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "historical is an allowed subtype of the claim node type.",
      "content": "historical is an allowed subtype of the claim node type.",
      "html": "<p>historical is an allowed subtype of the claim node type.</p>",
      "url": "/schema/node-subtype-claim-historical/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-claim-historical.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-claim-interpretive",
      "protocol_id": "xananode.canonical:schema/node-subtype-claim-interpretive",
      "title": "Claim subtype: interpretive",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "interpretive is an allowed subtype of the claim node type.",
      "content": "interpretive is an allowed subtype of the claim node type.",
      "html": "<p>interpretive is an allowed subtype of the claim node type.</p>",
      "url": "/schema/node-subtype-claim-interpretive/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-claim-interpretive.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-claim-normative",
      "protocol_id": "xananode.canonical:schema/node-subtype-claim-normative",
      "title": "Claim subtype: normative",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "normative is an allowed subtype of the claim node type.",
      "content": "normative is an allowed subtype of the claim node type.",
      "html": "<p>normative is an allowed subtype of the claim node type.</p>",
      "url": "/schema/node-subtype-claim-normative/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-claim-normative.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-claim-predictive",
      "protocol_id": "xananode.canonical:schema/node-subtype-claim-predictive",
      "title": "Claim subtype: predictive",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "predictive is an allowed subtype of the claim node type.",
      "content": "predictive is an allowed subtype of the claim node type.",
      "html": "<p>predictive is an allowed subtype of the claim node type.</p>",
      "url": "/schema/node-subtype-claim-predictive/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-claim-predictive.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-communication-announcement",
      "protocol_id": "xananode.canonical:schema/node-subtype-communication-announcement",
      "title": "Communication subtype: announcement",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "announcement is an allowed subtype of the communication node type.",
      "content": "announcement is an allowed subtype of the communication node type.",
      "html": "<p>announcement is an allowed subtype of the communication node type.</p>",
      "url": "/schema/node-subtype-communication-announcement/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-communication-announcement.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-communication-broadcast",
      "protocol_id": "xananode.canonical:schema/node-subtype-communication-broadcast",
      "title": "Communication subtype: broadcast",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "broadcast is an allowed subtype of the communication node type.",
      "content": "broadcast is an allowed subtype of the communication node type.",
      "html": "<p>broadcast is an allowed subtype of the communication node type.</p>",
      "url": "/schema/node-subtype-communication-broadcast/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-communication-broadcast.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-communication-chat",
      "protocol_id": "xananode.canonical:schema/node-subtype-communication-chat",
      "title": "Communication subtype: chat",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "chat is an allowed subtype of the communication node type.",
      "content": "chat is an allowed subtype of the communication node type.",
      "html": "<p>chat is an allowed subtype of the communication node type.</p>",
      "url": "/schema/node-subtype-communication-chat/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-communication-chat.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-communication-conversation",
      "protocol_id": "xananode.canonical:schema/node-subtype-communication-conversation",
      "title": "Communication subtype: conversation",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "conversation is an allowed subtype of the communication node type.",
      "content": "conversation is an allowed subtype of the communication node type.",
      "html": "<p>conversation is an allowed subtype of the communication node type.</p>",
      "url": "/schema/node-subtype-communication-conversation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-communication-conversation.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-communication-debate",
      "protocol_id": "xananode.canonical:schema/node-subtype-communication-debate",
      "title": "Communication subtype: debate",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "debate is an allowed subtype of the communication node type.",
      "content": "debate is an allowed subtype of the communication node type.",
      "html": "<p>debate is an allowed subtype of the communication node type.</p>",
      "url": "/schema/node-subtype-communication-debate/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-communication-debate.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-communication-discussion",
      "protocol_id": "xananode.canonical:schema/node-subtype-communication-discussion",
      "title": "Communication subtype: discussion",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "discussion is an allowed subtype of the communication node type.",
      "content": "discussion is an allowed subtype of the communication node type.",
      "html": "<p>discussion is an allowed subtype of the communication node type.</p>",
      "url": "/schema/node-subtype-communication-discussion/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-communication-discussion.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-communication-forum",
      "protocol_id": "xananode.canonical:schema/node-subtype-communication-forum",
      "title": "Communication subtype: forum",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "forum is an allowed subtype of the communication node type.",
      "content": "forum is an allowed subtype of the communication node type.",
      "html": "<p>forum is an allowed subtype of the communication node type.</p>",
      "url": "/schema/node-subtype-communication-forum/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-communication-forum.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-communication-interview",
      "protocol_id": "xananode.canonical:schema/node-subtype-communication-interview",
      "title": "Communication subtype: interview",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "interview is an allowed subtype of the communication node type.",
      "content": "interview is an allowed subtype of the communication node type.",
      "html": "<p>interview is an allowed subtype of the communication node type.</p>",
      "url": "/schema/node-subtype-communication-interview/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-communication-interview.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-communication-meeting",
      "protocol_id": "xananode.canonical:schema/node-subtype-communication-meeting",
      "title": "Communication subtype: meeting",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "meeting is an allowed subtype of the communication node type.",
      "content": "meeting is an allowed subtype of the communication node type.",
      "html": "<p>meeting is an allowed subtype of the communication node type.</p>",
      "url": "/schema/node-subtype-communication-meeting/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-communication-meeting.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-communication-message",
      "protocol_id": "xananode.canonical:schema/node-subtype-communication-message",
      "title": "Communication subtype: message",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "message is an allowed subtype of the communication node type.",
      "content": "message is an allowed subtype of the communication node type.",
      "html": "<p>message is an allowed subtype of the communication node type.</p>",
      "url": "/schema/node-subtype-communication-message/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-communication-message.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-communication-presentation",
      "protocol_id": "xananode.canonical:schema/node-subtype-communication-presentation",
      "title": "Communication subtype: presentation",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "presentation is an allowed subtype of the communication node type.",
      "content": "presentation is an allowed subtype of the communication node type.",
      "html": "<p>presentation is an allowed subtype of the communication node type.</p>",
      "url": "/schema/node-subtype-communication-presentation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-communication-presentation.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-communication-publication",
      "protocol_id": "xananode.canonical:schema/node-subtype-communication-publication",
      "title": "Communication subtype: publication",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "publication is an allowed subtype of the communication node type.",
      "content": "publication is an allowed subtype of the communication node type.",
      "html": "<p>publication is an allowed subtype of the communication node type.</p>",
      "url": "/schema/node-subtype-communication-publication/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-communication-publication.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-communication-thread",
      "protocol_id": "xananode.canonical:schema/node-subtype-communication-thread",
      "title": "Communication subtype: thread",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "thread is an allowed subtype of the communication node type.",
      "content": "thread is an allowed subtype of the communication node type.",
      "html": "<p>thread is an allowed subtype of the communication node type.</p>",
      "url": "/schema/node-subtype-communication-thread/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-communication-thread.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-community-fan",
      "protocol_id": "xananode.canonical:schema/node-subtype-community-fan",
      "title": "Community subtype: fan",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "fan is an allowed subtype of the community node type.",
      "content": "fan is an allowed subtype of the community node type.",
      "html": "<p>fan is an allowed subtype of the community node type.</p>",
      "url": "/schema/node-subtype-community-fan/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-community-fan.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-community-forum",
      "protocol_id": "xananode.canonical:schema/node-subtype-community-forum",
      "title": "Community subtype: forum",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "forum is an allowed subtype of the community node type.",
      "content": "forum is an allowed subtype of the community node type.",
      "html": "<p>forum is an allowed subtype of the community node type.</p>",
      "url": "/schema/node-subtype-community-forum/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-community-forum.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-community-local",
      "protocol_id": "xananode.canonical:schema/node-subtype-community-local",
      "title": "Community subtype: local",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "local is an allowed subtype of the community node type.",
      "content": "local is an allowed subtype of the community node type.",
      "html": "<p>local is an allowed subtype of the community node type.</p>",
      "url": "/schema/node-subtype-community-local/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-community-local.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-community-online",
      "protocol_id": "xananode.canonical:schema/node-subtype-community-online",
      "title": "Community subtype: online",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "online is an allowed subtype of the community node type.",
      "content": "online is an allowed subtype of the community node type.",
      "html": "<p>online is an allowed subtype of the community node type.</p>",
      "url": "/schema/node-subtype-community-online/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-community-online.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-community-open_source",
      "protocol_id": "xananode.canonical:schema/node-subtype-community-open_source",
      "title": "Community subtype: open source",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "open_source is an allowed subtype of the community node type.",
      "content": "open_source is an allowed subtype of the community node type.",
      "html": "<p>open_source is an allowed subtype of the community node type.</p>",
      "url": "/schema/node-subtype-community-open_source/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-community-open_source.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-community-professional",
      "protocol_id": "xananode.canonical:schema/node-subtype-community-professional",
      "title": "Community subtype: professional",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "professional is an allowed subtype of the community node type.",
      "content": "professional is an allowed subtype of the community node type.",
      "html": "<p>professional is an allowed subtype of the community node type.</p>",
      "url": "/schema/node-subtype-community-professional/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-community-professional.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-community-research",
      "protocol_id": "xananode.canonical:schema/node-subtype-community-research",
      "title": "Community subtype: research",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "research is an allowed subtype of the community node type.",
      "content": "research is an allowed subtype of the community node type.",
      "html": "<p>research is an allowed subtype of the community node type.</p>",
      "url": "/schema/node-subtype-community-research/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-community-research.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-concept-distinction",
      "protocol_id": "xananode.canonical:schema/node-subtype-concept-distinction",
      "title": "Concept subtype: distinction",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "distinction is an allowed subtype of the concept node type.",
      "content": "distinction is an allowed subtype of the concept node type.",
      "html": "<p>distinction is an allowed subtype of the concept node type.</p>",
      "url": "/schema/node-subtype-concept-distinction/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-concept-distinction.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-concept-failure_mode",
      "protocol_id": "xananode.canonical:schema/node-subtype-concept-failure_mode",
      "title": "Concept subtype: failure mode",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "failure_mode is an allowed subtype of the concept node type.",
      "content": "failure_mode is an allowed subtype of the concept node type.",
      "html": "<p>failure_mode is an allowed subtype of the concept node type.</p>",
      "url": "/schema/node-subtype-concept-failure_mode/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-concept-failure_mode.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-concept-frame",
      "protocol_id": "xananode.canonical:schema/node-subtype-concept-frame",
      "title": "Concept subtype: frame",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "frame is an allowed subtype of the concept node type.",
      "content": "frame is an allowed subtype of the concept node type.",
      "html": "<p>frame is an allowed subtype of the concept node type.</p>",
      "url": "/schema/node-subtype-concept-frame/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-concept-frame.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-concept-method",
      "protocol_id": "xananode.canonical:schema/node-subtype-concept-method",
      "title": "Concept subtype: method",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "method is an allowed subtype of the concept node type.",
      "content": "method is an allowed subtype of the concept node type.",
      "html": "<p>method is an allowed subtype of the concept node type.</p>",
      "url": "/schema/node-subtype-concept-method/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-concept-method.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-concept-pattern",
      "protocol_id": "xananode.canonical:schema/node-subtype-concept-pattern",
      "title": "Concept subtype: pattern",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "pattern is an allowed subtype of the concept node type.",
      "content": "pattern is an allowed subtype of the concept node type.",
      "html": "<p>pattern is an allowed subtype of the concept node type.</p>",
      "url": "/schema/node-subtype-concept-pattern/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-concept-pattern.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-concept-principle",
      "protocol_id": "xananode.canonical:schema/node-subtype-concept-principle",
      "title": "Concept subtype: principle",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "principle is an allowed subtype of the concept node type.",
      "content": "principle is an allowed subtype of the concept node type.",
      "html": "<p>principle is an allowed subtype of the concept node type.</p>",
      "url": "/schema/node-subtype-concept-principle/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-concept-principle.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-concept-theory",
      "protocol_id": "xananode.canonical:schema/node-subtype-concept-theory",
      "title": "Concept subtype: theory",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "theory is an allowed subtype of the concept node type.",
      "content": "theory is an allowed subtype of the concept node type.",
      "html": "<p>theory is an allowed subtype of the concept node type.</p>",
      "url": "/schema/node-subtype-concept-theory/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-concept-theory.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-essay-analysis",
      "protocol_id": "xananode.canonical:schema/node-subtype-essay-analysis",
      "title": "Essay subtype: analysis",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "analysis is an allowed subtype of the essay node type.",
      "content": "analysis is an allowed subtype of the essay node type.",
      "html": "<p>analysis is an allowed subtype of the essay node type.</p>",
      "url": "/schema/node-subtype-essay-analysis/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-essay-analysis.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-essay-argument",
      "protocol_id": "xananode.canonical:schema/node-subtype-essay-argument",
      "title": "Essay subtype: argument",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "argument is an allowed subtype of the essay node type.",
      "content": "argument is an allowed subtype of the essay node type.",
      "html": "<p>argument is an allowed subtype of the essay node type.</p>",
      "url": "/schema/node-subtype-essay-argument/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-essay-argument.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-essay-critique",
      "protocol_id": "xananode.canonical:schema/node-subtype-essay-critique",
      "title": "Essay subtype: critique",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "critique is an allowed subtype of the essay node type.",
      "content": "critique is an allowed subtype of the essay node type.",
      "html": "<p>critique is an allowed subtype of the essay node type.</p>",
      "url": "/schema/node-subtype-essay-critique/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-essay-critique.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-essay-explainer",
      "protocol_id": "xananode.canonical:schema/node-subtype-essay-explainer",
      "title": "Essay subtype: explainer",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "explainer is an allowed subtype of the essay node type.",
      "content": "explainer is an allowed subtype of the essay node type.",
      "html": "<p>explainer is an allowed subtype of the essay node type.</p>",
      "url": "/schema/node-subtype-essay-explainer/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-essay-explainer.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-essay-manifesto",
      "protocol_id": "xananode.canonical:schema/node-subtype-essay-manifesto",
      "title": "Essay subtype: manifesto",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "manifesto is an allowed subtype of the essay node type.",
      "content": "manifesto is an allowed subtype of the essay node type.",
      "html": "<p>manifesto is an allowed subtype of the essay node type.</p>",
      "url": "/schema/node-subtype-essay-manifesto/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-essay-manifesto.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-essay-reflection",
      "protocol_id": "xananode.canonical:schema/node-subtype-essay-reflection",
      "title": "Essay subtype: reflection",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "reflection is an allowed subtype of the essay node type.",
      "content": "reflection is an allowed subtype of the essay node type.",
      "html": "<p>reflection is an allowed subtype of the essay node type.</p>",
      "url": "/schema/node-subtype-essay-reflection/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-essay-reflection.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-event-conference",
      "protocol_id": "xananode.canonical:schema/node-subtype-event-conference",
      "title": "Event subtype: conference",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "conference is an allowed subtype of the event node type.",
      "content": "conference is an allowed subtype of the event node type.",
      "html": "<p>conference is an allowed subtype of the event node type.</p>",
      "url": "/schema/node-subtype-event-conference/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-event-conference.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-event-historical_event",
      "protocol_id": "xananode.canonical:schema/node-subtype-event-historical_event",
      "title": "Event subtype: historical event",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "historical_event is an allowed subtype of the event node type.",
      "content": "historical_event is an allowed subtype of the event node type.",
      "html": "<p>historical_event is an allowed subtype of the event node type.</p>",
      "url": "/schema/node-subtype-event-historical_event/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-event-historical_event.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-event-incident",
      "protocol_id": "xananode.canonical:schema/node-subtype-event-incident",
      "title": "Event subtype: incident",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "incident is an allowed subtype of the event node type.",
      "content": "incident is an allowed subtype of the event node type.",
      "html": "<p>incident is an allowed subtype of the event node type.</p>",
      "url": "/schema/node-subtype-event-incident/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-event-incident.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-event-meeting",
      "protocol_id": "xananode.canonical:schema/node-subtype-event-meeting",
      "title": "Event subtype: meeting",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "meeting is an allowed subtype of the event node type.",
      "content": "meeting is an allowed subtype of the event node type.",
      "html": "<p>meeting is an allowed subtype of the event node type.</p>",
      "url": "/schema/node-subtype-event-meeting/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-event-meeting.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-event-publication_event",
      "protocol_id": "xananode.canonical:schema/node-subtype-event-publication_event",
      "title": "Event subtype: publication event",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "publication_event is an allowed subtype of the event node type.",
      "content": "publication_event is an allowed subtype of the event node type.",
      "html": "<p>publication_event is an allowed subtype of the event node type.</p>",
      "url": "/schema/node-subtype-event-publication_event/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-event-publication_event.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-event-release",
      "protocol_id": "xananode.canonical:schema/node-subtype-event-release",
      "title": "Event subtype: release",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "release is an allowed subtype of the event node type.",
      "content": "release is an allowed subtype of the event node type.",
      "html": "<p>release is an allowed subtype of the event node type.</p>",
      "url": "/schema/node-subtype-event-release/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-event-release.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-event-talk",
      "protocol_id": "xananode.canonical:schema/node-subtype-event-talk",
      "title": "Event subtype: talk",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "talk is an allowed subtype of the event node type.",
      "content": "talk is an allowed subtype of the event node type.",
      "html": "<p>talk is an allowed subtype of the event node type.</p>",
      "url": "/schema/node-subtype-event-talk/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-event-talk.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-fragment-code_block",
      "protocol_id": "xananode.canonical:schema/node-subtype-fragment-code_block",
      "title": "Fragment subtype: code block",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "code_block is an allowed subtype of the fragment node type.",
      "content": "code_block is an allowed subtype of the fragment node type.",
      "html": "<p>code_block is an allowed subtype of the fragment node type.</p>",
      "url": "/schema/node-subtype-fragment-code_block/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-fragment-code_block.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-fragment-data_range",
      "protocol_id": "xananode.canonical:schema/node-subtype-fragment-data_range",
      "title": "Fragment subtype: data range",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "data_range is an allowed subtype of the fragment node type.",
      "content": "data_range is an allowed subtype of the fragment node type.",
      "html": "<p>data_range is an allowed subtype of the fragment node type.</p>",
      "url": "/schema/node-subtype-fragment-data_range/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-fragment-data_range.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-fragment-image_region",
      "protocol_id": "xananode.canonical:schema/node-subtype-fragment-image_region",
      "title": "Fragment subtype: image region",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "image_region is an allowed subtype of the fragment node type.",
      "content": "image_region is an allowed subtype of the fragment node type.",
      "html": "<p>image_region is an allowed subtype of the fragment node type.</p>",
      "url": "/schema/node-subtype-fragment-image_region/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-fragment-image_region.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-fragment-media_segment",
      "protocol_id": "xananode.canonical:schema/node-subtype-fragment-media_segment",
      "title": "Fragment subtype: media segment",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "media_segment is an allowed subtype of the fragment node type.",
      "content": "media_segment is an allowed subtype of the fragment node type.",
      "html": "<p>media_segment is an allowed subtype of the fragment node type.</p>",
      "url": "/schema/node-subtype-fragment-media_segment/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-fragment-media_segment.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-fragment-paragraph",
      "protocol_id": "xananode.canonical:schema/node-subtype-fragment-paragraph",
      "title": "Fragment subtype: paragraph",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "paragraph is an allowed subtype of the fragment node type.",
      "content": "paragraph is an allowed subtype of the fragment node type.",
      "html": "<p>paragraph is an allowed subtype of the fragment node type.</p>",
      "url": "/schema/node-subtype-fragment-paragraph/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-fragment-paragraph.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-fragment-quote",
      "protocol_id": "xananode.canonical:schema/node-subtype-fragment-quote",
      "title": "Fragment subtype: quote",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "quote is an allowed subtype of the fragment node type.",
      "content": "quote is an allowed subtype of the fragment node type.",
      "html": "<p>quote is an allowed subtype of the fragment node type.</p>",
      "url": "/schema/node-subtype-fragment-quote/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-fragment-quote.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-fragment-section",
      "protocol_id": "xananode.canonical:schema/node-subtype-fragment-section",
      "title": "Fragment subtype: section",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "section is an allowed subtype of the fragment node type.",
      "content": "section is an allowed subtype of the fragment node type.",
      "html": "<p>section is an allowed subtype of the fragment node type.</p>",
      "url": "/schema/node-subtype-fragment-section/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-fragment-section.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-fragment-sentence",
      "protocol_id": "xananode.canonical:schema/node-subtype-fragment-sentence",
      "title": "Fragment subtype: sentence",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "sentence is an allowed subtype of the fragment node type.",
      "content": "sentence is an allowed subtype of the fragment node type.",
      "html": "<p>sentence is an allowed subtype of the fragment node type.</p>",
      "url": "/schema/node-subtype-fragment-sentence/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-fragment-sentence.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-hypothesis-design",
      "protocol_id": "xananode.canonical:schema/node-subtype-hypothesis-design",
      "title": "Hypothesis subtype: design",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "design is an allowed subtype of the hypothesis node type.",
      "content": "design is an allowed subtype of the hypothesis node type.",
      "html": "<p>design is an allowed subtype of the hypothesis node type.</p>",
      "url": "/schema/node-subtype-hypothesis-design/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-hypothesis-design.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-hypothesis-diagnostic",
      "protocol_id": "xananode.canonical:schema/node-subtype-hypothesis-diagnostic",
      "title": "Hypothesis subtype: diagnostic",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "diagnostic is an allowed subtype of the hypothesis node type.",
      "content": "diagnostic is an allowed subtype of the hypothesis node type.",
      "html": "<p>diagnostic is an allowed subtype of the hypothesis node type.</p>",
      "url": "/schema/node-subtype-hypothesis-diagnostic/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-hypothesis-diagnostic.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-hypothesis-historical",
      "protocol_id": "xananode.canonical:schema/node-subtype-hypothesis-historical",
      "title": "Hypothesis subtype: historical",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "historical is an allowed subtype of the hypothesis node type.",
      "content": "historical is an allowed subtype of the hypothesis node type.",
      "html": "<p>historical is an allowed subtype of the hypothesis node type.</p>",
      "url": "/schema/node-subtype-hypothesis-historical/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-hypothesis-historical.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-hypothesis-interpretive",
      "protocol_id": "xananode.canonical:schema/node-subtype-hypothesis-interpretive",
      "title": "Hypothesis subtype: interpretive",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "interpretive is an allowed subtype of the hypothesis node type.",
      "content": "interpretive is an allowed subtype of the hypothesis node type.",
      "html": "<p>interpretive is an allowed subtype of the hypothesis node type.</p>",
      "url": "/schema/node-subtype-hypothesis-interpretive/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-hypothesis-interpretive.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-hypothesis-prediction",
      "protocol_id": "xananode.canonical:schema/node-subtype-hypothesis-prediction",
      "title": "Hypothesis subtype: prediction",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "prediction is an allowed subtype of the hypothesis node type.",
      "content": "prediction is an allowed subtype of the hypothesis node type.",
      "html": "<p>prediction is an allowed subtype of the hypothesis node type.</p>",
      "url": "/schema/node-subtype-hypothesis-prediction/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-hypothesis-prediction.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-hypothesis-scientific",
      "protocol_id": "xananode.canonical:schema/node-subtype-hypothesis-scientific",
      "title": "Hypothesis subtype: scientific",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "scientific is an allowed subtype of the hypothesis node type.",
      "content": "scientific is an allowed subtype of the hypothesis node type.",
      "html": "<p>scientific is an allowed subtype of the hypothesis node type.</p>",
      "url": "/schema/node-subtype-hypothesis-scientific/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-hypothesis-scientific.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-item-appliance",
      "protocol_id": "xananode.canonical:schema/node-subtype-item-appliance",
      "title": "Item subtype: appliance",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "appliance is an allowed subtype of the item node type.",
      "content": "appliance is an allowed subtype of the item node type.",
      "html": "<p>appliance is an allowed subtype of the item node type.</p>",
      "url": "/schema/node-subtype-item-appliance/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-item-appliance.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-item-artifact",
      "protocol_id": "xananode.canonical:schema/node-subtype-item-artifact",
      "title": "Item subtype: artifact",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "artifact is an allowed subtype of the item node type.",
      "content": "artifact is an allowed subtype of the item node type.",
      "html": "<p>artifact is an allowed subtype of the item node type.</p>",
      "url": "/schema/node-subtype-item-artifact/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-item-artifact.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-item-component",
      "protocol_id": "xananode.canonical:schema/node-subtype-item-component",
      "title": "Item subtype: component",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "component is an allowed subtype of the item node type.",
      "content": "component is an allowed subtype of the item node type.",
      "html": "<p>component is an allowed subtype of the item node type.</p>",
      "url": "/schema/node-subtype-item-component/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-item-component.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-item-container",
      "protocol_id": "xananode.canonical:schema/node-subtype-item-container",
      "title": "Item subtype: container",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "container is an allowed subtype of the item node type.",
      "content": "container is an allowed subtype of the item node type.",
      "html": "<p>container is an allowed subtype of the item node type.</p>",
      "url": "/schema/node-subtype-item-container/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-item-container.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-item-finished_item",
      "protocol_id": "xananode.canonical:schema/node-subtype-item-finished_item",
      "title": "Item subtype: finished item",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "finished_item is an allowed subtype of the item node type.",
      "content": "finished_item is an allowed subtype of the item node type.",
      "html": "<p>finished_item is an allowed subtype of the item node type.</p>",
      "url": "/schema/node-subtype-item-finished_item/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-item-finished_item.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-item-ingredient",
      "protocol_id": "xananode.canonical:schema/node-subtype-item-ingredient",
      "title": "Item subtype: ingredient",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "ingredient is an allowed subtype of the item node type.",
      "content": "ingredient is an allowed subtype of the item node type.",
      "html": "<p>ingredient is an allowed subtype of the item node type.</p>",
      "url": "/schema/node-subtype-item-ingredient/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-item-ingredient.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-item-material",
      "protocol_id": "xananode.canonical:schema/node-subtype-item-material",
      "title": "Item subtype: material",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "material is an allowed subtype of the item node type.",
      "content": "material is an allowed subtype of the item node type.",
      "html": "<p>material is an allowed subtype of the item node type.</p>",
      "url": "/schema/node-subtype-item-material/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-item-material.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-item-spare_part",
      "protocol_id": "xananode.canonical:schema/node-subtype-item-spare_part",
      "title": "Item subtype: spare part",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "spare_part is an allowed subtype of the item node type.",
      "content": "spare_part is an allowed subtype of the item node type.",
      "html": "<p>spare_part is an allowed subtype of the item node type.</p>",
      "url": "/schema/node-subtype-item-spare_part/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-item-spare_part.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-item-tool",
      "protocol_id": "xananode.canonical:schema/node-subtype-item-tool",
      "title": "Item subtype: tool",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "tool is an allowed subtype of the item node type.",
      "content": "tool is an allowed subtype of the item node type.",
      "html": "<p>tool is an allowed subtype of the item node type.</p>",
      "url": "/schema/node-subtype-item-tool/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-item-tool.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-item-utensil",
      "protocol_id": "xananode.canonical:schema/node-subtype-item-utensil",
      "title": "Item subtype: utensil",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "utensil is an allowed subtype of the item node type.",
      "content": "utensil is an allowed subtype of the item node type.",
      "html": "<p>utensil is an allowed subtype of the item node type.</p>",
      "url": "/schema/node-subtype-item-utensil/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-item-utensil.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-knowledge_gap-historical_uncertainty",
      "protocol_id": "xananode.canonical:schema/node-subtype-knowledge_gap-historical_uncertainty",
      "title": "Knowledge Gap subtype: historical uncertainty",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "historical_uncertainty is an allowed subtype of the knowledge_gap node type.",
      "content": "historical_uncertainty is an allowed subtype of the knowledge_gap node type.",
      "html": "<p>historical_uncertainty is an allowed subtype of the knowledge_gap node type.</p>",
      "url": "/schema/node-subtype-knowledge_gap-historical_uncertainty/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-knowledge_gap-historical_uncertainty.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-knowledge_gap-incomplete_context",
      "protocol_id": "xananode.canonical:schema/node-subtype-knowledge_gap-incomplete_context",
      "title": "Knowledge Gap subtype: incomplete context",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "incomplete_context is an allowed subtype of the knowledge_gap node type.",
      "content": "incomplete_context is an allowed subtype of the knowledge_gap node type.",
      "html": "<p>incomplete_context is an allowed subtype of the knowledge_gap node type.</p>",
      "url": "/schema/node-subtype-knowledge_gap-incomplete_context/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-knowledge_gap-incomplete_context.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-knowledge_gap-lost_document",
      "protocol_id": "xananode.canonical:schema/node-subtype-knowledge_gap-lost_document",
      "title": "Knowledge Gap subtype: lost document",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "lost_document is an allowed subtype of the knowledge_gap node type.",
      "content": "lost_document is an allowed subtype of the knowledge_gap node type.",
      "html": "<p>lost_document is an allowed subtype of the knowledge_gap node type.</p>",
      "url": "/schema/node-subtype-knowledge_gap-lost_document/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-knowledge_gap-lost_document.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-knowledge_gap-missing_citation",
      "protocol_id": "xananode.canonical:schema/node-subtype-knowledge_gap-missing_citation",
      "title": "Knowledge Gap subtype: missing citation",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "missing_citation is an allowed subtype of the knowledge_gap node type.",
      "content": "missing_citation is an allowed subtype of the knowledge_gap node type.",
      "html": "<p>missing_citation is an allowed subtype of the knowledge_gap node type.</p>",
      "url": "/schema/node-subtype-knowledge_gap-missing_citation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-knowledge_gap-missing_citation.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-knowledge_gap-missing_source",
      "protocol_id": "xananode.canonical:schema/node-subtype-knowledge_gap-missing_source",
      "title": "Knowledge Gap subtype: missing source",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "missing_source is an allowed subtype of the knowledge_gap node type.",
      "content": "missing_source is an allowed subtype of the knowledge_gap node type.",
      "html": "<p>missing_source is an allowed subtype of the knowledge_gap node type.</p>",
      "url": "/schema/node-subtype-knowledge_gap-missing_source/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-knowledge_gap-missing_source.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-knowledge_gap-unknown_author",
      "protocol_id": "xananode.canonical:schema/node-subtype-knowledge_gap-unknown_author",
      "title": "Knowledge Gap subtype: unknown author",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "unknown_author is an allowed subtype of the knowledge_gap node type.",
      "content": "unknown_author is an allowed subtype of the knowledge_gap node type.",
      "html": "<p>unknown_author is an allowed subtype of the knowledge_gap node type.</p>",
      "url": "/schema/node-subtype-knowledge_gap-unknown_author/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-knowledge_gap-unknown_author.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-app_icon",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-app_icon",
      "title": "Media subtype: app icon",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "app_icon is an allowed subtype of the media node type.",
      "content": "app_icon is an allowed subtype of the media node type.",
      "html": "<p>app_icon is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-app_icon/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-app_icon.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-audio",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-audio",
      "title": "Media subtype: audio",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "audio is an allowed subtype of the media node type.",
      "content": "audio is an allowed subtype of the media node type.",
      "html": "<p>audio is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-audio/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-audio.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-branding_icon",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-branding_icon",
      "title": "Media subtype: branding icon",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "branding_icon is an allowed subtype of the media node type.",
      "content": "branding_icon is an allowed subtype of the media node type.",
      "html": "<p>branding_icon is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-branding_icon/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-branding_icon.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-clip",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-clip",
      "title": "Media subtype: clip",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "clip is an allowed subtype of the media node type.",
      "content": "clip is an allowed subtype of the media node type.",
      "html": "<p>clip is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-clip/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-clip.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-diagram",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-diagram",
      "title": "Media subtype: diagram",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "diagram is an allowed subtype of the media node type.",
      "content": "diagram is an allowed subtype of the media node type.",
      "html": "<p>diagram is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-diagram/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-diagram.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-document",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-document",
      "title": "Media subtype: document",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "document is an allowed subtype of the media node type.",
      "content": "document is an allowed subtype of the media node type.",
      "html": "<p>document is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-document/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-document.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-favicon",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-favicon",
      "title": "Media subtype: favicon",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "favicon is an allowed subtype of the media node type.",
      "content": "favicon is an allowed subtype of the media node type.",
      "html": "<p>favicon is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-favicon/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-favicon.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-image",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-image",
      "title": "Media subtype: image",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "image is an allowed subtype of the media node type.",
      "content": "image is an allowed subtype of the media node type.",
      "html": "<p>image is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-image/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-image.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-logo",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-logo",
      "title": "Media subtype: logo",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "logo is an allowed subtype of the media node type.",
      "content": "logo is an allowed subtype of the media node type.",
      "html": "<p>logo is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-logo/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-logo.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-scan",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-scan",
      "title": "Media subtype: scan",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "scan is an allowed subtype of the media node type.",
      "content": "scan is an allowed subtype of the media node type.",
      "html": "<p>scan is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-scan/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-scan.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-screenshot",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-screenshot",
      "title": "Media subtype: screenshot",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "screenshot is an allowed subtype of the media node type.",
      "content": "screenshot is an allowed subtype of the media node type.",
      "html": "<p>screenshot is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-screenshot/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-screenshot.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-source_snapshot",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-source_snapshot",
      "title": "Media subtype: source snapshot",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "source_snapshot is an allowed subtype of the media node type.",
      "content": "source_snapshot is an allowed subtype of the media node type.",
      "html": "<p>source_snapshot is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-source_snapshot/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-source_snapshot.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-thumbnail",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-thumbnail",
      "title": "Media subtype: thumbnail",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "thumbnail is an allowed subtype of the media node type.",
      "content": "thumbnail is an allowed subtype of the media node type.",
      "html": "<p>thumbnail is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-thumbnail/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-thumbnail.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-touch_icon",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-touch_icon",
      "title": "Media subtype: touch icon",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "touch_icon is an allowed subtype of the media node type.",
      "content": "touch_icon is an allowed subtype of the media node type.",
      "html": "<p>touch_icon is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-touch_icon/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-touch_icon.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-video",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-video",
      "title": "Media subtype: video",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "video is an allowed subtype of the media node type.",
      "content": "video is an allowed subtype of the media node type.",
      "html": "<p>video is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-video/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-video.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-media-web_snapshot",
      "protocol_id": "xananode.canonical:schema/node-subtype-media-web_snapshot",
      "title": "Media subtype: web snapshot",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "web_snapshot is an allowed subtype of the media node type.",
      "content": "web_snapshot is an allowed subtype of the media node type.",
      "html": "<p>web_snapshot is an allowed subtype of the media node type.</p>",
      "url": "/schema/node-subtype-media-web_snapshot/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-media-web_snapshot.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-observation-anomaly",
      "protocol_id": "xananode.canonical:schema/node-subtype-observation-anomaly",
      "title": "Observation subtype: anomaly",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "anomaly is an allowed subtype of the observation node type.",
      "content": "anomaly is an allowed subtype of the observation node type.",
      "html": "<p>anomaly is an allowed subtype of the observation node type.</p>",
      "url": "/schema/node-subtype-observation-anomaly/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-observation-anomaly.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-observation-case_study",
      "protocol_id": "xananode.canonical:schema/node-subtype-observation-case_study",
      "title": "Observation subtype: case study",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "case_study is an allowed subtype of the observation node type.",
      "content": "case_study is an allowed subtype of the observation node type.",
      "html": "<p>case_study is an allowed subtype of the observation node type.</p>",
      "url": "/schema/node-subtype-observation-case_study/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-observation-case_study.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-observation-example",
      "protocol_id": "xananode.canonical:schema/node-subtype-observation-example",
      "title": "Observation subtype: example",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "example is an allowed subtype of the observation node type.",
      "content": "example is an allowed subtype of the observation node type.",
      "html": "<p>example is an allowed subtype of the observation node type.</p>",
      "url": "/schema/node-subtype-observation-example/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-observation-example.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-observation-failure",
      "protocol_id": "xananode.canonical:schema/node-subtype-observation-failure",
      "title": "Observation subtype: failure",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "failure is an allowed subtype of the observation node type.",
      "content": "failure is an allowed subtype of the observation node type.",
      "html": "<p>failure is an allowed subtype of the observation node type.</p>",
      "url": "/schema/node-subtype-observation-failure/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-observation-failure.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-observation-news_event",
      "protocol_id": "xananode.canonical:schema/node-subtype-observation-news_event",
      "title": "Observation subtype: news event",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "news_event is an allowed subtype of the observation node type.",
      "content": "news_event is an allowed subtype of the observation node type.",
      "html": "<p>news_event is an allowed subtype of the observation node type.</p>",
      "url": "/schema/node-subtype-observation-news_event/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-observation-news_event.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-observation-symptom",
      "protocol_id": "xananode.canonical:schema/node-subtype-observation-symptom",
      "title": "Observation subtype: symptom",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "symptom is an allowed subtype of the observation node type.",
      "content": "symptom is an allowed subtype of the observation node type.",
      "html": "<p>symptom is an allowed subtype of the observation node type.</p>",
      "url": "/schema/node-subtype-observation-symptom/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-observation-symptom.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-organization-agency",
      "protocol_id": "xananode.canonical:schema/node-subtype-organization-agency",
      "title": "Organization subtype: agency",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "agency is an allowed subtype of the organization node type.",
      "content": "agency is an allowed subtype of the organization node type.",
      "html": "<p>agency is an allowed subtype of the organization node type.</p>",
      "url": "/schema/node-subtype-organization-agency/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-organization-agency.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-organization-company",
      "protocol_id": "xananode.canonical:schema/node-subtype-organization-company",
      "title": "Organization subtype: company",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "company is an allowed subtype of the organization node type.",
      "content": "company is an allowed subtype of the organization node type.",
      "html": "<p>company is an allowed subtype of the organization node type.</p>",
      "url": "/schema/node-subtype-organization-company/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-organization-company.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-organization-lab",
      "protocol_id": "xananode.canonical:schema/node-subtype-organization-lab",
      "title": "Organization subtype: lab",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "lab is an allowed subtype of the organization node type.",
      "content": "lab is an allowed subtype of the organization node type.",
      "html": "<p>lab is an allowed subtype of the organization node type.</p>",
      "url": "/schema/node-subtype-organization-lab/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-organization-lab.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-organization-nonprofit",
      "protocol_id": "xananode.canonical:schema/node-subtype-organization-nonprofit",
      "title": "Organization subtype: nonprofit",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "nonprofit is an allowed subtype of the organization node type.",
      "content": "nonprofit is an allowed subtype of the organization node type.",
      "html": "<p>nonprofit is an allowed subtype of the organization node type.</p>",
      "url": "/schema/node-subtype-organization-nonprofit/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-organization-nonprofit.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-organization-publisher",
      "protocol_id": "xananode.canonical:schema/node-subtype-organization-publisher",
      "title": "Organization subtype: publisher",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "publisher is an allowed subtype of the organization node type.",
      "content": "publisher is an allowed subtype of the organization node type.",
      "html": "<p>publisher is an allowed subtype of the organization node type.</p>",
      "url": "/schema/node-subtype-organization-publisher/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-organization-publisher.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-organization-standards_body",
      "protocol_id": "xananode.canonical:schema/node-subtype-organization-standards_body",
      "title": "Organization subtype: standards body",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "standards_body is an allowed subtype of the organization node type.",
      "content": "standards_body is an allowed subtype of the organization node type.",
      "html": "<p>standards_body is an allowed subtype of the organization node type.</p>",
      "url": "/schema/node-subtype-organization-standards_body/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-organization-standards_body.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-organization-university",
      "protocol_id": "xananode.canonical:schema/node-subtype-organization-university",
      "title": "Organization subtype: university",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "university is an allowed subtype of the organization node type.",
      "content": "university is an allowed subtype of the organization node type.",
      "html": "<p>university is an allowed subtype of the organization node type.</p>",
      "url": "/schema/node-subtype-organization-university/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-organization-university.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-person-artist",
      "protocol_id": "xananode.canonical:schema/node-subtype-person-artist",
      "title": "Person subtype: artist",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "artist is an allowed subtype of the person node type.",
      "content": "artist is an allowed subtype of the person node type.",
      "html": "<p>artist is an allowed subtype of the person node type.</p>",
      "url": "/schema/node-subtype-person-artist/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-person-artist.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-person-critic",
      "protocol_id": "xananode.canonical:schema/node-subtype-person-critic",
      "title": "Person subtype: critic",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "critic is an allowed subtype of the person node type.",
      "content": "critic is an allowed subtype of the person node type.",
      "html": "<p>critic is an allowed subtype of the person node type.</p>",
      "url": "/schema/node-subtype-person-critic/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-person-critic.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-person-engineer",
      "protocol_id": "xananode.canonical:schema/node-subtype-person-engineer",
      "title": "Person subtype: engineer",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "engineer is an allowed subtype of the person node type.",
      "content": "engineer is an allowed subtype of the person node type.",
      "html": "<p>engineer is an allowed subtype of the person node type.</p>",
      "url": "/schema/node-subtype-person-engineer/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-person-engineer.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-person-founder",
      "protocol_id": "xananode.canonical:schema/node-subtype-person-founder",
      "title": "Person subtype: founder",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "founder is an allowed subtype of the person node type.",
      "content": "founder is an allowed subtype of the person node type.",
      "html": "<p>founder is an allowed subtype of the person node type.</p>",
      "url": "/schema/node-subtype-person-founder/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-person-founder.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-person-programmer",
      "protocol_id": "xananode.canonical:schema/node-subtype-person-programmer",
      "title": "Person subtype: programmer",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "programmer is an allowed subtype of the person node type.",
      "content": "programmer is an allowed subtype of the person node type.",
      "html": "<p>programmer is an allowed subtype of the person node type.</p>",
      "url": "/schema/node-subtype-person-programmer/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-person-programmer.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-person-researcher",
      "protocol_id": "xananode.canonical:schema/node-subtype-person-researcher",
      "title": "Person subtype: researcher",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "researcher is an allowed subtype of the person node type.",
      "content": "researcher is an allowed subtype of the person node type.",
      "html": "<p>researcher is an allowed subtype of the person node type.</p>",
      "url": "/schema/node-subtype-person-researcher/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-person-researcher.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-person-scientist",
      "protocol_id": "xananode.canonical:schema/node-subtype-person-scientist",
      "title": "Person subtype: scientist",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "scientist is an allowed subtype of the person node type.",
      "content": "scientist is an allowed subtype of the person node type.",
      "html": "<p>scientist is an allowed subtype of the person node type.</p>",
      "url": "/schema/node-subtype-person-scientist/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-person-scientist.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-person-writer",
      "protocol_id": "xananode.canonical:schema/node-subtype-person-writer",
      "title": "Person subtype: writer",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "writer is an allowed subtype of the person node type.",
      "content": "writer is an allowed subtype of the person node type.",
      "html": "<p>writer is an allowed subtype of the person node type.</p>",
      "url": "/schema/node-subtype-person-writer/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-person-writer.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-place-building",
      "protocol_id": "xananode.canonical:schema/node-subtype-place-building",
      "title": "Place subtype: building",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "building is an allowed subtype of the place node type.",
      "content": "building is an allowed subtype of the place node type.",
      "html": "<p>building is an allowed subtype of the place node type.</p>",
      "url": "/schema/node-subtype-place-building/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-place-building.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-place-city",
      "protocol_id": "xananode.canonical:schema/node-subtype-place-city",
      "title": "Place subtype: city",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "city is an allowed subtype of the place node type.",
      "content": "city is an allowed subtype of the place node type.",
      "html": "<p>city is an allowed subtype of the place node type.</p>",
      "url": "/schema/node-subtype-place-city/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-place-city.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-place-country",
      "protocol_id": "xananode.canonical:schema/node-subtype-place-country",
      "title": "Place subtype: country",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "country is an allowed subtype of the place node type.",
      "content": "country is an allowed subtype of the place node type.",
      "html": "<p>country is an allowed subtype of the place node type.</p>",
      "url": "/schema/node-subtype-place-country/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-place-country.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-place-institution_site",
      "protocol_id": "xananode.canonical:schema/node-subtype-place-institution_site",
      "title": "Place subtype: institution site",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "institution_site is an allowed subtype of the place node type.",
      "content": "institution_site is an allowed subtype of the place node type.",
      "html": "<p>institution_site is an allowed subtype of the place node type.</p>",
      "url": "/schema/node-subtype-place-institution_site/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-place-institution_site.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-place-lab",
      "protocol_id": "xananode.canonical:schema/node-subtype-place-lab",
      "title": "Place subtype: lab",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "lab is an allowed subtype of the place node type.",
      "content": "lab is an allowed subtype of the place node type.",
      "html": "<p>lab is an allowed subtype of the place node type.</p>",
      "url": "/schema/node-subtype-place-lab/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-place-lab.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-place-online_space",
      "protocol_id": "xananode.canonical:schema/node-subtype-place-online_space",
      "title": "Place subtype: online space",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "online_space is an allowed subtype of the place node type.",
      "content": "online_space is an allowed subtype of the place node type.",
      "html": "<p>online_space is an allowed subtype of the place node type.</p>",
      "url": "/schema/node-subtype-place-online_space/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-place-online_space.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-place-region",
      "protocol_id": "xananode.canonical:schema/node-subtype-place-region",
      "title": "Place subtype: region",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "region is an allowed subtype of the place node type.",
      "content": "region is an allowed subtype of the place node type.",
      "html": "<p>region is an allowed subtype of the place node type.</p>",
      "url": "/schema/node-subtype-place-region/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-place-region.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-problem-design_problem",
      "protocol_id": "xananode.canonical:schema/node-subtype-problem-design_problem",
      "title": "Problem subtype: design problem",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "design_problem is an allowed subtype of the problem node type.",
      "content": "design_problem is an allowed subtype of the problem node type.",
      "html": "<p>design_problem is an allowed subtype of the problem node type.</p>",
      "url": "/schema/node-subtype-problem-design_problem/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-problem-design_problem.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-problem-failure_mode",
      "protocol_id": "xananode.canonical:schema/node-subtype-problem-failure_mode",
      "title": "Problem subtype: failure mode",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "failure_mode is an allowed subtype of the problem node type.",
      "content": "failure_mode is an allowed subtype of the problem node type.",
      "html": "<p>failure_mode is an allowed subtype of the problem node type.</p>",
      "url": "/schema/node-subtype-problem-failure_mode/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-problem-failure_mode.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-problem-governance_problem",
      "protocol_id": "xananode.canonical:schema/node-subtype-problem-governance_problem",
      "title": "Problem subtype: governance problem",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "governance_problem is an allowed subtype of the problem node type.",
      "content": "governance_problem is an allowed subtype of the problem node type.",
      "html": "<p>governance_problem is an allowed subtype of the problem node type.</p>",
      "url": "/schema/node-subtype-problem-governance_problem/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-problem-governance_problem.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-problem-implementation_problem",
      "protocol_id": "xananode.canonical:schema/node-subtype-problem-implementation_problem",
      "title": "Problem subtype: implementation problem",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "implementation_problem is an allowed subtype of the problem node type.",
      "content": "implementation_problem is an allowed subtype of the problem node type.",
      "html": "<p>implementation_problem is an allowed subtype of the problem node type.</p>",
      "url": "/schema/node-subtype-problem-implementation_problem/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-problem-implementation_problem.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-problem-research_problem",
      "protocol_id": "xananode.canonical:schema/node-subtype-problem-research_problem",
      "title": "Problem subtype: research problem",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "research_problem is an allowed subtype of the problem node type.",
      "content": "research_problem is an allowed subtype of the problem node type.",
      "html": "<p>research_problem is an allowed subtype of the problem node type.</p>",
      "url": "/schema/node-subtype-problem-research_problem/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-problem-research_problem.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-problem-risk",
      "protocol_id": "xananode.canonical:schema/node-subtype-problem-risk",
      "title": "Problem subtype: risk",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "risk is an allowed subtype of the problem node type.",
      "content": "risk is an allowed subtype of the problem node type.",
      "html": "<p>risk is an allowed subtype of the problem node type.</p>",
      "url": "/schema/node-subtype-problem-risk/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-problem-risk.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-project-fictional_system",
      "protocol_id": "xananode.canonical:schema/node-subtype-project-fictional_system",
      "title": "Project subtype: fictional system",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "fictional_system is an allowed subtype of the project node type.",
      "content": "fictional_system is an allowed subtype of the project node type.",
      "html": "<p>fictional_system is an allowed subtype of the project node type.</p>",
      "url": "/schema/node-subtype-project-fictional_system/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-project-fictional_system.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-project-platform",
      "protocol_id": "xananode.canonical:schema/node-subtype-project-platform",
      "title": "Project subtype: platform",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "platform is an allowed subtype of the project node type.",
      "content": "platform is an allowed subtype of the project node type.",
      "html": "<p>platform is an allowed subtype of the project node type.</p>",
      "url": "/schema/node-subtype-project-platform/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-project-platform.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-project-prototype",
      "protocol_id": "xananode.canonical:schema/node-subtype-project-prototype",
      "title": "Project subtype: prototype",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "prototype is an allowed subtype of the project node type.",
      "content": "prototype is an allowed subtype of the project node type.",
      "html": "<p>prototype is an allowed subtype of the project node type.</p>",
      "url": "/schema/node-subtype-project-prototype/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-project-prototype.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-project-research_project",
      "protocol_id": "xananode.canonical:schema/node-subtype-project-research_project",
      "title": "Project subtype: research project",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "research_project is an allowed subtype of the project node type.",
      "content": "research_project is an allowed subtype of the project node type.",
      "html": "<p>research_project is an allowed subtype of the project node type.</p>",
      "url": "/schema/node-subtype-project-research_project/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-project-research_project.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-project-software",
      "protocol_id": "xananode.canonical:schema/node-subtype-project-software",
      "title": "Project subtype: software",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "software is an allowed subtype of the project node type.",
      "content": "software is an allowed subtype of the project node type.",
      "html": "<p>software is an allowed subtype of the project node type.</p>",
      "url": "/schema/node-subtype-project-software/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-project-software.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-project-standard",
      "protocol_id": "xananode.canonical:schema/node-subtype-project-standard",
      "title": "Project subtype: standard",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "standard is an allowed subtype of the project node type.",
      "content": "standard is an allowed subtype of the project node type.",
      "html": "<p>standard is an allowed subtype of the project node type.</p>",
      "url": "/schema/node-subtype-project-standard/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-project-standard.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-adaptation",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-adaptation",
      "title": "Publication subtype: adaptation",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "adaptation is an allowed subtype of the publication node type.",
      "content": "adaptation is an allowed subtype of the publication node type.",
      "html": "<p>adaptation is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-adaptation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-adaptation.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-article",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-article",
      "title": "Publication subtype: article",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "article is an allowed subtype of the publication node type.",
      "content": "article is an allowed subtype of the publication node type.",
      "html": "<p>article is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-article/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-article.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-book",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-book",
      "title": "Publication subtype: book",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "book is an allowed subtype of the publication node type.",
      "content": "book is an allowed subtype of the publication node type.",
      "html": "<p>book is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-book/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-book.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-edition",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-edition",
      "title": "Publication subtype: edition",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "edition is an allowed subtype of the publication node type.",
      "content": "edition is an allowed subtype of the publication node type.",
      "html": "<p>edition is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-edition/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-edition.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-episode",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-episode",
      "title": "Publication subtype: episode",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "episode is an allowed subtype of the publication node type.",
      "content": "episode is an allowed subtype of the publication node type.",
      "html": "<p>episode is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-episode/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-episode.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-film",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-film",
      "title": "Publication subtype: film",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "film is an allowed subtype of the publication node type.",
      "content": "film is an allowed subtype of the publication node type.",
      "html": "<p>film is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-film/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-film.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-installment",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-installment",
      "title": "Publication subtype: installment",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "installment is an allowed subtype of the publication node type.",
      "content": "installment is an allowed subtype of the publication node type.",
      "html": "<p>installment is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-installment/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-installment.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-omnibus",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-omnibus",
      "title": "Publication subtype: omnibus",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "omnibus is an allowed subtype of the publication node type.",
      "content": "omnibus is an allowed subtype of the publication node type.",
      "html": "<p>omnibus is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-omnibus/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-omnibus.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-paper",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-paper",
      "title": "Publication subtype: paper",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "paper is an allowed subtype of the publication node type.",
      "content": "paper is an allowed subtype of the publication node type.",
      "html": "<p>paper is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-paper/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-paper.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-pilot",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-pilot",
      "title": "Publication subtype: pilot",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "pilot is an allowed subtype of the publication node type.",
      "content": "pilot is an allowed subtype of the publication node type.",
      "html": "<p>pilot is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-pilot/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-pilot.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-podcast",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-podcast",
      "title": "Publication subtype: podcast",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "podcast is an allowed subtype of the publication node type.",
      "content": "podcast is an allowed subtype of the publication node type.",
      "html": "<p>podcast is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-podcast/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-podcast.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-reissue",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-reissue",
      "title": "Publication subtype: reissue",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "reissue is an allowed subtype of the publication node type.",
      "content": "reissue is an allowed subtype of the publication node type.",
      "html": "<p>reissue is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-reissue/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-reissue.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-saga",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-saga",
      "title": "Publication subtype: saga",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "saga is an allowed subtype of the publication node type.",
      "content": "saga is an allowed subtype of the publication node type.",
      "html": "<p>saga is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-saga/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-saga.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-season",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-season",
      "title": "Publication subtype: season",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "season is an allowed subtype of the publication node type.",
      "content": "season is an allowed subtype of the publication node type.",
      "html": "<p>season is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-season/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-season.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-series",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-series",
      "title": "Publication subtype: series",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "series is an allowed subtype of the publication node type.",
      "content": "series is an allowed subtype of the publication node type.",
      "html": "<p>series is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-series/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-series.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-talk",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-talk",
      "title": "Publication subtype: talk",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "talk is an allowed subtype of the publication node type.",
      "content": "talk is an allowed subtype of the publication node type.",
      "html": "<p>talk is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-talk/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-talk.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-trilogy",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-trilogy",
      "title": "Publication subtype: trilogy",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "trilogy is an allowed subtype of the publication node type.",
      "content": "trilogy is an allowed subtype of the publication node type.",
      "html": "<p>trilogy is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-trilogy/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-trilogy.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-publication-webpage",
      "protocol_id": "xananode.canonical:schema/node-subtype-publication-webpage",
      "title": "Publication subtype: webpage",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "webpage is an allowed subtype of the publication node type.",
      "content": "webpage is an allowed subtype of the publication node type.",
      "html": "<p>webpage is an allowed subtype of the publication node type.</p>",
      "url": "/schema/node-subtype-publication-webpage/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-publication-webpage.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-question-design_question",
      "protocol_id": "xananode.canonical:schema/node-subtype-question-design_question",
      "title": "Question subtype: design question",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "design_question is an allowed subtype of the question node type.",
      "content": "design_question is an allowed subtype of the question node type.",
      "html": "<p>design_question is an allowed subtype of the question node type.</p>",
      "url": "/schema/node-subtype-question-design_question/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-question-design_question.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-question-diagnostic_question",
      "protocol_id": "xananode.canonical:schema/node-subtype-question-diagnostic_question",
      "title": "Question subtype: diagnostic question",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "diagnostic_question is an allowed subtype of the question node type.",
      "content": "diagnostic_question is an allowed subtype of the question node type.",
      "html": "<p>diagnostic_question is an allowed subtype of the question node type.</p>",
      "url": "/schema/node-subtype-question-diagnostic_question/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-question-diagnostic_question.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-question-historical_question",
      "protocol_id": "xananode.canonical:schema/node-subtype-question-historical_question",
      "title": "Question subtype: historical question",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "historical_question is an allowed subtype of the question node type.",
      "content": "historical_question is an allowed subtype of the question node type.",
      "html": "<p>historical_question is an allowed subtype of the question node type.</p>",
      "url": "/schema/node-subtype-question-historical_question/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-question-historical_question.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-question-open_question",
      "protocol_id": "xananode.canonical:schema/node-subtype-question-open_question",
      "title": "Question subtype: open question",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "open_question is an allowed subtype of the question node type.",
      "content": "open_question is an allowed subtype of the question node type.",
      "html": "<p>open_question is an allowed subtype of the question node type.</p>",
      "url": "/schema/node-subtype-question-open_question/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-question-open_question.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-question-prediction_question",
      "protocol_id": "xananode.canonical:schema/node-subtype-question-prediction_question",
      "title": "Question subtype: prediction question",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "prediction_question is an allowed subtype of the question node type.",
      "content": "prediction_question is an allowed subtype of the question node type.",
      "html": "<p>prediction_question is an allowed subtype of the question node type.</p>",
      "url": "/schema/node-subtype-question-prediction_question/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-question-prediction_question.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-question-research_question",
      "protocol_id": "xananode.canonical:schema/node-subtype-question-research_question",
      "title": "Question subtype: research question",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "research_question is an allowed subtype of the question node type.",
      "content": "research_question is an allowed subtype of the question node type.",
      "html": "<p>research_question is an allowed subtype of the question node type.</p>",
      "url": "/schema/node-subtype-question-research_question/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-question-research_question.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-relationship-citation",
      "protocol_id": "xananode.canonical:schema/node-subtype-relationship-citation",
      "title": "Relationship subtype: citation",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "citation is an allowed subtype of the relationship node type.",
      "content": "citation is an allowed subtype of the relationship node type.",
      "html": "<p>citation is an allowed subtype of the relationship node type.</p>",
      "url": "/schema/node-subtype-relationship-citation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-relationship-citation.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-relationship-collaboration",
      "protocol_id": "xananode.canonical:schema/node-subtype-relationship-collaboration",
      "title": "Relationship subtype: collaboration",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "collaboration is an allowed subtype of the relationship node type.",
      "content": "collaboration is an allowed subtype of the relationship node type.",
      "html": "<p>collaboration is an allowed subtype of the relationship node type.</p>",
      "url": "/schema/node-subtype-relationship-collaboration/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-relationship-collaboration.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-relationship-dependency",
      "protocol_id": "xananode.canonical:schema/node-subtype-relationship-dependency",
      "title": "Relationship subtype: dependency",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "dependency is an allowed subtype of the relationship node type.",
      "content": "dependency is an allowed subtype of the relationship node type.",
      "html": "<p>dependency is an allowed subtype of the relationship node type.</p>",
      "url": "/schema/node-subtype-relationship-dependency/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-relationship-dependency.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-relationship-dispute",
      "protocol_id": "xananode.canonical:schema/node-subtype-relationship-dispute",
      "title": "Relationship subtype: dispute",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "dispute is an allowed subtype of the relationship node type.",
      "content": "dispute is an allowed subtype of the relationship node type.",
      "html": "<p>dispute is an allowed subtype of the relationship node type.</p>",
      "url": "/schema/node-subtype-relationship-dispute/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-relationship-dispute.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-relationship-friendship",
      "protocol_id": "xananode.canonical:schema/node-subtype-relationship-friendship",
      "title": "Relationship subtype: friendship",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "friendship is an allowed subtype of the relationship node type.",
      "content": "friendship is an allowed subtype of the relationship node type.",
      "html": "<p>friendship is an allowed subtype of the relationship node type.</p>",
      "url": "/schema/node-subtype-relationship-friendship/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-relationship-friendship.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-relationship-influence",
      "protocol_id": "xananode.canonical:schema/node-subtype-relationship-influence",
      "title": "Relationship subtype: influence",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "influence is an allowed subtype of the relationship node type.",
      "content": "influence is an allowed subtype of the relationship node type.",
      "html": "<p>influence is an allowed subtype of the relationship node type.</p>",
      "url": "/schema/node-subtype-relationship-influence/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-relationship-influence.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-relationship-lineage",
      "protocol_id": "xananode.canonical:schema/node-subtype-relationship-lineage",
      "title": "Relationship subtype: lineage",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "lineage is an allowed subtype of the relationship node type.",
      "content": "lineage is an allowed subtype of the relationship node type.",
      "html": "<p>lineage is an allowed subtype of the relationship node type.</p>",
      "url": "/schema/node-subtype-relationship-lineage/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-relationship-lineage.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-response-answer",
      "protocol_id": "xananode.canonical:schema/node-subtype-response-answer",
      "title": "Response subtype: answer",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "answer is an allowed subtype of the response node type.",
      "content": "answer is an allowed subtype of the response node type.",
      "html": "<p>answer is an allowed subtype of the response node type.</p>",
      "url": "/schema/node-subtype-response-answer/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-response-answer.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-response-clarification",
      "protocol_id": "xananode.canonical:schema/node-subtype-response-clarification",
      "title": "Response subtype: clarification",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "clarification is an allowed subtype of the response node type.",
      "content": "clarification is an allowed subtype of the response node type.",
      "html": "<p>clarification is an allowed subtype of the response node type.</p>",
      "url": "/schema/node-subtype-response-clarification/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-response-clarification.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-response-comment",
      "protocol_id": "xananode.canonical:schema/node-subtype-response-comment",
      "title": "Response subtype: comment",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "comment is an allowed subtype of the response node type.",
      "content": "comment is an allowed subtype of the response node type.",
      "html": "<p>comment is an allowed subtype of the response node type.</p>",
      "url": "/schema/node-subtype-response-comment/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-response-comment.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-response-follow_up",
      "protocol_id": "xananode.canonical:schema/node-subtype-response-follow_up",
      "title": "Response subtype: follow up",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "follow_up is an allowed subtype of the response node type.",
      "content": "follow_up is an allowed subtype of the response node type.",
      "html": "<p>follow_up is an allowed subtype of the response node type.</p>",
      "url": "/schema/node-subtype-response-follow_up/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-response-follow_up.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-response-rebuttal",
      "protocol_id": "xananode.canonical:schema/node-subtype-response-rebuttal",
      "title": "Response subtype: rebuttal",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "rebuttal is an allowed subtype of the response node type.",
      "content": "rebuttal is an allowed subtype of the response node type.",
      "html": "<p>rebuttal is an allowed subtype of the response node type.</p>",
      "url": "/schema/node-subtype-response-rebuttal/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-response-rebuttal.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-response-reply",
      "protocol_id": "xananode.canonical:schema/node-subtype-response-reply",
      "title": "Response subtype: reply",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "reply is an allowed subtype of the response node type.",
      "content": "reply is an allowed subtype of the response node type.",
      "html": "<p>reply is an allowed subtype of the response node type.</p>",
      "url": "/schema/node-subtype-response-reply/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-response-reply.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-response-review_response",
      "protocol_id": "xananode.canonical:schema/node-subtype-response-review_response",
      "title": "Response subtype: review response",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "review_response is an allowed subtype of the response node type.",
      "content": "review_response is an allowed subtype of the response node type.",
      "html": "<p>review_response is an allowed subtype of the response node type.</p>",
      "url": "/schema/node-subtype-response-review_response/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-response-review_response.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-revision-claim_revision",
      "protocol_id": "xananode.canonical:schema/node-subtype-revision-claim_revision",
      "title": "Revision subtype: claim revision",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "claim_revision is an allowed subtype of the revision node type.",
      "content": "claim_revision is an allowed subtype of the revision node type.",
      "html": "<p>claim_revision is an allowed subtype of the revision node type.</p>",
      "url": "/schema/node-subtype-revision-claim_revision/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-revision-claim_revision.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-revision-media_revision",
      "protocol_id": "xananode.canonical:schema/node-subtype-revision-media_revision",
      "title": "Revision subtype: media revision",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "media_revision is an allowed subtype of the revision node type.",
      "content": "media_revision is an allowed subtype of the revision node type.",
      "html": "<p>media_revision is an allowed subtype of the revision node type.</p>",
      "url": "/schema/node-subtype-revision-media_revision/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-revision-media_revision.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-revision-node_revision",
      "protocol_id": "xananode.canonical:schema/node-subtype-revision-node_revision",
      "title": "Revision subtype: node revision",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "node_revision is an allowed subtype of the revision node type.",
      "content": "node_revision is an allowed subtype of the revision node type.",
      "html": "<p>node_revision is an allowed subtype of the revision node type.</p>",
      "url": "/schema/node-subtype-revision-node_revision/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-revision-node_revision.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-revision-relationship_revision",
      "protocol_id": "xananode.canonical:schema/node-subtype-revision-relationship_revision",
      "title": "Revision subtype: relationship revision",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "relationship_revision is an allowed subtype of the revision node type.",
      "content": "relationship_revision is an allowed subtype of the revision node type.",
      "html": "<p>relationship_revision is an allowed subtype of the revision node type.</p>",
      "url": "/schema/node-subtype-revision-relationship_revision/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-revision-relationship_revision.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-canonical_schema_record",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-canonical_schema_record",
      "title": "Schema subtype: canonical schema record",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "canonical_schema_record is an allowed subtype of the schema node type.",
      "content": "canonical_schema_record is an allowed subtype of the schema node type.",
      "html": "<p>canonical_schema_record is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-canonical_schema_record/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-canonical_schema_record.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-governance_rule",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-governance_rule",
      "title": "Schema subtype: governance rule",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "governance_rule is an allowed subtype of the schema node type.",
      "content": "governance_rule is an allowed subtype of the schema node type.",
      "html": "<p>governance_rule is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-governance_rule/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-governance_rule.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-namespace_record",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-namespace_record",
      "title": "Schema subtype: namespace record",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "namespace_record is an allowed subtype of the schema node type.",
      "content": "namespace_record is an allowed subtype of the schema node type.",
      "html": "<p>namespace_record is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-namespace_record/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-namespace_record.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-node_subtype_schema",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-node_subtype_schema",
      "title": "Schema subtype: node subtype schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "node_subtype_schema is an allowed subtype of the schema node type.",
      "content": "node_subtype_schema is an allowed subtype of the schema node type.",
      "html": "<p>node_subtype_schema is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-node_subtype_schema/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-node_subtype_schema.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-node_type_schema",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-node_type_schema",
      "title": "Schema subtype: node type schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "node_type_schema is an allowed subtype of the schema node type.",
      "content": "node_type_schema is an allowed subtype of the schema node type.",
      "html": "<p>node_type_schema is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-node_type_schema/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-node_type_schema.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-projection_style_rule",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-projection_style_rule",
      "title": "Schema subtype: projection style rule",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "projection_style_rule is an allowed subtype of the schema node type.",
      "content": "projection_style_rule is an allowed subtype of the schema node type.",
      "html": "<p>projection_style_rule is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-projection_style_rule/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-projection_style_rule.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-property_registry_entry",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-property_registry_entry",
      "title": "Schema subtype: property registry entry",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "property_registry_entry is an allowed subtype of the schema node type.",
      "content": "property_registry_entry is an allowed subtype of the schema node type.",
      "html": "<p>property_registry_entry is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-property_registry_entry/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-property_registry_entry.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-protocol_artifact",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-protocol_artifact",
      "title": "Schema subtype: protocol artifact",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "protocol_artifact is an allowed subtype of the schema node type.",
      "content": "protocol_artifact is an allowed subtype of the schema node type.",
      "html": "<p>protocol_artifact is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-protocol_artifact/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-protocol_artifact.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-relationship_category_schema",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-relationship_category_schema",
      "title": "Schema subtype: relationship category schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "relationship_category_schema is an allowed subtype of the schema node type.",
      "content": "relationship_category_schema is an allowed subtype of the schema node type.",
      "html": "<p>relationship_category_schema is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-relationship_category_schema/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-relationship_category_schema.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-relationship_type_schema",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-relationship_type_schema",
      "title": "Schema subtype: relationship type schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "relationship_type_schema is an allowed subtype of the schema node type.",
      "content": "relationship_type_schema is an allowed subtype of the schema node type.",
      "html": "<p>relationship_type_schema is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-relationship_type_schema/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-relationship_type_schema.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-schema_field",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-schema_field",
      "title": "Schema subtype: schema field",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "schema_field is an allowed subtype of the schema node type.",
      "content": "schema_field is an allowed subtype of the schema node type.",
      "html": "<p>schema_field is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-schema_field/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-schema_field.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-schema_term",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-schema_term",
      "title": "Schema subtype: schema term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "schema_term is an allowed subtype of the schema node type.",
      "content": "schema_term is an allowed subtype of the schema node type.",
      "html": "<p>schema_term is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-schema_term/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-schema_term.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-semantic_rule",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-semantic_rule",
      "title": "Schema subtype: semantic rule",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "semantic_rule is an allowed subtype of the schema node type.",
      "content": "semantic_rule is an allowed subtype of the schema node type.",
      "html": "<p>semantic_rule is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-semantic_rule/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-semantic_rule.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-style_rule",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-style_rule",
      "title": "Schema subtype: style rule",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "style_rule is an allowed subtype of the schema node type.",
      "content": "style_rule is an allowed subtype of the schema node type.",
      "html": "<p>style_rule is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-style_rule/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-style_rule.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-term",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-term",
      "title": "Schema subtype: term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "term is an allowed subtype of the schema node type.",
      "content": "term is an allowed subtype of the schema node type.",
      "html": "<p>term is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-term/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-term.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-schema-validation_rule",
      "protocol_id": "xananode.canonical:schema/node-subtype-schema-validation_rule",
      "title": "Schema subtype: validation rule",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "validation_rule is an allowed subtype of the schema node type.",
      "content": "validation_rule is an allowed subtype of the schema node type.",
      "html": "<p>validation_rule is an allowed subtype of the schema node type.</p>",
      "url": "/schema/node-subtype-schema-validation_rule/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-schema-validation_rule.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-archive",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-archive",
      "title": "Source subtype: archive",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "archive is an allowed subtype of the source node type.",
      "content": "archive is an allowed subtype of the source node type.",
      "html": "<p>archive is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-archive/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-archive.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-article",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-article",
      "title": "Source subtype: article",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "article is an allowed subtype of the source node type.",
      "content": "article is an allowed subtype of the source node type.",
      "html": "<p>article is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-article/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-article.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-audio_drama",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-audio_drama",
      "title": "Source subtype: audio drama",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "audio_drama is an allowed subtype of the source node type.",
      "content": "audio_drama is an allowed subtype of the source node type.",
      "html": "<p>audio_drama is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-audio_drama/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-audio_drama.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-book",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-book",
      "title": "Source subtype: book",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "book is an allowed subtype of the source node type.",
      "content": "book is an allowed subtype of the source node type.",
      "html": "<p>book is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-book/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-book.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-dataset",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-dataset",
      "title": "Source subtype: dataset",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "dataset is an allowed subtype of the source node type.",
      "content": "dataset is an allowed subtype of the source node type.",
      "html": "<p>dataset is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-dataset/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-dataset.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-documentation",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-documentation",
      "title": "Source subtype: documentation",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "documentation is an allowed subtype of the source node type.",
      "content": "documentation is an allowed subtype of the source node type.",
      "html": "<p>documentation is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-documentation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-documentation.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-git_repository",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-git_repository",
      "title": "Source subtype: git repository",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "git_repository is an allowed subtype of the source node type.",
      "content": "git_repository is an allowed subtype of the source node type.",
      "html": "<p>git_repository is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-git_repository/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-git_repository.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-interview",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-interview",
      "title": "Source subtype: interview",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "interview is an allowed subtype of the source node type.",
      "content": "interview is an allowed subtype of the source node type.",
      "html": "<p>interview is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-interview/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-interview.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-legal_policy",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-legal_policy",
      "title": "Source subtype: legal policy",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "legal_policy is an allowed subtype of the source node type.",
      "content": "legal_policy is an allowed subtype of the source node type.",
      "html": "<p>legal_policy is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-legal_policy/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-legal_policy.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-license",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-license",
      "title": "Source subtype: license",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "license is an allowed subtype of the source node type.",
      "content": "license is an allowed subtype of the source node type.",
      "html": "<p>license is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-license/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-license.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-notice",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-notice",
      "title": "Source subtype: notice",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "notice is an allowed subtype of the source node type.",
      "content": "notice is an allowed subtype of the source node type.",
      "html": "<p>notice is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-notice/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-notice.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-official_site",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-official_site",
      "title": "Source subtype: official site",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "official_site is an allowed subtype of the source node type.",
      "content": "official_site is an allowed subtype of the source node type.",
      "html": "<p>official_site is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-official_site/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-official_site.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-paper",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-paper",
      "title": "Source subtype: paper",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "paper is an allowed subtype of the source node type.",
      "content": "paper is an allowed subtype of the source node type.",
      "html": "<p>paper is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-paper/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-paper.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-radio_episode",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-radio_episode",
      "title": "Source subtype: radio episode",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "radio_episode is an allowed subtype of the source node type.",
      "content": "radio_episode is an allowed subtype of the source node type.",
      "html": "<p>radio_episode is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-radio_episode/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-radio_episode.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-radio_series",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-radio_series",
      "title": "Source subtype: radio series",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "radio_series is an allowed subtype of the source node type.",
      "content": "radio_series is an allowed subtype of the source node type.",
      "html": "<p>radio_series is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-radio_series/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-radio_series.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-social_profile",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-social_profile",
      "title": "Source subtype: social profile",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "social_profile is an allowed subtype of the source node type.",
      "content": "social_profile is an allowed subtype of the source node type.",
      "html": "<p>social_profile is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-social_profile/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-social_profile.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-stage_play",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-stage_play",
      "title": "Source subtype: stage play",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "stage_play is an allowed subtype of the source node type.",
      "content": "stage_play is an allowed subtype of the source node type.",
      "html": "<p>stage_play is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-stage_play/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-stage_play.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-support_page",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-support_page",
      "title": "Source subtype: support page",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "support_page is an allowed subtype of the source node type.",
      "content": "support_page is an allowed subtype of the source node type.",
      "html": "<p>support_page is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-support_page/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-support_page.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-talk",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-talk",
      "title": "Source subtype: talk",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "talk is an allowed subtype of the source node type.",
      "content": "talk is an allowed subtype of the source node type.",
      "html": "<p>talk is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-talk/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-talk.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-television_episode",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-television_episode",
      "title": "Source subtype: television episode",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "television_episode is an allowed subtype of the source node type.",
      "content": "television_episode is an allowed subtype of the source node type.",
      "html": "<p>television_episode is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-television_episode/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-television_episode.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-television_series",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-television_series",
      "title": "Source subtype: television series",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "television_series is an allowed subtype of the source node type.",
      "content": "television_series is an allowed subtype of the source node type.",
      "html": "<p>television_series is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-television_series/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-television_series.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-trademark_policy",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-trademark_policy",
      "title": "Source subtype: trademark policy",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "trademark_policy is an allowed subtype of the source node type.",
      "content": "trademark_policy is an allowed subtype of the source node type.",
      "html": "<p>trademark_policy is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-trademark_policy/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-trademark_policy.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-transcript",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-transcript",
      "title": "Source subtype: transcript",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "transcript is an allowed subtype of the source node type.",
      "content": "transcript is an allowed subtype of the source node type.",
      "html": "<p>transcript is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-transcript/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-transcript.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-web_snapshot",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-web_snapshot",
      "title": "Source subtype: web snapshot",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "web_snapshot is an allowed subtype of the source node type.",
      "content": "web_snapshot is an allowed subtype of the source node type.",
      "html": "<p>web_snapshot is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-web_snapshot/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-web_snapshot.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-source-website",
      "protocol_id": "xananode.canonical:schema/node-subtype-source-website",
      "title": "Source subtype: website",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "website is an allowed subtype of the source node type.",
      "content": "website is an allowed subtype of the source node type.",
      "html": "<p>website is an allowed subtype of the source node type.</p>",
      "url": "/schema/node-subtype-source-website/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-source-website.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-technology-algorithm",
      "protocol_id": "xananode.canonical:schema/node-subtype-technology-algorithm",
      "title": "Technology subtype: algorithm",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "algorithm is an allowed subtype of the technology node type.",
      "content": "algorithm is an allowed subtype of the technology node type.",
      "html": "<p>algorithm is an allowed subtype of the technology node type.</p>",
      "url": "/schema/node-subtype-technology-algorithm/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-technology-algorithm.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-technology-architecture",
      "protocol_id": "xananode.canonical:schema/node-subtype-technology-architecture",
      "title": "Technology subtype: architecture",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "architecture is an allowed subtype of the technology node type.",
      "content": "architecture is an allowed subtype of the technology node type.",
      "html": "<p>architecture is an allowed subtype of the technology node type.</p>",
      "url": "/schema/node-subtype-technology-architecture/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-technology-architecture.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-technology-format",
      "protocol_id": "xananode.canonical:schema/node-subtype-technology-format",
      "title": "Technology subtype: format",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "format is an allowed subtype of the technology node type.",
      "content": "format is an allowed subtype of the technology node type.",
      "html": "<p>format is an allowed subtype of the technology node type.</p>",
      "url": "/schema/node-subtype-technology-format/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-technology-format.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-technology-language",
      "protocol_id": "xananode.canonical:schema/node-subtype-technology-language",
      "title": "Technology subtype: language",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "language is an allowed subtype of the technology node type.",
      "content": "language is an allowed subtype of the technology node type.",
      "html": "<p>language is an allowed subtype of the technology node type.</p>",
      "url": "/schema/node-subtype-technology-language/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-technology-language.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-technology-model",
      "protocol_id": "xananode.canonical:schema/node-subtype-technology-model",
      "title": "Technology subtype: model",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "model is an allowed subtype of the technology node type.",
      "content": "model is an allowed subtype of the technology node type.",
      "html": "<p>model is an allowed subtype of the technology node type.</p>",
      "url": "/schema/node-subtype-technology-model/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-technology-model.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-technology-platform",
      "protocol_id": "xananode.canonical:schema/node-subtype-technology-platform",
      "title": "Technology subtype: platform",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "platform is an allowed subtype of the technology node type.",
      "content": "platform is an allowed subtype of the technology node type.",
      "html": "<p>platform is an allowed subtype of the technology node type.</p>",
      "url": "/schema/node-subtype-technology-platform/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-technology-platform.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-technology-protocol",
      "protocol_id": "xananode.canonical:schema/node-subtype-technology-protocol",
      "title": "Technology subtype: protocol",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "protocol is an allowed subtype of the technology node type.",
      "content": "protocol is an allowed subtype of the technology node type.",
      "html": "<p>protocol is an allowed subtype of the technology node type.</p>",
      "url": "/schema/node-subtype-technology-protocol/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-technology-protocol.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-technology-tool",
      "protocol_id": "xananode.canonical:schema/node-subtype-technology-tool",
      "title": "Technology subtype: tool",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "tool is an allowed subtype of the technology node type.",
      "content": "tool is an allowed subtype of the technology node type.",
      "html": "<p>tool is an allowed subtype of the technology node type.</p>",
      "url": "/schema/node-subtype-technology-tool/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-technology-tool.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-trail-argument",
      "protocol_id": "xananode.canonical:schema/node-subtype-trail-argument",
      "title": "Trail subtype: argument",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "argument is an allowed subtype of the trail node type.",
      "content": "argument is an allowed subtype of the trail node type.",
      "html": "<p>argument is an allowed subtype of the trail node type.</p>",
      "url": "/schema/node-subtype-trail-argument/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-trail-argument.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-trail-dispute_path",
      "protocol_id": "xananode.canonical:schema/node-subtype-trail-dispute_path",
      "title": "Trail subtype: dispute path",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "dispute_path is an allowed subtype of the trail node type.",
      "content": "dispute_path is an allowed subtype of the trail node type.",
      "html": "<p>dispute_path is an allowed subtype of the trail node type.</p>",
      "url": "/schema/node-subtype-trail-dispute_path/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-trail-dispute_path.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-trail-evidence_path",
      "protocol_id": "xananode.canonical:schema/node-subtype-trail-evidence_path",
      "title": "Trail subtype: evidence path",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "evidence_path is an allowed subtype of the trail node type.",
      "content": "evidence_path is an allowed subtype of the trail node type.",
      "html": "<p>evidence_path is an allowed subtype of the trail node type.</p>",
      "url": "/schema/node-subtype-trail-evidence_path/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-trail-evidence_path.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-trail-historical",
      "protocol_id": "xananode.canonical:schema/node-subtype-trail-historical",
      "title": "Trail subtype: historical",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "historical is an allowed subtype of the trail node type.",
      "content": "historical is an allowed subtype of the trail node type.",
      "html": "<p>historical is an allowed subtype of the trail node type.</p>",
      "url": "/schema/node-subtype-trail-historical/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-trail-historical.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-trail-introductory",
      "protocol_id": "xananode.canonical:schema/node-subtype-trail-introductory",
      "title": "Trail subtype: introductory",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "introductory is an allowed subtype of the trail node type.",
      "content": "introductory is an allowed subtype of the trail node type.",
      "html": "<p>introductory is an allowed subtype of the trail node type.</p>",
      "url": "/schema/node-subtype-trail-introductory/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-trail-introductory.json"
    },
    {
      "id": "xananode.canonical:schema/node-subtype-trail-teaching_path",
      "protocol_id": "xananode.canonical:schema/node-subtype-trail-teaching_path",
      "title": "Trail subtype: teaching path",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "teaching_path is an allowed subtype of the trail node type.",
      "content": "teaching_path is an allowed subtype of the trail node type.",
      "html": "<p>teaching_path is an allowed subtype of the trail node type.</p>",
      "url": "/schema/node-subtype-trail-teaching_path/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-subtype-trail-teaching_path.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-claim",
      "protocol_id": "xananode.canonical:schema/node-type-claim",
      "title": "Claim",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A specific assertion that can be supported, disputed, revised, deprecated, or rejected.",
      "content": "A specific assertion that can be supported, disputed, revised, deprecated, or rejected.",
      "html": "<p>A specific assertion that can be supported, disputed, revised, deprecated, or rejected.</p>",
      "url": "/schema/node-type-claim/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-claim.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-communication",
      "protocol_id": "xananode.canonical:schema/node-type-communication",
      "title": "Communication",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A first-class communication event or artifact whose topology, directionality, participants, and pattern affect how knowledge moved.",
      "content": "A first-class communication event or artifact whose topology, directionality, participants, and pattern affect how knowledge moved.",
      "html": "<p>A first-class communication event or artifact whose topology, directionality, participants, and pattern affect how knowledge moved.</p>",
      "url": "/schema/node-type-communication/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-communication.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-community",
      "protocol_id": "xananode.canonical:schema/node-type-community",
      "title": "Community",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A group organized around an identity, platform, shared work, practice, interest, or tradition.",
      "content": "A group organized around an identity, platform, shared work, practice, interest, or tradition.",
      "html": "<p>A group organized around an identity, platform, shared work, practice, interest, or tradition.</p>",
      "url": "/schema/node-type-community/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-community.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-concept",
      "protocol_id": "xananode.canonical:schema/node-type-concept",
      "title": "Concept",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "An idea, pattern, theory, failure mode, or explanatory structure. A concept is built from claims.",
      "content": "An idea, pattern, theory, failure mode, or explanatory structure. A concept is built from claims.",
      "html": "<p>An idea, pattern, theory, failure mode, or explanatory structure. A concept is built from claims.</p>",
      "url": "/schema/node-type-concept/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-concept.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-essay",
      "protocol_id": "xananode.canonical:schema/node-type-essay",
      "title": "Essay",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A human-authored argument that connects claims, sources, observations, and concepts.",
      "content": "A human-authored argument that connects claims, sources, observations, and concepts.",
      "html": "<p>A human-authored argument that connects claims, sources, observations, and concepts.</p>",
      "url": "/schema/node-type-essay/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-essay.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-event",
      "protocol_id": "xananode.canonical:schema/node-type-event",
      "title": "Event",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "Something that happened at a time and optionally at a place.",
      "content": "Something that happened at a time and optionally at a place.",
      "html": "<p>Something that happened at a time and optionally at a place.</p>",
      "url": "/schema/node-type-event/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-event.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-fragment",
      "protocol_id": "xananode.canonical:schema/node-type-fragment",
      "title": "Fragment",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A stable, addressable portion of another node, source, media object, or publication used for deep linking, quotation, citation, transclusion, and revision-aware reference.",
      "content": "A stable, addressable portion of another node, source, media object, or publication used for deep linking, quotation, citation, transclusion, and revision-aware reference.",
      "html": "<p>A stable, addressable portion of another node, source, media object, or publication used for deep linking, quotation, citation, transclusion, and revision-aware reference.</p>",
      "url": "/schema/node-type-fragment/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-fragment.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-hypothesis",
      "protocol_id": "xananode.canonical:schema/node-type-hypothesis",
      "title": "Hypothesis",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A provisional explanation, prediction, or model that can be tested, supported, falsified, revised, or abandoned.",
      "content": "A provisional explanation, prediction, or model that can be tested, supported, falsified, revised, or abandoned.",
      "html": "<p>A provisional explanation, prediction, or model that can be tested, supported, falsified, revised, or abandoned.</p>",
      "url": "/schema/node-type-hypothesis/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-hypothesis.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-item",
      "protocol_id": "xananode.canonical:schema/node-type-item",
      "title": "Item",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A discrete physical thing, product, ingredient, component, tool, or other tangible object that can be counted, assembled, consumed, used, or stored.",
      "content": "A discrete physical thing, product, ingredient, component, tool, or other tangible object that can be counted, assembled, consumed, used, or stored.",
      "html": "<p>A discrete physical thing, product, ingredient, component, tool, or other tangible object that can be counted, assembled, consumed, used, or stored.</p>",
      "url": "/schema/node-type-item/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-item.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-knowledge_gap",
      "protocol_id": "xananode.canonical:schema/node-type-knowledge_gap",
      "title": "Knowledge Gap",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A known absence, uncertainty, missing source, missing citation, lost document, unknown author, or unresolved area in a substrate.",
      "content": "A known absence, uncertainty, missing source, missing citation, lost document, unknown author, or unresolved area in a substrate.",
      "html": "<p>A known absence, uncertainty, missing source, missing citation, lost document, unknown author, or unresolved area in a substrate.</p>",
      "url": "/schema/node-type-knowledge_gap/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-knowledge_gap.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-media",
      "protocol_id": "xananode.canonical:schema/node-type-media",
      "title": "Media",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "An image, video, audio clip, screenshot, diagram, document, or other media item with provenance.",
      "content": "An image, video, audio clip, screenshot, diagram, document, or other media item with provenance.",
      "html": "<p>An image, video, audio clip, screenshot, diagram, document, or other media item with provenance.</p>",
      "url": "/schema/node-type-media/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-media.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-observation",
      "protocol_id": "xananode.canonical:schema/node-type-observation",
      "title": "Observation",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A real-world case, symptom, example, incident, failure, or pattern being analyzed.",
      "content": "A real-world case, symptom, example, incident, failure, or pattern being analyzed.",
      "html": "<p>A real-world case, symptom, example, incident, failure, or pattern being analyzed.</p>",
      "url": "/schema/node-type-observation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-observation.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-organization",
      "protocol_id": "xananode.canonical:schema/node-type-organization",
      "title": "Organization",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A company, institution, agency, lab, school, collective, standards body, nonprofit, or group.",
      "content": "A company, institution, agency, lab, school, collective, standards body, nonprofit, or group.",
      "html": "<p>A company, institution, agency, lab, school, collective, standards body, nonprofit, or group.</p>",
      "url": "/schema/node-type-organization/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-organization.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-person",
      "protocol_id": "xananode.canonical:schema/node-type-person",
      "title": "Person",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A human actor who created, influenced, witnessed, argued, documented, or participated in something.",
      "content": "A human actor who created, influenced, witnessed, argued, documented, or participated in something.",
      "html": "<p>A human actor who created, influenced, witnessed, argued, documented, or participated in something.</p>",
      "url": "/schema/node-type-person/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-person.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-place",
      "protocol_id": "xananode.canonical:schema/node-type-place",
      "title": "Place",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A physical or virtual location where people, projects, organizations, or events exist or occurred.",
      "content": "A physical or virtual location where people, projects, organizations, or events exist or occurred.",
      "html": "<p>A physical or virtual location where people, projects, organizations, or events exist or occurred.</p>",
      "url": "/schema/node-type-place/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-place.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-problem",
      "protocol_id": "xananode.canonical:schema/node-type-problem",
      "title": "Problem",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A difficulty, failure mode, design challenge, risk, or open need that organizes inquiry and work.",
      "content": "A difficulty, failure mode, design challenge, risk, or open need that organizes inquiry and work.",
      "html": "<p>A difficulty, failure mode, design challenge, risk, or open need that organizes inquiry and work.</p>",
      "url": "/schema/node-type-problem/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-problem.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-project",
      "protocol_id": "xananode.canonical:schema/node-type-project",
      "title": "Project",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A built, proposed, fictional, abandoned, or active system with a purpose and lineage.",
      "content": "A built, proposed, fictional, abandoned, or active system with a purpose and lineage.",
      "html": "<p>A built, proposed, fictional, abandoned, or active system with a purpose and lineage.</p>",
      "url": "/schema/node-type-project/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-project.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-publication",
      "protocol_id": "xananode.canonical:schema/node-type-publication",
      "title": "Publication",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A released intellectual or creative work such as a book, article, paper, film, episode, or talk.",
      "content": "A released intellectual or creative work such as a book, article, paper, film, episode, or talk.",
      "html": "<p>A released intellectual or creative work such as a book, article, paper, film, episode, or talk.</p>",
      "url": "/schema/node-type-publication/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-publication.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-question",
      "protocol_id": "xananode.canonical:schema/node-type-question",
      "title": "Question",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "An explicit inquiry, prompt, research question, or unresolved ask that motivates investigation and can be answered, partially answered, disputed, or left open.",
      "content": "An explicit inquiry, prompt, research question, or unresolved ask that motivates investigation and can be answered, partially answered, disputed, or left open.",
      "html": "<p>An explicit inquiry, prompt, research question, or unresolved ask that motivates investigation and can be answered, partially answered, disputed, or left open.</p>",
      "url": "/schema/node-type-question/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-question.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-registry",
      "protocol_id": "xananode.canonical:schema/node-type-registry",
      "title": "Node Type Registry",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The canonical registry of current XanaNode node types, subtypes, visual treatment hints, and frontmatter recommendations.",
      "content": "The canonical registry of current XanaNode node types, subtypes, visual treatment hints, and frontmatter recommendations.",
      "html": "<p>The canonical registry of current XanaNode node types, subtypes, visual treatment hints, and frontmatter recommendations.</p>",
      "url": "/schema/node-type-registry/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/xananode-node-types.v0.3.0.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-registry.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-relationship",
      "protocol_id": "xananode.canonical:schema/node-type-relationship",
      "title": "Relationship",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A first-class edge treated as a node because the relationship itself has history, evidence, dispute, or explanation.",
      "content": "A first-class edge treated as a node because the relationship itself has history, evidence, dispute, or explanation.",
      "html": "<p>A first-class edge treated as a node because the relationship itself has history, evidence, dispute, or explanation.</p>",
      "url": "/schema/node-type-relationship/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-relationship.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-response",
      "protocol_id": "xananode.canonical:schema/node-type-response",
      "title": "Response",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A reply, answer, rebuttal, clarification, or follow-up that responds to a question, communication, claim, or prior response.",
      "content": "A reply, answer, rebuttal, clarification, or follow-up that responds to a question, communication, claim, or prior response.",
      "html": "<p>A reply, answer, rebuttal, clarification, or follow-up that responds to a question, communication, claim, or prior response.</p>",
      "url": "/schema/node-type-response/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-response.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-revision",
      "protocol_id": "xananode.canonical:schema/node-type-revision",
      "title": "Revision",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "An immutable historical version of another node.",
      "content": "An immutable historical version of another node.",
      "html": "<p>An immutable historical version of another node.</p>",
      "url": "/schema/node-type-revision/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-revision.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-schema",
      "protocol_id": "xananode.canonical:schema/node-type-schema",
      "title": "Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A rule, ontology, validation document, or governance definition used by XanaNode itself.",
      "content": "A rule, ontology, validation document, or governance definition used by XanaNode itself.",
      "html": "<p>A rule, ontology, validation document, or governance definition used by XanaNode itself.</p>",
      "url": "/schema/node-type-schema/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-schema.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-source",
      "protocol_id": "xananode.canonical:schema/node-type-source",
      "title": "Source",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A reference work, transcript, paper, book, talk, article, dataset, or primary evidence item.",
      "content": "A reference work, transcript, paper, book, talk, article, dataset, or primary evidence item.",
      "html": "<p>A reference work, transcript, paper, book, talk, article, dataset, or primary evidence item.</p>",
      "url": "/schema/node-type-source/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-source.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-technology",
      "protocol_id": "xananode.canonical:schema/node-type-technology",
      "title": "Technology",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A tool, protocol, model, platform, architecture, method, or technical system.",
      "content": "A tool, protocol, model, platform, architecture, method, or technical system.",
      "html": "<p>A tool, protocol, model, platform, architecture, method, or technical system.</p>",
      "url": "/schema/node-type-technology/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-technology.json"
    },
    {
      "id": "xananode.canonical:schema/node-type-trail",
      "protocol_id": "xananode.canonical:schema/node-type-trail",
      "title": "Trail",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "A curated route through the graph.",
      "content": "A curated route through the graph.",
      "html": "<p>A curated route through the graph.</p>",
      "url": "/schema/node-type-trail/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_node-type-trail.json"
    },
    {
      "id": "xananode.canonical:schema/property-birth_date",
      "protocol_id": "xananode.canonical:schema/property-birth_date",
      "title": "Birth date",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "Calendar date on which a person, organization, project, or entity began.",
      "content": "Calendar date on which a person, organization, project, or entity began.",
      "html": "<p>Calendar date on which a person, organization, project, or entity began.</p>",
      "url": "/schema/property-birth_date/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_property-birth_date.json"
    },
    {
      "id": "xananode.canonical:schema/property-currency_value",
      "protocol_id": "xananode.canonical:schema/property-currency_value",
      "title": "Currency value",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "A monetary amount with an ISO 4217 currency code.",
      "content": "A monetary amount with an ISO 4217 currency code.",
      "html": "<p>A monetary amount with an ISO 4217 currency code.</p>",
      "url": "/schema/property-currency_value/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_property-currency_value.json"
    },
    {
      "id": "xananode.canonical:schema/property-external_identifier",
      "protocol_id": "xananode.canonical:schema/property-external_identifier",
      "title": "External identifier",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "A typed identifier from an external authority or registry.",
      "content": "A typed identifier from an external authority or registry.",
      "html": "<p>A typed identifier from an external authority or registry.</p>",
      "url": "/schema/property-external_identifier/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_property-external_identifier.json"
    },
    {
      "id": "xananode.canonical:schema/property-geo_coordinates",
      "protocol_id": "xananode.canonical:schema/property-geo_coordinates",
      "title": "Geographic coordinates",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "WGS84 latitude and longitude coordinates for a place or geographically located entity.",
      "content": "WGS84 latitude and longitude coordinates for a place or geographically located entity.",
      "html": "<p>WGS84 latitude and longitude coordinates for a place or geographically located entity.</p>",
      "url": "/schema/property-geo_coordinates/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_property-geo_coordinates.json"
    },
    {
      "id": "xananode.canonical:schema/property-measurement_si",
      "protocol_id": "xananode.canonical:schema/property-measurement_si",
      "title": "SI measurement",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "A quantified physical or conceptual measurement expressed in SI-compatible units.",
      "content": "A quantified physical or conceptual measurement expressed in SI-compatible units.",
      "html": "<p>A quantified physical or conceptual measurement expressed in SI-compatible units.</p>",
      "url": "/schema/property-measurement_si/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_property-measurement_si.json"
    },
    {
      "id": "xananode.canonical:schema/property-registry",
      "protocol_id": "xananode.canonical:schema/property-registry",
      "title": "Property Registry",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The canonical registry of standardized open-ended node properties for dates, coordinates, money, measurements, and external identifiers.",
      "content": "The canonical registry of standardized open-ended node properties for dates, coordinates, money, measurements, and external identifiers.",
      "html": "<p>The canonical registry of standardized open-ended node properties for dates, coordinates, money, measurements, and external identifiers.</p>",
      "url": "/schema/property-registry/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/xananode-property-registry.v0.1.0.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_property-registry.json"
    },
    {
      "id": "xananode.canonical:schema/property-registry-schema",
      "protocol_id": "xananode.canonical:schema/property-registry-schema",
      "title": "Property Registry Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The JSON Schema for declaring standardized custom node properties such as measurements, coordinates, money values, identifiers, and dates.",
      "content": "The JSON Schema for declaring standardized custom node properties such as measurements, coordinates, money values, identifiers, and dates.",
      "html": "<p>The JSON Schema for declaring standardized custom node properties such as measurements, coordinates, money values, identifiers, and dates.</p>",
      "url": "/schema/property-registry-schema/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/property-registry.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_property-registry-schema.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-contexts",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-contexts",
      "title": "Protocol Contexts",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The linked-data context files published by the XanaNode protocol.",
      "content": "The linked-data context files published by the XanaNode protocol.",
      "html": "<p>The linked-data context files published by the XanaNode protocol.</p>",
      "url": "/schema/protocol-artifact-contexts/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/contexts/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-contexts.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-contexts-xananode.context.jsonld",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-contexts-xananode.context.jsonld",
      "title": "Contexts / XanaNode Context",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The JSON-LD context that maps XanaNode terms into linked-data form.",
      "content": "{\n  \"@context\": {\n    \"xana\": \"https://xananode.org/terms/\",\n    \"prov\": \"http://www.w3.org/ns/prov#\",\n    \"oa\": \"http://www.w3.org/ns/oa#\",\n    \"schema\": \"https://schema.org/\",\n    \"id\": \"@id\",\n    \"type\": \"@type\",\n    \"title\": \"schema:name\",\n    \"summary\": \"schema:description\",\n    \"created_by\": {\n      \"@id\": \"prov:wasAttributedTo\",\n      \"@type\": \"@id\"\n    },\n    \"created_at\": {\n      \"@id\": \"prov:generatedAtTime\",\n      \"@type\": \"schema:DateTime\"\n    },\n    \"updated_at\": {\n      \"@id\": \"prov:invalidatedAtTime\",\n      \"@type\": \"schema:DateTime\"\n    },\n    \"asserted_by\": {\n      \"@id\": \"xana:assertedBy\",\n      \"@type\": \"@id\"\n    },\n    \"asserted_at\": {\n      \"@id\": \"xana:assertedAt\",\n      \"@type\": \"schema:DateTime\"\n    },\n    \"source_node\": {\n      \"@id\": \"xana:sourceNode\",\n      \"@type\": \"@id\"\n    },\n    \"fragment_id\": \"xana:fragmentId\",\n    \"tumbler\": \"xana:tumbler\",\n    \"selector\": \"oa:hasSelector\",\n    \"content_id\": \"xana:contentId\",\n    \"version_id\": \"xana:versionId\",\n    \"source_content_id\": \"xana:sourceContentId\",\n    \"source_version_id\": \"xana:sourceVersionId\",\n    \"relationships\": \"xana:relationships\",\n    \"evidence\": {\n      \"@id\": \"xana:evidence\",\n      \"@type\": \"@id\"\n    }\n  }\n}\n",
      "html": "<p>{ &quot;@context&quot;: { &quot;xana&quot;: &quot;https://xananode.org/terms/&quot;, &quot;prov&quot;: &quot;http://www.w3.org/ns/prov#&quot;, &quot;oa&quot;: &quot;http://www.w3.org/ns/oa#&quot;, &quot;schema&quot;: &quot;https://schema.org/&quot;, &quot;id&quot;: &quot;@id&quot;, &quot;type&quot;: &quot;@type&quot;, &quot;title&quot;: &quot;schema:name&quot;, &quot;summary&quot;: &quot;schema:description&quot;, &quot;created_by&quot;: { &quot;@id&quot;: &quot;prov:wasAttributedTo&quot;, &quot;@type&quot;: &quot;@id&quot; }, &quot;created_at&quot;: { &quot;@id&quot;: &quot;prov:generatedAtTime&quot;, &quot;@type&quot;: &quot;schema:DateTime&quot; }, &quot;updated_at&quot;: { &quot;@id&quot;: &quot;prov:invalidatedAtTime&quot;, &quot;@type&quot;: &quot;schema:DateTime&quot; }, &quot;asserted_by&quot;: { &quot;@id&quot;: &quot;xana:assertedBy&quot;, &quot;@type&quot;: &quot;@id&quot; }, &quot;asserted_at&quot;: { &quot;@id&quot;: &quot;xana:assertedAt&quot;, &quot;@type&quot;: &quot;schema:DateTime&quot; }, &quot;source_node&quot;: { &quot;@id&quot;: &quot;xana:sourceNode&quot;, &quot;@type&quot;: &quot;@id&quot; }, &quot;fragment_id&quot;: &quot;xana:fragmentId&quot;, &quot;tumbler&quot;: &quot;xana:tumbler&quot;, &quot;selector&quot;: &quot;oa:hasSelector&quot;, &quot;content_id&quot;: &quot;xana:contentId&quot;, &quot;version_id&quot;: &quot;xana:versionId&quot;, &quot;source_content_id&quot;: &quot;xana:sourceContentId&quot;, &quot;source_version_id&quot;: &quot;xana:sourceVersionId&quot;, &quot;relationships&quot;: &quot;xana:relationships&quot;, &quot;evidence&quot;: { &quot;@id&quot;: &quot;xana:evidence&quot;, &quot;@type&quot;: &quot;@id&quot; } } }</p>",
      "url": "/schema/protocol-artifact-contexts-xananode.context.jsonld/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/contexts/xananode.context.jsonld",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-contexts-xananode.context.jsonld.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples",
      "title": "Protocol Examples",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The bundled protocol examples used to teach substrate structure, federation, and review behavior.",
      "content": "The bundled protocol examples used to teach substrate structure, federation, and review behavior.",
      "html": "<p>The bundled protocol examples used to teach substrate structure, federation, and review behavior.</p>",
      "url": "/schema/protocol-artifact-examples/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-compatibility-report.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-compatibility-report.json",
      "title": "Examples / Federation Example / Compatibility Report",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The compatibility report for the federation example.",
      "content": "{\n  \"status\": \"merge-candidate\",\n  \"compatibility_level\": 4,\n  \"details\": \"Both federation example substrates declare manifests, namespaces, stable node IDs, core relationship types, and non-destructive possible-match mappings.\"\n}\n",
      "html": "<p>{ &quot;status&quot;: &quot;merge-candidate&quot;, &quot;compatibility_level&quot;: 4, &quot;details&quot;: &quot;Both federation example substrates declare manifests, namespaces, stable node IDs, core relationship types, and non-destructive possible-match mappings.&quot; }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-compatibility-report.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/compatibility-report.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-compatibility-report.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-merge-report.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-merge-report.json",
      "title": "Examples / Federation Example / Merge Report",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The merge report for the federation example.",
      "content": "{\n  \"id\": \"example.merge:report/federation-example-001\",\n  \"status\": \"review-needed\",\n  \"generated_at\": \"2026-01-01T00:00:00Z\",\n  \"substrates\": [\n    \"example.researcher_a\",\n    \"example.researcher_b\"\n  ],\n  \"compatibility_level\": 4,\n  \"mappings\": [\n    {\n      \"id\": \"example.merge:mapping/knowledge-memory-substrate\",\n      \"source\": \"example.researcher_a:concept/knowledge-substrate\",\n      \"target\": \"example.researcher_b:concept/memory-substrate\",\n      \"type\": \"possible_match\",\n      \"confidence\": 0.78,\n      \"status\": \"review-needed\",\n      \"preserves_local_nodes\": true,\n      \"creates_relationships\": [\n        \"example.researcher_a:rel/knowledge-substrate-possible-match-memory-substrate\",\n        \"example.researcher_b:rel/memory-substrate-possible-match-knowledge-substrate\"\n      ],\n      \"rationale\": \"Both nodes describe substrate-like structures for preserving context and relationships, but one emphasizes knowledge objects while the other emphasizes memory over time.\"\n    }\n  ],\n  \"conflicts\": [\n    {\n      \"id\": \"example.merge:conflict/do-not-collapse-concepts\",\n      \"type\": \"identity_ambiguity\",\n      \"nodes\": [\n        \"example.researcher_a:concept/knowledge-substrate\",\n        \"example.researcher_b:concept/memory-substrate\"\n      ],\n      \"resolution\": \"preserve_both\",\n      \"summary\": \"The merge pass records a possible match but does not replace either local concept with a canonical node.\"\n    }\n  ],\n  \"warnings\": [\n    \"The two concepts are close but should not be automatically collapsed into a single canonical node.\"\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.merge:report/federation-example-001&quot;, &quot;status&quot;: &quot;review-needed&quot;, &quot;generated_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;substrates&quot;: [ &quot;example.researcher_a&quot;, &quot;example.researcher_b&quot; ], &quot;compatibility_level&quot;: 4, &quot;mappings&quot;: [ { &quot;id&quot;: &quot;example.merge:mapping/knowledge-memory-substrate&quot;, &quot;source&quot;: &quot;example.researcher_a:concept/knowledge-substrate&quot;, &quot;target&quot;: &quot;example.researcher_b:concept/memory-substrate&quot;, &quot;type&quot;: &quot;possible_match&quot;, &quot;confidence&quot;: 0.78, &quot;status&quot;: &quot;review-needed&quot;, &quot;preserves_local_nodes&quot;: true, &quot;creates_relationships&quot;: [ &quot;example.researcher_a:rel/knowledge-substrate-possible-match-memory-substrate&quot;, &quot;example.researcher_b:rel/memory-substrate-possible-match-knowledge-substrate&quot; ], &quot;rationale&quot;: &quot;Both nodes describe substrate-like structures for preserving context and relationships, but one emphasizes knowledge objects while the other emphasizes memory over time.&quot; } ], &quot;conflicts&quot;: [ { &quot;id&quot;: &quot;example.merge:conflict/do-not-collapse-concepts&quot;, &quot;type&quot;: &quot;identity_ambiguity&quot;, &quot;nodes&quot;: [ &quot;example.researcher_a:concept/knowledge-substrate&quot;, &quot;example.researcher_b:concept/memory-substrate&quot; ], &quot;resolution&quot;: &quot;preserve_both&quot;, &quot;summary&quot;: &quot;The merge pass records a possible match but does not replace either local concept with a canonical node.&quot; } ], &quot;warnings&quot;: [ &quot;The two concepts are close but should not be automatically collapsed into a single canonical node.&quot; ] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-merge-report.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/merge-report.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-merge-report.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-federation-review-proof.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-federation-review-proof.json",
      "title": "Examples / Federation Example / Review Workspace / Nodes / Federation Review Proof",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/federation-example/review-workspace.",
      "content": "{\n  \"id\": \"example.merge:trail/federation-review-proof\",\n  \"title\": \"Federation Review Proof\",\n  \"type\": \"trail\",\n  \"importance\": 4,\n  \"summary\": \"A short trail showing that mounted overlap can stay visible and reviewable without forcing a final merge.\",\n  \"relationships\": []\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.merge:trail/federation-review-proof&quot;, &quot;title&quot;: &quot;Federation Review Proof&quot;, &quot;type&quot;: &quot;trail&quot;, &quot;importance&quot;: 4, &quot;summary&quot;: &quot;A short trail showing that mounted overlap can stay visible and reviewable without forcing a final merge.&quot;, &quot;relationships&quot;: [] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-review-workspace-nodes-federation-review-proof.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/review-workspace/nodes/federation-review-proof.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-review-workspace-nodes-federation-review-proof.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-knowledge-substrate.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-knowledge-substrate.json",
      "title": "Examples / Federation Example / Review Workspace / Nodes / Knowledge Substrate",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/federation-example/review-workspace.",
      "content": "{\n  \"id\": \"example.researcher_a:concept/knowledge-substrate\",\n  \"title\": \"Knowledge Substrate\",\n  \"type\": \"concept\",\n  \"importance\": 4,\n  \"summary\": \"A structure for preserving relationships among knowledge objects.\",\n  \"aliases\": [\n    \"Memory Substrate\",\n    \"Relationship-Preserving Knowledge Structure\"\n  ],\n  \"relationships\": []\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.researcher_a:concept/knowledge-substrate&quot;, &quot;title&quot;: &quot;Knowledge Substrate&quot;, &quot;type&quot;: &quot;concept&quot;, &quot;importance&quot;: 4, &quot;summary&quot;: &quot;A structure for preserving relationships among knowledge objects.&quot;, &quot;aliases&quot;: [ &quot;Memory Substrate&quot;, &quot;Relationship-Preserving Knowledge Structure&quot; ], &quot;relationships&quot;: [] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-review-workspace-nodes-knowledge-substrate.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/review-workspace/nodes/knowledge-substrate.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-review-workspace-nodes-knowledge-substrate.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-memory-substrate.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-memory-substrate.json",
      "title": "Examples / Federation Example / Review Workspace / Nodes / Memory Substrate",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/federation-example/review-workspace.",
      "content": "{\n  \"id\": \"example.researcher_b:concept/memory-substrate\",\n  \"title\": \"Memory Substrate\",\n  \"type\": \"concept\",\n  \"importance\": 4,\n  \"summary\": \"A system for preserving context, lineage, and navigable memory over time.\",\n  \"aliases\": [\n    \"Knowledge Substrate\",\n    \"Relationship-Preserving Memory Structure\"\n  ],\n  \"relationships\": []\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.researcher_b:concept/memory-substrate&quot;, &quot;title&quot;: &quot;Memory Substrate&quot;, &quot;type&quot;: &quot;concept&quot;, &quot;importance&quot;: 4, &quot;summary&quot;: &quot;A system for preserving context, lineage, and navigable memory over time.&quot;, &quot;aliases&quot;: [ &quot;Knowledge Substrate&quot;, &quot;Relationship-Preserving Memory Structure&quot; ], &quot;relationships&quot;: [] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-review-workspace-nodes-memory-substrate.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/review-workspace/nodes/memory-substrate.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-review-workspace-nodes-memory-substrate.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-non-destructive-merge-review.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-non-destructive-merge-review.json",
      "title": "Examples / Federation Example / Review Workspace / Nodes / Non Destructive Merge Review",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/federation-example/review-workspace.",
      "content": "{\n  \"id\": \"example.merge:concept/non-destructive-merge-review\",\n  \"title\": \"Non-Destructive Merge Review\",\n  \"type\": \"concept\",\n  \"importance\": 4,\n  \"summary\": \"A review state where overlapping nodes are mounted together, compared, and kept distinct until a human approves stronger identity claims.\",\n  \"relationships\": []\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.merge:concept/non-destructive-merge-review&quot;, &quot;title&quot;: &quot;Non-Destructive Merge Review&quot;, &quot;type&quot;: &quot;concept&quot;, &quot;importance&quot;: 4, &quot;summary&quot;: &quot;A review state where overlapping nodes are mounted together, compared, and kept distinct until a human approves stronger identity claims.&quot;, &quot;relationships&quot;: [] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-review-workspace-nodes-non-destructive-merge-review.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/review-workspace/nodes/non-destructive-merge-review.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-review-workspace-nodes-non-destructive-merge-review.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-a.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-a.json",
      "title": "Examples / Federation Example / Review Workspace / Nodes / Person Researcher A",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/federation-example/review-workspace.",
      "content": "{\n  \"id\": \"example.researcher_a:person/researcher-a\",\n  \"title\": \"Researcher A\",\n  \"type\": \"person\",\n  \"importance\": 3,\n  \"summary\": \"The local actor responsible for assertions in federation example substrate A.\",\n  \"created_at\": \"2026-01-01T00:00:00Z\",\n  \"relationships\": []\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.researcher_a:person/researcher-a&quot;, &quot;title&quot;: &quot;Researcher A&quot;, &quot;type&quot;: &quot;person&quot;, &quot;importance&quot;: 3, &quot;summary&quot;: &quot;The local actor responsible for assertions in federation example substrate A.&quot;, &quot;created_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;relationships&quot;: [] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-a.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/review-workspace/nodes/person-researcher-a.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-a.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-b.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-b.json",
      "title": "Examples / Federation Example / Review Workspace / Nodes / Person Researcher B",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/federation-example/review-workspace.",
      "content": "{\n  \"id\": \"example.researcher_b:person/researcher-b\",\n  \"title\": \"Researcher B\",\n  \"type\": \"person\",\n  \"importance\": 3,\n  \"summary\": \"The local actor responsible for assertions in federation example substrate B.\",\n  \"created_at\": \"2026-01-01T00:00:00Z\",\n  \"relationships\": []\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.researcher_b:person/researcher-b&quot;, &quot;title&quot;: &quot;Researcher B&quot;, &quot;type&quot;: &quot;person&quot;, &quot;importance&quot;: 3, &quot;summary&quot;: &quot;The local actor responsible for assertions in federation example substrate B.&quot;, &quot;created_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;relationships&quot;: [] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-b.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/review-workspace/nodes/person-researcher-b.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-b.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-relationships.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-relationships.json",
      "title": "Examples / Federation Example / Review Workspace / Relationships",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The relationship list for Examples / Federation Example / Review Workspace.",
      "content": "{\n  \"relationships\": [\n    {\n      \"id\": \"example.researcher_a:rel/knowledge-substrate-possible-match-memory-substrate\",\n      \"source\": \"example.researcher_a:concept/knowledge-substrate\",\n      \"target\": \"example.researcher_b:concept/memory-substrate\",\n      \"type\": \"possible_match\",\n      \"weight\": 3,\n      \"visibility\": \"secondary\",\n      \"external\": true,\n      \"target_substrate\": \"example.researcher_b\",\n      \"asserted_by\": \"example.researcher_a:person/researcher-a\",\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\n      \"confidence\": \"0.78\",\n      \"summary\": \"Researcher A marks Researcher B's memory-substrate concept as a possible match without collapsing identity.\"\n    },\n    {\n      \"id\": \"example.researcher_b:rel/memory-substrate-possible-match-knowledge-substrate\",\n      \"source\": \"example.researcher_b:concept/memory-substrate\",\n      \"target\": \"example.researcher_a:concept/knowledge-substrate\",\n      \"type\": \"possible_match\",\n      \"weight\": 3,\n      \"visibility\": \"secondary\",\n      \"external\": true,\n      \"target_substrate\": \"example.researcher_a\",\n      \"asserted_by\": \"example.researcher_b:person/researcher-b\",\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\n      \"confidence\": \"0.78\",\n      \"summary\": \"Researcher B returns the possible-match mapping instead of declaring a final identity merge.\"\n    },\n    {\n      \"id\": \"example.merge:rel/federation-review-proof-starts-with-knowledge-substrate\",\n      \"source\": \"example.merge:trail/federation-review-proof\",\n      \"target\": \"example.researcher_a:concept/knowledge-substrate\",\n      \"type\": \"starts_with\",\n      \"weight\": 4,\n      \"visibility\": \"primary\",\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\n      \"summary\": \"The review trail begins with Researcher A's local concept.\"\n    },\n    {\n      \"id\": \"example.merge:rel/knowledge-substrate-continues-to-memory-substrate\",\n      \"source\": \"example.researcher_a:concept/knowledge-substrate\",\n      \"target\": \"example.researcher_b:concept/memory-substrate\",\n      \"type\": \"continues_to\",\n      \"weight\": 3,\n      \"visibility\": \"secondary\",\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\n      \"summary\": \"The review path moves from the first local concept to the second without erasing either one.\"\n    },\n    {\n      \"id\": \"example.merge:rel/memory-substrate-continues-to-non-destructive-merge-review\",\n      \"source\": \"example.researcher_b:concept/memory-substrate\",\n      \"target\": \"example.merge:concept/non-destructive-merge-review\",\n      \"type\": \"continues_to\",\n      \"weight\": 3,\n      \"visibility\": \"secondary\",\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\n      \"summary\": \"The review path ends at the rule that both nodes stay distinct until an author approves a deeper merge.\"\n    },\n    {\n      \"id\": \"example.merge:rel/non-destructive-merge-review-explains-knowledge-substrate\",\n      \"source\": \"example.merge:concept/non-destructive-merge-review\",\n      \"target\": \"example.researcher_a:concept/knowledge-substrate\",\n      \"type\": \"explains\",\n      \"weight\": 2,\n      \"visibility\": \"secondary\",\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\n      \"summary\": \"The merge-review rule explains why Researcher A's local concept remains intact.\"\n    },\n    {\n      \"id\": \"example.merge:rel/non-destructive-merge-review-explains-memory-substrate\",\n      \"source\": \"example.merge:concept/non-destructive-merge-review\",\n      \"target\": \"example.researcher_b:concept/memory-substrate\",\n      \"type\": \"explains\",\n      \"weight\": 2,\n      \"visibility\": \"secondary\",\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\n      \"summary\": \"The merge-review rule explains why Researcher B's local concept remains intact.\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.researcher_a:rel/knowledge-substrate-possible-match-memory-substrate&quot;, &quot;source&quot;: &quot;example.researcher_a:concept/knowledge-substrate&quot;, &quot;target&quot;: &quot;example.researcher_b:concept/memory-substrate&quot;, &quot;type&quot;: &quot;possible_match&quot;, &quot;weight&quot;: 3, &quot;visibility&quot;: &quot;secondary&quot;, &quot;external&quot;: true, &quot;target_substrate&quot;: &quot;example.researcher_b&quot;, &quot;asserted_by&quot;: &quot;example.researcher_a:person/researcher-a&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;0.78&quot;, &quot;summary&quot;: &quot;Researcher A marks Researcher B&#39;s memory-substrate concept as a possible match without collapsing identity.&quot; }, { &quot;id&quot;: &quot;example.researcher_b:rel/memory-substrate-possible-match-knowledge-substrate&quot;, &quot;source&quot;: &quot;example.researcher_b:concept/memory-substrate&quot;, &quot;target&quot;: &quot;example.researcher_a:concept/knowledge-substrate&quot;, &quot;type&quot;: &quot;possible_match&quot;, &quot;weight&quot;: 3, &quot;visibility&quot;: &quot;secondary&quot;, &quot;external&quot;: true, &quot;target_substrate&quot;: &quot;example.researcher_a&quot;, &quot;asserted_by&quot;: &quot;example.researcher_b:person/researcher-b&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;0.78&quot;, &quot;summary&quot;: &quot;Researcher B returns the possible-match mapping instead of declaring a final identity merge.&quot; }, { &quot;id&quot;: &quot;example.merge:rel/federation-review-proof-starts-with-knowledge-substrate&quot;, &quot;source&quot;: &quot;example.merge:trail/federation-review-proof&quot;, &quot;target&quot;: &quot;example.researcher_a:concept/knowledge-substrate&quot;, &quot;type&quot;: &quot;starts_with&quot;, &quot;weight&quot;: 4, &quot;visibility&quot;: &quot;primary&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;summary&quot;: &quot;The review trail begins with Researcher A&#39;s local concept.&quot; }, { &quot;id&quot;: &quot;example.merge:rel/knowledge-substrate-continues-to-memory-substrate&quot;, &quot;source&quot;: &quot;example.researcher_a:concept/knowledge-substrate&quot;, &quot;target&quot;: &quot;example.researcher_b:concept/memory-substrate&quot;, &quot;type&quot;: &quot;continues_to&quot;, &quot;weight&quot;: 3, &quot;visibility&quot;: &quot;secondary&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;summary&quot;: &quot;The review path moves from the first local concept to the second without erasing either one.&quot; }, { &quot;id&quot;: &quot;example.merge:rel/memory-substrate-continues-to-non-destructive-merge-review&quot;, &quot;source&quot;: &quot;example.researcher_b:concept/memory-substrate&quot;, &quot;target&quot;: &quot;example.merge:concept/non-destructive-merge-review&quot;, &quot;type&quot;: &quot;continues_to&quot;, &quot;weight&quot;: 3, &quot;visibility&quot;: &quot;secondary&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;summary&quot;: &quot;The review path ends at the rule that both nodes stay distinct until an author approves a deeper merge.&quot; }, { &quot;id&quot;: &quot;example.merge:rel/non-destructive-merge-review-explains-knowledge-substrate&quot;, &quot;source&quot;: &quot;example.merge:concept/non-destructive-merge-review&quot;, &quot;target&quot;: &quot;example.researcher_a:concept/knowledge-substrate&quot;, &quot;type&quot;: &quot;explains&quot;, &quot;weight&quot;: 2, &quot;visibility&quot;: &quot;secondary&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;summary&quot;: &quot;The merge-review rule explains why Researcher A&#39;s local concept remains intact.&quot; }, { &quot;id&quot;: &quot;example.merge:rel/non-destructive-merge-review-explains-memory-substrate&quot;, &quot;source&quot;: &quot;example.merge:concept/non-destructive-merge-review&quot;, &quot;target&quot;: &quot;example.researcher_b:concept/memory-substrate&quot;, &quot;type&quot;: &quot;explains&quot;, &quot;weight&quot;: 2, &quot;visibility&quot;: &quot;secondary&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;summary&quot;: &quot;The merge-review rule explains why Researcher B&#39;s local concept remains intact.&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-review-workspace-relationships.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/review-workspace/relationships.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-review-workspace-relationships.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-substrate.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-substrate.json",
      "title": "Examples / Federation Example / Review Workspace / Substrate",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The substrate manifest for the federation review workspace.",
      "content": "{\n  \"id\": \"example.merge\",\n  \"name\": \"Federation Review Workspace\",\n  \"version\": \"0.1.0\",\n  \"namespace\": \"example.merge\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/kingc95/xananode.git\",\n    \"default_branch\": \"main\",\n    \"path\": \"examples/federation-example/review-workspace\"\n  },\n  \"schema_version\": \"xananode-core@0.5.0\",\n  \"imports\": [\n    \"xananode:core\"\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.merge&quot;, &quot;name&quot;: &quot;Federation Review Workspace&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;namespace&quot;: &quot;example.merge&quot;, &quot;repository&quot;: { &quot;type&quot;: &quot;git&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/xananode.git&quot;, &quot;default_branch&quot;: &quot;main&quot;, &quot;path&quot;: &quot;examples/federation-example/review-workspace&quot; }, &quot;schema_version&quot;: &quot;xananode-core@0.5.0&quot;, &quot;imports&quot;: [ &quot;xananode:core&quot; ] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-review-workspace-substrate.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/review-workspace/substrate.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-review-workspace-substrate.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-nodes-knowledge-substrate.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-nodes-knowledge-substrate.json",
      "title": "Examples / Federation Example / Substrate A / Nodes / Knowledge Substrate",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/federation-example/substrate-a.",
      "content": "{\n  \"id\": \"example.researcher_a:concept/knowledge-substrate\",\n  \"title\": \"Knowledge Substrate\",\n  \"type\": \"concept\",\n  \"importance\": 4,\n  \"summary\": \"A structure for preserving relationships among knowledge objects.\",\n  \"aliases\": [\n    \"Memory Substrate\",\n    \"Relationship-Preserving Knowledge Structure\"\n  ],\n  \"relationships\": [\n    {\n      \"id\": \"example.researcher_a:rel/knowledge-substrate-possible-match-memory-substrate\",\n      \"type\": \"possible_match\",\n      \"target\": \"example.researcher_b:concept/memory-substrate\",\n      \"direction\": \"outgoing\",\n      \"external\": true,\n      \"target_substrate\": \"example.researcher_b\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.researcher_a:concept/knowledge-substrate&quot;, &quot;title&quot;: &quot;Knowledge Substrate&quot;, &quot;type&quot;: &quot;concept&quot;, &quot;importance&quot;: 4, &quot;summary&quot;: &quot;A structure for preserving relationships among knowledge objects.&quot;, &quot;aliases&quot;: [ &quot;Memory Substrate&quot;, &quot;Relationship-Preserving Knowledge Structure&quot; ], &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.researcher_a:rel/knowledge-substrate-possible-match-memory-substrate&quot;, &quot;type&quot;: &quot;possible_match&quot;, &quot;target&quot;: &quot;example.researcher_b:concept/memory-substrate&quot;, &quot;direction&quot;: &quot;outgoing&quot;, &quot;external&quot;: true, &quot;target_substrate&quot;: &quot;example.researcher_b&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-substrate-a-nodes-knowledge-substrate.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/substrate-a/nodes/knowledge-substrate.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-substrate-a-nodes-knowledge-substrate.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-nodes-person-researcher-a.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-nodes-person-researcher-a.json",
      "title": "Examples / Federation Example / Substrate A / Nodes / Person Researcher A",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/federation-example/substrate-a.",
      "content": "{\r\n  \"id\": \"example.researcher_a:person/researcher-a\",\r\n  \"title\": \"Researcher A\",\r\n  \"type\": \"person\",\r\n  \"importance\": 3,\r\n  \"summary\": \"The local actor responsible for assertions in federation example substrate A.\",\r\n  \"created_at\": \"2026-01-01T00:00:00Z\",\r\n  \"relationships\": []\r\n}\r\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.researcher_a:person/researcher-a&quot;, &quot;title&quot;: &quot;Researcher A&quot;, &quot;type&quot;: &quot;person&quot;, &quot;importance&quot;: 3, &quot;summary&quot;: &quot;The local actor responsible for assertions in federation example substrate A.&quot;, &quot;created_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;relationships&quot;: [] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-substrate-a-nodes-person-researcher-a.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/substrate-a/nodes/person-researcher-a.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-substrate-a-nodes-person-researcher-a.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-relationships.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-relationships.json",
      "title": "Examples / Federation Example / Substrate A / Relationships",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The relationship list for Examples / Federation Example / Substrate A.",
      "content": "{\r\n  \"relationships\": [\r\n    {\r\n      \"id\": \"example.researcher_a:rel/knowledge-substrate-possible-match-memory-substrate\",\r\n      \"source\": \"example.researcher_a:concept/knowledge-substrate\",\r\n      \"target\": \"example.researcher_b:concept/memory-substrate\",\r\n      \"type\": \"possible_match\",\r\n      \"weight\": 3,\r\n      \"visibility\": \"secondary\",\r\n      \"external\": true,\r\n      \"target_substrate\": \"example.researcher_b\",\r\n      \"asserted_by\": \"example.researcher_a:person/researcher-a\",\r\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\r\n      \"confidence\": \"0.78\",\r\n      \"summary\": \"Researcher A marks Researcher B's memory-substrate concept as a possible match, not an automatic identity merge.\"\r\n    }\r\n  ]\r\n}\r\n",
      "html": "<p>{ &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.researcher_a:rel/knowledge-substrate-possible-match-memory-substrate&quot;, &quot;source&quot;: &quot;example.researcher_a:concept/knowledge-substrate&quot;, &quot;target&quot;: &quot;example.researcher_b:concept/memory-substrate&quot;, &quot;type&quot;: &quot;possible_match&quot;, &quot;weight&quot;: 3, &quot;visibility&quot;: &quot;secondary&quot;, &quot;external&quot;: true, &quot;target_substrate&quot;: &quot;example.researcher_b&quot;, &quot;asserted_by&quot;: &quot;example.researcher_a:person/researcher-a&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;0.78&quot;, &quot;summary&quot;: &quot;Researcher A marks Researcher B&#39;s memory-substrate concept as a possible match, not an automatic identity merge.&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-substrate-a-relationships.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/substrate-a/relationships.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-substrate-a-relationships.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-substrate.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-substrate.json",
      "title": "Examples / Federation Example / Substrate A / Substrate",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The substrate manifest for federation example substrate A.",
      "content": "{\n  \"id\": \"example.researcher_a\",\n  \"name\": \"Federation Example A\",\n  \"version\": \"0.1.0\",\n  \"namespace\": \"example.researcher_a\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/kingc95/xananode.git\",\n    \"default_branch\": \"main\",\n    \"path\": \"examples/federation-example/substrate-a\"\n  },\n  \"schema_version\": \"xananode-core@0.5.0\",\n  \"imports\": [\n    \"xananode:core\"\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.researcher_a&quot;, &quot;name&quot;: &quot;Federation Example A&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;namespace&quot;: &quot;example.researcher_a&quot;, &quot;repository&quot;: { &quot;type&quot;: &quot;git&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/xananode.git&quot;, &quot;default_branch&quot;: &quot;main&quot;, &quot;path&quot;: &quot;examples/federation-example/substrate-a&quot; }, &quot;schema_version&quot;: &quot;xananode-core@0.5.0&quot;, &quot;imports&quot;: [ &quot;xananode:core&quot; ] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-substrate-a-substrate.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/substrate-a/substrate.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-substrate-a-substrate.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-nodes-memory-substrate.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-nodes-memory-substrate.json",
      "title": "Examples / Federation Example / Substrate B / Nodes / Memory Substrate",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/federation-example/substrate-b.",
      "content": "{\n  \"id\": \"example.researcher_b:concept/memory-substrate\",\n  \"title\": \"Memory Substrate\",\n  \"type\": \"concept\",\n  \"importance\": 4,\n  \"summary\": \"A system for preserving context, lineage, and navigable memory over time.\",\n  \"aliases\": [\n    \"Knowledge Substrate\",\n    \"Relationship-Preserving Memory Structure\"\n  ],\n  \"relationships\": [\n    {\n      \"id\": \"example.researcher_b:rel/memory-substrate-possible-match-knowledge-substrate\",\n      \"type\": \"possible_match\",\n      \"target\": \"example.researcher_a:concept/knowledge-substrate\",\n      \"direction\": \"outgoing\",\n      \"external\": true,\n      \"target_substrate\": \"example.researcher_a\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.researcher_b:concept/memory-substrate&quot;, &quot;title&quot;: &quot;Memory Substrate&quot;, &quot;type&quot;: &quot;concept&quot;, &quot;importance&quot;: 4, &quot;summary&quot;: &quot;A system for preserving context, lineage, and navigable memory over time.&quot;, &quot;aliases&quot;: [ &quot;Knowledge Substrate&quot;, &quot;Relationship-Preserving Memory Structure&quot; ], &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.researcher_b:rel/memory-substrate-possible-match-knowledge-substrate&quot;, &quot;type&quot;: &quot;possible_match&quot;, &quot;target&quot;: &quot;example.researcher_a:concept/knowledge-substrate&quot;, &quot;direction&quot;: &quot;outgoing&quot;, &quot;external&quot;: true, &quot;target_substrate&quot;: &quot;example.researcher_a&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-substrate-b-nodes-memory-substrate.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/substrate-b/nodes/memory-substrate.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-substrate-b-nodes-memory-substrate.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-nodes-person-researcher-b.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-nodes-person-researcher-b.json",
      "title": "Examples / Federation Example / Substrate B / Nodes / Person Researcher B",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/federation-example/substrate-b.",
      "content": "{\r\n  \"id\": \"example.researcher_b:person/researcher-b\",\r\n  \"title\": \"Researcher B\",\r\n  \"type\": \"person\",\r\n  \"importance\": 3,\r\n  \"summary\": \"The local actor responsible for assertions in federation example substrate B.\",\r\n  \"created_at\": \"2026-01-01T00:00:00Z\",\r\n  \"relationships\": []\r\n}\r\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.researcher_b:person/researcher-b&quot;, &quot;title&quot;: &quot;Researcher B&quot;, &quot;type&quot;: &quot;person&quot;, &quot;importance&quot;: 3, &quot;summary&quot;: &quot;The local actor responsible for assertions in federation example substrate B.&quot;, &quot;created_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;relationships&quot;: [] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-substrate-b-nodes-person-researcher-b.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/substrate-b/nodes/person-researcher-b.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-substrate-b-nodes-person-researcher-b.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-relationships.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-relationships.json",
      "title": "Examples / Federation Example / Substrate B / Relationships",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The relationship list for Examples / Federation Example / Substrate B.",
      "content": "{\r\n  \"relationships\": [\r\n    {\r\n      \"id\": \"example.researcher_b:rel/memory-substrate-possible-match-knowledge-substrate\",\r\n      \"source\": \"example.researcher_b:concept/memory-substrate\",\r\n      \"target\": \"example.researcher_a:concept/knowledge-substrate\",\r\n      \"type\": \"possible_match\",\r\n      \"weight\": 3,\r\n      \"visibility\": \"secondary\",\r\n      \"external\": true,\r\n      \"target_substrate\": \"example.researcher_a\",\r\n      \"asserted_by\": \"example.researcher_b:person/researcher-b\",\r\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\r\n      \"confidence\": \"0.78\",\r\n      \"summary\": \"Researcher B records the reciprocal possible-match edge while preserving the local memory-substrate framing.\"\r\n    }\r\n  ]\r\n}\r\n",
      "html": "<p>{ &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.researcher_b:rel/memory-substrate-possible-match-knowledge-substrate&quot;, &quot;source&quot;: &quot;example.researcher_b:concept/memory-substrate&quot;, &quot;target&quot;: &quot;example.researcher_a:concept/knowledge-substrate&quot;, &quot;type&quot;: &quot;possible_match&quot;, &quot;weight&quot;: 3, &quot;visibility&quot;: &quot;secondary&quot;, &quot;external&quot;: true, &quot;target_substrate&quot;: &quot;example.researcher_a&quot;, &quot;asserted_by&quot;: &quot;example.researcher_b:person/researcher-b&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;0.78&quot;, &quot;summary&quot;: &quot;Researcher B records the reciprocal possible-match edge while preserving the local memory-substrate framing.&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-substrate-b-relationships.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/substrate-b/relationships.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-substrate-b-relationships.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-substrate.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-substrate.json",
      "title": "Examples / Federation Example / Substrate B / Substrate",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The substrate manifest for federation example substrate B.",
      "content": "{\n  \"id\": \"example.researcher_b\",\n  \"name\": \"Federation Example B\",\n  \"version\": \"0.1.0\",\n  \"namespace\": \"example.researcher_b\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/kingc95/xananode.git\",\n    \"default_branch\": \"main\",\n    \"path\": \"examples/federation-example/substrate-b\"\n  },\n  \"schema_version\": \"xananode-core@0.5.0\",\n  \"imports\": [\n    \"xananode:core\"\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.researcher_b&quot;, &quot;name&quot;: &quot;Federation Example B&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;namespace&quot;: &quot;example.researcher_b&quot;, &quot;repository&quot;: { &quot;type&quot;: &quot;git&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/xananode.git&quot;, &quot;default_branch&quot;: &quot;main&quot;, &quot;path&quot;: &quot;examples/federation-example/substrate-b&quot; }, &quot;schema_version&quot;: &quot;xananode-core@0.5.0&quot;, &quot;imports&quot;: [ &quot;xananode:core&quot; ] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-substrate-b-substrate.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/substrate-b/substrate.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-substrate-b-substrate.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-diff.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-diff.json",
      "title": "Examples / Federation Example / Substrate Diff",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The structural diff produced by comparing the federation example substrates.",
      "content": "{\n  \"id\": \"example.merge:diff/federation-example-001\",\n  \"base\": \"git:fba4906\",\n  \"head\": \"git:HEAD\",\n  \"generated_at\": \"2026-01-01T00:00:00Z\",\n  \"changes\": {\n    \"nodes\": {\n      \"added\": [\n        \"example.researcher_a:concept/knowledge-substrate\",\n        \"example.researcher_b:concept/memory-substrate\"\n      ],\n      \"removed\": [],\n      \"changed\": []\n    },\n    \"relationships\": {\n      \"added\": [\n        \"example.researcher_a:rel/knowledge-substrate-possible-match-memory-substrate\",\n        \"example.researcher_b:rel/memory-substrate-possible-match-knowledge-substrate\"\n      ],\n      \"removed\": [],\n      \"changed\": []\n    },\n    \"schemas\": {\n      \"added\": [],\n      \"removed\": [],\n      \"changed\": []\n    },\n    \"fragments\": {\n      \"added\": [],\n      \"removed\": [],\n      \"changed\": []\n    }\n  },\n  \"conflicts\": [\n    {\n      \"type\": \"identity_ambiguity\",\n      \"nodes\": [\n        \"example.researcher_a:concept/knowledge-substrate\",\n        \"example.researcher_b:concept/memory-substrate\"\n      ],\n      \"resolution\": \"preserve_both\",\n      \"summary\": \"The two concepts are close enough to map but not safe to collapse.\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.merge:diff/federation-example-001&quot;, &quot;base&quot;: &quot;git:fba4906&quot;, &quot;head&quot;: &quot;git:HEAD&quot;, &quot;generated_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;changes&quot;: { &quot;nodes&quot;: { &quot;added&quot;: [ &quot;example.researcher_a:concept/knowledge-substrate&quot;, &quot;example.researcher_b:concept/memory-substrate&quot; ], &quot;removed&quot;: [], &quot;changed&quot;: [] }, &quot;relationships&quot;: { &quot;added&quot;: [ &quot;example.researcher_a:rel/knowledge-substrate-possible-match-memory-substrate&quot;, &quot;example.researcher_b:rel/memory-substrate-possible-match-knowledge-substrate&quot; ], &quot;removed&quot;: [], &quot;changed&quot;: [] }, &quot;schemas&quot;: { &quot;added&quot;: [], &quot;removed&quot;: [], &quot;changed&quot;: [] }, &quot;fragments&quot;: { &quot;added&quot;: [], &quot;removed&quot;: [], &quot;changed&quot;: [] } }, &quot;conflicts&quot;: [ { &quot;type&quot;: &quot;identity_ambiguity&quot;, &quot;nodes&quot;: [ &quot;example.researcher_a:concept/knowledge-substrate&quot;, &quot;example.researcher_b:concept/memory-substrate&quot; ], &quot;resolution&quot;: &quot;preserve_both&quot;, &quot;summary&quot;: &quot;The two concepts are close enough to map but not safe to collapse.&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-federation-example-substrate-diff.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/substrate-diff.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-federation-example-substrate-diff.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate",
      "title": "examples/minimal-substrate/",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "XanaNode Hugo Theme references the protocol artifact examples/minimal-substrate/.",
      "content": "XanaNode Hugo Theme references the protocol artifact examples/minimal-substrate/.",
      "html": "<p>XanaNode Hugo Theme references the protocol artifact examples/minimal-substrate/.</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-author-profile.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-author-profile.json",
      "title": "Examples / Minimal Substrate / Author Profile",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The example author profile used by the minimal substrate fixture.",
      "content": "{\n  \"id\": \"example.minimal:person/example-maintainer\",\n  \"name\": \"Example Maintainer\",\n  \"github\": \"example-maintainer\",\n  \"website\": \"https://example.com\",\n  \"branding\": {\n    \"brand_name\": \"Example Maintainer\",\n    \"tagline\": \"Example substrate author\",\n    \"primary_media\": \"example.minimal:media/xananode-icon\",\n    \"icon_media\": \"example.minimal:media/xananode-icon\",\n    \"primary_color\": \"#55D6BE\",\n    \"accent_color\": \"#FF8C00\",\n    \"rights_status\": \"open-example\",\n    \"license\": \"CC0-1.0\",\n    \"reason\": \"Author profiles may carry portable branding that tools can apply to authored substrates.\"\n  },\n  \"default_rights\": \"open-example\",\n  \"default_license\": \"CC0-1.0\",\n  \"default_role\": \"maintainer\"\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;name&quot;: &quot;Example Maintainer&quot;, &quot;github&quot;: &quot;example-maintainer&quot;, &quot;website&quot;: &quot;https://example.com&quot;, &quot;branding&quot;: { &quot;brand_name&quot;: &quot;Example Maintainer&quot;, &quot;tagline&quot;: &quot;Example substrate author&quot;, &quot;primary_media&quot;: &quot;example.minimal:media/xananode-icon&quot;, &quot;icon_media&quot;: &quot;example.minimal:media/xananode-icon&quot;, &quot;primary_color&quot;: &quot;#55D6BE&quot;, &quot;accent_color&quot;: &quot;#FF8C00&quot;, &quot;rights_status&quot;: &quot;open-example&quot;, &quot;license&quot;: &quot;CC0-1.0&quot;, &quot;reason&quot;: &quot;Author profiles may carry portable branding that tools can apply to authored substrates.&quot; }, &quot;default_rights&quot;: &quot;open-example&quot;, &quot;default_license&quot;: &quot;CC0-1.0&quot;, &quot;default_role&quot;: &quot;maintainer&quot; }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-author-profile.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/author-profile.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-author-profile.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nanopublication-substrate-claim.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nanopublication-substrate-claim.json",
      "title": "Examples / Minimal Substrate / Nanopublication Substrate Claim",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "An example protocol artifact used by Examples / Minimal Substrate / Nanopublication Substrate Claim.",
      "content": "{\n  \"id\": \"example.minimal:nanopub/substrate-is-structure\",\n  \"claim\": \"example.minimal:claim/substrate-is-structure\",\n  \"assertion\": {\n    \"summary\": \"A knowledge substrate is structure, not just information.\",\n    \"relationships\": [\n      \"example.minimal:rel/source-supports-claim\",\n      \"example.minimal:rel/claim-defines-concept\"\n    ]\n  },\n  \"provenance\": {\n    \"asserted_by\": \"example.minimal:person/example-maintainer\",\n    \"asserted_at\": \"2026-01-01T00:00:00Z\",\n    \"evidence\": [\n      \"example.minimal:source/as-we-may-think\"\n    ]\n  },\n  \"publication_info\": {\n    \"published_by\": \"example.minimal\",\n    \"published_at\": \"2026-01-01T00:00:00Z\",\n    \"license\": \"CC0-1.0\",\n    \"content_id\": \"sha256:example-nanopub-substrate-is-structure\"\n  }\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal:nanopub/substrate-is-structure&quot;, &quot;claim&quot;: &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;assertion&quot;: { &quot;summary&quot;: &quot;A knowledge substrate is structure, not just information.&quot;, &quot;relationships&quot;: [ &quot;example.minimal:rel/source-supports-claim&quot;, &quot;example.minimal:rel/claim-defines-concept&quot; ] }, &quot;provenance&quot;: { &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;evidence&quot;: [ &quot;example.minimal:source/as-we-may-think&quot; ] }, &quot;publication_info&quot;: { &quot;published_by&quot;: &quot;example.minimal&quot;, &quot;published_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;license&quot;: &quot;CC0-1.0&quot;, &quot;content_id&quot;: &quot;sha256:example-nanopub-substrate-is-structure&quot; } }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-nanopublication-substrate-claim.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/nanopublication-substrate-claim.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-nanopublication-substrate-claim.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-claim-substrate-structure.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-claim-substrate-structure.json",
      "title": "Examples / Minimal Substrate / Nodes / Claim Substrate Structure",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/minimal-substrate.",
      "content": "{\n  \"id\": \"example.minimal:claim/substrate-is-structure\",\n  \"title\": \"A knowledge substrate is structure, not just information\",\n  \"type\": \"claim\",\n  \"protocol_id\": \"example.minimal:claim/substrate-is-structure\",\n  \"content_id\": \"sha256:example-substrate-structure-claim\",\n  \"version_id\": \"git:HEAD:examples/minimal-substrate/nodes/claim-substrate-structure.json\",\n  \"status\": \"active\",\n  \"importance\": 5,\n  \"summary\": \"The same information arranged through different relationships can produce different epistemic capabilities.\",\n  \"confidence\": \"interpretive\",\n  \"relationships\": [\n    {\n      \"id\": \"example.minimal:rel/source-supports-claim\",\n      \"type\": \"supports\",\n      \"source\": \"example.minimal:source/as-we-may-think\",\n      \"direction\": \"incoming\"\n    },\n    {\n      \"id\": \"example.minimal:rel/claim-defines-concept\",\n      \"type\": \"defines\",\n      \"target\": \"example.minimal:concept/knowledge-substrate\",\n      \"direction\": \"outgoing\"\n    },\n    {\n      \"id\": \"example.minimal:rel/concept-has-claim\",\n      \"type\": \"has_claim\",\n      \"source\": \"example.minimal:concept/knowledge-substrate\",\n      \"direction\": \"incoming\"\n    },\n    {\n      \"id\": \"example.minimal:rel/trail-continues-to-claim\",\n      \"type\": \"continues_to\",\n      \"source\": \"example.minimal:source/as-we-may-think\",\n      \"direction\": \"incoming\"\n    },\n    {\n      \"id\": \"example.minimal:rel/trail-continues-to-concept\",\n      \"type\": \"continues_to\",\n      \"target\": \"example.minimal:concept/knowledge-substrate\",\n      \"direction\": \"outgoing\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;title&quot;: &quot;A knowledge substrate is structure, not just information&quot;, &quot;type&quot;: &quot;claim&quot;, &quot;protocol_id&quot;: &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;content_id&quot;: &quot;sha256:example-substrate-structure-claim&quot;, &quot;version_id&quot;: &quot;git:HEAD:examples/minimal-substrate/nodes/claim-substrate-structure.json&quot;, &quot;status&quot;: &quot;active&quot;, &quot;importance&quot;: 5, &quot;summary&quot;: &quot;The same information arranged through different relationships can produce different epistemic capabilities.&quot;, &quot;confidence&quot;: &quot;interpretive&quot;, &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.minimal:rel/source-supports-claim&quot;, &quot;type&quot;: &quot;supports&quot;, &quot;source&quot;: &quot;example.minimal:source/as-we-may-think&quot;, &quot;direction&quot;: &quot;incoming&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/claim-defines-concept&quot;, &quot;type&quot;: &quot;defines&quot;, &quot;target&quot;: &quot;example.minimal:concept/knowledge-substrate&quot;, &quot;direction&quot;: &quot;outgoing&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/concept-has-claim&quot;, &quot;type&quot;: &quot;has_claim&quot;, &quot;source&quot;: &quot;example.minimal:concept/knowledge-substrate&quot;, &quot;direction&quot;: &quot;incoming&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/trail-continues-to-claim&quot;, &quot;type&quot;: &quot;continues_to&quot;, &quot;source&quot;: &quot;example.minimal:source/as-we-may-think&quot;, &quot;direction&quot;: &quot;incoming&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/trail-continues-to-concept&quot;, &quot;type&quot;: &quot;continues_to&quot;, &quot;target&quot;: &quot;example.minimal:concept/knowledge-substrate&quot;, &quot;direction&quot;: &quot;outgoing&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-nodes-claim-substrate-structure.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/nodes/claim-substrate-structure.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-nodes-claim-substrate-structure.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-communication-minimal-substrate-discussion.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-communication-minimal-substrate-discussion.json",
      "title": "Examples / Minimal Substrate / Nodes / Communication Minimal Substrate Discussion",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/minimal-substrate.",
      "content": "{\n  \"id\": \"example.minimal:communication/minimal-substrate-discussion\",\n  \"title\": \"Minimal Substrate Discussion\",\n  \"type\": \"communication\",\n  \"subtype\": \"discussion\",\n  \"protocol_id\": \"example.minimal:communication/minimal-substrate-discussion\",\n  \"content_id\": \"sha256:example-communication-minimal-substrate-discussion\",\n  \"version_id\": \"git:HEAD:examples/minimal-substrate/nodes/communication-minimal-substrate-discussion.json\",\n  \"status\": \"active\",\n  \"importance\": 3,\n  \"summary\": \"A small example communication showing that questions and responses can be modeled as knowledge flow.\",\n  \"communication_model\": \"many_to_many\",\n  \"communication_pattern\": \"query_response\",\n  \"relationships\": [\n    {\n      \"id\": \"example.minimal:rel/question-asked-in-communication\",\n      \"type\": \"asked_in\",\n      \"source\": \"example.minimal:question/why-relationships-matter\",\n      \"direction\": \"incoming\"\n    },\n    {\n      \"id\": \"example.minimal:rel/response-answered-in-communication\",\n      \"type\": \"answered_in\",\n      \"source\": \"example.minimal:response/relationships-preserve-context\",\n      \"direction\": \"incoming\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal:communication/minimal-substrate-discussion&quot;, &quot;title&quot;: &quot;Minimal Substrate Discussion&quot;, &quot;type&quot;: &quot;communication&quot;, &quot;subtype&quot;: &quot;discussion&quot;, &quot;protocol_id&quot;: &quot;example.minimal:communication/minimal-substrate-discussion&quot;, &quot;content_id&quot;: &quot;sha256:example-communication-minimal-substrate-discussion&quot;, &quot;version_id&quot;: &quot;git:HEAD:examples/minimal-substrate/nodes/communication-minimal-substrate-discussion.json&quot;, &quot;status&quot;: &quot;active&quot;, &quot;importance&quot;: 3, &quot;summary&quot;: &quot;A small example communication showing that questions and responses can be modeled as knowledge flow.&quot;, &quot;communication_model&quot;: &quot;many_to_many&quot;, &quot;communication_pattern&quot;: &quot;query_response&quot;, &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.minimal:rel/question-asked-in-communication&quot;, &quot;type&quot;: &quot;asked_in&quot;, &quot;source&quot;: &quot;example.minimal:question/why-relationships-matter&quot;, &quot;direction&quot;: &quot;incoming&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/response-answered-in-communication&quot;, &quot;type&quot;: &quot;answered_in&quot;, &quot;source&quot;: &quot;example.minimal:response/relationships-preserve-context&quot;, &quot;direction&quot;: &quot;incoming&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-nodes-communication-minimal-substrate-discussion.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/nodes/communication-minimal-substrate-discussion.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-nodes-communication-minimal-substrate-discussion.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-concept-associative-trails.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-concept-associative-trails.json",
      "title": "Examples / Minimal Substrate / Nodes / Concept Associative Trails",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/minimal-substrate.",
      "content": "{\n  \"id\": \"example.minimal:concept/associative-trails\",\n  \"title\": \"Associative Trails\",\n  \"type\": \"concept\",\n  \"importance\": 4,\n  \"summary\": \"A way of navigating knowledge by following meaningful associations rather than only linear order or hierarchy.\",\n  \"relationships\": [\n    {\n      \"id\": \"example.minimal:rel/source-discusses-associative-trails\",\n      \"type\": \"discusses\",\n      \"source\": \"example.minimal:source/as-we-may-think\",\n      \"direction\": \"incoming\"\n    },\n    {\n      \"id\": \"example.minimal:rel/associative-trails-context-for-substrate\",\n      \"type\": \"related_to\",\n      \"target\": \"example.minimal:concept/knowledge-substrate\",\n      \"direction\": \"outgoing\"\n    },\n    {\n      \"id\": \"example.minimal:rel/trail-includes-associative-trails\",\n      \"type\": \"features\",\n      \"source\": \"example.minimal:trail/start-here\",\n      \"direction\": \"incoming\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal:concept/associative-trails&quot;, &quot;title&quot;: &quot;Associative Trails&quot;, &quot;type&quot;: &quot;concept&quot;, &quot;importance&quot;: 4, &quot;summary&quot;: &quot;A way of navigating knowledge by following meaningful associations rather than only linear order or hierarchy.&quot;, &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.minimal:rel/source-discusses-associative-trails&quot;, &quot;type&quot;: &quot;discusses&quot;, &quot;source&quot;: &quot;example.minimal:source/as-we-may-think&quot;, &quot;direction&quot;: &quot;incoming&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/associative-trails-context-for-substrate&quot;, &quot;type&quot;: &quot;related_to&quot;, &quot;target&quot;: &quot;example.minimal:concept/knowledge-substrate&quot;, &quot;direction&quot;: &quot;outgoing&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/trail-includes-associative-trails&quot;, &quot;type&quot;: &quot;features&quot;, &quot;source&quot;: &quot;example.minimal:trail/start-here&quot;, &quot;direction&quot;: &quot;incoming&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-nodes-concept-associative-trails.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/nodes/concept-associative-trails.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-nodes-concept-associative-trails.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-essay-relationship-navigation-intro.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-essay-relationship-navigation-intro.json",
      "title": "Examples / Minimal Substrate / Nodes / Essay Relationship Navigation Intro",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/minimal-substrate.",
      "content": "{\r\n  \"id\": \"example.minimal:essay/relationship-navigation-intro\",\r\n  \"title\": \"Relationship Navigation Intro\",\r\n  \"type\": \"essay\",\r\n  \"importance\": 4,\r\n  \"summary\": \"A short example essay that includes an addressable source fragment by reference rather than duplicating it.\",\r\n  \"created_by\": \"example.minimal:person/example-maintainer\",\r\n  \"created_at\": \"2026-01-01T00:00:00Z\",\r\n  \"relationships\": [\r\n    {\r\n      \"id\": \"example.minimal:rel/maintainer-created-intro-essay\",\r\n      \"type\": \"created\",\n      \"source\": \"example.minimal:person/example-maintainer\",\r\n      \"direction\": \"incoming\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/essay-transcludes-fragment\",\r\n      \"type\": \"transcludes\",\r\n      \"target\": \"example.minimal:fragment/as-we-may-think-0004\",\r\n      \"direction\": \"outgoing\"\r\n    }\r\n  ]\r\n}\r\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal:essay/relationship-navigation-intro&quot;, &quot;title&quot;: &quot;Relationship Navigation Intro&quot;, &quot;type&quot;: &quot;essay&quot;, &quot;importance&quot;: 4, &quot;summary&quot;: &quot;A short example essay that includes an addressable source fragment by reference rather than duplicating it.&quot;, &quot;created_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;created_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.minimal:rel/maintainer-created-intro-essay&quot;, &quot;type&quot;: &quot;created&quot;, &quot;source&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;direction&quot;: &quot;incoming&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/essay-transcludes-fragment&quot;, &quot;type&quot;: &quot;transcludes&quot;, &quot;target&quot;: &quot;example.minimal:fragment/as-we-may-think-0004&quot;, &quot;direction&quot;: &quot;outgoing&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-nodes-essay-relationship-navigation-intro.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/nodes/essay-relationship-navigation-intro.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-nodes-essay-relationship-navigation-intro.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-fragment-as-we-may-think-0004.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-fragment-as-we-may-think-0004.json",
      "title": "Examples / Minimal Substrate / Nodes / Fragment As We May Think 0004",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/minimal-substrate.",
      "content": "{\r\n  \"id\": \"example.minimal:fragment/as-we-may-think-0004\",\r\n  \"title\": \"As We May Think Fragment 0004\",\r\n  \"type\": \"fragment\",\n  \"protocol_id\": \"example.minimal:fragment/as-we-may-think-0004\",\n  \"content_id\": \"sha256:example-as-we-may-think-fragment-0004\",\n  \"version_id\": \"sha256:example-as-we-may-think-fragment-0004\",\n  \"importance\": 4,\r\n  \"summary\": \"An addressable fragment of the source used to demonstrate stable fragment references and transclusion.\",\n  \"source_node\": \"example.minimal:source/as-we-may-think\",\n  \"source_content_id\": \"sha256:example-as-we-may-think-source\",\n  \"source_version_id\": \"git:8e47e70:examples/minimal-substrate/nodes/source-as-we-may-think.json\",\n  \"fragment_id\": \"0004\",\n  \"tumbler\": \"example.minimal:source/as-we-may-think@git:8e47e70:examples/minimal-substrate/nodes/source-as-we-may-think.json#fragment/0004@sha256:example-as-we-may-think-fragment-0004\",\n  \"selector\": {\n    \"type\": \"TextQuoteSelector\",\n    \"value\": \"associative-trails-discussion\",\n    \"exact\": \"associative trails\"\n  },\n  \"rights_status\": \"copyrighted\",\r\n  \"created_by\": \"example.minimal:person/example-maintainer\",\r\n  \"created_at\": \"2026-01-01T00:00:00Z\",\r\n  \"relationships\": [\r\n    {\r\n      \"id\": \"example.minimal:rel/fragment-derived-from-source\",\r\n      \"type\": \"derived_from\",\r\n      \"target\": \"example.minimal:source/as-we-may-think\",\r\n      \"direction\": \"outgoing\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/essay-transcludes-fragment\",\r\n      \"type\": \"transcludes\",\n      \"source\": \"example.minimal:essay/relationship-navigation-intro\",\r\n      \"direction\": \"incoming\"\r\n    }\r\n  ]\r\n}\r\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal:fragment/as-we-may-think-0004&quot;, &quot;title&quot;: &quot;As We May Think Fragment 0004&quot;, &quot;type&quot;: &quot;fragment&quot;, &quot;protocol_id&quot;: &quot;example.minimal:fragment/as-we-may-think-0004&quot;, &quot;content_id&quot;: &quot;sha256:example-as-we-may-think-fragment-0004&quot;, &quot;version_id&quot;: &quot;sha256:example-as-we-may-think-fragment-0004&quot;, &quot;importance&quot;: 4, &quot;summary&quot;: &quot;An addressable fragment of the source used to demonstrate stable fragment references and transclusion.&quot;, &quot;source_node&quot;: &quot;example.minimal:source/as-we-may-think&quot;, &quot;source_content_id&quot;: &quot;sha256:example-as-we-may-think-source&quot;, &quot;source_version_id&quot;: &quot;git:8e47e70:examples/minimal-substrate/nodes/source-as-we-may-think.json&quot;, &quot;fragment_id&quot;: &quot;0004&quot;, &quot;tumbler&quot;: &quot;example.minimal:source/as-we-may-think@git:8e47e70:examples/minimal-substrate/nodes/source-as-we-may-think.json#fragment/0004@sha256:example-as-we-may-think-fragment-0004&quot;, &quot;selector&quot;: { &quot;type&quot;: &quot;TextQuoteSelector&quot;, &quot;value&quot;: &quot;associative-trails-discussion&quot;, &quot;exact&quot;: &quot;associative trails&quot; }, &quot;rights_status&quot;: &quot;copyrighted&quot;, &quot;created_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;created_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.minimal:rel/fragment-derived-from-source&quot;, &quot;type&quot;: &quot;derived_from&quot;, &quot;target&quot;: &quot;example.minimal:source/as-we-may-think&quot;, &quot;direction&quot;: &quot;outgoing&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/essay-transcludes-fragment&quot;, &quot;type&quot;: &quot;transcludes&quot;, &quot;source&quot;: &quot;example.minimal:essay/relationship-navigation-intro&quot;, &quot;direction&quot;: &quot;incoming&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-nodes-fragment-as-we-may-think-0004.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/nodes/fragment-as-we-may-think-0004.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-nodes-fragment-as-we-may-think-0004.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-knowledge-gap-missing-relationship-evidence.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-knowledge-gap-missing-relationship-evidence.json",
      "title": "Examples / Minimal Substrate / Nodes / Knowledge Gap Missing Relationship Evidence",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/minimal-substrate.",
      "content": "{\n  \"id\": \"example.minimal:knowledge_gap/missing-relationship-evidence\",\n  \"title\": \"Missing Relationship Evidence\",\n  \"type\": \"knowledge_gap\",\n  \"protocol_id\": \"example.minimal:knowledge_gap/missing-relationship-evidence\",\n  \"content_id\": \"sha256:example-gap-missing-relationship-evidence\",\n  \"version_id\": \"git:HEAD:examples/minimal-substrate/nodes/knowledge-gap-missing-relationship-evidence.json\",\n  \"status\": \"open\",\n  \"importance\": 4,\n  \"summary\": \"The substrate should show when a claim needs more source evidence rather than hiding that absence.\",\n  \"uncertainty_level\": \"high\",\n  \"review_status\": \"needs_review\",\n  \"research_priority\": 4,\n  \"relationships\": [\n    {\n      \"id\": \"example.minimal:rel/question-raises-gap\",\n      \"type\": \"raises\",\n      \"source\": \"example.minimal:question/why-relationships-matter\",\n      \"direction\": \"incoming\"\n    },\n    {\n      \"id\": \"example.minimal:rel/gap-requires-source\",\n      \"type\": \"requires_source\",\n      \"target\": \"example.minimal:source/as-we-may-think\",\n      \"direction\": \"outgoing\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal:knowledge_gap/missing-relationship-evidence&quot;, &quot;title&quot;: &quot;Missing Relationship Evidence&quot;, &quot;type&quot;: &quot;knowledge_gap&quot;, &quot;protocol_id&quot;: &quot;example.minimal:knowledge_gap/missing-relationship-evidence&quot;, &quot;content_id&quot;: &quot;sha256:example-gap-missing-relationship-evidence&quot;, &quot;version_id&quot;: &quot;git:HEAD:examples/minimal-substrate/nodes/knowledge-gap-missing-relationship-evidence.json&quot;, &quot;status&quot;: &quot;open&quot;, &quot;importance&quot;: 4, &quot;summary&quot;: &quot;The substrate should show when a claim needs more source evidence rather than hiding that absence.&quot;, &quot;uncertainty_level&quot;: &quot;high&quot;, &quot;review_status&quot;: &quot;needs_review&quot;, &quot;research_priority&quot;: 4, &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.minimal:rel/question-raises-gap&quot;, &quot;type&quot;: &quot;raises&quot;, &quot;source&quot;: &quot;example.minimal:question/why-relationships-matter&quot;, &quot;direction&quot;: &quot;incoming&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/gap-requires-source&quot;, &quot;type&quot;: &quot;requires_source&quot;, &quot;target&quot;: &quot;example.minimal:source/as-we-may-think&quot;, &quot;direction&quot;: &quot;outgoing&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-nodes-knowledge-gap-missing-relationship-evidence.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/nodes/knowledge-gap-missing-relationship-evidence.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-nodes-knowledge-gap-missing-relationship-evidence.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-knowledge-substrate.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-knowledge-substrate.json",
      "title": "Examples / Minimal Substrate / Nodes / Knowledge Substrate",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/minimal-substrate.",
      "content": "{\n  \"id\": \"example.minimal:concept/knowledge-substrate\",\n  \"title\": \"Knowledge Substrate\",\n  \"type\": \"concept\",\n  \"importance\": 5,\n  \"summary\": \"A structure that determines how information relates, persists, and can be navigated.\",\n  \"relationships\": [\n    {\n      \"id\": \"example.minimal:rel/associative-trails-context-for-substrate\",\n      \"type\": \"related_to\",\n      \"source\": \"example.minimal:concept/associative-trails\",\n      \"direction\": \"incoming\"\n    },\n    {\n      \"id\": \"example.minimal:rel/claim-defines-concept\",\n      \"type\": \"defines\",\n      \"source\": \"example.minimal:claim/substrate-is-structure\",\n      \"direction\": \"incoming\"\n    },\n    {\n      \"id\": \"example.minimal:rel/concept-has-claim\",\n      \"type\": \"has_claim\",\n      \"target\": \"example.minimal:claim/substrate-is-structure\",\n      \"direction\": \"outgoing\"\n    },\n    {\n      \"id\": \"example.minimal:rel/trail-continues-to-concept\",\n      \"type\": \"continues_to\",\n      \"source\": \"example.minimal:claim/substrate-is-structure\",\n      \"direction\": \"incoming\"\n    },\n    {\n      \"id\": \"example.minimal:rel/substrate-has-primary-media\",\n      \"type\": \"has_primary_media\",\n      \"target\": \"example.minimal:media/xananode-icon\",\n      \"direction\": \"outgoing\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal:concept/knowledge-substrate&quot;, &quot;title&quot;: &quot;Knowledge Substrate&quot;, &quot;type&quot;: &quot;concept&quot;, &quot;importance&quot;: 5, &quot;summary&quot;: &quot;A structure that determines how information relates, persists, and can be navigated.&quot;, &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.minimal:rel/associative-trails-context-for-substrate&quot;, &quot;type&quot;: &quot;related_to&quot;, &quot;source&quot;: &quot;example.minimal:concept/associative-trails&quot;, &quot;direction&quot;: &quot;incoming&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/claim-defines-concept&quot;, &quot;type&quot;: &quot;defines&quot;, &quot;source&quot;: &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;direction&quot;: &quot;incoming&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/concept-has-claim&quot;, &quot;type&quot;: &quot;has_claim&quot;, &quot;target&quot;: &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;direction&quot;: &quot;outgoing&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/trail-continues-to-concept&quot;, &quot;type&quot;: &quot;continues_to&quot;, &quot;source&quot;: &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;direction&quot;: &quot;incoming&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/substrate-has-primary-media&quot;, &quot;type&quot;: &quot;has_primary_media&quot;, &quot;target&quot;: &quot;example.minimal:media/xananode-icon&quot;, &quot;direction&quot;: &quot;outgoing&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-nodes-knowledge-substrate.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/nodes/knowledge-substrate.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-nodes-knowledge-substrate.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-media-xananode-icon.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-media-xananode-icon.json",
      "title": "Examples / Minimal Substrate / Nodes / Media XanaNode Icon",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/minimal-substrate.",
      "content": "{\n  \"id\": \"example.minimal:media/xananode-icon\",\n  \"title\": \"XanaNode Icon\",\n  \"type\": \"media\",\n  \"subtype\": \"logo\",\n  \"media_type\": \"image\",\n  \"mime_type\": \"image/svg+xml\",\n  \"importance\": 5,\n  \"summary\": \"The canonical XanaNode protocol icon used as a portable branding asset.\",\n  \"alt\": \"An abstract X-shaped network logo with a central node and blue and orange relationship lines connecting outer nodes.\",\n  \"asset_path\": \"assets/branding/xananode-icon.svg\",\n  \"asset_role\": \"primary_media\",\n  \"caption\": \"XanaNode protocol icon\",\n  \"creator\": \"Christian Siefen\",\n  \"created_date\": \"2026-06-16T00:00:00Z\",\n  \"source_name\": \"XanaNode Protocol\",\n  \"source_url\": \"https://github.com/kingc95/XanaNode\",\n  \"rights_status\": \"trademarked - see TRADEMARK.md for permissions and reuse restrictions\",\n  \"relationships\": [\n    {\n      \"id\": \"example.minimal:rel/substrate-has-primary-media\",\n      \"type\": \"has_primary_media\",\n      \"source\": \"example.minimal:concept/knowledge-substrate\",\n      \"direction\": \"incoming\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal:media/xananode-icon&quot;, &quot;title&quot;: &quot;XanaNode Icon&quot;, &quot;type&quot;: &quot;media&quot;, &quot;subtype&quot;: &quot;logo&quot;, &quot;media_type&quot;: &quot;image&quot;, &quot;mime_type&quot;: &quot;image/svg+xml&quot;, &quot;importance&quot;: 5, &quot;summary&quot;: &quot;The canonical XanaNode protocol icon used as a portable branding asset.&quot;, &quot;alt&quot;: &quot;An abstract X-shaped network logo with a central node and blue and orange relationship lines connecting outer nodes.&quot;, &quot;asset_path&quot;: &quot;assets/branding/xananode-icon.svg&quot;, &quot;asset_role&quot;: &quot;primary_media&quot;, &quot;caption&quot;: &quot;XanaNode protocol icon&quot;, &quot;creator&quot;: &quot;Christian Siefen&quot;, &quot;created_date&quot;: &quot;2026-06-16T00:00:00Z&quot;, &quot;source_name&quot;: &quot;XanaNode Protocol&quot;, &quot;source_url&quot;: &quot;https://github.com/kingc95/XanaNode&quot;, &quot;rights_status&quot;: &quot;trademarked - see TRADEMARK.md for permissions and reuse restrictions&quot;, &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.minimal:rel/substrate-has-primary-media&quot;, &quot;type&quot;: &quot;has_primary_media&quot;, &quot;source&quot;: &quot;example.minimal:concept/knowledge-substrate&quot;, &quot;direction&quot;: &quot;incoming&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-nodes-media-xananode-icon.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/nodes/media-xananode-icon.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-nodes-media-xananode-icon.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-person-example-maintainer.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-person-example-maintainer.json",
      "title": "Examples / Minimal Substrate / Nodes / Person Example Maintainer",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/minimal-substrate.",
      "content": "{\r\n  \"id\": \"example.minimal:person/example-maintainer\",\r\n  \"title\": \"Example Maintainer\",\r\n  \"type\": \"person\",\r\n  \"importance\": 3,\r\n  \"summary\": \"The local actor responsible for asserting and curating the minimal example substrate.\",\r\n  \"created_at\": \"2026-01-01T00:00:00Z\",\r\n  \"relationships\": [\r\n    {\r\n      \"id\": \"example.minimal:rel/maintainer-created-intro-essay\",\r\n      \"type\": \"created\",\r\n      \"target\": \"example.minimal:essay/relationship-navigation-intro\",\r\n      \"direction\": \"outgoing\"\r\n    }\r\n  ]\r\n}\r\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;title&quot;: &quot;Example Maintainer&quot;, &quot;type&quot;: &quot;person&quot;, &quot;importance&quot;: 3, &quot;summary&quot;: &quot;The local actor responsible for asserting and curating the minimal example substrate.&quot;, &quot;created_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.minimal:rel/maintainer-created-intro-essay&quot;, &quot;type&quot;: &quot;created&quot;, &quot;target&quot;: &quot;example.minimal:essay/relationship-navigation-intro&quot;, &quot;direction&quot;: &quot;outgoing&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-nodes-person-example-maintainer.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/nodes/person-example-maintainer.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-nodes-person-example-maintainer.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-question-why-relationships-matter.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-question-why-relationships-matter.json",
      "title": "Examples / Minimal Substrate / Nodes / Question Why Relationships Matter",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/minimal-substrate.",
      "content": "{\n  \"id\": \"example.minimal:question/why-relationships-matter\",\n  \"title\": \"Why do relationships matter?\",\n  \"type\": \"question\",\n  \"protocol_id\": \"example.minimal:question/why-relationships-matter\",\n  \"content_id\": \"sha256:example-question-why-relationships-matter\",\n  \"version_id\": \"git:HEAD:examples/minimal-substrate/nodes/question-why-relationships-matter.json\",\n  \"status\": \"open\",\n  \"importance\": 5,\n  \"summary\": \"An inquiry into why preserving relationship structure changes what a knowledge system can do.\",\n  \"uncertainty_level\": \"medium\",\n  \"review_status\": \"needs_review\",\n  \"research_priority\": 4,\n  \"relationships\": [\n    {\n      \"id\": \"example.minimal:rel/question-raises-gap\",\n      \"type\": \"raises\",\n      \"target\": \"example.minimal:knowledge_gap/missing-relationship-evidence\",\n      \"direction\": \"outgoing\"\n    },\n    {\n      \"id\": \"example.minimal:rel/response-answers-question\",\n      \"type\": \"answers\",\n      \"source\": \"example.minimal:response/relationships-preserve-context\",\n      \"direction\": \"incoming\"\n    },\n    {\n      \"id\": \"example.minimal:rel/question-asked-in-communication\",\n      \"type\": \"asked_in\",\n      \"target\": \"example.minimal:communication/minimal-substrate-discussion\",\n      \"direction\": \"outgoing\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal:question/why-relationships-matter&quot;, &quot;title&quot;: &quot;Why do relationships matter?&quot;, &quot;type&quot;: &quot;question&quot;, &quot;protocol_id&quot;: &quot;example.minimal:question/why-relationships-matter&quot;, &quot;content_id&quot;: &quot;sha256:example-question-why-relationships-matter&quot;, &quot;version_id&quot;: &quot;git:HEAD:examples/minimal-substrate/nodes/question-why-relationships-matter.json&quot;, &quot;status&quot;: &quot;open&quot;, &quot;importance&quot;: 5, &quot;summary&quot;: &quot;An inquiry into why preserving relationship structure changes what a knowledge system can do.&quot;, &quot;uncertainty_level&quot;: &quot;medium&quot;, &quot;review_status&quot;: &quot;needs_review&quot;, &quot;research_priority&quot;: 4, &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.minimal:rel/question-raises-gap&quot;, &quot;type&quot;: &quot;raises&quot;, &quot;target&quot;: &quot;example.minimal:knowledge_gap/missing-relationship-evidence&quot;, &quot;direction&quot;: &quot;outgoing&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/response-answers-question&quot;, &quot;type&quot;: &quot;answers&quot;, &quot;source&quot;: &quot;example.minimal:response/relationships-preserve-context&quot;, &quot;direction&quot;: &quot;incoming&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/question-asked-in-communication&quot;, &quot;type&quot;: &quot;asked_in&quot;, &quot;target&quot;: &quot;example.minimal:communication/minimal-substrate-discussion&quot;, &quot;direction&quot;: &quot;outgoing&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-nodes-question-why-relationships-matter.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/nodes/question-why-relationships-matter.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-nodes-question-why-relationships-matter.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-response-relationships-preserve-context.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-response-relationships-preserve-context.json",
      "title": "Examples / Minimal Substrate / Nodes / Response Relationships Preserve Context",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/minimal-substrate.",
      "content": "{\n  \"id\": \"example.minimal:response/relationships-preserve-context\",\n  \"title\": \"Relationships Preserve Context\",\n  \"type\": \"response\",\n  \"protocol_id\": \"example.minimal:response/relationships-preserve-context\",\n  \"content_id\": \"sha256:example-response-relationships-preserve-context\",\n  \"version_id\": \"git:HEAD:examples/minimal-substrate/nodes/response-relationships-preserve-context.json\",\n  \"status\": \"active\",\n  \"importance\": 4,\n  \"summary\": \"A response that answers the example question by connecting relationship structure to preserved context.\",\n  \"evidence_strength\": \"moderate\",\n  \"review_status\": \"under_review\",\n  \"relationships\": [\n    {\n      \"id\": \"example.minimal:rel/response-answers-question\",\n      \"type\": \"answers\",\n      \"target\": \"example.minimal:question/why-relationships-matter\",\n      \"direction\": \"outgoing\"\n    },\n    {\n      \"id\": \"example.minimal:rel/response-answered-in-communication\",\n      \"type\": \"answered_in\",\n      \"target\": \"example.minimal:communication/minimal-substrate-discussion\",\n      \"direction\": \"outgoing\"\n    },\n    {\n      \"id\": \"example.minimal:rel/response-supports-claim\",\n      \"type\": \"supports\",\n      \"target\": \"example.minimal:claim/substrate-is-structure\",\n      \"direction\": \"outgoing\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal:response/relationships-preserve-context&quot;, &quot;title&quot;: &quot;Relationships Preserve Context&quot;, &quot;type&quot;: &quot;response&quot;, &quot;protocol_id&quot;: &quot;example.minimal:response/relationships-preserve-context&quot;, &quot;content_id&quot;: &quot;sha256:example-response-relationships-preserve-context&quot;, &quot;version_id&quot;: &quot;git:HEAD:examples/minimal-substrate/nodes/response-relationships-preserve-context.json&quot;, &quot;status&quot;: &quot;active&quot;, &quot;importance&quot;: 4, &quot;summary&quot;: &quot;A response that answers the example question by connecting relationship structure to preserved context.&quot;, &quot;evidence_strength&quot;: &quot;moderate&quot;, &quot;review_status&quot;: &quot;under_review&quot;, &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.minimal:rel/response-answers-question&quot;, &quot;type&quot;: &quot;answers&quot;, &quot;target&quot;: &quot;example.minimal:question/why-relationships-matter&quot;, &quot;direction&quot;: &quot;outgoing&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/response-answered-in-communication&quot;, &quot;type&quot;: &quot;answered_in&quot;, &quot;target&quot;: &quot;example.minimal:communication/minimal-substrate-discussion&quot;, &quot;direction&quot;: &quot;outgoing&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/response-supports-claim&quot;, &quot;type&quot;: &quot;supports&quot;, &quot;target&quot;: &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;direction&quot;: &quot;outgoing&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-nodes-response-relationships-preserve-context.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/nodes/response-relationships-preserve-context.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-nodes-response-relationships-preserve-context.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-source-as-we-may-think.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-source-as-we-may-think.json",
      "title": "Examples / Minimal Substrate / Nodes / Source As We May Think",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/minimal-substrate.",
      "content": "{\r\n  \"id\": \"example.minimal:source/as-we-may-think\",\r\n  \"title\": \"As We May Think\",\n  \"type\": \"source\",\n  \"protocol_id\": \"example.minimal:source/as-we-may-think\",\n  \"content_id\": \"sha256:example-as-we-may-think-source\",\n  \"version_id\": \"git:8e47e70:examples/minimal-substrate/nodes/source-as-we-may-think.json\",\n  \"importance\": 5,\n  \"summary\": \"Vannevar Bush's 1945 essay describing associative trails and the problem of navigating expanding scientific knowledge.\",\r\n  \"author\": \"Vannevar Bush\",\r\n  \"year\": 1945,\r\n  \"source_url\": \"https://www.theatlantic.com/magazine/archive/1945/07/as-we-may-think/303881/\",\r\n  \"rights_status\": \"copyrighted\",\r\n  \"relationships\": [\r\n    {\r\n      \"id\": \"example.minimal:rel/source-supports-claim\",\r\n      \"type\": \"supports\",\r\n      \"target\": \"example.minimal:claim/substrate-is-structure\",\r\n      \"direction\": \"outgoing\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/source-discusses-associative-trails\",\r\n      \"type\": \"discusses\",\r\n      \"target\": \"example.minimal:concept/associative-trails\",\r\n      \"direction\": \"outgoing\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/trail-starts-with-source\",\r\n      \"type\": \"starts_with\",\r\n      \"source\": \"example.minimal:trail/start-here\",\r\n      \"direction\": \"incoming\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/trail-continues-to-claim\",\r\n      \"type\": \"continues_to\",\r\n      \"target\": \"example.minimal:claim/substrate-is-structure\",\r\n      \"direction\": \"outgoing\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/fragment-derived-from-source\",\r\n      \"type\": \"derived_from\",\r\n      \"source\": \"example.minimal:fragment/as-we-may-think-0004\",\r\n      \"direction\": \"incoming\"\r\n    }\r\n  ]\r\n}\r\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal:source/as-we-may-think&quot;, &quot;title&quot;: &quot;As We May Think&quot;, &quot;type&quot;: &quot;source&quot;, &quot;protocol_id&quot;: &quot;example.minimal:source/as-we-may-think&quot;, &quot;content_id&quot;: &quot;sha256:example-as-we-may-think-source&quot;, &quot;version_id&quot;: &quot;git:8e47e70:examples/minimal-substrate/nodes/source-as-we-may-think.json&quot;, &quot;importance&quot;: 5, &quot;summary&quot;: &quot;Vannevar Bush&#39;s 1945 essay describing associative trails and the problem of navigating expanding scientific knowledge.&quot;, &quot;author&quot;: &quot;Vannevar Bush&quot;, &quot;year&quot;: 1945, &quot;source_url&quot;: &quot;https://www.theatlantic.com/magazine/archive/1945/07/as-we-may-think/303881/&quot;, &quot;rights_status&quot;: &quot;copyrighted&quot;, &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.minimal:rel/source-supports-claim&quot;, &quot;type&quot;: &quot;supports&quot;, &quot;target&quot;: &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;direction&quot;: &quot;outgoing&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/source-discusses-associative-trails&quot;, &quot;type&quot;: &quot;discusses&quot;, &quot;target&quot;: &quot;example.minimal:concept/associative-trails&quot;, &quot;direction&quot;: &quot;outgoing&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/trail-starts-with-source&quot;, &quot;type&quot;: &quot;starts_with&quot;, &quot;source&quot;: &quot;example.minimal:trail/start-here&quot;, &quot;direction&quot;: &quot;incoming&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/trail-continues-to-claim&quot;, &quot;type&quot;: &quot;continues_to&quot;, &quot;target&quot;: &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;direction&quot;: &quot;outgoing&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/fragment-derived-from-source&quot;, &quot;type&quot;: &quot;derived_from&quot;, &quot;source&quot;: &quot;example.minimal:fragment/as-we-may-think-0004&quot;, &quot;direction&quot;: &quot;incoming&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-nodes-source-as-we-may-think.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/nodes/source-as-we-may-think.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-nodes-source-as-we-may-think.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-trail-start-here.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-trail-start-here.json",
      "title": "Examples / Minimal Substrate / Nodes / Trail Start Here",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A node record from examples/minimal-substrate.",
      "content": "{\n  \"id\": \"example.minimal:trail/start-here\",\n  \"title\": \"Start Here\",\n  \"type\": \"trail\",\n  \"importance\": 5,\n  \"summary\": \"A short curated route introducing the substrate through source, claim, supporting context, and concept.\",\n  \"nodes\": [\n    \"example.minimal:source/as-we-may-think\",\n    \"example.minimal:concept/associative-trails\",\n    \"example.minimal:claim/substrate-is-structure\",\n    \"example.minimal:concept/knowledge-substrate\"\n  ],\n  \"relationships\": [\n    {\n      \"id\": \"example.minimal:rel/trail-starts-with-source\",\n      \"type\": \"starts_with\",\n      \"target\": \"example.minimal:source/as-we-may-think\",\n      \"direction\": \"outgoing\"\n    },\n    {\n      \"id\": \"example.minimal:rel/trail-includes-associative-trails\",\n      \"type\": \"features\",\n      \"target\": \"example.minimal:concept/associative-trails\",\n      \"direction\": \"outgoing\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal:trail/start-here&quot;, &quot;title&quot;: &quot;Start Here&quot;, &quot;type&quot;: &quot;trail&quot;, &quot;importance&quot;: 5, &quot;summary&quot;: &quot;A short curated route introducing the substrate through source, claim, supporting context, and concept.&quot;, &quot;nodes&quot;: [ &quot;example.minimal:source/as-we-may-think&quot;, &quot;example.minimal:concept/associative-trails&quot;, &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;example.minimal:concept/knowledge-substrate&quot; ], &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.minimal:rel/trail-starts-with-source&quot;, &quot;type&quot;: &quot;starts_with&quot;, &quot;target&quot;: &quot;example.minimal:source/as-we-may-think&quot;, &quot;direction&quot;: &quot;outgoing&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/trail-includes-associative-trails&quot;, &quot;type&quot;: &quot;features&quot;, &quot;target&quot;: &quot;example.minimal:concept/associative-trails&quot;, &quot;direction&quot;: &quot;outgoing&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-nodes-trail-start-here.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/nodes/trail-start-here.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-nodes-trail-start-here.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-relationships.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-relationships.json",
      "title": "Examples / Minimal Substrate / Relationships",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The relationship list for Examples / Minimal Substrate.",
      "content": "{\r\n  \"relationships\": [\r\n    {\r\n      \"id\": \"example.minimal:rel/source-supports-claim\",\r\n      \"source\": \"example.minimal:source/as-we-may-think\",\r\n      \"target\": \"example.minimal:claim/substrate-is-structure\",\r\n      \"type\": \"supports\",\r\n      \"weight\": 5,\r\n      \"visibility\": \"primary\",\r\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\r\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\r\n      \"confidence\": \"interpretive\",\r\n      \"summary\": \"Bush's essay is used as source evidence for the claim that substrate structure matters.\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/source-discusses-associative-trails\",\r\n      \"source\": \"example.minimal:source/as-we-may-think\",\r\n      \"target\": \"example.minimal:concept/associative-trails\",\r\n      \"type\": \"discusses\",\r\n      \"weight\": 5,\r\n      \"visibility\": \"primary\",\r\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\r\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\r\n      \"confidence\": \"high\",\r\n      \"summary\": \"The source discusses associative trails as a way to navigate knowledge by meaningful connections.\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/associative-trails-context-for-substrate\",\r\n      \"source\": \"example.minimal:concept/associative-trails\",\r\n      \"target\": \"example.minimal:concept/knowledge-substrate\",\r\n      \"type\": \"related_to\",\r\n      \"weight\": 4,\r\n      \"visibility\": \"primary\",\r\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\r\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\r\n      \"confidence\": \"interpretive\",\r\n      \"summary\": \"Associative trails provide historical and conceptual context for the knowledge substrate concept.\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/claim-defines-concept\",\r\n      \"source\": \"example.minimal:claim/substrate-is-structure\",\r\n      \"target\": \"example.minimal:concept/knowledge-substrate\",\r\n      \"type\": \"defines\",\r\n      \"weight\": 5,\r\n      \"visibility\": \"primary\",\r\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\r\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\r\n      \"confidence\": \"interpretive\",\r\n      \"summary\": \"The claim gives the defining explanation of what a knowledge substrate is.\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/concept-has-claim\",\r\n      \"source\": \"example.minimal:concept/knowledge-substrate\",\r\n      \"target\": \"example.minimal:claim/substrate-is-structure\",\r\n      \"type\": \"has_claim\",\r\n      \"weight\": 5,\r\n      \"visibility\": \"primary\",\r\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\r\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\r\n      \"confidence\": \"high\",\r\n      \"summary\": \"The concept is built from the claim rather than floating as an unsupported idea.\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/trail-starts-with-source\",\r\n      \"source\": \"example.minimal:trail/start-here\",\r\n      \"target\": \"example.minimal:source/as-we-may-think\",\r\n      \"type\": \"starts_with\",\r\n      \"weight\": 3,\r\n      \"visibility\": \"secondary\",\r\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\r\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\r\n      \"confidence\": \"curatorial\",\r\n      \"summary\": \"The reading trail starts with the source.\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/trail-continues-to-claim\",\r\n      \"source\": \"example.minimal:source/as-we-may-think\",\r\n      \"target\": \"example.minimal:claim/substrate-is-structure\",\r\n      \"type\": \"continues_to\",\r\n      \"weight\": 3,\r\n      \"visibility\": \"secondary\",\r\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\r\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\r\n      \"confidence\": \"curatorial\",\r\n      \"summary\": \"The trail continues from source evidence to the claim derived from it.\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/trail-continues-to-concept\",\r\n      \"source\": \"example.minimal:claim/substrate-is-structure\",\r\n      \"target\": \"example.minimal:concept/knowledge-substrate\",\r\n      \"type\": \"continues_to\",\r\n      \"weight\": 3,\r\n      \"visibility\": \"secondary\",\r\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\r\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\r\n      \"confidence\": \"curatorial\",\r\n      \"summary\": \"The trail continues from the defining claim to the concept it helps construct.\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/trail-includes-associative-trails\",\r\n      \"source\": \"example.minimal:trail/start-here\",\r\n      \"target\": \"example.minimal:concept/associative-trails\",\r\n      \"type\": \"features\",\r\n      \"weight\": 3,\r\n      \"visibility\": \"secondary\",\r\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\r\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\r\n      \"confidence\": \"curatorial\",\r\n      \"summary\": \"The trail features the background concept that explains why relationship-based navigation matters.\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/maintainer-created-intro-essay\",\r\n      \"source\": \"example.minimal:person/example-maintainer\",\r\n      \"target\": \"example.minimal:essay/relationship-navigation-intro\",\r\n      \"type\": \"created\",\r\n      \"weight\": 4,\r\n      \"visibility\": \"secondary\",\r\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\r\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\r\n      \"confidence\": \"high\",\r\n      \"summary\": \"The example maintainer created the short introductory essay used to demonstrate transclusion.\"\r\n    },\r\n    {\r\n      \"id\": \"example.minimal:rel/fragment-derived-from-source\",\r\n      \"source\": \"example.minimal:fragment/as-we-may-think-0004\",\r\n      \"target\": \"example.minimal:source/as-we-may-think\",\r\n      \"type\": \"derived_from\",\r\n      \"weight\": 5,\r\n      \"visibility\": \"primary\",\r\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\r\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\r\n      \"confidence\": \"high\",\r\n      \"tumbler\": \"example.minimal:source/as-we-may-think@git:8e47e70:examples/minimal-substrate/nodes/source-as-we-may-think.json#fragment/0004@sha256:example-as-we-may-think-fragment-0004\",\n      \"summary\": \"The fragment node is derived from a stable addressable portion of the source node.\"\r\n    },\r\n    {\n      \"id\": \"example.minimal:rel/essay-transcludes-fragment\",\n      \"source\": \"example.minimal:essay/relationship-navigation-intro\",\n      \"target\": \"example.minimal:fragment/as-we-may-think-0004\",\n      \"type\": \"transcludes\",\n      \"weight\": 5,\r\n      \"visibility\": \"primary\",\r\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\r\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\r\n      \"confidence\": \"high\",\n      \"tumbler\": \"example.minimal:source/as-we-may-think@git:8e47e70:examples/minimal-substrate/nodes/source-as-we-may-think.json#fragment/0004@sha256:example-as-we-may-think-fragment-0004\",\n      \"summary\": \"The essay includes the source fragment by stable reference instead of duplicating it.\"\n    },\n    {\n      \"id\": \"example.minimal:rel/question-raises-gap\",\n      \"source\": \"example.minimal:question/why-relationships-matter\",\n      \"target\": \"example.minimal:knowledge_gap/missing-relationship-evidence\",\n      \"type\": \"raises\",\n      \"weight\": 4,\n      \"visibility\": \"primary\",\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\n      \"confidence\": \"curatorial\",\n      \"summary\": \"The question makes a missing-evidence gap explicit instead of leaving it implicit.\"\n    },\n    {\n      \"id\": \"example.minimal:rel/gap-requires-source\",\n      \"source\": \"example.minimal:knowledge_gap/missing-relationship-evidence\",\n      \"target\": \"example.minimal:source/as-we-may-think\",\n      \"type\": \"requires_source\",\n      \"weight\": 4,\n      \"visibility\": \"primary\",\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\n      \"confidence\": \"curatorial\",\n      \"summary\": \"The knowledge gap points to source evidence that may help resolve it.\"\n    },\n    {\n      \"id\": \"example.minimal:rel/question-asked-in-communication\",\n      \"source\": \"example.minimal:question/why-relationships-matter\",\n      \"target\": \"example.minimal:communication/minimal-substrate-discussion\",\n      \"type\": \"asked_in\",\n      \"weight\": 4,\n      \"visibility\": \"primary\",\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\n      \"confidence\": \"high\",\n      \"summary\": \"The question is modeled as being asked inside a communication context.\"\n    },\n    {\n      \"id\": \"example.minimal:rel/response-answers-question\",\n      \"source\": \"example.minimal:response/relationships-preserve-context\",\n      \"target\": \"example.minimal:question/why-relationships-matter\",\n      \"type\": \"answers\",\n      \"weight\": 5,\n      \"visibility\": \"primary\",\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\n      \"confidence\": \"interpretive\",\n      \"summary\": \"The response answers the question by connecting relationship structure to preserved context.\"\n    },\n    {\n      \"id\": \"example.minimal:rel/response-answered-in-communication\",\n      \"source\": \"example.minimal:response/relationships-preserve-context\",\n      \"target\": \"example.minimal:communication/minimal-substrate-discussion\",\n      \"type\": \"answered_in\",\n      \"weight\": 4,\n      \"visibility\": \"primary\",\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\n      \"confidence\": \"high\",\n      \"summary\": \"The response belongs to the same communication context as the question.\"\n    },\n    {\n      \"id\": \"example.minimal:rel/response-supports-claim\",\n      \"source\": \"example.minimal:response/relationships-preserve-context\",\n      \"target\": \"example.minimal:claim/substrate-is-structure\",\n      \"type\": \"supports\",\n      \"weight\": 4,\n      \"visibility\": \"primary\",\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\n      \"asserted_at\": \"2026-01-01T00:00:00Z\",\n      \"confidence\": \"interpretive\",\n      \"summary\": \"The response supports the existing claim that substrate structure changes epistemic capability.\"\n    },\n    {\n      \"id\": \"example.minimal:rel/substrate-has-primary-media\",\n      \"source\": \"example.minimal:concept/knowledge-substrate\",\n      \"target\": \"example.minimal:media/xananode-icon\",\n      \"type\": \"has_primary_media\",\n      \"weight\": 5,\n      \"visibility\": \"primary\",\n      \"asserted_by\": \"example.minimal:person/example-maintainer\",\n      \"asserted_at\": \"2026-06-19T00:00:00Z\",\n      \"confidence\": \"high\",\n      \"summary\": \"The minimal substrate uses the canonical XanaNode icon as its primary branding media.\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;relationships&quot;: [ { &quot;id&quot;: &quot;example.minimal:rel/source-supports-claim&quot;, &quot;source&quot;: &quot;example.minimal:source/as-we-may-think&quot;, &quot;target&quot;: &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;type&quot;: &quot;supports&quot;, &quot;weight&quot;: 5, &quot;visibility&quot;: &quot;primary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;interpretive&quot;, &quot;summary&quot;: &quot;Bush&#39;s essay is used as source evidence for the claim that substrate structure matters.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/source-discusses-associative-trails&quot;, &quot;source&quot;: &quot;example.minimal:source/as-we-may-think&quot;, &quot;target&quot;: &quot;example.minimal:concept/associative-trails&quot;, &quot;type&quot;: &quot;discusses&quot;, &quot;weight&quot;: 5, &quot;visibility&quot;: &quot;primary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;high&quot;, &quot;summary&quot;: &quot;The source discusses associative trails as a way to navigate knowledge by meaningful connections.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/associative-trails-context-for-substrate&quot;, &quot;source&quot;: &quot;example.minimal:concept/associative-trails&quot;, &quot;target&quot;: &quot;example.minimal:concept/knowledge-substrate&quot;, &quot;type&quot;: &quot;related_to&quot;, &quot;weight&quot;: 4, &quot;visibility&quot;: &quot;primary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;interpretive&quot;, &quot;summary&quot;: &quot;Associative trails provide historical and conceptual context for the knowledge substrate concept.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/claim-defines-concept&quot;, &quot;source&quot;: &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;target&quot;: &quot;example.minimal:concept/knowledge-substrate&quot;, &quot;type&quot;: &quot;defines&quot;, &quot;weight&quot;: 5, &quot;visibility&quot;: &quot;primary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;interpretive&quot;, &quot;summary&quot;: &quot;The claim gives the defining explanation of what a knowledge substrate is.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/concept-has-claim&quot;, &quot;source&quot;: &quot;example.minimal:concept/knowledge-substrate&quot;, &quot;target&quot;: &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;type&quot;: &quot;has_claim&quot;, &quot;weight&quot;: 5, &quot;visibility&quot;: &quot;primary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;high&quot;, &quot;summary&quot;: &quot;The concept is built from the claim rather than floating as an unsupported idea.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/trail-starts-with-source&quot;, &quot;source&quot;: &quot;example.minimal:trail/start-here&quot;, &quot;target&quot;: &quot;example.minimal:source/as-we-may-think&quot;, &quot;type&quot;: &quot;starts_with&quot;, &quot;weight&quot;: 3, &quot;visibility&quot;: &quot;secondary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;curatorial&quot;, &quot;summary&quot;: &quot;The reading trail starts with the source.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/trail-continues-to-claim&quot;, &quot;source&quot;: &quot;example.minimal:source/as-we-may-think&quot;, &quot;target&quot;: &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;type&quot;: &quot;continues_to&quot;, &quot;weight&quot;: 3, &quot;visibility&quot;: &quot;secondary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;curatorial&quot;, &quot;summary&quot;: &quot;The trail continues from source evidence to the claim derived from it.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/trail-continues-to-concept&quot;, &quot;source&quot;: &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;target&quot;: &quot;example.minimal:concept/knowledge-substrate&quot;, &quot;type&quot;: &quot;continues_to&quot;, &quot;weight&quot;: 3, &quot;visibility&quot;: &quot;secondary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;curatorial&quot;, &quot;summary&quot;: &quot;The trail continues from the defining claim to the concept it helps construct.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/trail-includes-associative-trails&quot;, &quot;source&quot;: &quot;example.minimal:trail/start-here&quot;, &quot;target&quot;: &quot;example.minimal:concept/associative-trails&quot;, &quot;type&quot;: &quot;features&quot;, &quot;weight&quot;: 3, &quot;visibility&quot;: &quot;secondary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;curatorial&quot;, &quot;summary&quot;: &quot;The trail features the background concept that explains why relationship-based navigation matters.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/maintainer-created-intro-essay&quot;, &quot;source&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;target&quot;: &quot;example.minimal:essay/relationship-navigation-intro&quot;, &quot;type&quot;: &quot;created&quot;, &quot;weight&quot;: 4, &quot;visibility&quot;: &quot;secondary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;high&quot;, &quot;summary&quot;: &quot;The example maintainer created the short introductory essay used to demonstrate transclusion.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/fragment-derived-from-source&quot;, &quot;source&quot;: &quot;example.minimal:fragment/as-we-may-think-0004&quot;, &quot;target&quot;: &quot;example.minimal:source/as-we-may-think&quot;, &quot;type&quot;: &quot;derived_from&quot;, &quot;weight&quot;: 5, &quot;visibility&quot;: &quot;primary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;high&quot;, &quot;tumbler&quot;: &quot;example.minimal:source/as-we-may-think@git:8e47e70:examples/minimal-substrate/nodes/source-as-we-may-think.json#fragment/0004@sha256:example-as-we-may-think-fragment-0004&quot;, &quot;summary&quot;: &quot;The fragment node is derived from a stable addressable portion of the source node.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/essay-transcludes-fragment&quot;, &quot;source&quot;: &quot;example.minimal:essay/relationship-navigation-intro&quot;, &quot;target&quot;: &quot;example.minimal:fragment/as-we-may-think-0004&quot;, &quot;type&quot;: &quot;transcludes&quot;, &quot;weight&quot;: 5, &quot;visibility&quot;: &quot;primary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;high&quot;, &quot;tumbler&quot;: &quot;example.minimal:source/as-we-may-think@git:8e47e70:examples/minimal-substrate/nodes/source-as-we-may-think.json#fragment/0004@sha256:example-as-we-may-think-fragment-0004&quot;, &quot;summary&quot;: &quot;The essay includes the source fragment by stable reference instead of duplicating it.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/question-raises-gap&quot;, &quot;source&quot;: &quot;example.minimal:question/why-relationships-matter&quot;, &quot;target&quot;: &quot;example.minimal:knowledge_gap/missing-relationship-evidence&quot;, &quot;type&quot;: &quot;raises&quot;, &quot;weight&quot;: 4, &quot;visibility&quot;: &quot;primary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;curatorial&quot;, &quot;summary&quot;: &quot;The question makes a missing-evidence gap explicit instead of leaving it implicit.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/gap-requires-source&quot;, &quot;source&quot;: &quot;example.minimal:knowledge_gap/missing-relationship-evidence&quot;, &quot;target&quot;: &quot;example.minimal:source/as-we-may-think&quot;, &quot;type&quot;: &quot;requires_source&quot;, &quot;weight&quot;: 4, &quot;visibility&quot;: &quot;primary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;curatorial&quot;, &quot;summary&quot;: &quot;The knowledge gap points to source evidence that may help resolve it.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/question-asked-in-communication&quot;, &quot;source&quot;: &quot;example.minimal:question/why-relationships-matter&quot;, &quot;target&quot;: &quot;example.minimal:communication/minimal-substrate-discussion&quot;, &quot;type&quot;: &quot;asked_in&quot;, &quot;weight&quot;: 4, &quot;visibility&quot;: &quot;primary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;high&quot;, &quot;summary&quot;: &quot;The question is modeled as being asked inside a communication context.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/response-answers-question&quot;, &quot;source&quot;: &quot;example.minimal:response/relationships-preserve-context&quot;, &quot;target&quot;: &quot;example.minimal:question/why-relationships-matter&quot;, &quot;type&quot;: &quot;answers&quot;, &quot;weight&quot;: 5, &quot;visibility&quot;: &quot;primary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;interpretive&quot;, &quot;summary&quot;: &quot;The response answers the question by connecting relationship structure to preserved context.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/response-answered-in-communication&quot;, &quot;source&quot;: &quot;example.minimal:response/relationships-preserve-context&quot;, &quot;target&quot;: &quot;example.minimal:communication/minimal-substrate-discussion&quot;, &quot;type&quot;: &quot;answered_in&quot;, &quot;weight&quot;: 4, &quot;visibility&quot;: &quot;primary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;high&quot;, &quot;summary&quot;: &quot;The response belongs to the same communication context as the question.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/response-supports-claim&quot;, &quot;source&quot;: &quot;example.minimal:response/relationships-preserve-context&quot;, &quot;target&quot;: &quot;example.minimal:claim/substrate-is-structure&quot;, &quot;type&quot;: &quot;supports&quot;, &quot;weight&quot;: 4, &quot;visibility&quot;: &quot;primary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-01-01T00:00:00Z&quot;, &quot;confidence&quot;: &quot;interpretive&quot;, &quot;summary&quot;: &quot;The response supports the existing claim that substrate structure changes epistemic capability.&quot; }, { &quot;id&quot;: &quot;example.minimal:rel/substrate-has-primary-media&quot;, &quot;source&quot;: &quot;example.minimal:concept/knowledge-substrate&quot;, &quot;target&quot;: &quot;example.minimal:media/xananode-icon&quot;, &quot;type&quot;: &quot;has_primary_media&quot;, &quot;weight&quot;: 5, &quot;visibility&quot;: &quot;primary&quot;, &quot;asserted_by&quot;: &quot;example.minimal:person/example-maintainer&quot;, &quot;asserted_at&quot;: &quot;2026-06-19T00:00:00Z&quot;, &quot;confidence&quot;: &quot;high&quot;, &quot;summary&quot;: &quot;The minimal substrate uses the canonical XanaNode icon as its primary branding media.&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-relationships.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/relationships.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-relationships.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-ro-crate-metadata.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-ro-crate-metadata.json",
      "title": "Examples / Minimal Substrate / RO-Crate Metadata",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The RO-Crate companion metadata for the minimal substrate example.",
      "content": "{\n  \"@context\": [\n    \"https://w3id.org/ro/crate/1.1/context\",\n    \"../../contexts/xananode.context.jsonld\"\n  ],\n  \"@graph\": [\n    {\n      \"@id\": \"ro-crate-metadata.json\",\n      \"@type\": \"CreativeWork\",\n      \"about\": {\n        \"@id\": \"./\"\n      }\n    },\n    {\n      \"@id\": \"./\",\n      \"@type\": \"Dataset\",\n      \"name\": \"Minimal XanaNode Substrate\",\n      \"license\": \"CC0-1.0\",\n      \"hasPart\": [\n        {\n          \"@id\": \"substrate.json\"\n        },\n        {\n          \"@id\": \"relationships.json\"\n        },\n        {\n          \"@id\": \"nodes/claim-substrate-structure.json\"\n        },\n        {\n          \"@id\": \"nodes/fragment-as-we-may-think-0004.json\"\n        }\n      ]\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;@context&quot;: [ &quot;https://w3id.org/ro/crate/1.1/context&quot;, &quot;../../contexts/xananode.context.jsonld&quot; ], &quot;@graph&quot;: [ { &quot;@id&quot;: &quot;ro-crate-metadata.json&quot;, &quot;@type&quot;: &quot;CreativeWork&quot;, &quot;about&quot;: { &quot;@id&quot;: &quot;./&quot; } }, { &quot;@id&quot;: &quot;./&quot;, &quot;@type&quot;: &quot;Dataset&quot;, &quot;name&quot;: &quot;Minimal XanaNode Substrate&quot;, &quot;license&quot;: &quot;CC0-1.0&quot;, &quot;hasPart&quot;: [ { &quot;@id&quot;: &quot;substrate.json&quot; }, { &quot;@id&quot;: &quot;relationships.json&quot; }, { &quot;@id&quot;: &quot;nodes/claim-substrate-structure.json&quot; }, { &quot;@id&quot;: &quot;nodes/fragment-as-we-may-think-0004.json&quot; } ] } ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-ro-crate-metadata.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/ro-crate-metadata.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-ro-crate-metadata.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-substrate.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-substrate.json",
      "title": "Examples / Minimal Substrate / Substrate",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The substrate manifest for the minimal substrate example.",
      "content": "{\n  \"id\": \"example.minimal\",\n  \"name\": \"Minimal XanaNode Substrate\",\n  \"description\": \"A tiny but complete XanaNode substrate showing that every meaningful node is connected through typed relationships, not only by a trail.\",\n  \"version\": \"0.2.0\",\n  \"namespace\": \"example.minimal\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/kingc95/xananode.git\",\n    \"default_branch\": \"main\",\n    \"path\": \"examples/minimal-substrate\"\n  },\n  \"federation\": {\n    \"feed\": \"https://example.com/xananode/minimal/feed.json\",\n    \"merge_reports\": \"https://example.com/xananode/minimal/merge-reports/\"\n  },\n  \"trust\": {\n    \"signed\": false,\n    \"trust_scope\": [\n      \"local_substrate\",\n      \"assertion\"\n    ]\n  },\n  \"schema_version\": \"xananode-core@0.5.0\",\n  \"license\": \"CC0-1.0\",\n  \"branding\": {\n    \"brand_name\": \"XanaNode\",\n    \"tagline\": \"Relationships preserve knowledge\",\n    \"description\": \"Canonical XanaNode protocol branding used by protocol examples and downstream project tools.\",\n    \"primary_media\": \"example.minimal:media/xananode-icon\",\n    \"logo_media\": \"example.minimal:media/xananode-icon\",\n    \"icon_media\": \"example.minimal:media/xananode-icon\",\n    \"primary_color\": \"#55D6BE\",\n    \"accent_color\": \"#FF8C00\",\n    \"background_color\": \"#05070A\",\n    \"text_color\": \"#F8FAFC\",\n    \"source_node\": \"example.minimal:media/xananode-icon\",\n    \"rights_status\": \"trademarked - see TRADEMARK.md for permissions and reuse restrictions\",\n    \"updated_at\": \"2026-06-19T00:00:00Z\",\n    \"reason\": \"Protocol branding is modeled as substrate metadata and media so changes to project identity can be preserved as knowledge.\"\n  },\n  \"maintainers\": [\n    {\n      \"name\": \"Example Maintainer\",\n      \"url\": \"https://example.com\"\n    }\n  ],\n  \"imports\": [\n    \"xananode:core\"\n  ]\n}\n",
      "html": "<p>{ &quot;id&quot;: &quot;example.minimal&quot;, &quot;name&quot;: &quot;Minimal XanaNode Substrate&quot;, &quot;description&quot;: &quot;A tiny but complete XanaNode substrate showing that every meaningful node is connected through typed relationships, not only by a trail.&quot;, &quot;version&quot;: &quot;0.2.0&quot;, &quot;namespace&quot;: &quot;example.minimal&quot;, &quot;repository&quot;: { &quot;type&quot;: &quot;git&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/xananode.git&quot;, &quot;default_branch&quot;: &quot;main&quot;, &quot;path&quot;: &quot;examples/minimal-substrate&quot; }, &quot;federation&quot;: { &quot;feed&quot;: &quot;https://example.com/xananode/minimal/feed.json&quot;, &quot;merge_reports&quot;: &quot;https://example.com/xananode/minimal/merge-reports/&quot; }, &quot;trust&quot;: { &quot;signed&quot;: false, &quot;trust_scope&quot;: [ &quot;local_substrate&quot;, &quot;assertion&quot; ] }, &quot;schema_version&quot;: &quot;xananode-core@0.5.0&quot;, &quot;license&quot;: &quot;CC0-1.0&quot;, &quot;branding&quot;: { &quot;brand_name&quot;: &quot;XanaNode&quot;, &quot;tagline&quot;: &quot;Relationships preserve knowledge&quot;, &quot;description&quot;: &quot;Canonical XanaNode protocol branding used by protocol examples and downstream project tools.&quot;, &quot;primary_media&quot;: &quot;example.minimal:media/xananode-icon&quot;, &quot;logo_media&quot;: &quot;example.minimal:media/xananode-icon&quot;, &quot;icon_media&quot;: &quot;example.minimal:media/xananode-icon&quot;, &quot;primary_color&quot;: &quot;#55D6BE&quot;, &quot;accent_color&quot;: &quot;#FF8C00&quot;, &quot;background_color&quot;: &quot;#05070A&quot;, &quot;text_color&quot;: &quot;#F8FAFC&quot;, &quot;source_node&quot;: &quot;example.minimal:media/xananode-icon&quot;, &quot;rights_status&quot;: &quot;trademarked - see TRADEMARK.md for permissions and reuse restrictions&quot;, &quot;updated_at&quot;: &quot;2026-06-19T00:00:00Z&quot;, &quot;reason&quot;: &quot;Protocol branding is modeled as substrate metadata and media so changes to project identity can be preserved as knowledge.&quot; }, &quot;maintainers&quot;: [ { &quot;name&quot;: &quot;Example Maintainer&quot;, &quot;url&quot;: &quot;https://example.com&quot; } ], &quot;imports&quot;: [ &quot;xananode:core&quot; ] }</p>",
      "url": "/schema/protocol-artifact-examples-minimal-substrate-substrate.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/substrate.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-examples-minimal-substrate-substrate.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-governance",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-governance",
      "title": "Protocol Governance",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The governance documents that define how the protocol evolves and how disputes, extensions, and versioning are handled.",
      "content": "The governance documents that define how the protocol evolves and how disputes, extensions, and versioning are handled.",
      "html": "<p>The governance documents that define how the protocol evolves and how disputes, extensions, and versioning are handled.</p>",
      "url": "/schema/protocol-artifact-governance/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/governance/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-governance.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-proposals",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-proposals",
      "title": "Protocol Proposals",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The proposal records for protocol changes, experiments, and accepted design decisions.",
      "content": "The proposal records for protocol changes, experiments, and accepted design decisions.",
      "html": "<p>The proposal records for protocol changes, experiments, and accepted design decisions.</p>",
      "url": "/schema/protocol-artifact-proposals/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/proposals/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-proposals.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-registry",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-registry",
      "title": "Protocol Registry",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The registry artifacts that list namespaces, canonical schemas, federation targets, and known implementations.",
      "content": "The registry artifacts that list namespaces, canonical schemas, federation targets, and known implementations.",
      "html": "<p>The registry artifacts that list namespaces, canonical schemas, federation targets, and known implementations.</p>",
      "url": "/schema/protocol-artifact-registry/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/registry/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-registry.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-registry-canonical-schemas.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-registry-canonical-schemas.json",
      "title": "Registry / Canonical Schemas",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A registry artifact covering Canonical Schemas.",
      "content": "{\n  \"schemas\": [\n    {\n      \"id\": \"xananode-node-types\",\n      \"version\": \"0.3.0\",\n      \"path\": \"../schemas/xananode-node-types.v0.3.0.json\",\n      \"schema\": \"../schemas/xananode-node-types.schema.v0.3.0.json\"\n    },\n    {\n      \"id\": \"xananode-relationship-types\",\n      \"version\": \"0.5.0\",\n      \"path\": \"../schemas/xananode-relationship-types.v0.5.0.json\",\n      \"schema\": \"../schemas/xananode-relationship-types.schema.v0.5.0.json\"\n    },\n    {\n      \"id\": \"substrate-manifest\",\n      \"version\": \"0.1.0\",\n      \"schema\": \"../schemas/substrate-manifest.schema.json\"\n    },\n    {\n      \"id\": \"substrate-node\",\n      \"version\": \"0.1.0\",\n      \"schema\": \"../schemas/substrate-node.schema.json\"\n    },\n    {\n      \"id\": \"substrate-relationships\",\n      \"version\": \"0.1.0\",\n      \"schema\": \"../schemas/substrate-relationships.schema.json\"\n    },\n    {\n      \"id\": \"xananode-property-registry\",\n      \"version\": \"0.1.0\",\n      \"path\": \"../schemas/xananode-property-registry.v0.1.0.json\",\n      \"schema\": \"../schemas/property-registry.schema.json\"\n    },\n    {\n      \"id\": \"merge-report\",\n      \"version\": \"0.1.0\",\n      \"schema\": \"../schemas/merge-report.schema.json\"\n    },\n    {\n      \"id\": \"compatibility-report\",\n      \"version\": \"0.1.0\",\n      \"schema\": \"../schemas/compatibility-report.schema.json\"\n    },\n    {\n      \"id\": \"substrate-diff\",\n      \"version\": \"0.1.0\",\n      \"schema\": \"../schemas/substrate-diff.schema.json\"\n    },\n    {\n      \"id\": \"author-profile\",\n      \"version\": \"0.1.0\",\n      \"schema\": \"../schemas/author-profile.schema.json\"\n    },\n    {\n      \"id\": \"nanopublication\",\n      \"version\": \"0.1.0\",\n      \"schema\": \"../schemas/nanopublication.schema.json\"\n    },\n    {\n      \"id\": \"ro-crate-metadata\",\n      \"version\": \"0.1.0\",\n      \"schema\": \"../schemas/ro-crate-metadata.schema.json\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;schemas&quot;: [ { &quot;id&quot;: &quot;xananode-node-types&quot;, &quot;version&quot;: &quot;0.3.0&quot;, &quot;path&quot;: &quot;../schemas/xananode-node-types.v0.3.0.json&quot;, &quot;schema&quot;: &quot;../schemas/xananode-node-types.schema.v0.3.0.json&quot; }, { &quot;id&quot;: &quot;xananode-relationship-types&quot;, &quot;version&quot;: &quot;0.5.0&quot;, &quot;path&quot;: &quot;../schemas/xananode-relationship-types.v0.5.0.json&quot;, &quot;schema&quot;: &quot;../schemas/xananode-relationship-types.schema.v0.5.0.json&quot; }, { &quot;id&quot;: &quot;substrate-manifest&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;schema&quot;: &quot;../schemas/substrate-manifest.schema.json&quot; }, { &quot;id&quot;: &quot;substrate-node&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;schema&quot;: &quot;../schemas/substrate-node.schema.json&quot; }, { &quot;id&quot;: &quot;substrate-relationships&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;schema&quot;: &quot;../schemas/substrate-relationships.schema.json&quot; }, { &quot;id&quot;: &quot;xananode-property-registry&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;path&quot;: &quot;../schemas/xananode-property-registry.v0.1.0.json&quot;, &quot;schema&quot;: &quot;../schemas/property-registry.schema.json&quot; }, { &quot;id&quot;: &quot;merge-report&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;schema&quot;: &quot;../schemas/merge-report.schema.json&quot; }, { &quot;id&quot;: &quot;compatibility-report&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;schema&quot;: &quot;../schemas/compatibility-report.schema.json&quot; }, { &quot;id&quot;: &quot;substrate-diff&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;schema&quot;: &quot;../schemas/substrate-diff.schema.json&quot; }, { &quot;id&quot;: &quot;author-profile&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;schema&quot;: &quot;../schemas/author-profile.schema.json&quot; }, { &quot;id&quot;: &quot;nanopublication&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;schema&quot;: &quot;../schemas/nanopublication.schema.json&quot; }, { &quot;id&quot;: &quot;ro-crate-metadata&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;schema&quot;: &quot;../schemas/ro-crate-metadata.schema.json&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-registry-canonical-schemas.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/registry/canonical-schemas.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-registry-canonical-schemas.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-registry-federation-targets.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-registry-federation-targets.json",
      "title": "Registry / Federation Targets",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A registry artifact covering Federation Targets.",
      "content": "{\n  \"$schema\": \"./federation-targets.schema.json\",\n  \"federation_targets\": [\n    {\n      \"id\": \"xananode.protocol\",\n      \"name\": \"XanaNode Protocol Substrate\",\n      \"namespace\": \"xananode.protocol\",\n      \"description\": \"A substrate source built directly from the XanaNode Protocol repository, preserving the protocol's schemas, registries, specs, governance artifacts, and canonical documents while carrying lower-level repository files as attached assets when they do not deserve independent node status.\",\n      \"status\": \"canonical\",\n      \"repository\": {\n        \"type\": \"git\",\n        \"url\": \"https://github.com/kingc95/XanaNode-Protocol.git\",\n        \"default_branch\": \"main\",\n        \"substrate_path\": \"substrate-source\"\n      },\n      \"recommended_mode\": \"mounted\",\n      \"licenses\": [\"CC-BY-4.0\", \"Apache-2.0\"],\n      \"homepage\": \"https://xananode.com/\"\n    },\n    {\n      \"id\": \"xananode.canonical\",\n      \"name\": \"XanaNode Canonical Substrate\",\n      \"namespace\": \"xananode.canonical\",\n      \"description\": \"The canonical XanaNode substrate for protocol vocabulary, project identity, governance, software stack records, raw source snapshots, branding, and self-referential examples.\",\n      \"status\": \"canonical\",\n      \"repository\": {\n        \"type\": \"git\",\n        \"url\": \"https://github.com/kingc95/XanaNode-Canonical-Substrate.git\",\n        \"default_branch\": \"main\"\n      },\n      \"recommended_mode\": \"mounted\",\n      \"licenses\": [\"CC-BY-4.0\", \"Apache-2.0\"],\n      \"homepage\": \"https://xananode.com/\"\n    },\n    {\n      \"id\": \"xananode.core\",\n      \"name\": \"XanaNode Core SDK Substrate\",\n      \"namespace\": \"xananode.core\",\n      \"description\": \"A substrate source built directly from the XanaNode Core SDK repository, preserving its implementation identity, schemas, registries, templates, executable-contract artifacts, and key documents while carrying lower-level repository files as attached assets unless they have independent semantic weight.\",\n      \"status\": \"official\",\n      \"repository\": {\n        \"type\": \"git\",\n        \"url\": \"https://github.com/kingc95/XanaNode-Core-SDK.git\",\n        \"default_branch\": \"main\",\n        \"substrate_path\": \"substrate-source\"\n      },\n      \"recommended_mode\": \"mounted\",\n      \"licenses\": [\"Apache-2.0\"],\n      \"homepage\": \"https://xananode.com/\"\n    },\n    {\n      \"id\": \"xananode.workspace\",\n      \"name\": \"XanaNode Workspace Substrate\",\n      \"namespace\": \"xananode.workspace\",\n      \"description\": \"A substrate source built directly from the XanaNode Workspace repository, preserving the workspace engine, CLI surface, templates, packaged executable artifacts, and key documents while carrying lower-level repository files as attached assets unless they merit their own nodes.\",\n      \"status\": \"official\",\n      \"repository\": {\n        \"type\": \"git\",\n        \"url\": \"https://github.com/kingc95/XanaNode-Workspace.git\",\n        \"default_branch\": \"main\",\n        \"substrate_path\": \"substrate-source\"\n      },\n      \"recommended_mode\": \"mounted\",\n      \"licenses\": [\"Apache-2.0\"],\n      \"homepage\": \"https://xananode.com/\"\n    },\n    {\n      \"id\": \"xananode.studio\",\n      \"name\": \"XanaNode Studio Substrate\",\n      \"namespace\": \"xananode.studio\",\n      \"description\": \"A substrate source built directly from the XanaNode Studio repository, preserving the Studio application identity, major authoring artifacts, and key documents while carrying lower-level implementation files as attached assets unless they are independently citable or governable.\",\n      \"status\": \"official\",\n      \"repository\": {\n        \"type\": \"git\",\n        \"url\": \"https://github.com/kingc95/XanaNode-Studio.git\",\n        \"default_branch\": \"main\",\n        \"substrate_path\": \"substrate-source\"\n      },\n      \"recommended_mode\": \"mounted\",\n      \"licenses\": [\"Apache-2.0\"],\n      \"homepage\": \"https://xananode.com/\"\n    },\n    {\n      \"id\": \"xananode.mobile\",\n      \"name\": \"XanaNode Mobile Substrate\",\n      \"namespace\": \"xananode.mobile\",\n      \"description\": \"A substrate source built directly from the XanaNode Mobile repository, preserving the mobile application's identity, capture workflows, and key documents while carrying lower-level implementation files as attached assets unless they have independent semantic weight.\",\n      \"status\": \"official\",\n      \"repository\": {\n        \"type\": \"git\",\n        \"url\": \"https://github.com/kingc95/XanaNode-Mobile.git\",\n        \"default_branch\": \"main\",\n        \"substrate_path\": \"substrate-source\"\n      },\n      \"recommended_mode\": \"mounted\",\n      \"licenses\": [\"Apache-2.0\"],\n      \"homepage\": \"https://xananode.com/\"\n    },\n    {\n      \"id\": \"xananode.hugo\",\n      \"name\": \"XanaNode Hugo Theme Substrate\",\n      \"namespace\": \"xananode.hugo\",\n      \"description\": \"A substrate source built directly from the XanaNode Hugo repository, preserving the Hugo projection layer's identity, projection-facing documents, and key theme artifacts while carrying lower-level implementation files as attached assets unless they deserve their own nodes.\",\n      \"status\": \"official\",\n      \"repository\": {\n        \"type\": \"git\",\n        \"url\": \"https://github.com/kingc95/XanaNode-Hugo.git\",\n        \"default_branch\": \"main\",\n        \"substrate_path\": \"substrate-source\"\n      },\n      \"recommended_mode\": \"mounted\",\n      \"licenses\": [\"Apache-2.0\"],\n      \"homepage\": \"https://xananode.com/\"\n    },\n    {\n      \"id\": \"xananode.alphabet\",\n      \"name\": \"XanaNode Alphabet Substrate\",\n      \"namespace\": \"xananode.alphabet\",\n      \"description\": \"A deliberately small example substrate with a start trail, A-Z letter nodes, typed relationships, and bundled media assets for every letter.\",\n      \"status\": \"example\",\n      \"repository\": {\n        \"type\": \"git\",\n        \"url\": \"https://github.com/kingc95/XanaNode-Alphabet-Substrate.git\",\n        \"default_branch\": \"main\"\n      },\n      \"recommended_mode\": \"mounted\",\n      \"licenses\": [\"CC0\"],\n      \"homepage\": \"https://xananode.com/\"\n    },\n    {\n      \"id\": \"xananode.lineage\",\n      \"name\": \"XanaNode Lost Lineage Substrate\",\n      \"namespace\": \"xananode.lineage\",\n      \"description\": \"A lineage substrate for the historical and conceptual path into XanaNode.\",\n      \"status\": \"community\",\n      \"repository\": {\n        \"type\": \"git\",\n        \"url\": \"https://github.com/kingc95/XanaNode-Core-SDK.git\",\n        \"default_branch\": \"main\",\n        \"substrate_path\": \"packs/xananode-lineage\"\n      },\n      \"recommended_mode\": \"mounted\",\n      \"licenses\": [\"CC-BY-4.0\"],\n      \"homepage\": \"https://xananode.com/\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;./federation-targets.schema.json&quot;, &quot;federation_targets&quot;: [ { &quot;id&quot;: &quot;xananode.protocol&quot;, &quot;name&quot;: &quot;XanaNode Protocol Substrate&quot;, &quot;namespace&quot;: &quot;xananode.protocol&quot;, &quot;description&quot;: &quot;A substrate source built directly from the XanaNode Protocol repository, preserving the protocol&#39;s schemas, registries, specs, governance artifacts, and canonical documents while carrying lower-level repository files as attached assets when they do not deserve independent node status.&quot;, &quot;status&quot;: &quot;canonical&quot;, &quot;repository&quot;: { &quot;type&quot;: &quot;git&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/XanaNode-Protocol.git&quot;, &quot;default_branch&quot;: &quot;main&quot;, &quot;substrate_path&quot;: &quot;substrate-source&quot; }, &quot;recommended_mode&quot;: &quot;mounted&quot;, &quot;licenses&quot;: [&quot;CC-BY-4.0&quot;, &quot;Apache-2.0&quot;], &quot;homepage&quot;: &quot;https://xananode.com/&quot; }, { &quot;id&quot;: &quot;xananode.canonical&quot;, &quot;name&quot;: &quot;XanaNode Canonical Substrate&quot;, &quot;namespace&quot;: &quot;xananode.canonical&quot;, &quot;description&quot;: &quot;The canonical XanaNode substrate for protocol vocabulary, project identity, governance, software stack records, raw source snapshots, branding, and self-referential examples.&quot;, &quot;status&quot;: &quot;canonical&quot;, &quot;repository&quot;: { &quot;type&quot;: &quot;git&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/XanaNode-Canonical-Substrate.git&quot;, &quot;default_branch&quot;: &quot;main&quot; }, &quot;recommended_mode&quot;: &quot;mounted&quot;, &quot;licenses&quot;: [&quot;CC-BY-4.0&quot;, &quot;Apache-2.0&quot;], &quot;homepage&quot;: &quot;https://xananode.com/&quot; }, { &quot;id&quot;: &quot;xananode.core&quot;, &quot;name&quot;: &quot;XanaNode Core SDK Substrate&quot;, &quot;namespace&quot;: &quot;xananode.core&quot;, &quot;description&quot;: &quot;A substrate source built directly from the XanaNode Core SDK repository, preserving its implementation identity, schemas, registries, templates, executable-contract artifacts, and key documents while carrying lower-level repository files as attached assets unless they have independent semantic weight.&quot;, &quot;status&quot;: &quot;official&quot;, &quot;repository&quot;: { &quot;type&quot;: &quot;git&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/XanaNode-Core-SDK.git&quot;, &quot;default_branch&quot;: &quot;main&quot;, &quot;substrate_path&quot;: &quot;substrate-source&quot; }, &quot;recommended_mode&quot;: &quot;mounted&quot;, &quot;licenses&quot;: [&quot;Apache-2.0&quot;], &quot;homepage&quot;: &quot;https://xananode.com/&quot; }, { &quot;id&quot;: &quot;xananode.workspace&quot;, &quot;name&quot;: &quot;XanaNode Workspace Substrate&quot;, &quot;namespace&quot;: &quot;xananode.workspace&quot;, &quot;description&quot;: &quot;A substrate source built directly from the XanaNode Workspace repository, preserving the workspace engine, CLI surface, templates, packaged executable artifacts, and key documents while carrying lower-level repository files as attached assets unless they merit their own nodes.&quot;, &quot;status&quot;: &quot;official&quot;, &quot;repository&quot;: { &quot;type&quot;: &quot;git&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/XanaNode-Workspace.git&quot;, &quot;default_branch&quot;: &quot;main&quot;, &quot;substrate_path&quot;: &quot;substrate-source&quot; }, &quot;recommended_mode&quot;: &quot;mounted&quot;, &quot;licenses&quot;: [&quot;Apache-2.0&quot;], &quot;homepage&quot;: &quot;https://xananode.com/&quot; }, { &quot;id&quot;: &quot;xananode.studio&quot;, &quot;name&quot;: &quot;XanaNode Studio Substrate&quot;, &quot;namespace&quot;: &quot;xananode.studio&quot;, &quot;description&quot;: &quot;A substrate source built directly from the XanaNode Studio repository, preserving the Studio application identity, major authoring artifacts, and key documents while carrying lower-level implementation files as attached assets unless they are independently citable or governable.&quot;, &quot;status&quot;: &quot;official&quot;, &quot;repository&quot;: { &quot;type&quot;: &quot;git&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/XanaNode-Studio.git&quot;, &quot;default_branch&quot;: &quot;main&quot;, &quot;substrate_path&quot;: &quot;substrate-source&quot; }, &quot;recommended_mode&quot;: &quot;mounted&quot;, &quot;licenses&quot;: [&quot;Apache-2.0&quot;], &quot;homepage&quot;: &quot;https://xananode.com/&quot; }, { &quot;id&quot;: &quot;xananode.mobile&quot;, &quot;name&quot;: &quot;XanaNode Mobile Substrate&quot;, &quot;namespace&quot;: &quot;xananode.mobile&quot;, &quot;description&quot;: &quot;A substrate source built directly from the XanaNode Mobile repository, preserving the mobile application&#39;s identity, capture workflows, and key documents while carrying lower-level implementation files as attached assets unless they have independent semantic weight.&quot;, &quot;status&quot;: &quot;official&quot;, &quot;repository&quot;: { &quot;type&quot;: &quot;git&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/XanaNode-Mobile.git&quot;, &quot;default_branch&quot;: &quot;main&quot;, &quot;substrate_path&quot;: &quot;substrate-source&quot; }, &quot;recommended_mode&quot;: &quot;mounted&quot;, &quot;licenses&quot;: [&quot;Apache-2.0&quot;], &quot;homepage&quot;: &quot;https://xananode.com/&quot; }, { &quot;id&quot;: &quot;xananode.hugo&quot;, &quot;name&quot;: &quot;XanaNode Hugo Theme Substrate&quot;, &quot;namespace&quot;: &quot;xananode.hugo&quot;, &quot;description&quot;: &quot;A substrate source built directly from the XanaNode Hugo repository, preserving the Hugo projection layer&#39;s identity, projection-facing documents, and key theme artifacts while carrying lower-level implementation files as attached assets unless they deserve their own nodes.&quot;, &quot;status&quot;: &quot;official&quot;, &quot;repository&quot;: { &quot;type&quot;: &quot;git&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/XanaNode-Hugo.git&quot;, &quot;default_branch&quot;: &quot;main&quot;, &quot;substrate_path&quot;: &quot;substrate-source&quot; }, &quot;recommended_mode&quot;: &quot;mounted&quot;, &quot;licenses&quot;: [&quot;Apache-2.0&quot;], &quot;homepage&quot;: &quot;https://xananode.com/&quot; }, { &quot;id&quot;: &quot;xananode.alphabet&quot;, &quot;name&quot;: &quot;XanaNode Alphabet Substrate&quot;, &quot;namespace&quot;: &quot;xananode.alphabet&quot;, &quot;description&quot;: &quot;A deliberately small example substrate with a start trail, A-Z letter nodes, typed relationships, and bundled media assets for every letter.&quot;, &quot;status&quot;: &quot;example&quot;, &quot;repository&quot;: { &quot;type&quot;: &quot;git&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/XanaNode-Alphabet-Substrate.git&quot;, &quot;default_branch&quot;: &quot;main&quot; }, &quot;recommended_mode&quot;: &quot;mounted&quot;, &quot;licenses&quot;: [&quot;CC0&quot;], &quot;homepage&quot;: &quot;https://xananode.com/&quot; }, { &quot;id&quot;: &quot;xananode.lineage&quot;, &quot;name&quot;: &quot;XanaNode Lost Lineage Substrate&quot;, &quot;namespace&quot;: &quot;xananode.lineage&quot;, &quot;description&quot;: &quot;A lineage substrate for the historical and conceptual path into XanaNode.&quot;, &quot;status&quot;: &quot;community&quot;, &quot;repository&quot;: { &quot;type&quot;: &quot;git&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/XanaNode-Core-SDK.git&quot;, &quot;default_branch&quot;: &quot;main&quot;, &quot;substrate_path&quot;: &quot;packs/xananode-lineage&quot; }, &quot;recommended_mode&quot;: &quot;mounted&quot;, &quot;licenses&quot;: [&quot;CC-BY-4.0&quot;], &quot;homepage&quot;: &quot;https://xananode.com/&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-registry-federation-targets.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/registry/federation-targets.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-registry-federation-targets.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-registry-federation-targets.schema.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-registry-federation-targets.schema.json",
      "title": "Registry / Federation Targets Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A registry artifact covering Federation Targets Schema.",
      "content": "{\n  \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n  \"$id\": \"https://xananode.org/registry/federation-targets.schema.json\",\n  \"title\": \"XanaNode Federation Targets Registry\",\n  \"type\": \"object\",\n  \"additionalProperties\": false,\n  \"required\": [\"federation_targets\"],\n  \"properties\": {\n    \"federation_targets\": {\n      \"type\": \"array\",\n      \"items\": {\n        \"type\": \"object\",\n        \"additionalProperties\": false,\n        \"required\": [\"id\", \"name\", \"namespace\", \"repository\"],\n        \"properties\": {\n          \"id\": { \"type\": \"string\" },\n          \"name\": { \"type\": \"string\" },\n          \"namespace\": { \"type\": \"string\" },\n          \"description\": { \"type\": \"string\" },\n          \"status\": {\n            \"type\": \"string\",\n            \"enum\": [\"canonical\", \"community\", \"example\", \"experimental\", \"archived\"]\n          },\n          \"repository\": {\n            \"type\": \"object\",\n            \"additionalProperties\": false,\n            \"required\": [\"type\", \"url\", \"default_branch\"],\n            \"properties\": {\n              \"type\": {\n                \"type\": \"string\",\n                \"enum\": [\"git\"]\n              },\n              \"url\": { \"type\": \"string\" },\n              \"default_branch\": { \"type\": \"string\" },\n              \"substrate_path\": { \"type\": \"string\" }\n            }\n          },\n          \"recommended_mode\": {\n            \"type\": \"string\",\n            \"enum\": [\"mounted\", \"imported\", \"merged\", \"absorbed\"]\n          },\n          \"licenses\": {\n            \"type\": \"array\",\n            \"items\": { \"type\": \"string\" }\n          },\n          \"homepage\": { \"type\": \"string\", \"format\": \"uri\" }\n        }\n      }\n    }\n  }\n}\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;, &quot;$id&quot;: &quot;https://xananode.org/registry/federation-targets.schema.json&quot;, &quot;title&quot;: &quot;XanaNode Federation Targets Registry&quot;, &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;federation_targets&quot;], &quot;properties&quot;: { &quot;federation_targets&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;id&quot;, &quot;name&quot;, &quot;namespace&quot;, &quot;repository&quot;], &quot;properties&quot;: { &quot;id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;name&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;namespace&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;description&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;status&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;canonical&quot;, &quot;community&quot;, &quot;example&quot;, &quot;experimental&quot;, &quot;archived&quot;] }, &quot;repository&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;type&quot;, &quot;url&quot;, &quot;default_branch&quot;], &quot;properties&quot;: { &quot;type&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;git&quot;] }, &quot;url&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;default_branch&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;substrate_path&quot;: { &quot;type&quot;: &quot;string&quot; } } }, &quot;recommended_mode&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;mounted&quot;, &quot;imported&quot;, &quot;merged&quot;, &quot;absorbed&quot;] }, &quot;licenses&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } }, &quot;homepage&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;uri&quot; } } } } } }</p>",
      "url": "/schema/protocol-artifact-registry-federation-targets.schema.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/registry/federation-targets.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-registry-federation-targets.schema.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-registry-known-implementations.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-registry-known-implementations.json",
      "title": "Registry / Known Implementations",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A registry artifact covering Known Implementations.",
      "content": "{\n  \"implementations\": [\n    {\n      \"name\": \"XanaNode Protocol\",\n      \"type\": \"protocol\",\n      \"status\": \"active\",\n      \"url\": \"https://github.com/kingc95/XanaNode\",\n      \"repository\": \"kingc95/XanaNode\",\n      \"protocol_role\": \"schema-and-governance-source\",\n      \"description\": \"Canonical XanaNode protocol repository containing schemas, registries, specs, governance, examples, branding, and proposals.\",\n      \"consumes\": [],\n      \"related_protocol_artifacts\": [\n        \"../schemas/\",\n        \"../registry/\",\n        \"../specs/\",\n        \"../governance/\",\n        \"../examples/minimal-substrate/\"\n      ]\n    },\n    {\n      \"name\": \"XanaNode Core SDK\",\n      \"type\": \"core-sdk\",\n      \"status\": \"active\",\n      \"url\": \"https://github.com/kingc95/XanaNode-Core-SDK\",\n      \"repository\": \"kingc95/XanaNode-Core-SDK\",\n      \"protocol_role\": \"reference-core-engine\",\n      \"description\": \"Renderer-independent parser, validator, graph builder, fragment engine, pack composer, suggestion engine, and exporter for XanaNode substrates.\",\n      \"consumes\": [\n        \"protocol schemas\",\n        \"node files\",\n        \"relationship files\",\n        \"substrate manifests\",\n        \"substrate packs\"\n      ],\n      \"related_protocol_artifacts\": [\n        \"../schemas/substrate-manifest.schema.json\",\n        \"../schemas/substrate-node.schema.json\",\n        \"../schemas/substrate-relationships.schema.json\",\n        \"../schemas/xananode-node-types.v0.3.0.json\",\n        \"../schemas/xananode-relationship-types.v0.5.0.json\"\n      ]\n    },\n    {\n      \"name\": \"XanaNode Hugo Theme\",\n      \"type\": \"static-site-reference-implementation\",\n      \"status\": \"active\",\n      \"url\": \"https://github.com/kingc95/xananode-hugo\",\n      \"repository\": \"kingc95/xananode-hugo\",\n      \"protocol_role\": \"reference-renderer\",\n      \"description\": \"Static-site renderer and graph viewer for XanaNode-compatible substrates.\",\n      \"consumes\": [\n        \"substrate manifests\",\n        \"node files\",\n        \"relationship files\",\n        \"schema registries\"\n      ],\n      \"related_protocol_artifacts\": [\n        \"../schemas/substrate-manifest.schema.json\",\n        \"../schemas/substrate-node.schema.json\",\n        \"../schemas/substrate-relationships.schema.json\",\n        \"../examples/minimal-substrate/\"\n      ]\n    },\n    {\n      \"name\": \"XanaNode Workspace\",\n      \"type\": \"workspace-engine\",\n      \"status\": \"active\",\n      \"url\": \"https://github.com/kingc95/XanaNode-Workspace\",\n      \"repository\": \"kingc95/XanaNode-Workspace\",\n      \"protocol_role\": \"local-first-workspace-layer\",\n      \"description\": \"Local-first workspace engine for creating, opening, validating, building, importing, and snapshotting XanaNode substrates.\",\n      \"consumes\": [\n        \"Core SDK APIs\",\n        \"substrate manifests\",\n        \"node files\",\n        \"relationship files\",\n        \"author profiles\"\n      ],\n      \"related_protocol_artifacts\": [\n        \"../schemas/author-profile.schema.json\",\n        \"../schemas/substrate-manifest.schema.json\",\n        \"../schemas/substrate-node.schema.json\"\n      ]\n    },\n    {\n      \"name\": \"XanaNode Studio\",\n      \"type\": \"desktop-authoring-application\",\n      \"status\": \"active\",\n      \"url\": \"https://github.com/kingc95/XanaNode-Studio\",\n      \"repository\": \"kingc95/XanaNode-Studio\",\n      \"protocol_role\": \"desktop-authoring-interface\",\n      \"description\": \"Electron authoring workbench for creating nodes, editing protocol metadata, navigating graph context, and previewing projection layers.\",\n      \"consumes\": [\n        \"Workspace APIs\",\n        \"Core SDK APIs\",\n        \"protocol registries\",\n        \"protocol branding\"\n      ],\n      \"related_protocol_artifacts\": [\n        \"../schemas/xananode-node-types.v0.3.0.json\",\n        \"../schemas/xananode-relationship-types.v0.5.0.json\",\n        \"../media/images/xananode-icon.svg\"\n      ]\n    },\n    {\n      \"name\": \"XanaNode Mobile\",\n      \"type\": \"mobile-capture-companion\",\n      \"status\": \"active\",\n      \"url\": \"https://github.com/kingc95/XanaNode-Mobile\",\n      \"repository\": \"kingc95/XanaNode-Mobile\",\n      \"protocol_role\": \"mobile-capture-interface\",\n      \"description\": \"Android capture companion for quick substrate intake, field notes, media capture, file import, URL import, QR intake, and portable .substrate handoff.\",\n      \"consumes\": [\n        \"Workspace APIs\",\n        \"Core SDK APIs\",\n        \"protocol registries\",\n        \"protocol branding\",\n        \".substrate bundles\"\n      ],\n      \"related_protocol_artifacts\": [\n        \"../schemas/author-profile.schema.json\",\n        \"../schemas/substrate-manifest.schema.json\",\n        \"../schemas/substrate-node.schema.json\",\n        \"../schemas/substrate-relationships.schema.json\",\n        \"../media/images/xananode-icon.svg\"\n      ]\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;implementations&quot;: [ { &quot;name&quot;: &quot;XanaNode Protocol&quot;, &quot;type&quot;: &quot;protocol&quot;, &quot;status&quot;: &quot;active&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/XanaNode&quot;, &quot;repository&quot;: &quot;kingc95/XanaNode&quot;, &quot;protocol_role&quot;: &quot;schema-and-governance-source&quot;, &quot;description&quot;: &quot;Canonical XanaNode protocol repository containing schemas, registries, specs, governance, examples, branding, and proposals.&quot;, &quot;consumes&quot;: [], &quot;related_protocol_artifacts&quot;: [ &quot;../schemas/&quot;, &quot;../registry/&quot;, &quot;../specs/&quot;, &quot;../governance/&quot;, &quot;../examples/minimal-substrate/&quot; ] }, { &quot;name&quot;: &quot;XanaNode Core SDK&quot;, &quot;type&quot;: &quot;core-sdk&quot;, &quot;status&quot;: &quot;active&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/XanaNode-Core-SDK&quot;, &quot;repository&quot;: &quot;kingc95/XanaNode-Core-SDK&quot;, &quot;protocol_role&quot;: &quot;reference-core-engine&quot;, &quot;description&quot;: &quot;Renderer-independent parser, validator, graph builder, fragment engine, pack composer, suggestion engine, and exporter for XanaNode substrates.&quot;, &quot;consumes&quot;: [ &quot;protocol schemas&quot;, &quot;node files&quot;, &quot;relationship files&quot;, &quot;substrate manifests&quot;, &quot;substrate packs&quot; ], &quot;related_protocol_artifacts&quot;: [ &quot;../schemas/substrate-manifest.schema.json&quot;, &quot;../schemas/substrate-node.schema.json&quot;, &quot;../schemas/substrate-relationships.schema.json&quot;, &quot;../schemas/xananode-node-types.v0.3.0.json&quot;, &quot;../schemas/xananode-relationship-types.v0.5.0.json&quot; ] }, { &quot;name&quot;: &quot;XanaNode Hugo Theme&quot;, &quot;type&quot;: &quot;static-site-reference-implementation&quot;, &quot;status&quot;: &quot;active&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/xananode-hugo&quot;, &quot;repository&quot;: &quot;kingc95/xananode-hugo&quot;, &quot;protocol_role&quot;: &quot;reference-renderer&quot;, &quot;description&quot;: &quot;Static-site renderer and graph viewer for XanaNode-compatible substrates.&quot;, &quot;consumes&quot;: [ &quot;substrate manifests&quot;, &quot;node files&quot;, &quot;relationship files&quot;, &quot;schema registries&quot; ], &quot;related_protocol_artifacts&quot;: [ &quot;../schemas/substrate-manifest.schema.json&quot;, &quot;../schemas/substrate-node.schema.json&quot;, &quot;../schemas/substrate-relationships.schema.json&quot;, &quot;../examples/minimal-substrate/&quot; ] }, { &quot;name&quot;: &quot;XanaNode Workspace&quot;, &quot;type&quot;: &quot;workspace-engine&quot;, &quot;status&quot;: &quot;active&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/XanaNode-Workspace&quot;, &quot;repository&quot;: &quot;kingc95/XanaNode-Workspace&quot;, &quot;protocol_role&quot;: &quot;local-first-workspace-layer&quot;, &quot;description&quot;: &quot;Local-first workspace engine for creating, opening, validating, building, importing, and snapshotting XanaNode substrates.&quot;, &quot;consumes&quot;: [ &quot;Core SDK APIs&quot;, &quot;substrate manifests&quot;, &quot;node files&quot;, &quot;relationship files&quot;, &quot;author profiles&quot; ], &quot;related_protocol_artifacts&quot;: [ &quot;../schemas/author-profile.schema.json&quot;, &quot;../schemas/substrate-manifest.schema.json&quot;, &quot;../schemas/substrate-node.schema.json&quot; ] }, { &quot;name&quot;: &quot;XanaNode Studio&quot;, &quot;type&quot;: &quot;desktop-authoring-application&quot;, &quot;status&quot;: &quot;active&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/XanaNode-Studio&quot;, &quot;repository&quot;: &quot;kingc95/XanaNode-Studio&quot;, &quot;protocol_role&quot;: &quot;desktop-authoring-interface&quot;, &quot;description&quot;: &quot;Electron authoring workbench for creating nodes, editing protocol metadata, navigating graph context, and previewing projection layers.&quot;, &quot;consumes&quot;: [ &quot;Workspace APIs&quot;, &quot;Core SDK APIs&quot;, &quot;protocol registries&quot;, &quot;protocol branding&quot; ], &quot;related_protocol_artifacts&quot;: [ &quot;../schemas/xananode-node-types.v0.3.0.json&quot;, &quot;../schemas/xananode-relationship-types.v0.5.0.json&quot;, &quot;../media/images/xananode-icon.svg&quot; ] }, { &quot;name&quot;: &quot;XanaNode Mobile&quot;, &quot;type&quot;: &quot;mobile-capture-companion&quot;, &quot;status&quot;: &quot;active&quot;, &quot;url&quot;: &quot;https://github.com/kingc95/XanaNode-Mobile&quot;, &quot;repository&quot;: &quot;kingc95/XanaNode-Mobile&quot;, &quot;protocol_role&quot;: &quot;mobile-capture-interface&quot;, &quot;description&quot;: &quot;Android capture companion for quick substrate intake, field notes, media capture, file import, URL import, QR intake, and portable .substrate handoff.&quot;, &quot;consumes&quot;: [ &quot;Workspace APIs&quot;, &quot;Core SDK APIs&quot;, &quot;protocol registries&quot;, &quot;protocol branding&quot;, &quot;.substrate bundles&quot; ], &quot;related_protocol_artifacts&quot;: [ &quot;../schemas/author-profile.schema.json&quot;, &quot;../schemas/substrate-manifest.schema.json&quot;, &quot;../schemas/substrate-node.schema.json&quot;, &quot;../schemas/substrate-relationships.schema.json&quot;, &quot;../media/images/xananode-icon.svg&quot; ] } ] }</p>",
      "url": "/schema/protocol-artifact-registry-known-implementations.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/registry/known-implementations.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-registry-known-implementations.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-registry-namespaces.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-registry-namespaces.json",
      "title": "Registry / Namespaces",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "A registry artifact covering Namespaces.",
      "content": "{\n  \"namespaces\": [\n    {\n      \"id\": \"xananode\",\n      \"name\": \"XanaNode Core\",\n      \"description\": \"Canonical namespace for core XanaNode node and relationship types.\",\n      \"schema\": \"../schemas/\"\n    },\n    {\n      \"id\": \"xananode.canonical\",\n      \"name\": \"XanaNode Canonical Substrate Namespace\",\n      \"description\": \"Namespace used by the standalone canonical XanaNode substrate.\",\n      \"federation_target\": \"xananode.canonical\"\n    },\n    {\n      \"id\": \"xananode.alphabet\",\n      \"name\": \"XanaNode Alphabet Example Namespace\",\n      \"description\": \"Namespace used by the tiny alphabet substrate for federation, media, and trail testing.\",\n      \"federation_target\": \"xananode.alphabet\"\n    },\n    {\n      \"id\": \"example.minimal\",\n      \"name\": \"Minimal Example Namespace\",\n      \"description\": \"Namespace used by the minimal example substrate.\",\n      \"example\": \"../examples/minimal-substrate/\"\n    },\n    {\n      \"id\": \"example.researcher_a\",\n      \"name\": \"Federation Example A Namespace\",\n      \"description\": \"Namespace used by the first independently authored federation example substrate.\",\n      \"example\": \"../examples/federation-example/substrate-a/\"\n    },\n    {\n      \"id\": \"example.researcher_b\",\n      \"name\": \"Federation Example B Namespace\",\n      \"description\": \"Namespace used by the second independently authored federation example substrate.\",\n      \"example\": \"../examples/federation-example/substrate-b/\"\n    },\n    {\n      \"id\": \"example.merge\",\n      \"name\": \"Federation Merge Report Example Namespace\",\n      \"description\": \"Namespace used for merge report and mapping records in the federation example.\",\n      \"example\": \"../examples/federation-example/\"\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;namespaces&quot;: [ { &quot;id&quot;: &quot;xananode&quot;, &quot;name&quot;: &quot;XanaNode Core&quot;, &quot;description&quot;: &quot;Canonical namespace for core XanaNode node and relationship types.&quot;, &quot;schema&quot;: &quot;../schemas/&quot; }, { &quot;id&quot;: &quot;xananode.canonical&quot;, &quot;name&quot;: &quot;XanaNode Canonical Substrate Namespace&quot;, &quot;description&quot;: &quot;Namespace used by the standalone canonical XanaNode substrate.&quot;, &quot;federation_target&quot;: &quot;xananode.canonical&quot; }, { &quot;id&quot;: &quot;xananode.alphabet&quot;, &quot;name&quot;: &quot;XanaNode Alphabet Example Namespace&quot;, &quot;description&quot;: &quot;Namespace used by the tiny alphabet substrate for federation, media, and trail testing.&quot;, &quot;federation_target&quot;: &quot;xananode.alphabet&quot; }, { &quot;id&quot;: &quot;example.minimal&quot;, &quot;name&quot;: &quot;Minimal Example Namespace&quot;, &quot;description&quot;: &quot;Namespace used by the minimal example substrate.&quot;, &quot;example&quot;: &quot;../examples/minimal-substrate/&quot; }, { &quot;id&quot;: &quot;example.researcher_a&quot;, &quot;name&quot;: &quot;Federation Example A Namespace&quot;, &quot;description&quot;: &quot;Namespace used by the first independently authored federation example substrate.&quot;, &quot;example&quot;: &quot;../examples/federation-example/substrate-a/&quot; }, { &quot;id&quot;: &quot;example.researcher_b&quot;, &quot;name&quot;: &quot;Federation Example B Namespace&quot;, &quot;description&quot;: &quot;Namespace used by the second independently authored federation example substrate.&quot;, &quot;example&quot;: &quot;../examples/federation-example/substrate-b/&quot; }, { &quot;id&quot;: &quot;example.merge&quot;, &quot;name&quot;: &quot;Federation Merge Report Example Namespace&quot;, &quot;description&quot;: &quot;Namespace used for merge report and mapping records in the federation example.&quot;, &quot;example&quot;: &quot;../examples/federation-example/&quot; } ] }</p>",
      "url": "/schema/protocol-artifact-registry-namespaces.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/registry/namespaces.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-registry-namespaces.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-root",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-root",
      "title": "Protocol Root Files",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The root protocol files shipped with XanaNode, including the main overview and legal policy files.",
      "content": "The root protocol files shipped with XanaNode, including the main overview and legal policy files.",
      "html": "<p>The root protocol files shipped with XanaNode, including the main overview and legal policy files.</p>",
      "url": "/schema/protocol-artifact-root/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-root.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas",
      "title": "Protocol Schemas",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The canonical schemas and machine-readable validation artifacts published by the XanaNode protocol.",
      "content": "The canonical schemas and machine-readable validation artifacts published by the XanaNode protocol.",
      "html": "<p>The canonical schemas and machine-readable validation artifacts published by the XanaNode protocol.</p>",
      "url": "/schema/protocol-artifact-schemas/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-author-profile.schema.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-author-profile.schema.json",
      "title": "Schemas / Author Profile Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for the author profile.",
      "content": "{\n  \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n  \"$id\": \"https://xananode.org/schemas/author-profile.schema.json\",\n  \"title\": \"Author Profile\",\n  \"type\": \"object\",\n  \"additionalProperties\": false,\n  \"required\": [\"id\", \"name\"],\n  \"properties\": {\n    \"id\": { \"type\": \"string\" },\n    \"name\": { \"type\": \"string\" },\n    \"orcid\": { \"type\": \"string\" },\n    \"github\": { \"type\": \"string\" },\n    \"website\": { \"type\": \"string\", \"format\": \"uri\" },\n    \"branding\": {\n      \"$ref\": \"#/$defs/branding\"\n    },\n    \"public_key\": { \"type\": \"string\" },\n    \"default_rights\": { \"type\": \"string\" },\n    \"default_license\": { \"type\": \"string\" },\n    \"default_role\": { \"type\": \"string\" }\n  },\n  \"$defs\": {\n    \"branding\": {\n      \"type\": \"object\",\n      \"description\": \"Portable branding metadata for an author, organization, substrate, pack, or projection. Branding is knowledge provenance, not renderer-only decoration.\",\n      \"additionalProperties\": false,\n      \"properties\": {\n        \"brand_name\": { \"type\": \"string\" },\n        \"tagline\": { \"type\": \"string\" },\n        \"description\": { \"type\": \"string\" },\n        \"primary_media\": { \"type\": \"string\" },\n        \"logo_media\": { \"type\": \"string\" },\n        \"icon_media\": { \"type\": \"string\" },\n        \"primary_color\": {\n          \"type\": \"string\",\n          \"pattern\": \"^#[0-9A-Fa-f]{6}$\"\n        },\n        \"accent_color\": {\n          \"type\": \"string\",\n          \"pattern\": \"^#[0-9A-Fa-f]{6}$\"\n        },\n        \"background_color\": {\n          \"type\": \"string\",\n          \"pattern\": \"^#[0-9A-Fa-f]{6}$\"\n        },\n        \"text_color\": {\n          \"type\": \"string\",\n          \"pattern\": \"^#[0-9A-Fa-f]{6}$\"\n        },\n        \"source_node\": { \"type\": \"string\" },\n        \"rights_status\": { \"type\": \"string\" },\n        \"license\": { \"type\": \"string\" },\n        \"updated_at\": { \"type\": \"string\", \"format\": \"date-time\" },\n        \"reason\": { \"type\": \"string\" }\n      }\n    }\n  }\n}\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;, &quot;$id&quot;: &quot;https://xananode.org/schemas/author-profile.schema.json&quot;, &quot;title&quot;: &quot;Author Profile&quot;, &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;id&quot;, &quot;name&quot;], &quot;properties&quot;: { &quot;id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;name&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;orcid&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;github&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;website&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;uri&quot; }, &quot;branding&quot;: { &quot;$ref&quot;: &quot;#/$defs/branding&quot; }, &quot;public_key&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;default_rights&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;default_license&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;default_role&quot;: { &quot;type&quot;: &quot;string&quot; } }, &quot;$defs&quot;: { &quot;branding&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;description&quot;: &quot;Portable branding metadata for an author, organization, substrate, pack, or projection. Branding is knowledge provenance, not renderer-only decoration.&quot;, &quot;additionalProperties&quot;: false, &quot;properties&quot;: { &quot;brand_name&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;tagline&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;description&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;primary_media&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;logo_media&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;icon_media&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;primary_color&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^#[0-9A-Fa-f]{6}$&quot; }, &quot;accent_color&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^#[0-9A-Fa-f]{6}$&quot; }, &quot;background_color&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^#[0-9A-Fa-f]{6}$&quot; }, &quot;text_color&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^#[0-9A-Fa-f]{6}$&quot; }, &quot;source_node&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;rights_status&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;license&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;updated_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;reason&quot;: { &quot;type&quot;: &quot;string&quot; } } } } }</p>",
      "url": "/schema/protocol-artifact-schemas-author-profile.schema.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/author-profile.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-author-profile.schema.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-compatibility-report.schema.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-compatibility-report.schema.json",
      "title": "Schemas / Compatibility Report Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for the compatibility report.",
      "content": "{\r\n  \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\r\n  \"$id\": \"https://xananode.org/schemas/compatibility-report.schema.json\",\r\n  \"title\": \"Compatibility Report\",\r\n  \"type\": \"object\",\r\n  \"additionalProperties\": false,\r\n  \"required\": [\"status\", \"compatibility_level\"],\n  \"properties\": {\n    \"status\": { \"type\": \"string\" },\n    \"compatibility_level\": {\n      \"type\": \"integer\",\n      \"minimum\": 0,\n      \"maximum\": 5\n    },\n    \"details\": { \"type\": \"string\" }\n  }\n}\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;, &quot;$id&quot;: &quot;https://xananode.org/schemas/compatibility-report.schema.json&quot;, &quot;title&quot;: &quot;Compatibility Report&quot;, &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;status&quot;, &quot;compatibility_level&quot;], &quot;properties&quot;: { &quot;status&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;compatibility_level&quot;: { &quot;type&quot;: &quot;integer&quot;, &quot;minimum&quot;: 0, &quot;maximum&quot;: 5 }, &quot;details&quot;: { &quot;type&quot;: &quot;string&quot; } } }</p>",
      "url": "/schema/protocol-artifact-schemas-compatibility-report.schema.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/compatibility-report.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-compatibility-report.schema.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-merge-report.schema.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-merge-report.schema.json",
      "title": "Schemas / Merge Report Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for the merge report.",
      "content": "{\r\n  \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\r\n  \"$id\": \"https://xananode.org/schemas/merge-report.schema.json\",\r\n  \"title\": \"Merge Report\",\r\n  \"type\": \"object\",\r\n  \"additionalProperties\": false,\r\n  \"required\": [\"status\", \"substrates\"],\r\n  \"properties\": {\r\n    \"status\": { \"type\": \"string\" },\r\n    \"id\": { \"type\": \"string\" },\n    \"generated_at\": { \"type\": \"string\", \"format\": \"date-time\" },\n    \"substrates\": {\n      \"type\": \"array\",\n      \"items\": { \"type\": \"string\" }\n    },\n    \"compatibility_level\": {\n      \"type\": \"integer\",\n      \"minimum\": 0,\n      \"maximum\": 5\n    },\n    \"base\": { \"type\": \"string\" },\n    \"ours\": { \"type\": \"string\" },\n    \"theirs\": { \"type\": \"string\" },\n    \"signature\": { \"type\": \"string\" },\n    \"mappings\": {\n      \"type\": \"array\",\n      \"items\": {\n        \"type\": \"object\",\n        \"additionalProperties\": false,\n        \"required\": [\"id\", \"source\", \"target\", \"type\", \"status\"],\n        \"properties\": {\n          \"id\": { \"type\": \"string\" },\n          \"source\": { \"type\": \"string\" },\n          \"target\": { \"type\": \"string\" },\n          \"type\": { \"type\": \"string\" },\n          \"confidence\": {\n            \"type\": \"number\",\n            \"minimum\": 0,\n            \"maximum\": 1\n          },\n          \"status\": { \"type\": \"string\" },\n          \"preserves_local_nodes\": { \"type\": \"boolean\" },\n          \"creates_relationships\": {\n            \"type\": \"array\",\n            \"items\": { \"type\": \"string\" }\n          },\n          \"rationale\": { \"type\": \"string\" }\n        }\n      }\n    },\n    \"conflicts\": {\n      \"type\": \"array\",\n      \"items\": {\n        \"type\": \"object\",\n        \"additionalProperties\": false,\n        \"required\": [\"id\", \"type\", \"summary\"],\n        \"properties\": {\n          \"id\": { \"type\": \"string\" },\n          \"type\": { \"type\": \"string\" },\n          \"nodes\": {\n            \"type\": \"array\",\n            \"items\": { \"type\": \"string\" }\n          },\n          \"resolution\": { \"type\": \"string\" },\n          \"summary\": { \"type\": \"string\" }\n        }\n      }\n    },\n    \"warnings\": {\n      \"type\": \"array\",\n      \"items\": { \"type\": \"string\" }\n    }\n  }\n}\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;, &quot;$id&quot;: &quot;https://xananode.org/schemas/merge-report.schema.json&quot;, &quot;title&quot;: &quot;Merge Report&quot;, &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;status&quot;, &quot;substrates&quot;], &quot;properties&quot;: { &quot;status&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;generated_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;substrates&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } }, &quot;compatibility_level&quot;: { &quot;type&quot;: &quot;integer&quot;, &quot;minimum&quot;: 0, &quot;maximum&quot;: 5 }, &quot;base&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;ours&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;theirs&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;signature&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;mappings&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;id&quot;, &quot;source&quot;, &quot;target&quot;, &quot;type&quot;, &quot;status&quot;], &quot;properties&quot;: { &quot;id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;source&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;target&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;type&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;confidence&quot;: { &quot;type&quot;: &quot;number&quot;, &quot;minimum&quot;: 0, &quot;maximum&quot;: 1 }, &quot;status&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;preserves_local_nodes&quot;: { &quot;type&quot;: &quot;boolean&quot; }, &quot;creates_relationships&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } }, &quot;rationale&quot;: { &quot;type&quot;: &quot;string&quot; } } } }, &quot;conflicts&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;id&quot;, &quot;type&quot;, &quot;summary&quot;], &quot;properties&quot;: { &quot;id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;type&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;nodes&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } }, &quot;resolution&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;summary&quot;: { &quot;type&quot;: &quot;string&quot; } } } }, &quot;warnings&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } } } }</p>",
      "url": "/schema/protocol-artifact-schemas-merge-report.schema.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/merge-report.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-merge-report.schema.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-namespace.schema.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-namespace.schema.json",
      "title": "Schemas / Namespace Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for the namespace.",
      "content": "{\r\n  \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\r\n  \"$id\": \"https://xananode.org/schemas/namespace.schema.json\",\r\n  \"title\": \"Namespace Descriptor\",\r\n  \"type\": \"object\",\r\n  \"additionalProperties\": false,\r\n  \"required\": [\"prefix\", \"uri\"],\r\n  \"properties\": {\r\n    \"prefix\": { \"type\": \"string\" },\r\n    \"uri\": { \"type\": \"string\", \"format\": \"uri\" },\r\n    \"owner\": { \"type\": \"string\" },\r\n    \"description\": { \"type\": \"string\" }\r\n  }\r\n}\r\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;, &quot;$id&quot;: &quot;https://xananode.org/schemas/namespace.schema.json&quot;, &quot;title&quot;: &quot;Namespace Descriptor&quot;, &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;prefix&quot;, &quot;uri&quot;], &quot;properties&quot;: { &quot;prefix&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;uri&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;uri&quot; }, &quot;owner&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;description&quot;: { &quot;type&quot;: &quot;string&quot; } } }</p>",
      "url": "/schema/protocol-artifact-schemas-namespace.schema.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/namespace.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-namespace.schema.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-nanopublication.schema.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-nanopublication.schema.json",
      "title": "Schemas / Nanopublication Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for the nanopublication.",
      "content": "{\n  \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n  \"$id\": \"https://xananode.org/schemas/nanopublication.schema.json\",\n  \"title\": \"XanaNode Nanopublication Profile\",\n  \"type\": \"object\",\n  \"additionalProperties\": false,\n  \"required\": [\"id\", \"claim\", \"assertion\", \"provenance\", \"publication_info\"],\n  \"properties\": {\n    \"id\": { \"type\": \"string\" },\n    \"claim\": { \"type\": \"string\" },\n    \"assertion\": {\n      \"type\": \"object\",\n      \"additionalProperties\": false,\n      \"required\": [\"summary\"],\n      \"properties\": {\n        \"summary\": { \"type\": \"string\" },\n        \"relationships\": {\n          \"type\": \"array\",\n          \"items\": { \"type\": \"string\" }\n        }\n      }\n    },\n    \"provenance\": {\n      \"type\": \"object\",\n      \"additionalProperties\": false,\n      \"properties\": {\n        \"asserted_by\": { \"type\": \"string\" },\n        \"asserted_at\": { \"type\": \"string\", \"format\": \"date-time\" },\n        \"evidence\": {\n          \"type\": \"array\",\n          \"items\": { \"type\": \"string\" }\n        }\n      }\n    },\n    \"publication_info\": {\n      \"type\": \"object\",\n      \"additionalProperties\": false,\n      \"properties\": {\n        \"published_by\": { \"type\": \"string\" },\n        \"published_at\": { \"type\": \"string\", \"format\": \"date-time\" },\n        \"license\": { \"type\": \"string\" },\n        \"content_id\": { \"type\": \"string\" }\n      }\n    }\n  }\n}\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;, &quot;$id&quot;: &quot;https://xananode.org/schemas/nanopublication.schema.json&quot;, &quot;title&quot;: &quot;XanaNode Nanopublication Profile&quot;, &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;id&quot;, &quot;claim&quot;, &quot;assertion&quot;, &quot;provenance&quot;, &quot;publication_info&quot;], &quot;properties&quot;: { &quot;id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;claim&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;assertion&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;summary&quot;], &quot;properties&quot;: { &quot;summary&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;relationships&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } } } }, &quot;provenance&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;properties&quot;: { &quot;asserted_by&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;asserted_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;evidence&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } } } }, &quot;publication_info&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;properties&quot;: { &quot;published_by&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;published_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;license&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;content_id&quot;: { &quot;type&quot;: &quot;string&quot; } } } } }</p>",
      "url": "/schema/protocol-artifact-schemas-nanopublication.schema.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/nanopublication.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-nanopublication.schema.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-property-registry.schema.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-property-registry.schema.json",
      "title": "Schemas / Property Registry Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for the property registry.",
      "content": "{\n  \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n  \"$id\": \"https://xananode.org/schemas/property-registry.schema.json\",\n  \"title\": \"XanaNode Property Registry\",\n  \"type\": \"object\",\n  \"additionalProperties\": false,\n  \"required\": [\"id\", \"version\", \"property_registry\"],\n  \"properties\": {\n    \"$schema\": { \"type\": \"string\" },\n    \"id\": {\n      \"type\": \"string\",\n      \"pattern\": \"^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:[a-z][a-z0-9_-]*$\"\n    },\n    \"version\": { \"type\": \"string\" },\n    \"description\": { \"type\": \"string\" },\n    \"property_registry\": {\n      \"type\": \"array\",\n      \"items\": {\n        \"type\": \"object\",\n        \"additionalProperties\": false,\n        \"required\": [\"id\", \"label\", \"category\", \"value_schema\"],\n        \"properties\": {\n          \"id\": {\n            \"type\": \"string\",\n            \"pattern\": \"^([a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:)?[a-z][a-z0-9_-]*$\"\n          },\n          \"label\": { \"type\": \"string\" },\n          \"description\": { \"type\": \"string\" },\n          \"category\": {\n            \"type\": \"string\",\n            \"enum\": [\n              \"identity\",\n              \"time\",\n              \"space\",\n              \"quantity\",\n              \"money\",\n              \"classification\",\n              \"reference\",\n              \"epistemology\",\n              \"workflow\",\n              \"attention\",\n              \"communication\"\n            ]\n          },\n          \"aliases\": {\n            \"type\": \"array\",\n            \"items\": { \"type\": \"string\" },\n            \"uniqueItems\": true\n          },\n          \"applies_to\": {\n            \"type\": \"array\",\n            \"items\": { \"type\": \"string\" },\n            \"uniqueItems\": true\n          },\n          \"canonical_unit\": { \"type\": \"string\" },\n          \"unit_system\": {\n            \"type\": \"string\",\n            \"enum\": [\"SI\", \"ISO-4217\", \"ISO-8601\", \"WGS84\", \"none\"]\n          },\n          \"value_schema\": {\n            \"type\": \"object\",\n            \"description\": \"JSON Schema fragment for validating this property value.\"\n          },\n          \"examples\": {\n            \"type\": \"array\",\n            \"items\": true\n          }\n        }\n      }\n    }\n  }\n}\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;, &quot;$id&quot;: &quot;https://xananode.org/schemas/property-registry.schema.json&quot;, &quot;title&quot;: &quot;XanaNode Property Registry&quot;, &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;id&quot;, &quot;version&quot;, &quot;property_registry&quot;], &quot;properties&quot;: { &quot;$schema&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;id&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:[a-z][a-z0-9_-]*$&quot; }, &quot;version&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;description&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;property_registry&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;id&quot;, &quot;label&quot;, &quot;category&quot;, &quot;value_schema&quot;], &quot;properties&quot;: { &quot;id&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^([a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:)?[a-z][a-z0-9_-]*$&quot; }, &quot;label&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;description&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;category&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [ &quot;identity&quot;, &quot;time&quot;, &quot;space&quot;, &quot;quantity&quot;, &quot;money&quot;, &quot;classification&quot;, &quot;reference&quot;, &quot;epistemology&quot;, &quot;workflow&quot;, &quot;attention&quot;, &quot;communication&quot; ] }, &quot;aliases&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;uniqueItems&quot;: true }, &quot;applies_to&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;uniqueItems&quot;: true }, &quot;canonical_unit&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;unit_system&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;SI&quot;, &quot;ISO-4217&quot;, &quot;ISO-8601&quot;, &quot;WGS84&quot;, &quot;none&quot;] }, &quot;value_schema&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;description&quot;: &quot;JSON Schema fragment for validating this property value.&quot; }, &quot;examples&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: true } } } } } }</p>",
      "url": "/schema/protocol-artifact-schemas-property-registry.schema.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/property-registry.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-property-registry.schema.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-ro-crate-metadata.schema.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-ro-crate-metadata.schema.json",
      "title": "Schemas / RO-Crate Metadata Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for the ro crate metadata.",
      "content": "{\n  \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n  \"$id\": \"https://xananode.org/schemas/ro-crate-metadata.schema.json\",\n  \"title\": \"XanaNode RO-Crate Companion Metadata\",\n  \"type\": \"object\",\n  \"additionalProperties\": true,\n  \"required\": [\"@context\", \"@graph\"],\n  \"properties\": {\n    \"@context\": {},\n    \"@graph\": {\n      \"type\": \"array\",\n      \"items\": { \"type\": \"object\" }\n    }\n  }\n}\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;, &quot;$id&quot;: &quot;https://xananode.org/schemas/ro-crate-metadata.schema.json&quot;, &quot;title&quot;: &quot;XanaNode RO-Crate Companion Metadata&quot;, &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: true, &quot;required&quot;: [&quot;@context&quot;, &quot;@graph&quot;], &quot;properties&quot;: { &quot;@context&quot;: {}, &quot;@graph&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot; } } } }</p>",
      "url": "/schema/protocol-artifact-schemas-ro-crate-metadata.schema.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/ro-crate-metadata.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-ro-crate-metadata.schema.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-substrate-diff.schema.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-substrate-diff.schema.json",
      "title": "Schemas / Substrate Diff Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for the substrate diff.",
      "content": "{\n  \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n  \"$id\": \"https://xananode.org/schemas/substrate-diff.schema.json\",\n  \"title\": \"Substrate Diff\",\n  \"type\": \"object\",\n  \"additionalProperties\": false,\n  \"required\": [\"id\", \"base\", \"head\", \"changes\"],\n  \"properties\": {\n    \"id\": { \"type\": \"string\" },\n    \"base\": { \"type\": \"string\" },\n    \"head\": { \"type\": \"string\" },\n    \"generated_at\": { \"type\": \"string\", \"format\": \"date-time\" },\n    \"changes\": {\n      \"type\": \"object\",\n      \"additionalProperties\": false,\n      \"required\": [\"nodes\", \"relationships\", \"schemas\", \"fragments\"],\n      \"properties\": {\n        \"nodes\": { \"$ref\": \"#/$defs/changeSet\" },\n        \"relationships\": { \"$ref\": \"#/$defs/changeSet\" },\n        \"schemas\": { \"$ref\": \"#/$defs/changeSet\" },\n        \"fragments\": { \"$ref\": \"#/$defs/changeSet\" }\n      }\n    },\n    \"conflicts\": {\n      \"type\": \"array\",\n      \"items\": {\n        \"type\": \"object\",\n        \"additionalProperties\": false,\n        \"required\": [\"type\", \"summary\"],\n        \"properties\": {\n          \"type\": { \"type\": \"string\" },\n          \"nodes\": {\n            \"type\": \"array\",\n            \"items\": { \"type\": \"string\" }\n          },\n          \"resolution\": { \"type\": \"string\" },\n          \"summary\": { \"type\": \"string\" }\n        }\n      }\n    }\n  },\n  \"$defs\": {\n    \"changeSet\": {\n      \"type\": \"object\",\n      \"additionalProperties\": false,\n      \"required\": [\"added\", \"removed\", \"changed\"],\n      \"properties\": {\n        \"added\": {\n          \"type\": \"array\",\n          \"items\": { \"type\": \"string\" }\n        },\n        \"removed\": {\n          \"type\": \"array\",\n          \"items\": { \"type\": \"string\" }\n        },\n        \"changed\": {\n          \"type\": \"array\",\n          \"items\": { \"type\": \"string\" }\n        }\n      }\n    }\n  }\n}\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;, &quot;$id&quot;: &quot;https://xananode.org/schemas/substrate-diff.schema.json&quot;, &quot;title&quot;: &quot;Substrate Diff&quot;, &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;id&quot;, &quot;base&quot;, &quot;head&quot;, &quot;changes&quot;], &quot;properties&quot;: { &quot;id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;base&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;head&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;generated_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;changes&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;nodes&quot;, &quot;relationships&quot;, &quot;schemas&quot;, &quot;fragments&quot;], &quot;properties&quot;: { &quot;nodes&quot;: { &quot;$ref&quot;: &quot;#/$defs/changeSet&quot; }, &quot;relationships&quot;: { &quot;$ref&quot;: &quot;#/$defs/changeSet&quot; }, &quot;schemas&quot;: { &quot;$ref&quot;: &quot;#/$defs/changeSet&quot; }, &quot;fragments&quot;: { &quot;$ref&quot;: &quot;#/$defs/changeSet&quot; } } }, &quot;conflicts&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;type&quot;, &quot;summary&quot;], &quot;properties&quot;: { &quot;type&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;nodes&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } }, &quot;resolution&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;summary&quot;: { &quot;type&quot;: &quot;string&quot; } } } } }, &quot;$defs&quot;: { &quot;changeSet&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;added&quot;, &quot;removed&quot;, &quot;changed&quot;], &quot;properties&quot;: { &quot;added&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } }, &quot;removed&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } }, &quot;changed&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } } } } } }</p>",
      "url": "/schema/protocol-artifact-schemas-substrate-diff.schema.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/substrate-diff.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-substrate-diff.schema.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-substrate-layout.schema.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-substrate-layout.schema.json",
      "title": "Schemas / Substrate Layout Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for the substrate layout.",
      "content": "{\n  \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n  \"$id\": \"https://xananode.org/schemas/substrate-layout.schema.json\",\n  \"title\": \"XanaNode Substrate Layout Registry\",\n  \"type\": \"object\",\n  \"additionalProperties\": false,\n  \"required\": [\"id\", \"version\", \"description\", \"required_paths\", \"recognized_paths\"],\n  \"properties\": {\n    \"$schema\": { \"type\": \"string\" },\n    \"id\": { \"type\": \"string\" },\n    \"version\": { \"type\": \"string\" },\n    \"description\": { \"type\": \"string\" },\n    \"root_contract\": { \"type\": \"string\" },\n    \"required_paths\": {\n      \"type\": \"array\",\n      \"items\": { \"$ref\": \"#/$defs/path_record\" }\n    },\n    \"recognized_paths\": {\n      \"type\": \"array\",\n      \"items\": { \"$ref\": \"#/$defs/path_record\" }\n    },\n    \"authoring_paths\": {\n      \"type\": \"array\",\n      \"items\": { \"$ref\": \"#/$defs/path_record\" }\n    },\n    \"archive_rules\": {\n      \"type\": \"array\",\n      \"items\": { \"type\": \"string\" }\n    }\n  },\n  \"$defs\": {\n    \"path_record\": {\n      \"type\": \"object\",\n      \"additionalProperties\": false,\n      \"required\": [\"path\", \"role\"],\n      \"properties\": {\n        \"path\": { \"type\": \"string\" },\n        \"role\": { \"type\": \"string\" },\n        \"required\": { \"type\": \"boolean\" },\n        \"kind\": {\n          \"type\": \"string\",\n          \"enum\": [\"file\", \"directory\", \"glob\"]\n        },\n        \"format\": { \"type\": \"string\" },\n        \"description\": { \"type\": \"string\" },\n        \"tools_must_preserve\": { \"type\": \"boolean\" }\n      }\n    }\n  }\n}\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;, &quot;$id&quot;: &quot;https://xananode.org/schemas/substrate-layout.schema.json&quot;, &quot;title&quot;: &quot;XanaNode Substrate Layout Registry&quot;, &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;id&quot;, &quot;version&quot;, &quot;description&quot;, &quot;required_paths&quot;, &quot;recognized_paths&quot;], &quot;properties&quot;: { &quot;$schema&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;version&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;description&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;root_contract&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;required_paths&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;$ref&quot;: &quot;#/$defs/path_record&quot; } }, &quot;recognized_paths&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;$ref&quot;: &quot;#/$defs/path_record&quot; } }, &quot;authoring_paths&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;$ref&quot;: &quot;#/$defs/path_record&quot; } }, &quot;archive_rules&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } } }, &quot;$defs&quot;: { &quot;path_record&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;path&quot;, &quot;role&quot;], &quot;properties&quot;: { &quot;path&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;role&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;required&quot;: { &quot;type&quot;: &quot;boolean&quot; }, &quot;kind&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;file&quot;, &quot;directory&quot;, &quot;glob&quot;] }, &quot;format&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;description&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;tools_must_preserve&quot;: { &quot;type&quot;: &quot;boolean&quot; } } } } }</p>",
      "url": "/schema/protocol-artifact-schemas-substrate-layout.schema.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/substrate-layout.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-substrate-layout.schema.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-substrate-manifest.schema.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-substrate-manifest.schema.json",
      "title": "Schemas / Substrate Manifest Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for the substrate manifest.",
      "content": "{\r\n  \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\r\n  \"$id\": \"https://xananode.org/schemas/substrate-manifest.schema.json\",\r\n  \"title\": \"Substrate Manifest\",\r\n  \"type\": \"object\",\r\n  \"additionalProperties\": false,\r\n  \"required\": [\"id\", \"name\", \"version\", \"namespace\", \"repository\"],\n  \"properties\": {\r\n    \"id\": { \"type\": \"string\" },\r\n    \"name\": { \"type\": \"string\" },\r\n    \"version\": { \"type\": \"string\" },\r\n    \"namespace\": { \"type\": \"string\" },\n    \"repository\": {\n      \"type\": \"object\",\n      \"additionalProperties\": false,\n      \"required\": [\"type\", \"url\", \"default_branch\"],\n      \"properties\": {\n        \"type\": {\n          \"type\": \"string\",\n          \"enum\": [\"git\"]\n        },\n        \"url\": { \"type\": \"string\" },\n        \"default_branch\": { \"type\": \"string\" },\n        \"path\": { \"type\": \"string\" },\n        \"commit\": { \"type\": \"string\" }\n      }\n    },\n    \"federation\": {\n      \"type\": \"object\",\n      \"additionalProperties\": false,\n      \"properties\": {\n        \"inbox\": { \"type\": \"string\", \"format\": \"uri\" },\n        \"outbox\": { \"type\": \"string\", \"format\": \"uri\" },\n        \"feed\": { \"type\": \"string\", \"format\": \"uri\" },\n        \"merge_reports\": { \"type\": \"string\", \"format\": \"uri\" },\n        \"mapping_endpoint\": { \"type\": \"string\", \"format\": \"uri\" }\n      }\n    },\n    \"trust\": {\n      \"type\": \"object\",\n      \"additionalProperties\": false,\n      \"properties\": {\n        \"signed\": { \"type\": \"boolean\" },\n        \"signature\": { \"type\": \"string\" },\n        \"public_key\": { \"type\": \"string\" },\n        \"trust_scope\": {\n          \"type\": \"array\",\n          \"items\": {\n            \"type\": \"string\",\n            \"enum\": [\"local_substrate\", \"imported_schema\", \"mapping\", \"assertion\"]\n          }\n        }\n      }\n    },\n    \"description\": { \"type\": \"string\" },\n    \"branding\": {\n      \"$ref\": \"#/$defs/branding\"\n    },\n    \"build_metadata\": {\n      \"$ref\": \"#/$defs/build_metadata\"\n    },\n    \"schema_version\": { \"type\": \"string\" },\n    \"license\": { \"type\": \"string\" },\n    \"sharing\": {\n      \"type\": \"object\",\n      \"description\": \"Substrate-level sharing policy. The default is shareable unless a node, trail, or explicit rule excludes records.\",\n      \"additionalProperties\": false,\n      \"properties\": {\n        \"default_shareable\": {\n          \"type\": \"boolean\",\n          \"description\": \"Whether nodes are shareable by default when they do not declare their own sharing rule.\"\n        },\n        \"excluded_nodes\": {\n          \"type\": \"array\",\n          \"description\": \"Node ids that must not be included in shared exports or mounted public projections.\",\n          \"items\": { \"type\": \"string\" },\n          \"uniqueItems\": true\n        },\n        \"excluded_trails\": {\n          \"type\": \"array\",\n          \"description\": \"Trail node ids whose listed trail nodes should be excluded unless a node explicitly opts back in.\",\n          \"items\": { \"type\": \"string\" },\n          \"uniqueItems\": true\n        },\n        \"excluded_relationships\": {\n          \"type\": \"array\",\n          \"description\": \"Relationship ids that must not be included in shared exports or mounted public projections.\",\n          \"items\": { \"type\": \"string\" },\n          \"uniqueItems\": true\n        },\n        \"rules\": {\n          \"type\": \"array\",\n          \"description\": \"Named sharing rules for selectors a tool understands, such as type, subtype, tag, path, trail, or namespace.\",\n          \"items\": {\n            \"type\": \"object\",\n            \"additionalProperties\": false,\n            \"required\": [\"selector\", \"shareable\"],\n            \"properties\": {\n              \"selector\": {\n                \"type\": \"object\",\n                \"additionalProperties\": true,\n                \"description\": \"Selector interpreted by tools, commonly {type}, {subtype}, {tag}, {trail}, {path}, or {namespace}.\"\n              },\n              \"shareable\": { \"type\": \"boolean\" },\n              \"scope\": {\n                \"type\": \"string\",\n                \"enum\": [\"public\", \"unlisted\", \"trusted\", \"private\"]\n              },\n              \"reason\": { \"type\": \"string\" }\n            }\n          }\n        }\n      }\n    },\n    \"maintainers\": {\n      \"type\": \"array\",\n      \"items\": {\n        \"type\": \"object\",\n        \"additionalProperties\": false,\n        \"required\": [\"name\"],\n        \"properties\": {\n          \"name\": { \"type\": \"string\" },\n          \"url\": { \"type\": \"string\", \"format\": \"uri\" }\n        }\n      }\n    },\n    \"imports\": {\n      \"type\": \"array\",\n      \"items\": {\n        \"oneOf\": [\n          { \"type\": \"string\" },\n          {\n            \"type\": \"object\",\n            \"additionalProperties\": false,\n            \"required\": [\"id\", \"source\", \"mode\"],\n            \"properties\": {\n              \"id\": { \"type\": \"string\" },\n              \"source\": { \"type\": \"string\" },\n              \"mode\": {\n                \"type\": \"string\",\n                \"enum\": [\"mounted\", \"imported\", \"merged\", \"absorbed\"]\n              },\n              \"version\": { \"type\": \"string\" },\n              \"description\": { \"type\": \"string\" },\n              \"required\": { \"type\": \"boolean\" },\n              \"repository\": {\n                \"type\": \"object\",\n                \"additionalProperties\": false,\n                \"properties\": {\n                  \"type\": {\n                    \"type\": \"string\",\n                    \"enum\": [\"git\"]\n                  },\n                  \"url\": { \"type\": \"string\" },\n                  \"branch\": { \"type\": \"string\" },\n                  \"commit\": { \"type\": \"string\" },\n                  \"archive\": { \"type\": \"string\" }\n                }\n              },\n              \"archive\": {\n                \"type\": \"object\",\n                \"additionalProperties\": false,\n                \"properties\": {\n                  \"media_type\": { \"type\": \"string\" },\n                  \"file\": { \"type\": \"string\" },\n                  \"sha256\": { \"type\": \"string\" },\n                  \"created_at\": { \"type\": \"string\", \"format\": \"date-time\" }\n                }\n              },\n              \"namespace_mappings\": {\n                \"type\": \"array\",\n                \"items\": {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"required\": [\"from\", \"to\", \"scope\"],\n                  \"properties\": {\n                    \"from\": { \"type\": \"string\" },\n                    \"to\": { \"type\": \"string\" },\n                    \"scope\": {\n                      \"type\": \"string\",\n                      \"enum\": [\"relationships\", \"all\"]\n                    },\n                    \"reason\": { \"type\": \"string\" }\n                  }\n                }\n              },\n              \"trust\": {\n                \"type\": \"object\",\n                \"additionalProperties\": false,\n                \"properties\": {\n                  \"signed\": { \"type\": \"boolean\" },\n                  \"signature\": { \"type\": \"string\" },\n                  \"public_key\": { \"type\": \"string\" }\n                }\n              }\n            }\n          }\n        ]\n      }\n    },\n    \"pack\": {\n      \"type\": \"object\",\n      \"description\": \"Metadata used when this manifest describes a portable substrate pack rather than only a live authored substrate.\",\n      \"additionalProperties\": false,\n      \"properties\": {\n        \"mode\": {\n          \"type\": \"string\",\n          \"enum\": [\"mounted\", \"imported\", \"merged\", \"absorbed\"]\n        },\n        \"built_by\": { \"type\": \"string\" },\n        \"built_at\": { \"type\": \"string\", \"format\": \"date-time\" },\n        \"build_metadata\": {\n          \"$ref\": \"#/$defs/build_metadata\"\n        },\n        \"portable\": { \"type\": \"boolean\" },\n        \"archive_name\": { \"type\": \"string\" },\n        \"archive_media_type\": { \"type\": \"string\" },\n        \"source_manifests\": {\n          \"type\": \"array\",\n          \"items\": {\n            \"type\": \"object\",\n            \"additionalProperties\": true,\n            \"properties\": {\n              \"id\": { \"type\": \"string\" },\n              \"name\": { \"type\": \"string\" },\n              \"namespace\": { \"type\": \"string\" },\n              \"version\": { \"type\": \"string\" },\n              \"repository\": { \"type\": \"object\" }\n            }\n          }\n        }\n      }\n    },\n    \"extensions\": {\n      \"type\": \"array\",\n      \"items\": { \"type\": \"string\" }\n    }\n  },\n  \"$defs\": {\n    \"branding\": {\n      \"type\": \"object\",\n      \"description\": \"Portable branding metadata for a substrate or pack. Branding assets should be represented as media nodes and referenced here by node id.\",\n      \"additionalProperties\": false,\n      \"properties\": {\n        \"brand_name\": { \"type\": \"string\" },\n        \"tagline\": { \"type\": \"string\" },\n        \"description\": { \"type\": \"string\" },\n        \"primary_media\": { \"type\": \"string\" },\n        \"logo_media\": { \"type\": \"string\" },\n        \"icon_media\": { \"type\": \"string\" },\n        \"primary_color\": {\n          \"type\": \"string\",\n          \"pattern\": \"^#[0-9A-Fa-f]{6}$\"\n        },\n        \"accent_color\": {\n          \"type\": \"string\",\n          \"pattern\": \"^#[0-9A-Fa-f]{6}$\"\n        },\n        \"background_color\": {\n          \"type\": \"string\",\n          \"pattern\": \"^#[0-9A-Fa-f]{6}$\"\n        },\n        \"text_color\": {\n          \"type\": \"string\",\n          \"pattern\": \"^#[0-9A-Fa-f]{6}$\"\n        },\n        \"source_node\": { \"type\": \"string\" },\n        \"rights_status\": { \"type\": \"string\" },\n        \"license\": { \"type\": \"string\" },\n        \"updated_at\": { \"type\": \"string\", \"format\": \"date-time\" },\n        \"reason\": { \"type\": \"string\" }\n      }\n    },\n    \"build_metadata\": {\n      \"type\": \"object\",\n      \"description\": \"Build and runtime provenance for generated substrates, packs, renderer output, and software-created artifacts.\",\n      \"additionalProperties\": false,\n      \"properties\": {\n        \"version\": { \"type\": \"string\" },\n        \"git_commit\": { \"type\": \"string\" },\n        \"git_branch\": { \"type\": \"string\" },\n        \"repository\": { \"type\": \"string\" },\n        \"built_at\": { \"type\": \"string\", \"format\": \"date-time\" },\n        \"compiled_at\": { \"type\": \"string\", \"format\": \"date-time\" },\n        \"generated_at\": { \"type\": \"string\", \"format\": \"date-time\" },\n        \"built_by\": { \"type\": \"string\" },\n        \"runtime\": { \"type\": \"string\" },\n        \"platform\": { \"type\": \"string\" },\n        \"dependencies\": {\n          \"type\": \"array\",\n          \"items\": {\n            \"type\": \"object\",\n            \"additionalProperties\": false,\n            \"required\": [\"name\"],\n            \"properties\": {\n              \"name\": { \"type\": \"string\" },\n              \"version\": { \"type\": \"string\" },\n              \"repository\": { \"type\": \"string\" },\n              \"relationship\": { \"type\": \"string\" }\n            }\n          }\n        }\n      }\n    }\n  }\n}\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;, &quot;$id&quot;: &quot;https://xananode.org/schemas/substrate-manifest.schema.json&quot;, &quot;title&quot;: &quot;Substrate Manifest&quot;, &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;id&quot;, &quot;name&quot;, &quot;version&quot;, &quot;namespace&quot;, &quot;repository&quot;], &quot;properties&quot;: { &quot;id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;name&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;version&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;namespace&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;repository&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;type&quot;, &quot;url&quot;, &quot;default_branch&quot;], &quot;properties&quot;: { &quot;type&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;git&quot;] }, &quot;url&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;default_branch&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;path&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;commit&quot;: { &quot;type&quot;: &quot;string&quot; } } }, &quot;federation&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;properties&quot;: { &quot;inbox&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;uri&quot; }, &quot;outbox&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;uri&quot; }, &quot;feed&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;uri&quot; }, &quot;merge_reports&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;uri&quot; }, &quot;mapping_endpoint&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;uri&quot; } } }, &quot;trust&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;properties&quot;: { &quot;signed&quot;: { &quot;type&quot;: &quot;boolean&quot; }, &quot;signature&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;public_key&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;trust_scope&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;local_substrate&quot;, &quot;imported_schema&quot;, &quot;mapping&quot;, &quot;assertion&quot;] } } } }, &quot;description&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;branding&quot;: { &quot;$ref&quot;: &quot;#/$defs/branding&quot; }, &quot;build_metadata&quot;: { &quot;$ref&quot;: &quot;#/$defs/build_metadata&quot; }, &quot;schema_version&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;license&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;sharing&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;description&quot;: &quot;Substrate-level sharing policy. The default is shareable unless a node, trail, or explicit rule excludes records.&quot;, &quot;additionalProperties&quot;: false, &quot;properties&quot;: { &quot;default_shareable&quot;: { &quot;type&quot;: &quot;boolean&quot;, &quot;description&quot;: &quot;Whether nodes are shareable by default when they do not declare their own sharing rule.&quot; }, &quot;excluded_nodes&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;description&quot;: &quot;Node ids that must not be included in shared exports or mounted public projections.&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;uniqueItems&quot;: true }, &quot;excluded_trails&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;description&quot;: &quot;Trail node ids whose listed trail nodes should be excluded unless a node explicitly opts back in.&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;uniqueItems&quot;: true }, &quot;excluded_relationships&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;description&quot;: &quot;Relationship ids that must not be included in shared exports or mounted public projections.&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;uniqueItems&quot;: true }, &quot;rules&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;description&quot;: &quot;Named sharing rules for selectors a tool understands, such as type, subtype, tag, path, trail, or namespace.&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;selector&quot;, &quot;shareable&quot;], &quot;properties&quot;: { &quot;selector&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: true, &quot;description&quot;: &quot;Selector interpreted by tools, commonly {type}, {subtype}, {tag}, {trail}, {path}, or {namespace}.&quot; }, &quot;shareable&quot;: { &quot;type&quot;: &quot;boolean&quot; }, &quot;scope&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;public&quot;, &quot;unlisted&quot;, &quot;trusted&quot;, &quot;private&quot;] }, &quot;reason&quot;: { &quot;type&quot;: &quot;string&quot; } } } } } }, &quot;maintainers&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;name&quot;], &quot;properties&quot;: { &quot;name&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;url&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;uri&quot; } } } }, &quot;imports&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;oneOf&quot;: [ { &quot;type&quot;: &quot;string&quot; }, { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;id&quot;, &quot;source&quot;, &quot;mode&quot;], &quot;properties&quot;: { &quot;id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;source&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;mode&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;mounted&quot;, &quot;imported&quot;, &quot;merged&quot;, &quot;absorbed&quot;] }, &quot;version&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;description&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;required&quot;: { &quot;type&quot;: &quot;boolean&quot; }, &quot;repository&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;properties&quot;: { &quot;type&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;git&quot;] }, &quot;url&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;branch&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;commit&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;archive&quot;: { &quot;type&quot;: &quot;string&quot; } } }, &quot;archive&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;properties&quot;: { &quot;media_type&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;file&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;sha256&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;created_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; } } }, &quot;namespace_mappings&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;from&quot;, &quot;to&quot;, &quot;scope&quot;], &quot;properties&quot;: { &quot;from&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;to&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;scope&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;relationships&quot;, &quot;all&quot;] }, &quot;reason&quot;: { &quot;type&quot;: &quot;string&quot; } } } }, &quot;trust&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;properties&quot;: { &quot;signed&quot;: { &quot;type&quot;: &quot;boolean&quot; }, &quot;signature&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;public_key&quot;: { &quot;type&quot;: &quot;string&quot; } } } } } ] } }, &quot;pack&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;description&quot;: &quot;Metadata used when this manifest describes a portable substrate pack rather than only a live authored substrate.&quot;, &quot;additionalProperties&quot;: false, &quot;properties&quot;: { &quot;mode&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;mounted&quot;, &quot;imported&quot;, &quot;merged&quot;, &quot;absorbed&quot;] }, &quot;built_by&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;built_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;build_metadata&quot;: { &quot;$ref&quot;: &quot;#/$defs/build_metadata&quot; }, &quot;portable&quot;: { &quot;type&quot;: &quot;boolean&quot; }, &quot;archive_name&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;archive_media_type&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;source_manifests&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: true, &quot;properties&quot;: { &quot;id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;name&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;namespace&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;version&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;repository&quot;: { &quot;type&quot;: &quot;object&quot; } } } } } }, &quot;extensions&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } } }, &quot;$defs&quot;: { &quot;branding&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;description&quot;: &quot;Portable branding metadata for a substrate or pack. Branding assets should be represented as media nodes and referenced here by node id.&quot;, &quot;additionalProperties&quot;: false, &quot;properties&quot;: { &quot;brand_name&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;tagline&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;description&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;primary_media&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;logo_media&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;icon_media&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;primary_color&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^#[0-9A-Fa-f]{6}$&quot; }, &quot;accent_color&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^#[0-9A-Fa-f]{6}$&quot; }, &quot;background_color&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^#[0-9A-Fa-f]{6}$&quot; }, &quot;text_color&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^#[0-9A-Fa-f]{6}$&quot; }, &quot;source_node&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;rights_status&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;license&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;updated_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;reason&quot;: { &quot;type&quot;: &quot;string&quot; } } }, &quot;build_metadata&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;description&quot;: &quot;Build and runtime provenance for generated substrates, packs, renderer output, and software-created artifacts.&quot;, &quot;additionalProperties&quot;: false, &quot;properties&quot;: { &quot;version&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;git_commit&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;git_branch&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;repository&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;built_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;compiled_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;generated_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;built_by&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;runtime&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;platform&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;dependencies&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;name&quot;], &quot;properties&quot;: { &quot;name&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;version&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;repository&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;relationship&quot;: { &quot;type&quot;: &quot;string&quot; } } } } } } } }</p>",
      "url": "/schema/protocol-artifact-schemas-substrate-manifest.schema.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/substrate-manifest.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-substrate-manifest.schema.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-substrate-node.schema.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-substrate-node.schema.json",
      "title": "Schemas / Substrate Node Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for the substrate node.",
      "content": "{\r\n  \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\r\n  \"$id\": \"https://xananode.org/schemas/substrate-node.schema.json\",\r\n  \"title\": \"Substrate Node\",\r\n  \"type\": \"object\",\r\n  \"additionalProperties\": true,\r\n  \"required\": [\"id\", \"title\", \"type\", \"importance\", \"summary\", \"relationships\"],\r\n  \"properties\": {\r\n    \"id\": {\r\n      \"type\": \"string\",\r\n      \"pattern\": \"^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:[a-z][a-z0-9_-]*/[^\\\\s#]+$\"\r\n    },\r\n    \"title\": { \"type\": \"string\" },\r\n    \"type\": {\n      \"type\": \"string\",\n      \"pattern\": \"^([a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:)?[a-z][a-z0-9_-]*$\"\n    },\n    \"subtype\": {\n      \"type\": \"string\",\n      \"description\": \"A narrower kind within the primary node type, such as git_repository, official_site, documentation, support_page, screenshot, logo, or web_snapshot.\",\n      \"pattern\": \"^([a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:)?[a-z][a-z0-9_-]*$\"\n    },\n    \"subtypes\": {\n      \"type\": \"array\",\n      \"description\": \"Additional narrower kinds within the primary node type. Use when one node needs more than one subtype without changing its primary type.\",\n      \"items\": {\n        \"type\": \"string\",\n        \"pattern\": \"^([a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:)?[a-z][a-z0-9_-]*$\"\n      },\n      \"uniqueItems\": true\n    },\n    \"facets\": {\n      \"type\": \"array\",\n      \"description\": \"Secondary node roles used when one knowledge object participates in multiple modeling categories without duplicating its identity.\",\n      \"items\": {\n        \"type\": \"string\",\n        \"pattern\": \"^([a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:)?[a-z][a-z0-9_-]*$\"\n      },\n      \"uniqueItems\": true\n    },\n    \"status\": { \"type\": \"string\" },\r\n    \"importance\": {\r\n      \"type\": \"integer\",\r\n      \"minimum\": 1,\r\n      \"maximum\": 5\r\n    },\r\n    \"summary\": { \"type\": \"string\" },\r\n    \"created_by\": { \"type\": \"string\" },\r\n    \"created_at\": { \"type\": \"string\", \"format\": \"date-time\" },\r\n    \"updated_at\": { \"type\": \"string\", \"format\": \"date-time\" },\r\n    \"source_url\": { \"type\": \"string\", \"format\": \"uri\" },\n    \"rights_status\": { \"type\": \"string\" },\n    \"sharing\": {\n      \"type\": \"object\",\n      \"description\": \"Node-level sharing policy. Nodes are shareable by default unless this object or a substrate-level rule says otherwise.\",\n      \"additionalProperties\": false,\n      \"properties\": {\n        \"shareable\": {\n          \"type\": \"boolean\",\n          \"description\": \"Whether this node may be included in exported, published, federated, or shared packs. Defaults to true.\"\n        },\n        \"scope\": {\n          \"type\": \"string\",\n          \"description\": \"The intended sharing scope for tools that support private workspaces or limited review.\",\n          \"enum\": [\"public\", \"unlisted\", \"trusted\", \"private\"]\n        },\n        \"reason\": { \"type\": \"string\" },\n        \"review_status\": {\n          \"type\": \"string\",\n          \"enum\": [\"allowed\", \"blocked\", \"needs_review\"]\n        }\n      }\n    },\n    \"asset_path\": {\n      \"type\": \"string\",\n      \"description\": \"Portable relative path to a local asset file inside the substrate or pack, usually used by media nodes.\"\n    },\n    \"asset_role\": {\n      \"type\": \"string\",\n      \"description\": \"The role this asset plays for the node, such as primary_media, source_snapshot, thumbnail, transcript, attachment, or archival_copy.\"\n    },\n    \"media_type\": { \"type\": \"string\" },\n    \"mime_type\": { \"type\": \"string\" },\n    \"alt\": { \"type\": \"string\" },\n    \"caption\": { \"type\": \"string\" },\n    \"source_snapshot\": {\n      \"type\": \"object\",\n      \"description\": \"Metadata for a captured representation of an external source page.\",\n      \"additionalProperties\": false,\n      \"properties\": {\n        \"captured_at\": { \"type\": \"string\", \"format\": \"date-time\" },\n        \"source_url\": { \"type\": \"string\", \"format\": \"uri\" },\n        \"method\": {\n          \"type\": \"string\",\n          \"enum\": [\"opengraph\", \"screenshot\", \"readability\", \"manual\", \"archive\"]\n        },\n        \"content_id\": { \"type\": \"string\" },\n        \"rights_status\": { \"type\": \"string\" },\n        \"tool\": { \"type\": \"string\" }\n      }\n    },\n    \"confidence\": { \"type\": \"string\" },\n    \"uncertainty_level\": {\n      \"type\": \"string\",\n      \"description\": \"A canonical epistemic uncertainty level for questions, hypotheses, claims, knowledge gaps, responses, or first-class relationships.\",\n      \"enum\": [\"unknown\", \"low\", \"medium\", \"high\", \"unresolved\"]\n    },\n    \"review_status\": {\n      \"type\": \"string\",\n      \"description\": \"Workflow review state for a node or relationship being authored, validated, merged, or deprecated.\",\n      \"enum\": [\"draft\", \"needs_review\", \"under_review\", \"approved\", \"rejected\", \"deprecated\"]\n    },\n    \"research_priority\": {\n      \"type\": \"integer\",\n      \"description\": \"Priority signal for inquiry, problems, and knowledge gaps.\",\n      \"minimum\": 1,\n      \"maximum\": 5\n    },\n    \"evidence_strength\": {\n      \"type\": \"string\",\n      \"description\": \"Compact assessment of the evidence available for a claim, hypothesis, response, or relationship.\",\n      \"enum\": [\"none\", \"weak\", \"moderate\", \"strong\", \"decisive\", \"contested\"]\n    },\n    \"communication_model\": {\n      \"type\": \"string\",\n      \"description\": \"Participant topology for a first-class communication.\",\n      \"enum\": [\"one_to_one\", \"one_to_many\", \"many_to_one\", \"many_to_many\"]\n    },\n    \"communication_pattern\": {\n      \"type\": \"string\",\n      \"description\": \"Semantic communication pattern beyond participant count.\",\n      \"enum\": [\n        \"dialogue\",\n        \"broadcast\",\n        \"collection\",\n        \"coordination\",\n        \"negotiation\",\n        \"debate\",\n        \"consensus\",\n        \"instruction\",\n        \"query_response\",\n        \"publication\"\n      ]\n    },\n    \"protocol_id\": { \"type\": \"string\" },\n    \"content_id\": { \"type\": \"string\" },\n    \"version_id\": { \"type\": \"string\" },\n    \"software_version\": {\n      \"type\": \"string\",\n      \"description\": \"Semantic or package version of a software project, component, renderer, SDK, or application.\"\n    },\n    \"build_metadata\": {\n      \"type\": \"object\",\n      \"description\": \"Build and runtime provenance for software nodes, generated packs, and projection artifacts.\",\n      \"additionalProperties\": false,\n      \"properties\": {\n        \"version\": { \"type\": \"string\" },\n        \"git_commit\": { \"type\": \"string\" },\n        \"git_branch\": { \"type\": \"string\" },\n        \"repository\": { \"type\": \"string\" },\n        \"built_at\": { \"type\": \"string\", \"format\": \"date-time\" },\n        \"compiled_at\": { \"type\": \"string\", \"format\": \"date-time\" },\n        \"generated_at\": { \"type\": \"string\", \"format\": \"date-time\" },\n        \"built_by\": { \"type\": \"string\" },\n        \"runtime\": { \"type\": \"string\" },\n        \"platform\": { \"type\": \"string\" },\n        \"dependencies\": {\n          \"type\": \"array\",\n          \"items\": {\n            \"type\": \"object\",\n            \"additionalProperties\": false,\n            \"required\": [\"name\"],\n            \"properties\": {\n              \"name\": { \"type\": \"string\" },\n              \"version\": { \"type\": \"string\" },\n              \"repository\": { \"type\": \"string\" },\n              \"relationship\": { \"type\": \"string\" }\n            }\n          }\n        }\n      }\n    },\n    \"source_content_id\": { \"type\": \"string\" },\n    \"source_version_id\": { \"type\": \"string\" },\n    \"signature\": { \"type\": \"string\" },\n    \"source_node\": { \"type\": \"string\" },\n    \"fragment_id\": {\r\n      \"type\": \"string\",\r\n      \"pattern\": \"^[A-Za-z0-9._-]+$\"\r\n    },\r\n    \"tumbler\": {\n      \"type\": \"string\",\n      \"pattern\": \"^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:[a-z][a-z0-9_-]*/[^\\\\s#@]+(@[^\\\\s#]+)?(#fragment/[A-Za-z0-9._-]+(@[^\\\\s#]+)?)?$\"\n    },\r\n    \"selector\": {\r\n      \"type\": \"object\",\r\n      \"additionalProperties\": true,\n      \"properties\": {\n        \"type\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"semantic-anchor\",\n            \"TextQuoteSelector\",\n            \"TextPositionSelector\",\n            \"FragmentSelector\",\n            \"CssSelector\",\n            \"XPathSelector\",\n            \"RangeSelector\",\n            \"MediaFragmentSelector\",\n            \"TimecodeRangeSelector\"\n          ]\n        },\n        \"value\": { \"type\": \"string\" },\n        \"exact\": { \"type\": \"string\" },\n        \"prefix\": { \"type\": \"string\" },\n        \"suffix\": { \"type\": \"string\" },\n        \"start\": { \"type\": \"integer\" },\n        \"end\": { \"type\": \"integer\" },\n        \"unit\": { \"type\": \"string\" },\n        \"start_timecode\": { \"type\": \"string\" },\n        \"end_timecode\": { \"type\": \"string\" },\n        \"start_ms\": { \"type\": \"integer\" },\n        \"end_ms\": { \"type\": \"integer\" }\n      }\n    },\n    \"relationships\": {\n      \"type\": \"array\",\r\n      \"items\": {\r\n        \"type\": \"object\",\r\n        \"additionalProperties\": false,\r\n        \"required\": [\"id\", \"type\", \"direction\"],\r\n        \"properties\": {\r\n          \"id\": { \"type\": \"string\" },\r\n          \"type\": {\r\n            \"type\": \"string\",\r\n            \"pattern\": \"^([a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:)?[a-z][a-z0-9_-]*$\"\r\n          },\r\n          \"source\": { \"type\": \"string\" },\r\n          \"target\": { \"type\": \"string\" },\r\n          \"direction\": {\r\n            \"type\": \"string\",\r\n            \"enum\": [\"incoming\", \"outgoing\"]\r\n          },\r\n          \"external\": { \"type\": \"boolean\" },\r\n          \"target_substrate\": { \"type\": \"string\" }\r\n        }\r\n      }\n    }\n  },\n  \"allOf\": [\n    {\n      \"if\": {\n        \"properties\": {\n          \"type\": { \"const\": \"fragment\" }\n        },\n        \"required\": [\"type\"]\n      },\n      \"then\": {\n        \"required\": [\n          \"source_node\",\n          \"source_version_id\",\n          \"source_content_id\",\n          \"fragment_id\",\n          \"tumbler\",\n          \"selector\",\n          \"content_id\",\n          \"version_id\"\n        ]\n      }\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;, &quot;$id&quot;: &quot;https://xananode.org/schemas/substrate-node.schema.json&quot;, &quot;title&quot;: &quot;Substrate Node&quot;, &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: true, &quot;required&quot;: [&quot;id&quot;, &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot;], &quot;properties&quot;: { &quot;id&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:[a-z][a-z0-9_-]*/[^\\\\s#]+$&quot; }, &quot;title&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;type&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^([a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:)?[a-z][a-z0-9_-]*$&quot; }, &quot;subtype&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;A narrower kind within the primary node type, such as git_repository, official_site, documentation, support_page, screenshot, logo, or web_snapshot.&quot;, &quot;pattern&quot;: &quot;^([a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:)?[a-z][a-z0-9_-]*$&quot; }, &quot;subtypes&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;description&quot;: &quot;Additional narrower kinds within the primary node type. Use when one node needs more than one subtype without changing its primary type.&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^([a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:)?[a-z][a-z0-9_-]*$&quot; }, &quot;uniqueItems&quot;: true }, &quot;facets&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;description&quot;: &quot;Secondary node roles used when one knowledge object participates in multiple modeling categories without duplicating its identity.&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^([a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:)?[a-z][a-z0-9_-]*$&quot; }, &quot;uniqueItems&quot;: true }, &quot;status&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;importance&quot;: { &quot;type&quot;: &quot;integer&quot;, &quot;minimum&quot;: 1, &quot;maximum&quot;: 5 }, &quot;summary&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;created_by&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;created_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;updated_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;source_url&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;uri&quot; }, &quot;rights_status&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;sharing&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;description&quot;: &quot;Node-level sharing policy. Nodes are shareable by default unless this object or a substrate-level rule says otherwise.&quot;, &quot;additionalProperties&quot;: false, &quot;properties&quot;: { &quot;shareable&quot;: { &quot;type&quot;: &quot;boolean&quot;, &quot;description&quot;: &quot;Whether this node may be included in exported, published, federated, or shared packs. Defaults to true.&quot; }, &quot;scope&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;The intended sharing scope for tools that support private workspaces or limited review.&quot;, &quot;enum&quot;: [&quot;public&quot;, &quot;unlisted&quot;, &quot;trusted&quot;, &quot;private&quot;] }, &quot;reason&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;review_status&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;allowed&quot;, &quot;blocked&quot;, &quot;needs_review&quot;] } } }, &quot;asset_path&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Portable relative path to a local asset file inside the substrate or pack, usually used by media nodes.&quot; }, &quot;asset_role&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;The role this asset plays for the node, such as primary_media, source_snapshot, thumbnail, transcript, attachment, or archival_copy.&quot; }, &quot;media_type&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;mime_type&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;alt&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;caption&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;source_snapshot&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;description&quot;: &quot;Metadata for a captured representation of an external source page.&quot;, &quot;additionalProperties&quot;: false, &quot;properties&quot;: { &quot;captured_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;source_url&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;uri&quot; }, &quot;method&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;opengraph&quot;, &quot;screenshot&quot;, &quot;readability&quot;, &quot;manual&quot;, &quot;archive&quot;] }, &quot;content_id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;rights_status&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;tool&quot;: { &quot;type&quot;: &quot;string&quot; } } }, &quot;confidence&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;uncertainty_level&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;A canonical epistemic uncertainty level for questions, hypotheses, claims, knowledge gaps, responses, or first-class relationships.&quot;, &quot;enum&quot;: [&quot;unknown&quot;, &quot;low&quot;, &quot;medium&quot;, &quot;high&quot;, &quot;unresolved&quot;] }, &quot;review_status&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Workflow review state for a node or relationship being authored, validated, merged, or deprecated.&quot;, &quot;enum&quot;: [&quot;draft&quot;, &quot;needs_review&quot;, &quot;under_review&quot;, &quot;approved&quot;, &quot;rejected&quot;, &quot;deprecated&quot;] }, &quot;research_priority&quot;: { &quot;type&quot;: &quot;integer&quot;, &quot;description&quot;: &quot;Priority signal for inquiry, problems, and knowledge gaps.&quot;, &quot;minimum&quot;: 1, &quot;maximum&quot;: 5 }, &quot;evidence_strength&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Compact assessment of the evidence available for a claim, hypothesis, response, or relationship.&quot;, &quot;enum&quot;: [&quot;none&quot;, &quot;weak&quot;, &quot;moderate&quot;, &quot;strong&quot;, &quot;decisive&quot;, &quot;contested&quot;] }, &quot;communication_model&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Participant topology for a first-class communication.&quot;, &quot;enum&quot;: [&quot;one_to_one&quot;, &quot;one_to_many&quot;, &quot;many_to_one&quot;, &quot;many_to_many&quot;] }, &quot;communication_pattern&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Semantic communication pattern beyond participant count.&quot;, &quot;enum&quot;: [ &quot;dialogue&quot;, &quot;broadcast&quot;, &quot;collection&quot;, &quot;coordination&quot;, &quot;negotiation&quot;, &quot;debate&quot;, &quot;consensus&quot;, &quot;instruction&quot;, &quot;query_response&quot;, &quot;publication&quot; ] }, &quot;protocol_id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;content_id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;version_id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;software_version&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Semantic or package version of a software project, component, renderer, SDK, or application.&quot; }, &quot;build_metadata&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;description&quot;: &quot;Build and runtime provenance for software nodes, generated packs, and projection artifacts.&quot;, &quot;additionalProperties&quot;: false, &quot;properties&quot;: { &quot;version&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;git_commit&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;git_branch&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;repository&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;built_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;compiled_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;generated_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;built_by&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;runtime&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;platform&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;dependencies&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;name&quot;], &quot;properties&quot;: { &quot;name&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;version&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;repository&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;relationship&quot;: { &quot;type&quot;: &quot;string&quot; } } } } } }, &quot;source_content_id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;source_version_id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;signature&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;source_node&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;fragment_id&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^[A-Za-z0-9._-]+$&quot; }, &quot;tumbler&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:[a-z][a-z0-9_-]*/[^\\\\s#@]+(@[^\\\\s#]+)?(#fragment/[A-Za-z0-9._-]+(@[^\\\\s#]+)?)?$&quot; }, &quot;selector&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: true, &quot;properties&quot;: { &quot;type&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [ &quot;semantic-anchor&quot;, &quot;TextQuoteSelector&quot;, &quot;TextPositionSelector&quot;, &quot;FragmentSelector&quot;, &quot;CssSelector&quot;, &quot;XPathSelector&quot;, &quot;RangeSelector&quot;, &quot;MediaFragmentSelector&quot;, &quot;TimecodeRangeSelector&quot; ] }, &quot;value&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;exact&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;prefix&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;suffix&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;start&quot;: { &quot;type&quot;: &quot;integer&quot; }, &quot;end&quot;: { &quot;type&quot;: &quot;integer&quot; }, &quot;unit&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;start_timecode&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;end_timecode&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;start_ms&quot;: { &quot;type&quot;: &quot;integer&quot; }, &quot;end_ms&quot;: { &quot;type&quot;: &quot;integer&quot; } } }, &quot;relationships&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;id&quot;, &quot;type&quot;, &quot;direction&quot;], &quot;properties&quot;: { &quot;id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;type&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^([a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:)?[a-z][a-z0-9_-]*$&quot; }, &quot;source&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;target&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;direction&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;incoming&quot;, &quot;outgoing&quot;] }, &quot;external&quot;: { &quot;type&quot;: &quot;boolean&quot; }, &quot;target_substrate&quot;: { &quot;type&quot;: &quot;string&quot; } } } } }, &quot;allOf&quot;: [ { &quot;if&quot;: { &quot;properties&quot;: { &quot;type&quot;: { &quot;const&quot;: &quot;fragment&quot; } }, &quot;required&quot;: [&quot;type&quot;] }, &quot;then&quot;: { &quot;required&quot;: [ &quot;source_node&quot;, &quot;source_version_id&quot;, &quot;source_content_id&quot;, &quot;fragment_id&quot;, &quot;tumbler&quot;, &quot;selector&quot;, &quot;content_id&quot;, &quot;version_id&quot; ] } } ] }</p>",
      "url": "/schema/protocol-artifact-schemas-substrate-node.schema.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/substrate-node.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-substrate-node.schema.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-substrate-relationships.schema.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-substrate-relationships.schema.json",
      "title": "Schemas / Substrate Relationships Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for the substrate relationships.",
      "content": "{\r\n  \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\r\n  \"$id\": \"https://xananode.org/schemas/substrate-relationships.schema.json\",\r\n  \"title\": \"Substrate Relationship List\",\r\n  \"type\": \"object\",\r\n  \"additionalProperties\": false,\r\n  \"required\": [\"relationships\"],\r\n  \"properties\": {\r\n    \"relationships\": {\r\n      \"type\": \"array\",\r\n      \"items\": {\r\n        \"type\": \"object\",\r\n        \"additionalProperties\": false,\r\n        \"required\": [\"id\", \"source\", \"target\", \"type\", \"summary\"],\r\n        \"properties\": {\r\n          \"id\": { \"type\": \"string\" },\r\n          \"source\": { \"type\": \"string\" },\r\n          \"target\": { \"type\": \"string\" },\r\n          \"type\": {\r\n            \"type\": \"string\",\r\n            \"pattern\": \"^([a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:)?[a-z][a-z0-9_-]*$\"\r\n          },\r\n          \"weight\": {\r\n            \"type\": \"integer\",\r\n            \"minimum\": 1,\r\n            \"maximum\": 5\r\n          },\r\n          \"visibility\": {\r\n            \"type\": \"string\",\r\n            \"enum\": [\"primary\", \"secondary\", \"background\"]\r\n          },\r\n          \"summary\": { \"type\": \"string\" },\n          \"asserted_by\": { \"type\": \"string\" },\n          \"asserted_at\": { \"type\": \"string\", \"format\": \"date-time\" },\n          \"valid_from\": { \"type\": \"string\", \"format\": \"date-time\" },\n          \"valid_to\": { \"type\": \"string\", \"format\": \"date-time\" },\n          \"confidence\": { \"type\": \"string\" },\n          \"content_id\": { \"type\": \"string\" },\n          \"version_id\": { \"type\": \"string\" },\n          \"signature\": { \"type\": \"string\" },\n          \"tumbler\": {\n            \"type\": \"string\",\n            \"pattern\": \"^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:[a-z][a-z0-9_-]*/[^\\\\s#@]+(@[^\\\\s#]+)?(#fragment/[A-Za-z0-9._-]+(@[^\\\\s#]+)?)?$\"\n          },\n          \"evidence\": {\r\n            \"type\": \"array\",\r\n            \"items\": { \"type\": \"string\" }\r\n          },\r\n          \"external\": { \"type\": \"boolean\" },\r\n          \"target_substrate\": { \"type\": \"string\" }\r\n        }\r\n      }\r\n    }\r\n  }\r\n}\r\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;, &quot;$id&quot;: &quot;https://xananode.org/schemas/substrate-relationships.schema.json&quot;, &quot;title&quot;: &quot;Substrate Relationship List&quot;, &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;relationships&quot;], &quot;properties&quot;: { &quot;relationships&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [&quot;id&quot;, &quot;source&quot;, &quot;target&quot;, &quot;type&quot;, &quot;summary&quot;], &quot;properties&quot;: { &quot;id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;source&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;target&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;type&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^([a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:)?[a-z][a-z0-9_-]*$&quot; }, &quot;weight&quot;: { &quot;type&quot;: &quot;integer&quot;, &quot;minimum&quot;: 1, &quot;maximum&quot;: 5 }, &quot;visibility&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [&quot;primary&quot;, &quot;secondary&quot;, &quot;background&quot;] }, &quot;summary&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;asserted_by&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;asserted_at&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;valid_from&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;valid_to&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; }, &quot;confidence&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;content_id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;version_id&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;signature&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;tumbler&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:[a-z][a-z0-9_-]*/[^\\\\s#@]+(@[^\\\\s#]+)?(#fragment/[A-Za-z0-9._-]+(@[^\\\\s#]+)?)?$&quot; }, &quot;evidence&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } }, &quot;external&quot;: { &quot;type&quot;: &quot;boolean&quot; }, &quot;target_substrate&quot;: { &quot;type&quot;: &quot;string&quot; } } } } } }</p>",
      "url": "/schema/protocol-artifact-schemas-substrate-relationships.schema.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/substrate-relationships.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-substrate-relationships.schema.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-xananode-node-types.schema.v0.3.0.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-xananode-node-types.schema.v0.3.0.json",
      "title": "Schemas / XanaNode Node Types Schema v0.3.0",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for XanaNode Node Types Schema v0.3.0.",
      "content": "{\r\n  \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\r\n  \"$id\": \"https://xananode.org/schemas/xananode-node-types.schema.v0.3.0.json\",\r\n  \"title\": \"XanaNode Node Type Registry\",\r\n  \"description\": \"Canonical and extension node type registry for XanaNode-compatible knowledge substrates.\",\r\n  \"type\": \"object\",\r\n  \"additionalProperties\": false,\r\n  \"required\": [\r\n    \"version\",\r\n    \"node_types\"\r\n  ],\r\n  \"properties\": {\r\n    \"version\": {\r\n      \"type\": \"string\"\r\n    },\r\n    \"namespace\": {\n      \"type\": \"string\",\n      \"pattern\": \"^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*$\"\n    },\n    \"media_conventions\": {\n      \"type\": \"object\",\n      \"additionalProperties\": false,\n      \"description\": \"Portable projection asset path conventions for node type and subtype media.\",\n      \"properties\": {\n        \"node_type_asset_path_template\": {\n          \"type\": \"string\",\n          \"description\": \"Relative path template for node type projection media. Use {type} as the node type placeholder.\"\n        },\n        \"node_subtype_asset_path_template\": {\n          \"type\": \"string\",\n          \"description\": \"Relative path template for node subtype projection media. Use {type} and {subtype} placeholders.\"\n        }\n      }\n    },\n    \"node_types\": {\n      \"type\": \"array\",\r\n      \"items\": {\r\n        \"type\": \"object\",\r\n        \"additionalProperties\": false,\r\n        \"required\": [\r\n          \"namespace\",\r\n          \"id\",\r\n          \"type\",\r\n          \"label\",\r\n          \"purpose\",\r\n          \"allowed_subtypes\",\r\n          \"color\"\r\n        ],\r\n        \"properties\": {\r\n          \"namespace\": {\r\n            \"type\": \"string\",\r\n            \"pattern\": \"^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*$\"\r\n          },\r\n          \"id\": {\r\n            \"type\": \"string\",\r\n            \"pattern\": \"^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:[a-z][a-z0-9_-]*$\"\r\n          },\r\n          \"type\": {\r\n            \"type\": \"string\",\r\n            \"pattern\": \"^[a-z][a-z0-9_-]*$\"\r\n          },\r\n          \"label\": {\r\n            \"type\": \"string\"\r\n          },\r\n          \"purpose\": {\r\n            \"type\": \"string\"\r\n          },\r\n          \"core\": {\r\n            \"type\": \"boolean\"\r\n          },\r\n          \"extends\": {\r\n            \"type\": [\r\n              \"string\",\r\n              \"null\"\r\n            ],\r\n            \"pattern\": \"^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*(:[a-z][a-z0-9_-]*)?$\"\r\n          },\r\n          \"allowed_subtypes\": {\r\n            \"type\": \"array\",\r\n            \"items\": {\r\n              \"type\": \"string\"\r\n            }\r\n          },\r\n          \"required_frontmatter\": {\r\n            \"type\": \"array\",\r\n            \"items\": {\r\n              \"type\": \"string\"\r\n            }\r\n          },\r\n          \"recommended_frontmatter\": {\r\n            \"type\": \"array\",\r\n            \"items\": {\r\n              \"type\": \"string\"\r\n            }\r\n          },\r\n          \"color\": {\n            \"type\": \"object\",\n            \"additionalProperties\": false,\n            \"required\": [\n              \"bg\",\r\n              \"fg\",\r\n              \"outline\"\r\n            ],\r\n            \"properties\": {\r\n              \"bg\": {\r\n                \"type\": \"string\"\r\n              },\r\n              \"fg\": {\r\n                \"type\": \"string\"\r\n              },\r\n              \"outline\": {\r\n                \"type\": \"string\"\n              }\n            }\n          },\n          \"projection\": {\n            \"type\": \"object\",\n            \"additionalProperties\": false,\n            \"description\": \"Canonical projection metadata for this node type. Projection layers may adapt presentation, but official renderers should use this as the source for type glyphs, labels, and media lookup.\",\n            \"properties\": {\n              \"icon\": {\n                \"type\": \"string\",\n                \"description\": \"Stable icon identifier for renderers that use an icon library or built-in glyph set.\"\n              },\n              \"icon_label\": {\n                \"type\": \"string\",\n                \"description\": \"Short fallback label when no media asset or icon library glyph is available.\"\n              },\n              \"asset_path\": {\n                \"type\": \"string\",\n                \"description\": \"Relative path to the canonical projection media asset for this type.\"\n              },\n              \"media_node\": {\n                \"type\": \"string\",\n                \"description\": \"Optional media node id that represents the canonical projection asset for this type.\"\n              },\n              \"subtype_asset_path_template\": {\n                \"type\": \"string\",\n                \"description\": \"Optional relative path template for subtype projection media. Use {type} and {subtype} placeholders.\"\n              }\n            }\n          }\n        }\n      }\n    }\r\n  }\r\n}\r\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;, &quot;$id&quot;: &quot;https://xananode.org/schemas/xananode-node-types.schema.v0.3.0.json&quot;, &quot;title&quot;: &quot;XanaNode Node Type Registry&quot;, &quot;description&quot;: &quot;Canonical and extension node type registry for XanaNode-compatible knowledge substrates.&quot;, &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [ &quot;version&quot;, &quot;node_types&quot; ], &quot;properties&quot;: { &quot;version&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;namespace&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*$&quot; }, &quot;media_conventions&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;description&quot;: &quot;Portable projection asset path conventions for node type and subtype media.&quot;, &quot;properties&quot;: { &quot;node_type_asset_path_template&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Relative path template for node type projection media. Use {type} as the node type placeholder.&quot; }, &quot;node_subtype_asset_path_template&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Relative path template for node subtype projection media. Use {type} and {subtype} placeholders.&quot; } } }, &quot;node_types&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [ &quot;namespace&quot;, &quot;id&quot;, &quot;type&quot;, &quot;label&quot;, &quot;purpose&quot;, &quot;allowed_subtypes&quot;, &quot;color&quot; ], &quot;properties&quot;: { &quot;namespace&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*$&quot; }, &quot;id&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:[a-z][a-z0-9_-]*$&quot; }, &quot;type&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^[a-z][a-z0-9_-]*$&quot; }, &quot;label&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;purpose&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;core&quot;: { &quot;type&quot;: &quot;boolean&quot; }, &quot;extends&quot;: { &quot;type&quot;: [ &quot;string&quot;, &quot;null&quot; ], &quot;pattern&quot;: &quot;^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*(:[a-z][a-z0-9_-]*)?$&quot; }, &quot;allowed_subtypes&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } }, &quot;required_frontmatter&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } }, &quot;recommended_frontmatter&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;string&quot; } }, &quot;color&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [ &quot;bg&quot;, &quot;fg&quot;, &quot;outline&quot; ], &quot;properties&quot;: { &quot;bg&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;fg&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;outline&quot;: { &quot;type&quot;: &quot;string&quot; } } }, &quot;projection&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;description&quot;: &quot;Canonical projection metadata for this node type. Projection layers may adapt presentation, but official renderers should use this as the source for type glyphs, labels, and media lookup.&quot;, &quot;properties&quot;: { &quot;icon&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Stable icon identifier for renderers that use an icon library or built-in glyph set.&quot; }, &quot;icon_label&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Short fallback label when no media asset or icon library glyph is available.&quot; }, &quot;asset_path&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Relative path to the canonical projection media asset for this type.&quot; }, &quot;media_node&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Optional media node id that represents the canonical projection asset for this type.&quot; }, &quot;subtype_asset_path_template&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Optional relative path template for subtype projection media. Use {type} and {subtype} placeholders.&quot; } } } } } } } }</p>",
      "url": "/schema/protocol-artifact-schemas-xananode-node-types.schema.v0.3.0.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/xananode-node-types.schema.v0.3.0.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-xananode-node-types.schema.v0.3.0.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-xananode-node-types.v0.3.0.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-xananode-node-types.v0.3.0.json",
      "title": "Schemas / XanaNode Node Types v0.3.0",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "A canonical schema or registry artifact published as XanaNode Node Types v0.3.0.",
      "content": "{\n  \"version\": \"0.3.0\",\n  \"node_types\": [\n    {\n      \"type\": \"person\",\n      \"label\": \"Person\",\n      \"color\": {\n        \"bg\": \"#8bd3ff\",\n        \"fg\": \"#071827\",\n        \"outline\": \"#d8f1ff\"\n      },\n      \"purpose\": \"A human actor who created, influenced, witnessed, argued, documented, or participated in something.\",\n      \"allowed_subtypes\": [\n        \"writer\",\n        \"researcher\",\n        \"engineer\",\n        \"critic\",\n        \"artist\",\n        \"founder\",\n        \"scientist\",\n        \"programmer\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"roles\",\n        \"primary_media\",\n        \"people\",\n        \"concepts\",\n        \"sources\",\n        \"projects\",\n        \"events\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:person\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"person\",\n        \"icon_label\": \"P\",\n        \"asset_path\": \"assets/projection/node-types/person.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/person/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"concept\",\n      \"label\": \"Concept\",\n      \"color\": {\n        \"bg\": \"#91f2a6\",\n        \"fg\": \"#062010\",\n        \"outline\": \"#dcffe4\"\n      },\n      \"purpose\": \"An idea, pattern, theory, failure mode, or explanatory structure. A concept is built from claims.\",\n      \"allowed_subtypes\": [\n        \"theory\",\n        \"principle\",\n        \"failure_mode\",\n        \"method\",\n        \"pattern\",\n        \"distinction\",\n        \"frame\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"claims\",\n        \"concepts\",\n        \"sources\",\n        \"people\",\n        \"projects\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:concept\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"concept\",\n        \"icon_label\": \"C\",\n        \"asset_path\": \"assets/projection/node-types/concept.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/concept/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"claim\",\n      \"label\": \"Claim\",\n      \"color\": {\n        \"bg\": \"#ff6b6b\",\n        \"fg\": \"#1a0000\",\n        \"outline\": \"#ffe0e0\"\n      },\n      \"purpose\": \"A specific assertion that can be supported, disputed, revised, deprecated, or rejected.\",\n      \"allowed_subtypes\": [\n        \"definition\",\n        \"historical\",\n        \"causal\",\n        \"interpretive\",\n        \"predictive\",\n        \"normative\",\n        \"comparative\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"status\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"confidence\",\n        \"claim_type\",\n        \"evidence\",\n        \"counterevidence\",\n        \"concepts\",\n        \"sources\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:claim\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"claim\",\n        \"icon_label\": \"C\",\n        \"asset_path\": \"assets/projection/node-types/claim.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/claim/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"source\",\n      \"label\": \"Source\",\n      \"color\": {\n        \"bg\": \"#ff9f7a\",\n        \"fg\": \"#2a1208\",\n        \"outline\": \"#ffe4d9\"\n      },\n      \"purpose\": \"A reference work, transcript, paper, book, talk, article, dataset, or primary evidence item.\",\n      \"allowed_subtypes\": [\n        \"book\",\n        \"paper\",\n        \"article\",\n        \"transcript\",\n        \"talk\",\n        \"interview\",\n        \"dataset\",\n        \"website\",\n        \"official_site\",\n        \"documentation\",\n        \"git_repository\",\n        \"social_profile\",\n        \"support_page\",\n        \"web_snapshot\",\n        \"radio_series\",\n        \"radio_episode\",\n        \"television_series\",\n        \"television_episode\",\n        \"stage_play\",\n        \"audio_drama\",\n        \"archive\",\n        \"license\",\n        \"legal_policy\",\n        \"trademark_policy\",\n        \"notice\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"author\",\n        \"year\",\n        \"source_url\",\n        \"archive_url\",\n        \"license\",\n        \"rights_status\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:source\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"source\",\n        \"icon_label\": \"S\",\n        \"asset_path\": \"assets/projection/node-types/source.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/source/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"essay\",\n      \"label\": \"Essay\",\n      \"color\": {\n        \"bg\": \"#f59ec3\",\n        \"fg\": \"#1f1020\",\n        \"outline\": \"#ffe3f0\"\n      },\n      \"purpose\": \"A human-authored argument that connects claims, sources, observations, and concepts.\",\n      \"allowed_subtypes\": [\n        \"argument\",\n        \"explainer\",\n        \"critique\",\n        \"manifesto\",\n        \"analysis\",\n        \"reflection\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"claims\",\n        \"concepts\",\n        \"people\",\n        \"sources\",\n        \"observations\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:essay\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"essay\",\n        \"icon_label\": \"E\",\n        \"asset_path\": \"assets/projection/node-types/essay.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/essay/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"observation\",\n      \"label\": \"Observation\",\n      \"color\": {\n        \"bg\": \"#ef476f\",\n        \"fg\": \"#2a0610\",\n        \"outline\": \"#ffd7e0\"\n      },\n      \"purpose\": \"A real-world case, symptom, example, incident, failure, or pattern being analyzed.\",\n      \"allowed_subtypes\": [\n        \"case_study\",\n        \"failure\",\n        \"news_event\",\n        \"symptom\",\n        \"anomaly\",\n        \"example\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"observed_date\",\n        \"source_url\",\n        \"concepts\",\n        \"claims\",\n        \"sources\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:observation\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"observation\",\n        \"icon_label\": \"O\",\n        \"asset_path\": \"assets/projection/node-types/observation.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/observation/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"media\",\n      \"label\": \"Media\",\n      \"color\": {\n        \"bg\": \"#55d6be\",\n        \"fg\": \"#04201a\",\n        \"outline\": \"#dcfff8\"\n      },\n      \"purpose\": \"An image, video, audio clip, screenshot, diagram, document, or other media item with provenance.\",\n      \"allowed_subtypes\": [\n        \"image\",\n        \"video\",\n        \"audio\",\n        \"document\",\n        \"screenshot\",\n        \"diagram\",\n        \"clip\",\n        \"scan\",\n        \"logo\",\n        \"thumbnail\",\n        \"web_snapshot\",\n        \"source_snapshot\",\n        \"favicon\",\n        \"touch_icon\",\n        \"app_icon\",\n        \"branding_icon\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"media_type\",\n        \"importance\",\n        \"summary\",\n        \"alt\",\n        \"rights_status\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"file\",\n        \"asset_path\",\n        \"asset_role\",\n        \"mime_type\",\n        \"caption\",\n        \"creator\",\n        \"created_date\",\n        \"source_name\",\n        \"source_url\",\n        \"license\",\n        \"license_url\",\n        \"depicts\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:media\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"media\",\n        \"icon_label\": \"M\",\n        \"asset_path\": \"assets/projection/node-types/media.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/media/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"item\",\n      \"label\": \"Item\",\n      \"color\": {\n        \"bg\": \"#f4b183\",\n        \"fg\": \"#25170a\",\n        \"outline\": \"#ffe8d6\"\n      },\n      \"purpose\": \"A discrete physical thing, product, ingredient, component, tool, or other tangible object that can be counted, assembled, consumed, used, or stored.\",\n      \"allowed_subtypes\": [\n        \"material\",\n        \"ingredient\",\n        \"component\",\n        \"tool\",\n        \"artifact\",\n        \"appliance\",\n        \"container\",\n        \"utensil\",\n        \"finished_item\",\n        \"spare_part\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"quantity\",\n        \"unit\",\n        \"weight\",\n        \"dimensions\",\n        \"condition\",\n        \"material_composition\",\n        \"components\",\n        \"ingredients\",\n        \"primary_media\",\n        \"source\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:item\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"item\",\n        \"icon_label\": \"I\",\n        \"asset_path\": \"assets/projection/node-types/item.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/item/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"event\",\n      \"label\": \"Event\",\n      \"color\": {\n        \"bg\": \"#f59e0b\",\n        \"fg\": \"#1a0a00\",\n        \"outline\": \"#fff3e0\"\n      },\n      \"purpose\": \"Something that happened at a time and optionally at a place.\",\n      \"allowed_subtypes\": [\n        \"conference\",\n        \"talk\",\n        \"publication_event\",\n        \"meeting\",\n        \"release\",\n        \"incident\",\n        \"historical_event\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"date\",\n        \"start_date\",\n        \"end_date\",\n        \"place\",\n        \"people\",\n        \"organizations\",\n        \"sources\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:event\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"event\",\n        \"icon_label\": \"E\",\n        \"asset_path\": \"assets/projection/node-types/event.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/event/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"place\",\n      \"label\": \"Place\",\n      \"color\": {\n        \"bg\": \"#84cc16\",\n        \"fg\": \"#0a1a00\",\n        \"outline\": \"#e8ffe0\"\n      },\n      \"purpose\": \"A physical or virtual location where people, projects, organizations, or events exist or occurred.\",\n      \"allowed_subtypes\": [\n        \"city\",\n        \"building\",\n        \"lab\",\n        \"institution_site\",\n        \"online_space\",\n        \"country\",\n        \"region\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"location\",\n        \"geo\",\n        \"organizations\",\n        \"events\",\n        \"projects\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:place\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"place\",\n        \"icon_label\": \"P\",\n        \"asset_path\": \"assets/projection/node-types/place.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/place/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"organization\",\n      \"label\": \"Organization\",\n      \"color\": {\n        \"bg\": \"#f0abfc\",\n        \"fg\": \"#1e1028\",\n        \"outline\": \"#fde8ff\"\n      },\n      \"purpose\": \"A company, institution, agency, lab, school, collective, standards body, nonprofit, or group.\",\n      \"allowed_subtypes\": [\n        \"company\",\n        \"university\",\n        \"lab\",\n        \"agency\",\n        \"nonprofit\",\n        \"standards_body\",\n        \"publisher\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"website\",\n        \"founded\",\n        \"people\",\n        \"projects\",\n        \"technologies\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:organization\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"organization\",\n        \"icon_label\": \"O\",\n        \"asset_path\": \"assets/projection/node-types/organization.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/organization/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"project\",\n      \"label\": \"Project\",\n      \"color\": {\n        \"bg\": \"#ffd166\",\n        \"fg\": \"#1d1500\",\n        \"outline\": \"#fff0c2\"\n      },\n      \"purpose\": \"A built, proposed, fictional, abandoned, or active system with a purpose and lineage.\",\n      \"allowed_subtypes\": [\n        \"software\",\n        \"research_project\",\n        \"fictional_system\",\n        \"prototype\",\n        \"standard\",\n        \"platform\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"status\",\n        \"people\",\n        \"organizations\",\n        \"technologies\",\n        \"sources\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:project\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"project\",\n        \"icon_label\": \"P\",\n        \"asset_path\": \"assets/projection/node-types/project.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/project/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"technology\",\n      \"label\": \"Technology\",\n      \"color\": {\n        \"bg\": \"#06b6d4\",\n        \"fg\": \"#04131a\",\n        \"outline\": \"#d9fbff\"\n      },\n      \"purpose\": \"A tool, protocol, model, platform, architecture, method, or technical system.\",\n      \"allowed_subtypes\": [\n        \"protocol\",\n        \"language\",\n        \"model\",\n        \"platform\",\n        \"architecture\",\n        \"tool\",\n        \"format\",\n        \"algorithm\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"projects\",\n        \"organizations\",\n        \"sources\",\n        \"concepts\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:technology\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"technology\",\n        \"icon_label\": \"T\",\n        \"asset_path\": \"assets/projection/node-types/technology.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/technology/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"publication\",\n      \"label\": \"Publication\",\n      \"color\": {\n        \"bg\": \"#a78bfa\",\n        \"fg\": \"#140f22\",\n        \"outline\": \"#ede3ff\"\n      },\n      \"purpose\": \"A released intellectual or creative work such as a book, article, paper, film, episode, or talk.\",\n      \"allowed_subtypes\": [\n        \"book\",\n        \"paper\",\n        \"article\",\n        \"film\",\n        \"episode\",\n        \"series\",\n        \"season\",\n        \"installment\",\n        \"trilogy\",\n        \"saga\",\n        \"omnibus\",\n        \"pilot\",\n        \"talk\",\n        \"adaptation\",\n        \"edition\",\n        \"reissue\",\n        \"podcast\",\n        \"webpage\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"author\",\n        \"publisher\",\n        \"year\",\n        \"source_url\",\n        \"license\",\n        \"rights_status\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:publication\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"publication\",\n        \"icon_label\": \"P\",\n        \"asset_path\": \"assets/projection/node-types/publication.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/publication/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"community\",\n      \"label\": \"Community\",\n      \"color\": {\n        \"bg\": \"#fb923c\",\n        \"fg\": \"#201006\",\n        \"outline\": \"#ffe7d6\"\n      },\n      \"purpose\": \"A group organized around an identity, platform, shared work, practice, interest, or tradition.\",\n      \"allowed_subtypes\": [\n        \"forum\",\n        \"professional\",\n        \"open_source\",\n        \"fan\",\n        \"research\",\n        \"local\",\n        \"online\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"website\",\n        \"people\",\n        \"projects\",\n        \"events\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:community\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"community\",\n        \"icon_label\": \"C\",\n        \"asset_path\": \"assets/projection/node-types/community.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/community/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"relationship\",\n      \"label\": \"Relationship\",\n      \"color\": {\n        \"bg\": \"#ec4899\",\n        \"fg\": \"#240812\",\n        \"outline\": \"#ffd8ea\"\n      },\n      \"purpose\": \"A first-class edge treated as a node because the relationship itself has history, evidence, dispute, or explanation.\",\n      \"allowed_subtypes\": [\n        \"friendship\",\n        \"influence\",\n        \"collaboration\",\n        \"citation\",\n        \"dispute\",\n        \"lineage\",\n        \"dependency\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"source_node\",\n        \"target_node\",\n        \"relationship_type\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"evidence\",\n        \"confidence\",\n        \"status\",\n        \"asserted_by\",\n        \"reviewed_by\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:relationship\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"relationship\",\n        \"icon_label\": \"R\",\n        \"asset_path\": \"assets/projection/node-types/relationship.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/relationship/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"revision\",\n      \"label\": \"Revision\",\n      \"color\": {\n        \"bg\": \"#94a3b8\",\n        \"fg\": \"#0f172a\",\n        \"outline\": \"#dde5f2\"\n      },\n      \"purpose\": \"An immutable historical version of another node.\",\n      \"allowed_subtypes\": [\n        \"node_revision\",\n        \"claim_revision\",\n        \"relationship_revision\",\n        \"media_revision\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"revises\",\n        \"revision_id\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"created_by\",\n        \"created_date\",\n        \"supersedes\",\n        \"superseded_by\",\n        \"change_summary\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:revision\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"revision\",\n        \"icon_label\": \"R\",\n        \"asset_path\": \"assets/projection/node-types/revision.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/revision/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"trail\",\n      \"label\": \"Trail\",\n      \"color\": {\n        \"bg\": \"#fb8500\",\n        \"fg\": \"#241100\",\n        \"outline\": \"#ffe3be\"\n      },\n      \"purpose\": \"A curated route through the graph.\",\n      \"allowed_subtypes\": [\n        \"introductory\",\n        \"historical\",\n        \"argument\",\n        \"evidence_path\",\n        \"teaching_path\",\n        \"dispute_path\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"nodes\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"concepts\",\n        \"people\",\n        \"sources\",\n        \"claims\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:trail\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"trail\",\n        \"icon_label\": \"T\",\n        \"asset_path\": \"assets/projection/node-types/trail.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/trail/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"schema\",\n      \"label\": \"Schema\",\n      \"color\": {\n        \"bg\": \"#e2e8f0\",\n        \"fg\": \"#111827\",\n        \"outline\": \"#ffffff\"\n      },\n      \"purpose\": \"A rule, ontology, validation document, or governance definition used by XanaNode itself.\",\n      \"allowed_subtypes\": [\n        \"node_type_schema\",\n        \"relationship_type_schema\",\n        \"validation_rule\",\n        \"governance_rule\",\n        \"style_rule\",\n        \"node_subtype_schema\",\n        \"relationship_category_schema\",\n        \"property_registry_entry\",\n        \"canonical_schema_record\",\n        \"namespace_record\",\n        \"protocol_artifact\",\n        \"term\",\n        \"schema_term\",\n        \"schema_field\",\n        \"semantic_rule\",\n        \"projection_style_rule\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"version\",\n        \"status\",\n        \"source_url\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:schema\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"schema\",\n        \"icon_label\": \"S\",\n        \"asset_path\": \"assets/projection/node-types/schema.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/schema/{subtype}.svg\"\n      }\n    },\n    {\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:fragment\",\n      \"type\": \"fragment\",\n      \"label\": \"Fragment\",\n      \"color\": {\n        \"bg\": \"#38bdf8\",\n        \"fg\": \"#03131f\",\n        \"outline\": \"#d8f4ff\"\n      },\n      \"purpose\": \"A stable, addressable portion of another node, source, media object, or publication used for deep linking, quotation, citation, transclusion, and revision-aware reference.\",\n      \"allowed_subtypes\": [\n        \"section\",\n        \"paragraph\",\n        \"sentence\",\n        \"quote\",\n        \"code_block\",\n        \"data_range\",\n        \"media_segment\",\n        \"image_region\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"source_node\",\n        \"fragment_id\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"tumbler\",\n        \"source_revision\",\n        \"content_hash\",\n        \"selector\",\n        \"start_offset\",\n        \"end_offset\",\n        \"byte_range\",\n        \"line_range\",\n        \"time_range\",\n        \"rights_status\"\n      ],\n      \"projection\": {\n        \"icon\": \"fragment\",\n        \"icon_label\": \"F\",\n        \"asset_path\": \"assets/projection/node-types/fragment.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/fragment/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"question\",\n      \"label\": \"Question\",\n      \"color\": {\n        \"bg\": \"#fef08a\",\n        \"fg\": \"#1f1a00\",\n        \"outline\": \"#fff8c9\"\n      },\n      \"purpose\": \"An explicit inquiry, prompt, research question, or unresolved ask that motivates investigation and can be answered, partially answered, disputed, or left open.\",\n      \"allowed_subtypes\": [\n        \"research_question\",\n        \"open_question\",\n        \"design_question\",\n        \"historical_question\",\n        \"prediction_question\",\n        \"diagnostic_question\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"status\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"question_text\",\n        \"review_status\",\n        \"research_priority\",\n        \"concepts\",\n        \"claims\",\n        \"sources\",\n        \"answers\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:question\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"question\",\n        \"icon_label\": \"Q\",\n        \"asset_path\": \"assets/projection/node-types/question.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/question/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"hypothesis\",\n      \"label\": \"Hypothesis\",\n      \"color\": {\n        \"bg\": \"#c4b5fd\",\n        \"fg\": \"#171022\",\n        \"outline\": \"#ede9fe\"\n      },\n      \"purpose\": \"A provisional explanation, prediction, or model that can be tested, supported, falsified, revised, or abandoned.\",\n      \"allowed_subtypes\": [\n        \"scientific\",\n        \"design\",\n        \"historical\",\n        \"diagnostic\",\n        \"prediction\",\n        \"interpretive\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"status\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"confidence\",\n        \"uncertainty_level\",\n        \"evidence_strength\",\n        \"tests\",\n        \"claims\",\n        \"sources\",\n        \"questions\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:hypothesis\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"hypothesis\",\n        \"icon_label\": \"H\",\n        \"asset_path\": \"assets/projection/node-types/hypothesis.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/hypothesis/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"problem\",\n      \"label\": \"Problem\",\n      \"color\": {\n        \"bg\": \"#f97316\",\n        \"fg\": \"#211006\",\n        \"outline\": \"#ffedd5\"\n      },\n      \"purpose\": \"A difficulty, failure mode, design challenge, risk, or open need that organizes inquiry and work.\",\n      \"allowed_subtypes\": [\n        \"research_problem\",\n        \"design_problem\",\n        \"implementation_problem\",\n        \"governance_problem\",\n        \"risk\",\n        \"failure_mode\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"status\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"research_priority\",\n        \"requires_information\",\n        \"claims\",\n        \"questions\",\n        \"projects\",\n        \"sources\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:problem\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"problem\",\n        \"icon_label\": \"P\",\n        \"asset_path\": \"assets/projection/node-types/problem.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/problem/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"knowledge_gap\",\n      \"label\": \"Knowledge Gap\",\n      \"color\": {\n        \"bg\": \"#64748b\",\n        \"fg\": \"#f8fafc\",\n        \"outline\": \"#cbd5e1\"\n      },\n      \"purpose\": \"A known absence, uncertainty, missing source, missing citation, lost document, unknown author, or unresolved area in a substrate.\",\n      \"allowed_subtypes\": [\n        \"missing_source\",\n        \"missing_citation\",\n        \"unknown_author\",\n        \"lost_document\",\n        \"historical_uncertainty\",\n        \"incomplete_context\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"status\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"uncertainty_level\",\n        \"review_status\",\n        \"research_priority\",\n        \"requires_source\",\n        \"requires_context\",\n        \"questions\",\n        \"sources\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:knowledge_gap\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"knowledge_gap\",\n        \"icon_label\": \"KG\",\n        \"asset_path\": \"assets/projection/node-types/knowledge_gap.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/knowledge_gap/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"communication\",\n      \"label\": \"Communication\",\n      \"color\": {\n        \"bg\": \"#22d3ee\",\n        \"fg\": \"#04131a\",\n        \"outline\": \"#cffafe\"\n      },\n      \"purpose\": \"A first-class communication event or artifact whose topology, directionality, participants, and pattern affect how knowledge moved.\",\n      \"allowed_subtypes\": [\n        \"conversation\",\n        \"message\",\n        \"broadcast\",\n        \"publication\",\n        \"discussion\",\n        \"debate\",\n        \"interview\",\n        \"presentation\",\n        \"meeting\",\n        \"thread\",\n        \"forum\",\n        \"chat\",\n        \"announcement\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"communication_model\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"communication_pattern\",\n        \"participants\",\n        \"audience\",\n        \"medium\",\n        \"start_date\",\n        \"end_date\",\n        \"source_url\",\n        \"sources\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:communication\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"communication\",\n        \"icon_label\": \"C\",\n        \"asset_path\": \"assets/projection/node-types/communication.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/communication/{subtype}.svg\"\n      }\n    },\n    {\n      \"type\": \"response\",\n      \"label\": \"Response\",\n      \"color\": {\n        \"bg\": \"#7dd3fc\",\n        \"fg\": \"#03131f\",\n        \"outline\": \"#e0f2fe\"\n      },\n      \"purpose\": \"A reply, answer, rebuttal, clarification, or follow-up that responds to a question, communication, claim, or prior response.\",\n      \"allowed_subtypes\": [\n        \"answer\",\n        \"reply\",\n        \"rebuttal\",\n        \"clarification\",\n        \"follow_up\",\n        \"comment\",\n        \"review_response\"\n      ],\n      \"required_frontmatter\": [\n        \"title\",\n        \"type\",\n        \"importance\",\n        \"summary\",\n        \"relationships\"\n      ],\n      \"recommended_frontmatter\": [\n        \"provided_by\",\n        \"answered_question\",\n        \"communication\",\n        \"confidence\",\n        \"review_status\",\n        \"sources\"\n      ],\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:response\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"response\",\n        \"icon_label\": \"R\",\n        \"asset_path\": \"assets/projection/node-types/response.svg\",\n        \"subtype_asset_path_template\": \"assets/projection/node-subtypes/response/{subtype}.svg\"\n      }\n    }\n  ],\n  \"media_conventions\": {\n    \"node_type_asset_path_template\": \"assets/projection/node-types/{type}.svg\",\n    \"node_subtype_asset_path_template\": \"assets/projection/node-subtypes/{type}/{subtype}.svg\"\n  }\n}\n",
      "html": "<p>{ &quot;version&quot;: &quot;0.3.0&quot;, &quot;node_types&quot;: [ { &quot;type&quot;: &quot;person&quot;, &quot;label&quot;: &quot;Person&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#8bd3ff&quot;, &quot;fg&quot;: &quot;#071827&quot;, &quot;outline&quot;: &quot;#d8f1ff&quot; }, &quot;purpose&quot;: &quot;A human actor who created, influenced, witnessed, argued, documented, or participated in something.&quot;, &quot;allowed_subtypes&quot;: [ &quot;writer&quot;, &quot;researcher&quot;, &quot;engineer&quot;, &quot;critic&quot;, &quot;artist&quot;, &quot;founder&quot;, &quot;scientist&quot;, &quot;programmer&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;roles&quot;, &quot;primary_media&quot;, &quot;people&quot;, &quot;concepts&quot;, &quot;sources&quot;, &quot;projects&quot;, &quot;events&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:person&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;person&quot;, &quot;icon_label&quot;: &quot;P&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/person.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/person/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;concept&quot;, &quot;label&quot;: &quot;Concept&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#91f2a6&quot;, &quot;fg&quot;: &quot;#062010&quot;, &quot;outline&quot;: &quot;#dcffe4&quot; }, &quot;purpose&quot;: &quot;An idea, pattern, theory, failure mode, or explanatory structure. A concept is built from claims.&quot;, &quot;allowed_subtypes&quot;: [ &quot;theory&quot;, &quot;principle&quot;, &quot;failure_mode&quot;, &quot;method&quot;, &quot;pattern&quot;, &quot;distinction&quot;, &quot;frame&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;claims&quot;, &quot;concepts&quot;, &quot;sources&quot;, &quot;people&quot;, &quot;projects&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:concept&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;concept&quot;, &quot;icon_label&quot;: &quot;C&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/concept.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/concept/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;claim&quot;, &quot;label&quot;: &quot;Claim&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#ff6b6b&quot;, &quot;fg&quot;: &quot;#1a0000&quot;, &quot;outline&quot;: &quot;#ffe0e0&quot; }, &quot;purpose&quot;: &quot;A specific assertion that can be supported, disputed, revised, deprecated, or rejected.&quot;, &quot;allowed_subtypes&quot;: [ &quot;definition&quot;, &quot;historical&quot;, &quot;causal&quot;, &quot;interpretive&quot;, &quot;predictive&quot;, &quot;normative&quot;, &quot;comparative&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;status&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;confidence&quot;, &quot;claim_type&quot;, &quot;evidence&quot;, &quot;counterevidence&quot;, &quot;concepts&quot;, &quot;sources&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:claim&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;claim&quot;, &quot;icon_label&quot;: &quot;C&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/claim.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/claim/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;source&quot;, &quot;label&quot;: &quot;Source&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#ff9f7a&quot;, &quot;fg&quot;: &quot;#2a1208&quot;, &quot;outline&quot;: &quot;#ffe4d9&quot; }, &quot;purpose&quot;: &quot;A reference work, transcript, paper, book, talk, article, dataset, or primary evidence item.&quot;, &quot;allowed_subtypes&quot;: [ &quot;book&quot;, &quot;paper&quot;, &quot;article&quot;, &quot;transcript&quot;, &quot;talk&quot;, &quot;interview&quot;, &quot;dataset&quot;, &quot;website&quot;, &quot;official_site&quot;, &quot;documentation&quot;, &quot;git_repository&quot;, &quot;social_profile&quot;, &quot;support_page&quot;, &quot;web_snapshot&quot;, &quot;radio_series&quot;, &quot;radio_episode&quot;, &quot;television_series&quot;, &quot;television_episode&quot;, &quot;stage_play&quot;, &quot;audio_drama&quot;, &quot;archive&quot;, &quot;license&quot;, &quot;legal_policy&quot;, &quot;trademark_policy&quot;, &quot;notice&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;author&quot;, &quot;year&quot;, &quot;source_url&quot;, &quot;archive_url&quot;, &quot;license&quot;, &quot;rights_status&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:source&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;source&quot;, &quot;icon_label&quot;: &quot;S&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/source.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/source/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;essay&quot;, &quot;label&quot;: &quot;Essay&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#f59ec3&quot;, &quot;fg&quot;: &quot;#1f1020&quot;, &quot;outline&quot;: &quot;#ffe3f0&quot; }, &quot;purpose&quot;: &quot;A human-authored argument that connects claims, sources, observations, and concepts.&quot;, &quot;allowed_subtypes&quot;: [ &quot;argument&quot;, &quot;explainer&quot;, &quot;critique&quot;, &quot;manifesto&quot;, &quot;analysis&quot;, &quot;reflection&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;claims&quot;, &quot;concepts&quot;, &quot;people&quot;, &quot;sources&quot;, &quot;observations&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:essay&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;essay&quot;, &quot;icon_label&quot;: &quot;E&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/essay.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/essay/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;observation&quot;, &quot;label&quot;: &quot;Observation&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#ef476f&quot;, &quot;fg&quot;: &quot;#2a0610&quot;, &quot;outline&quot;: &quot;#ffd7e0&quot; }, &quot;purpose&quot;: &quot;A real-world case, symptom, example, incident, failure, or pattern being analyzed.&quot;, &quot;allowed_subtypes&quot;: [ &quot;case_study&quot;, &quot;failure&quot;, &quot;news_event&quot;, &quot;symptom&quot;, &quot;anomaly&quot;, &quot;example&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;observed_date&quot;, &quot;source_url&quot;, &quot;concepts&quot;, &quot;claims&quot;, &quot;sources&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:observation&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;observation&quot;, &quot;icon_label&quot;: &quot;O&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/observation.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/observation/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;media&quot;, &quot;label&quot;: &quot;Media&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#55d6be&quot;, &quot;fg&quot;: &quot;#04201a&quot;, &quot;outline&quot;: &quot;#dcfff8&quot; }, &quot;purpose&quot;: &quot;An image, video, audio clip, screenshot, diagram, document, or other media item with provenance.&quot;, &quot;allowed_subtypes&quot;: [ &quot;image&quot;, &quot;video&quot;, &quot;audio&quot;, &quot;document&quot;, &quot;screenshot&quot;, &quot;diagram&quot;, &quot;clip&quot;, &quot;scan&quot;, &quot;logo&quot;, &quot;thumbnail&quot;, &quot;web_snapshot&quot;, &quot;source_snapshot&quot;, &quot;favicon&quot;, &quot;touch_icon&quot;, &quot;app_icon&quot;, &quot;branding_icon&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;media_type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;alt&quot;, &quot;rights_status&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;file&quot;, &quot;asset_path&quot;, &quot;asset_role&quot;, &quot;mime_type&quot;, &quot;caption&quot;, &quot;creator&quot;, &quot;created_date&quot;, &quot;source_name&quot;, &quot;source_url&quot;, &quot;license&quot;, &quot;license_url&quot;, &quot;depicts&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:media&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;media&quot;, &quot;icon_label&quot;: &quot;M&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/media.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/media/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;item&quot;, &quot;label&quot;: &quot;Item&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#f4b183&quot;, &quot;fg&quot;: &quot;#25170a&quot;, &quot;outline&quot;: &quot;#ffe8d6&quot; }, &quot;purpose&quot;: &quot;A discrete physical thing, product, ingredient, component, tool, or other tangible object that can be counted, assembled, consumed, used, or stored.&quot;, &quot;allowed_subtypes&quot;: [ &quot;material&quot;, &quot;ingredient&quot;, &quot;component&quot;, &quot;tool&quot;, &quot;artifact&quot;, &quot;appliance&quot;, &quot;container&quot;, &quot;utensil&quot;, &quot;finished_item&quot;, &quot;spare_part&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;quantity&quot;, &quot;unit&quot;, &quot;weight&quot;, &quot;dimensions&quot;, &quot;condition&quot;, &quot;material_composition&quot;, &quot;components&quot;, &quot;ingredients&quot;, &quot;primary_media&quot;, &quot;source&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:item&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;item&quot;, &quot;icon_label&quot;: &quot;I&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/item.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/item/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;event&quot;, &quot;label&quot;: &quot;Event&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#f59e0b&quot;, &quot;fg&quot;: &quot;#1a0a00&quot;, &quot;outline&quot;: &quot;#fff3e0&quot; }, &quot;purpose&quot;: &quot;Something that happened at a time and optionally at a place.&quot;, &quot;allowed_subtypes&quot;: [ &quot;conference&quot;, &quot;talk&quot;, &quot;publication_event&quot;, &quot;meeting&quot;, &quot;release&quot;, &quot;incident&quot;, &quot;historical_event&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;date&quot;, &quot;start_date&quot;, &quot;end_date&quot;, &quot;place&quot;, &quot;people&quot;, &quot;organizations&quot;, &quot;sources&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:event&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;event&quot;, &quot;icon_label&quot;: &quot;E&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/event.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/event/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;place&quot;, &quot;label&quot;: &quot;Place&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#84cc16&quot;, &quot;fg&quot;: &quot;#0a1a00&quot;, &quot;outline&quot;: &quot;#e8ffe0&quot; }, &quot;purpose&quot;: &quot;A physical or virtual location where people, projects, organizations, or events exist or occurred.&quot;, &quot;allowed_subtypes&quot;: [ &quot;city&quot;, &quot;building&quot;, &quot;lab&quot;, &quot;institution_site&quot;, &quot;online_space&quot;, &quot;country&quot;, &quot;region&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;location&quot;, &quot;geo&quot;, &quot;organizations&quot;, &quot;events&quot;, &quot;projects&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:place&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;place&quot;, &quot;icon_label&quot;: &quot;P&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/place.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/place/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;organization&quot;, &quot;label&quot;: &quot;Organization&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#f0abfc&quot;, &quot;fg&quot;: &quot;#1e1028&quot;, &quot;outline&quot;: &quot;#fde8ff&quot; }, &quot;purpose&quot;: &quot;A company, institution, agency, lab, school, collective, standards body, nonprofit, or group.&quot;, &quot;allowed_subtypes&quot;: [ &quot;company&quot;, &quot;university&quot;, &quot;lab&quot;, &quot;agency&quot;, &quot;nonprofit&quot;, &quot;standards_body&quot;, &quot;publisher&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;website&quot;, &quot;founded&quot;, &quot;people&quot;, &quot;projects&quot;, &quot;technologies&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:organization&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;organization&quot;, &quot;icon_label&quot;: &quot;O&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/organization.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/organization/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;project&quot;, &quot;label&quot;: &quot;Project&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#ffd166&quot;, &quot;fg&quot;: &quot;#1d1500&quot;, &quot;outline&quot;: &quot;#fff0c2&quot; }, &quot;purpose&quot;: &quot;A built, proposed, fictional, abandoned, or active system with a purpose and lineage.&quot;, &quot;allowed_subtypes&quot;: [ &quot;software&quot;, &quot;research_project&quot;, &quot;fictional_system&quot;, &quot;prototype&quot;, &quot;standard&quot;, &quot;platform&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;status&quot;, &quot;people&quot;, &quot;organizations&quot;, &quot;technologies&quot;, &quot;sources&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:project&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;project&quot;, &quot;icon_label&quot;: &quot;P&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/project.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/project/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;technology&quot;, &quot;label&quot;: &quot;Technology&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#06b6d4&quot;, &quot;fg&quot;: &quot;#04131a&quot;, &quot;outline&quot;: &quot;#d9fbff&quot; }, &quot;purpose&quot;: &quot;A tool, protocol, model, platform, architecture, method, or technical system.&quot;, &quot;allowed_subtypes&quot;: [ &quot;protocol&quot;, &quot;language&quot;, &quot;model&quot;, &quot;platform&quot;, &quot;architecture&quot;, &quot;tool&quot;, &quot;format&quot;, &quot;algorithm&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;projects&quot;, &quot;organizations&quot;, &quot;sources&quot;, &quot;concepts&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:technology&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;technology&quot;, &quot;icon_label&quot;: &quot;T&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/technology.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/technology/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;publication&quot;, &quot;label&quot;: &quot;Publication&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#a78bfa&quot;, &quot;fg&quot;: &quot;#140f22&quot;, &quot;outline&quot;: &quot;#ede3ff&quot; }, &quot;purpose&quot;: &quot;A released intellectual or creative work such as a book, article, paper, film, episode, or talk.&quot;, &quot;allowed_subtypes&quot;: [ &quot;book&quot;, &quot;paper&quot;, &quot;article&quot;, &quot;film&quot;, &quot;episode&quot;, &quot;series&quot;, &quot;season&quot;, &quot;installment&quot;, &quot;trilogy&quot;, &quot;saga&quot;, &quot;omnibus&quot;, &quot;pilot&quot;, &quot;talk&quot;, &quot;adaptation&quot;, &quot;edition&quot;, &quot;reissue&quot;, &quot;podcast&quot;, &quot;webpage&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;author&quot;, &quot;publisher&quot;, &quot;year&quot;, &quot;source_url&quot;, &quot;license&quot;, &quot;rights_status&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:publication&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;publication&quot;, &quot;icon_label&quot;: &quot;P&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/publication.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/publication/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;community&quot;, &quot;label&quot;: &quot;Community&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#fb923c&quot;, &quot;fg&quot;: &quot;#201006&quot;, &quot;outline&quot;: &quot;#ffe7d6&quot; }, &quot;purpose&quot;: &quot;A group organized around an identity, platform, shared work, practice, interest, or tradition.&quot;, &quot;allowed_subtypes&quot;: [ &quot;forum&quot;, &quot;professional&quot;, &quot;open_source&quot;, &quot;fan&quot;, &quot;research&quot;, &quot;local&quot;, &quot;online&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;website&quot;, &quot;people&quot;, &quot;projects&quot;, &quot;events&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:community&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;community&quot;, &quot;icon_label&quot;: &quot;C&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/community.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/community/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;relationship&quot;, &quot;label&quot;: &quot;Relationship&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#ec4899&quot;, &quot;fg&quot;: &quot;#240812&quot;, &quot;outline&quot;: &quot;#ffd8ea&quot; }, &quot;purpose&quot;: &quot;A first-class edge treated as a node because the relationship itself has history, evidence, dispute, or explanation.&quot;, &quot;allowed_subtypes&quot;: [ &quot;friendship&quot;, &quot;influence&quot;, &quot;collaboration&quot;, &quot;citation&quot;, &quot;dispute&quot;, &quot;lineage&quot;, &quot;dependency&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;source_node&quot;, &quot;target_node&quot;, &quot;relationship_type&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;evidence&quot;, &quot;confidence&quot;, &quot;status&quot;, &quot;asserted_by&quot;, &quot;reviewed_by&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:relationship&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;relationship&quot;, &quot;icon_label&quot;: &quot;R&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/relationship.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/relationship/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;revision&quot;, &quot;label&quot;: &quot;Revision&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#94a3b8&quot;, &quot;fg&quot;: &quot;#0f172a&quot;, &quot;outline&quot;: &quot;#dde5f2&quot; }, &quot;purpose&quot;: &quot;An immutable historical version of another node.&quot;, &quot;allowed_subtypes&quot;: [ &quot;node_revision&quot;, &quot;claim_revision&quot;, &quot;relationship_revision&quot;, &quot;media_revision&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;revises&quot;, &quot;revision_id&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;created_by&quot;, &quot;created_date&quot;, &quot;supersedes&quot;, &quot;superseded_by&quot;, &quot;change_summary&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:revision&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;revision&quot;, &quot;icon_label&quot;: &quot;R&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/revision.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/revision/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;trail&quot;, &quot;label&quot;: &quot;Trail&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#fb8500&quot;, &quot;fg&quot;: &quot;#241100&quot;, &quot;outline&quot;: &quot;#ffe3be&quot; }, &quot;purpose&quot;: &quot;A curated route through the graph.&quot;, &quot;allowed_subtypes&quot;: [ &quot;introductory&quot;, &quot;historical&quot;, &quot;argument&quot;, &quot;evidence_path&quot;, &quot;teaching_path&quot;, &quot;dispute_path&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;nodes&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;concepts&quot;, &quot;people&quot;, &quot;sources&quot;, &quot;claims&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:trail&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;trail&quot;, &quot;icon_label&quot;: &quot;T&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/trail.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/trail/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;schema&quot;, &quot;label&quot;: &quot;Schema&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#e2e8f0&quot;, &quot;fg&quot;: &quot;#111827&quot;, &quot;outline&quot;: &quot;#ffffff&quot; }, &quot;purpose&quot;: &quot;A rule, ontology, validation document, or governance definition used by XanaNode itself.&quot;, &quot;allowed_subtypes&quot;: [ &quot;node_type_schema&quot;, &quot;relationship_type_schema&quot;, &quot;validation_rule&quot;, &quot;governance_rule&quot;, &quot;style_rule&quot;, &quot;node_subtype_schema&quot;, &quot;relationship_category_schema&quot;, &quot;property_registry_entry&quot;, &quot;canonical_schema_record&quot;, &quot;namespace_record&quot;, &quot;protocol_artifact&quot;, &quot;term&quot;, &quot;schema_term&quot;, &quot;schema_field&quot;, &quot;semantic_rule&quot;, &quot;projection_style_rule&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;version&quot;, &quot;status&quot;, &quot;source_url&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:schema&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;schema&quot;, &quot;icon_label&quot;: &quot;S&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/schema.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/schema/{subtype}.svg&quot; } }, { &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:fragment&quot;, &quot;type&quot;: &quot;fragment&quot;, &quot;label&quot;: &quot;Fragment&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#38bdf8&quot;, &quot;fg&quot;: &quot;#03131f&quot;, &quot;outline&quot;: &quot;#d8f4ff&quot; }, &quot;purpose&quot;: &quot;A stable, addressable portion of another node, source, media object, or publication used for deep linking, quotation, citation, transclusion, and revision-aware reference.&quot;, &quot;allowed_subtypes&quot;: [ &quot;section&quot;, &quot;paragraph&quot;, &quot;sentence&quot;, &quot;quote&quot;, &quot;code_block&quot;, &quot;data_range&quot;, &quot;media_segment&quot;, &quot;image_region&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;source_node&quot;, &quot;fragment_id&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;tumbler&quot;, &quot;source_revision&quot;, &quot;content_hash&quot;, &quot;selector&quot;, &quot;start_offset&quot;, &quot;end_offset&quot;, &quot;byte_range&quot;, &quot;line_range&quot;, &quot;time_range&quot;, &quot;rights_status&quot; ], &quot;projection&quot;: { &quot;icon&quot;: &quot;fragment&quot;, &quot;icon_label&quot;: &quot;F&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/fragment.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/fragment/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;question&quot;, &quot;label&quot;: &quot;Question&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#fef08a&quot;, &quot;fg&quot;: &quot;#1f1a00&quot;, &quot;outline&quot;: &quot;#fff8c9&quot; }, &quot;purpose&quot;: &quot;An explicit inquiry, prompt, research question, or unresolved ask that motivates investigation and can be answered, partially answered, disputed, or left open.&quot;, &quot;allowed_subtypes&quot;: [ &quot;research_question&quot;, &quot;open_question&quot;, &quot;design_question&quot;, &quot;historical_question&quot;, &quot;prediction_question&quot;, &quot;diagnostic_question&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;status&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;question_text&quot;, &quot;review_status&quot;, &quot;research_priority&quot;, &quot;concepts&quot;, &quot;claims&quot;, &quot;sources&quot;, &quot;answers&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:question&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;question&quot;, &quot;icon_label&quot;: &quot;Q&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/question.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/question/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;hypothesis&quot;, &quot;label&quot;: &quot;Hypothesis&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#c4b5fd&quot;, &quot;fg&quot;: &quot;#171022&quot;, &quot;outline&quot;: &quot;#ede9fe&quot; }, &quot;purpose&quot;: &quot;A provisional explanation, prediction, or model that can be tested, supported, falsified, revised, or abandoned.&quot;, &quot;allowed_subtypes&quot;: [ &quot;scientific&quot;, &quot;design&quot;, &quot;historical&quot;, &quot;diagnostic&quot;, &quot;prediction&quot;, &quot;interpretive&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;status&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;confidence&quot;, &quot;uncertainty_level&quot;, &quot;evidence_strength&quot;, &quot;tests&quot;, &quot;claims&quot;, &quot;sources&quot;, &quot;questions&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:hypothesis&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;hypothesis&quot;, &quot;icon_label&quot;: &quot;H&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/hypothesis.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/hypothesis/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;problem&quot;, &quot;label&quot;: &quot;Problem&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#f97316&quot;, &quot;fg&quot;: &quot;#211006&quot;, &quot;outline&quot;: &quot;#ffedd5&quot; }, &quot;purpose&quot;: &quot;A difficulty, failure mode, design challenge, risk, or open need that organizes inquiry and work.&quot;, &quot;allowed_subtypes&quot;: [ &quot;research_problem&quot;, &quot;design_problem&quot;, &quot;implementation_problem&quot;, &quot;governance_problem&quot;, &quot;risk&quot;, &quot;failure_mode&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;status&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;research_priority&quot;, &quot;requires_information&quot;, &quot;claims&quot;, &quot;questions&quot;, &quot;projects&quot;, &quot;sources&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:problem&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;problem&quot;, &quot;icon_label&quot;: &quot;P&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/problem.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/problem/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;knowledge_gap&quot;, &quot;label&quot;: &quot;Knowledge Gap&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#64748b&quot;, &quot;fg&quot;: &quot;#f8fafc&quot;, &quot;outline&quot;: &quot;#cbd5e1&quot; }, &quot;purpose&quot;: &quot;A known absence, uncertainty, missing source, missing citation, lost document, unknown author, or unresolved area in a substrate.&quot;, &quot;allowed_subtypes&quot;: [ &quot;missing_source&quot;, &quot;missing_citation&quot;, &quot;unknown_author&quot;, &quot;lost_document&quot;, &quot;historical_uncertainty&quot;, &quot;incomplete_context&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;status&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;uncertainty_level&quot;, &quot;review_status&quot;, &quot;research_priority&quot;, &quot;requires_source&quot;, &quot;requires_context&quot;, &quot;questions&quot;, &quot;sources&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:knowledge_gap&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;knowledge_gap&quot;, &quot;icon_label&quot;: &quot;KG&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/knowledge_gap.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/knowledge_gap/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;communication&quot;, &quot;label&quot;: &quot;Communication&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#22d3ee&quot;, &quot;fg&quot;: &quot;#04131a&quot;, &quot;outline&quot;: &quot;#cffafe&quot; }, &quot;purpose&quot;: &quot;A first-class communication event or artifact whose topology, directionality, participants, and pattern affect how knowledge moved.&quot;, &quot;allowed_subtypes&quot;: [ &quot;conversation&quot;, &quot;message&quot;, &quot;broadcast&quot;, &quot;publication&quot;, &quot;discussion&quot;, &quot;debate&quot;, &quot;interview&quot;, &quot;presentation&quot;, &quot;meeting&quot;, &quot;thread&quot;, &quot;forum&quot;, &quot;chat&quot;, &quot;announcement&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;communication_model&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;communication_pattern&quot;, &quot;participants&quot;, &quot;audience&quot;, &quot;medium&quot;, &quot;start_date&quot;, &quot;end_date&quot;, &quot;source_url&quot;, &quot;sources&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:communication&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;communication&quot;, &quot;icon_label&quot;: &quot;C&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/communication.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/communication/{subtype}.svg&quot; } }, { &quot;type&quot;: &quot;response&quot;, &quot;label&quot;: &quot;Response&quot;, &quot;color&quot;: { &quot;bg&quot;: &quot;#7dd3fc&quot;, &quot;fg&quot;: &quot;#03131f&quot;, &quot;outline&quot;: &quot;#e0f2fe&quot; }, &quot;purpose&quot;: &quot;A reply, answer, rebuttal, clarification, or follow-up that responds to a question, communication, claim, or prior response.&quot;, &quot;allowed_subtypes&quot;: [ &quot;answer&quot;, &quot;reply&quot;, &quot;rebuttal&quot;, &quot;clarification&quot;, &quot;follow_up&quot;, &quot;comment&quot;, &quot;review_response&quot; ], &quot;required_frontmatter&quot;: [ &quot;title&quot;, &quot;type&quot;, &quot;importance&quot;, &quot;summary&quot;, &quot;relationships&quot; ], &quot;recommended_frontmatter&quot;: [ &quot;provided_by&quot;, &quot;answered_question&quot;, &quot;communication&quot;, &quot;confidence&quot;, &quot;review_status&quot;, &quot;sources&quot; ], &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:response&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;response&quot;, &quot;icon_label&quot;: &quot;R&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/response.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/response/{subtype}.svg&quot; } } ], &quot;media_conventions&quot;: { &quot;node_type_asset_path_template&quot;: &quot;assets/projection/node-types/{type}.svg&quot;, &quot;node_subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/{type}/{subtype}.svg&quot; } }</p>",
      "url": "/schema/protocol-artifact-schemas-xananode-node-types.v0.3.0.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/xananode-node-types.v0.3.0.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-xananode-node-types.v0.3.0.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-xananode-property-registry.v0.1.0.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-xananode-property-registry.v0.1.0.json",
      "title": "Schemas / XanaNode Property Registry v0.1.0",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "A canonical schema or registry artifact published as XanaNode Property Registry v0.1.0.",
      "content": "{\n  \"$schema\": \"https://xananode.org/schemas/property-registry.schema.json\",\n  \"id\": \"xananode.core:property-registry\",\n  \"version\": \"0.1.0\",\n  \"description\": \"Canonical common properties for open-ended substrate node adjectives.\",\n  \"property_registry\": [\n    {\n      \"id\": \"birth_date\",\n      \"label\": \"Birth date\",\n      \"description\": \"Calendar date on which a person, organization, project, or entity began.\",\n      \"category\": \"time\",\n      \"aliases\": [\n        \"born\",\n        \"date_of_birth\",\n        \"founded_date\"\n      ],\n      \"applies_to\": [\n        \"person\",\n        \"organization\",\n        \"project\"\n      ],\n      \"unit_system\": \"ISO-8601\",\n      \"value_schema\": {\n        \"type\": \"string\",\n        \"format\": \"date\"\n      },\n      \"examples\": [\n        \"1955-02-24\"\n      ]\n    },\n    {\n      \"id\": \"geo_coordinates\",\n      \"label\": \"Geographic coordinates\",\n      \"description\": \"WGS84 latitude and longitude coordinates for a place or geographically located entity.\",\n      \"category\": \"space\",\n      \"aliases\": [\n        \"coordinates\",\n        \"lat_lon\",\n        \"location\"\n      ],\n      \"applies_to\": [\n        \"place\",\n        \"event\",\n        \"organization\",\n        \"source\",\n        \"media\"\n      ],\n      \"unit_system\": \"WGS84\",\n      \"value_schema\": {\n        \"type\": \"object\",\n        \"additionalProperties\": false,\n        \"required\": [\n          \"latitude\",\n          \"longitude\"\n        ],\n        \"properties\": {\n          \"latitude\": {\n            \"type\": \"number\",\n            \"minimum\": -90,\n            \"maximum\": 90\n          },\n          \"longitude\": {\n            \"type\": \"number\",\n            \"minimum\": -180,\n            \"maximum\": 180\n          },\n          \"altitude_m\": {\n            \"type\": \"number\"\n          },\n          \"crs\": {\n            \"type\": \"string\",\n            \"const\": \"WGS84\"\n          }\n        }\n      },\n      \"examples\": [\n        {\n          \"latitude\": 37.33182,\n          \"longitude\": -122.03118,\n          \"crs\": \"WGS84\"\n        }\n      ]\n    },\n    {\n      \"id\": \"currency_value\",\n      \"label\": \"Currency value\",\n      \"description\": \"A monetary amount with an ISO 4217 currency code.\",\n      \"category\": \"money\",\n      \"aliases\": [\n        \"price\",\n        \"cost\",\n        \"market_value\",\n        \"amount_money\"\n      ],\n      \"applies_to\": [\n        \"claim\",\n        \"observation\",\n        \"source\",\n        \"project\"\n      ],\n      \"unit_system\": \"ISO-4217\",\n      \"value_schema\": {\n        \"type\": \"object\",\n        \"additionalProperties\": false,\n        \"required\": [\n          \"amount\",\n          \"currency\"\n        ],\n        \"properties\": {\n          \"amount\": {\n            \"type\": \"number\"\n          },\n          \"currency\": {\n            \"type\": \"string\",\n            \"pattern\": \"^[A-Z]{3}$\"\n          },\n          \"as_of\": {\n            \"type\": \"string\",\n            \"format\": \"date-time\"\n          }\n        }\n      },\n      \"examples\": [\n        {\n          \"amount\": 199.99,\n          \"currency\": \"USD\",\n          \"as_of\": \"2026-01-01T00:00:00Z\"\n        }\n      ]\n    },\n    {\n      \"id\": \"measurement_si\",\n      \"label\": \"SI measurement\",\n      \"description\": \"A quantified physical or conceptual measurement expressed in SI-compatible units.\",\n      \"category\": \"quantity\",\n      \"aliases\": [\n        \"measurement\",\n        \"quantity\",\n        \"metric_value\"\n      ],\n      \"unit_system\": \"SI\",\n      \"value_schema\": {\n        \"type\": \"object\",\n        \"additionalProperties\": false,\n        \"required\": [\n          \"value\",\n          \"unit\"\n        ],\n        \"properties\": {\n          \"value\": {\n            \"type\": \"number\"\n          },\n          \"unit\": {\n            \"type\": \"string\"\n          },\n          \"quantity_kind\": {\n            \"type\": \"string\"\n          },\n          \"uncertainty\": {\n            \"type\": \"number\"\n          }\n        }\n      },\n      \"examples\": [\n        {\n          \"value\": 1.82,\n          \"unit\": \"m\",\n          \"quantity_kind\": \"height\"\n        }\n      ]\n    },\n    {\n      \"id\": \"external_identifier\",\n      \"label\": \"External identifier\",\n      \"description\": \"A typed identifier from an external authority or registry.\",\n      \"category\": \"reference\",\n      \"aliases\": [\n        \"wikidata_id\",\n        \"doi\",\n        \"orcid\",\n        \"authority_id\"\n      ],\n      \"unit_system\": \"none\",\n      \"value_schema\": {\n        \"type\": \"object\",\n        \"additionalProperties\": false,\n        \"required\": [\n          \"authority\",\n          \"value\"\n        ],\n        \"properties\": {\n          \"authority\": {\n            \"type\": \"string\"\n          },\n          \"value\": {\n            \"type\": \"string\"\n          },\n          \"url\": {\n            \"type\": \"string\",\n            \"format\": \"uri\"\n          }\n        }\n      },\n      \"examples\": [\n        {\n          \"authority\": \"wikidata\",\n          \"value\": \"Q19837\",\n          \"url\": \"https://www.wikidata.org/wiki/Q19837\"\n        }\n      ]\n    },\n    {\n      \"id\": \"uncertainty_level\",\n      \"label\": \"Uncertainty level\",\n      \"category\": \"epistemology\",\n      \"description\": \"A normalized level describing how uncertain a node, relationship, answer, or interpretation remains.\",\n      \"aliases\": [\n        \"certainty_level\",\n        \"unknown_level\",\n        \"confidence_gap\"\n      ],\n      \"applies_to\": [\n        \"claim\",\n        \"question\",\n        \"hypothesis\",\n        \"knowledge_gap\",\n        \"relationship\",\n        \"response\"\n      ],\n      \"unit_system\": \"none\",\n      \"value_schema\": {\n        \"type\": \"string\",\n        \"enum\": [\n          \"unknown\",\n          \"low\",\n          \"medium\",\n          \"high\",\n          \"unresolved\"\n        ]\n      },\n      \"examples\": [\n        \"high\"\n      ]\n    },\n    {\n      \"id\": \"review_status\",\n      \"label\": \"Review status\",\n      \"category\": \"workflow\",\n      \"description\": \"The current review state for a node, relationship, pack, claim, or suggested merge.\",\n      \"aliases\": [\n        \"validation_status\",\n        \"curation_status\"\n      ],\n      \"applies_to\": [\n        \"claim\",\n        \"question\",\n        \"hypothesis\",\n        \"knowledge_gap\",\n        \"relationship\",\n        \"source\"\n      ],\n      \"unit_system\": \"none\",\n      \"value_schema\": {\n        \"type\": \"string\",\n        \"enum\": [\n          \"draft\",\n          \"needs_review\",\n          \"under_review\",\n          \"approved\",\n          \"rejected\",\n          \"deprecated\"\n        ]\n      },\n      \"examples\": [\n        \"needs_review\"\n      ]\n    },\n    {\n      \"id\": \"research_priority\",\n      \"label\": \"Research priority\",\n      \"category\": \"attention\",\n      \"description\": \"A priority signal for deciding which inquiry, problem, or knowledge gap deserves attention first.\",\n      \"aliases\": [\n        \"priority\",\n        \"attention_priority\"\n      ],\n      \"applies_to\": [\n        \"question\",\n        \"problem\",\n        \"knowledge_gap\",\n        \"claim\",\n        \"hypothesis\"\n      ],\n      \"unit_system\": \"none\",\n      \"value_schema\": {\n        \"type\": \"integer\",\n        \"minimum\": 1,\n        \"maximum\": 5\n      },\n      \"examples\": [\n        5\n      ]\n    },\n    {\n      \"id\": \"evidence_strength\",\n      \"label\": \"Evidence strength\",\n      \"category\": \"epistemology\",\n      \"description\": \"A compact assessment of the strength of evidence available for a claim, hypothesis, answer, or relationship.\",\n      \"aliases\": [\n        \"support_strength\",\n        \"evidence_quality\"\n      ],\n      \"applies_to\": [\n        \"claim\",\n        \"hypothesis\",\n        \"response\",\n        \"relationship\"\n      ],\n      \"unit_system\": \"none\",\n      \"value_schema\": {\n        \"type\": \"string\",\n        \"enum\": [\n          \"none\",\n          \"weak\",\n          \"moderate\",\n          \"strong\",\n          \"decisive\",\n          \"contested\"\n        ]\n      },\n      \"examples\": [\n        \"moderate\"\n      ]\n    },\n    {\n      \"id\": \"communication_model\",\n      \"label\": \"Communication model\",\n      \"category\": \"communication\",\n      \"description\": \"The participant topology of a communication.\",\n      \"aliases\": [\n        \"communication_topology\",\n        \"topology\"\n      ],\n      \"applies_to\": [\n        \"communication\",\n        \"event\",\n        \"publication\",\n        \"source\"\n      ],\n      \"unit_system\": \"none\",\n      \"value_schema\": {\n        \"type\": \"string\",\n        \"enum\": [\n          \"one_to_one\",\n          \"one_to_many\",\n          \"many_to_one\",\n          \"many_to_many\"\n        ]\n      },\n      \"examples\": [\n        \"many_to_many\"\n      ]\n    },\n    {\n      \"id\": \"communication_pattern\",\n      \"label\": \"Communication pattern\",\n      \"category\": \"communication\",\n      \"description\": \"The semantic pattern of a communication beyond participant count.\",\n      \"aliases\": [\n        \"interaction_pattern\",\n        \"discourse_pattern\"\n      ],\n      \"applies_to\": [\n        \"communication\",\n        \"event\",\n        \"publication\",\n        \"source\"\n      ],\n      \"unit_system\": \"none\",\n      \"value_schema\": {\n        \"type\": \"string\",\n        \"enum\": [\n          \"dialogue\",\n          \"broadcast\",\n          \"collection\",\n          \"coordination\",\n          \"negotiation\",\n          \"debate\",\n          \"consensus\",\n          \"instruction\",\n          \"query_response\",\n          \"publication\"\n        ]\n      },\n      \"examples\": [\n        \"query_response\"\n      ]\n    }\n  ]\n}\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://xananode.org/schemas/property-registry.schema.json&quot;, &quot;id&quot;: &quot;xananode.core:property-registry&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;description&quot;: &quot;Canonical common properties for open-ended substrate node adjectives.&quot;, &quot;property_registry&quot;: [ { &quot;id&quot;: &quot;birth_date&quot;, &quot;label&quot;: &quot;Birth date&quot;, &quot;description&quot;: &quot;Calendar date on which a person, organization, project, or entity began.&quot;, &quot;category&quot;: &quot;time&quot;, &quot;aliases&quot;: [ &quot;born&quot;, &quot;date_of_birth&quot;, &quot;founded_date&quot; ], &quot;applies_to&quot;: [ &quot;person&quot;, &quot;organization&quot;, &quot;project&quot; ], &quot;unit_system&quot;: &quot;ISO-8601&quot;, &quot;value_schema&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date&quot; }, &quot;examples&quot;: [ &quot;1955-02-24&quot; ] }, { &quot;id&quot;: &quot;geo_coordinates&quot;, &quot;label&quot;: &quot;Geographic coordinates&quot;, &quot;description&quot;: &quot;WGS84 latitude and longitude coordinates for a place or geographically located entity.&quot;, &quot;category&quot;: &quot;space&quot;, &quot;aliases&quot;: [ &quot;coordinates&quot;, &quot;lat_lon&quot;, &quot;location&quot; ], &quot;applies_to&quot;: [ &quot;place&quot;, &quot;event&quot;, &quot;organization&quot;, &quot;source&quot;, &quot;media&quot; ], &quot;unit_system&quot;: &quot;WGS84&quot;, &quot;value_schema&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [ &quot;latitude&quot;, &quot;longitude&quot; ], &quot;properties&quot;: { &quot;latitude&quot;: { &quot;type&quot;: &quot;number&quot;, &quot;minimum&quot;: -90, &quot;maximum&quot;: 90 }, &quot;longitude&quot;: { &quot;type&quot;: &quot;number&quot;, &quot;minimum&quot;: -180, &quot;maximum&quot;: 180 }, &quot;altitude_m&quot;: { &quot;type&quot;: &quot;number&quot; }, &quot;crs&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;const&quot;: &quot;WGS84&quot; } } }, &quot;examples&quot;: [ { &quot;latitude&quot;: 37.33182, &quot;longitude&quot;: -122.03118, &quot;crs&quot;: &quot;WGS84&quot; } ] }, { &quot;id&quot;: &quot;currency_value&quot;, &quot;label&quot;: &quot;Currency value&quot;, &quot;description&quot;: &quot;A monetary amount with an ISO 4217 currency code.&quot;, &quot;category&quot;: &quot;money&quot;, &quot;aliases&quot;: [ &quot;price&quot;, &quot;cost&quot;, &quot;market_value&quot;, &quot;amount_money&quot; ], &quot;applies_to&quot;: [ &quot;claim&quot;, &quot;observation&quot;, &quot;source&quot;, &quot;project&quot; ], &quot;unit_system&quot;: &quot;ISO-4217&quot;, &quot;value_schema&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [ &quot;amount&quot;, &quot;currency&quot; ], &quot;properties&quot;: { &quot;amount&quot;: { &quot;type&quot;: &quot;number&quot; }, &quot;currency&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^[A-Z]{3}$&quot; }, &quot;as_of&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;date-time&quot; } } }, &quot;examples&quot;: [ { &quot;amount&quot;: 199.99, &quot;currency&quot;: &quot;USD&quot;, &quot;as_of&quot;: &quot;2026-01-01T00:00:00Z&quot; } ] }, { &quot;id&quot;: &quot;measurement_si&quot;, &quot;label&quot;: &quot;SI measurement&quot;, &quot;description&quot;: &quot;A quantified physical or conceptual measurement expressed in SI-compatible units.&quot;, &quot;category&quot;: &quot;quantity&quot;, &quot;aliases&quot;: [ &quot;measurement&quot;, &quot;quantity&quot;, &quot;metric_value&quot; ], &quot;unit_system&quot;: &quot;SI&quot;, &quot;value_schema&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [ &quot;value&quot;, &quot;unit&quot; ], &quot;properties&quot;: { &quot;value&quot;: { &quot;type&quot;: &quot;number&quot; }, &quot;unit&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;quantity_kind&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;uncertainty&quot;: { &quot;type&quot;: &quot;number&quot; } } }, &quot;examples&quot;: [ { &quot;value&quot;: 1.82, &quot;unit&quot;: &quot;m&quot;, &quot;quantity_kind&quot;: &quot;height&quot; } ] }, { &quot;id&quot;: &quot;external_identifier&quot;, &quot;label&quot;: &quot;External identifier&quot;, &quot;description&quot;: &quot;A typed identifier from an external authority or registry.&quot;, &quot;category&quot;: &quot;reference&quot;, &quot;aliases&quot;: [ &quot;wikidata_id&quot;, &quot;doi&quot;, &quot;orcid&quot;, &quot;authority_id&quot; ], &quot;unit_system&quot;: &quot;none&quot;, &quot;value_schema&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [ &quot;authority&quot;, &quot;value&quot; ], &quot;properties&quot;: { &quot;authority&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;value&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;url&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;format&quot;: &quot;uri&quot; } } }, &quot;examples&quot;: [ { &quot;authority&quot;: &quot;wikidata&quot;, &quot;value&quot;: &quot;Q19837&quot;, &quot;url&quot;: &quot;https://www.wikidata.org/wiki/Q19837&quot; } ] }, { &quot;id&quot;: &quot;uncertainty_level&quot;, &quot;label&quot;: &quot;Uncertainty level&quot;, &quot;category&quot;: &quot;epistemology&quot;, &quot;description&quot;: &quot;A normalized level describing how uncertain a node, relationship, answer, or interpretation remains.&quot;, &quot;aliases&quot;: [ &quot;certainty_level&quot;, &quot;unknown_level&quot;, &quot;confidence_gap&quot; ], &quot;applies_to&quot;: [ &quot;claim&quot;, &quot;question&quot;, &quot;hypothesis&quot;, &quot;knowledge_gap&quot;, &quot;relationship&quot;, &quot;response&quot; ], &quot;unit_system&quot;: &quot;none&quot;, &quot;value_schema&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [ &quot;unknown&quot;, &quot;low&quot;, &quot;medium&quot;, &quot;high&quot;, &quot;unresolved&quot; ] }, &quot;examples&quot;: [ &quot;high&quot; ] }, { &quot;id&quot;: &quot;review_status&quot;, &quot;label&quot;: &quot;Review status&quot;, &quot;category&quot;: &quot;workflow&quot;, &quot;description&quot;: &quot;The current review state for a node, relationship, pack, claim, or suggested merge.&quot;, &quot;aliases&quot;: [ &quot;validation_status&quot;, &quot;curation_status&quot; ], &quot;applies_to&quot;: [ &quot;claim&quot;, &quot;question&quot;, &quot;hypothesis&quot;, &quot;knowledge_gap&quot;, &quot;relationship&quot;, &quot;source&quot; ], &quot;unit_system&quot;: &quot;none&quot;, &quot;value_schema&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [ &quot;draft&quot;, &quot;needs_review&quot;, &quot;under_review&quot;, &quot;approved&quot;, &quot;rejected&quot;, &quot;deprecated&quot; ] }, &quot;examples&quot;: [ &quot;needs_review&quot; ] }, { &quot;id&quot;: &quot;research_priority&quot;, &quot;label&quot;: &quot;Research priority&quot;, &quot;category&quot;: &quot;attention&quot;, &quot;description&quot;: &quot;A priority signal for deciding which inquiry, problem, or knowledge gap deserves attention first.&quot;, &quot;aliases&quot;: [ &quot;priority&quot;, &quot;attention_priority&quot; ], &quot;applies_to&quot;: [ &quot;question&quot;, &quot;problem&quot;, &quot;knowledge_gap&quot;, &quot;claim&quot;, &quot;hypothesis&quot; ], &quot;unit_system&quot;: &quot;none&quot;, &quot;value_schema&quot;: { &quot;type&quot;: &quot;integer&quot;, &quot;minimum&quot;: 1, &quot;maximum&quot;: 5 }, &quot;examples&quot;: [ 5 ] }, { &quot;id&quot;: &quot;evidence_strength&quot;, &quot;label&quot;: &quot;Evidence strength&quot;, &quot;category&quot;: &quot;epistemology&quot;, &quot;description&quot;: &quot;A compact assessment of the strength of evidence available for a claim, hypothesis, answer, or relationship.&quot;, &quot;aliases&quot;: [ &quot;support_strength&quot;, &quot;evidence_quality&quot; ], &quot;applies_to&quot;: [ &quot;claim&quot;, &quot;hypothesis&quot;, &quot;response&quot;, &quot;relationship&quot; ], &quot;unit_system&quot;: &quot;none&quot;, &quot;value_schema&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [ &quot;none&quot;, &quot;weak&quot;, &quot;moderate&quot;, &quot;strong&quot;, &quot;decisive&quot;, &quot;contested&quot; ] }, &quot;examples&quot;: [ &quot;moderate&quot; ] }, { &quot;id&quot;: &quot;communication_model&quot;, &quot;label&quot;: &quot;Communication model&quot;, &quot;category&quot;: &quot;communication&quot;, &quot;description&quot;: &quot;The participant topology of a communication.&quot;, &quot;aliases&quot;: [ &quot;communication_topology&quot;, &quot;topology&quot; ], &quot;applies_to&quot;: [ &quot;communication&quot;, &quot;event&quot;, &quot;publication&quot;, &quot;source&quot; ], &quot;unit_system&quot;: &quot;none&quot;, &quot;value_schema&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [ &quot;one_to_one&quot;, &quot;one_to_many&quot;, &quot;many_to_one&quot;, &quot;many_to_many&quot; ] }, &quot;examples&quot;: [ &quot;many_to_many&quot; ] }, { &quot;id&quot;: &quot;communication_pattern&quot;, &quot;label&quot;: &quot;Communication pattern&quot;, &quot;category&quot;: &quot;communication&quot;, &quot;description&quot;: &quot;The semantic pattern of a communication beyond participant count.&quot;, &quot;aliases&quot;: [ &quot;interaction_pattern&quot;, &quot;discourse_pattern&quot; ], &quot;applies_to&quot;: [ &quot;communication&quot;, &quot;event&quot;, &quot;publication&quot;, &quot;source&quot; ], &quot;unit_system&quot;: &quot;none&quot;, &quot;value_schema&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [ &quot;dialogue&quot;, &quot;broadcast&quot;, &quot;collection&quot;, &quot;coordination&quot;, &quot;negotiation&quot;, &quot;debate&quot;, &quot;consensus&quot;, &quot;instruction&quot;, &quot;query_response&quot;, &quot;publication&quot; ] }, &quot;examples&quot;: [ &quot;query_response&quot; ] } ] }</p>",
      "url": "/schema/protocol-artifact-schemas-xananode-property-registry.v0.1.0.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/xananode-property-registry.v0.1.0.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-xananode-property-registry.v0.1.0.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-xananode-relationship-types.schema.v0.5.0.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-xananode-relationship-types.schema.v0.5.0.json",
      "title": "Schemas / XanaNode Relationship Types Schema v0.5.0",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for XanaNode Relationship Types Schema v0.5.0.",
      "content": "{\r\n  \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\r\n  \"$id\": \"https://xananode.org/schemas/xananode-relationship-types.schema.v0.5.0.json\",\n  \"title\": \"XanaNode Relationship Type Registry\",\r\n  \"description\": \"Canonical and extension relationship type registry for XanaNode-compatible knowledge substrates.\",\r\n  \"type\": \"object\",\r\n  \"additionalProperties\": false,\r\n  \"required\": [\r\n    \"version\",\r\n    \"relationship_types\"\r\n  ],\r\n  \"properties\": {\r\n    \"version\": {\r\n      \"type\": \"string\"\r\n    },\r\n    \"namespace\": {\n      \"type\": \"string\",\n      \"pattern\": \"^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*$\"\n    },\n    \"media_conventions\": {\n      \"type\": \"object\",\n      \"additionalProperties\": false,\n      \"description\": \"Portable projection asset path conventions for relationship type media.\",\n      \"properties\": {\n        \"relationship_type_asset_path_template\": {\n          \"type\": \"string\",\n          \"description\": \"Relative path template for relationship type projection media. Use {type} as the relationship type placeholder.\"\n        },\n        \"relationship_category_asset_path_template\": {\n          \"type\": \"string\",\n          \"description\": \"Relative path template for relationship category projection media. Use {category} as the category placeholder.\"\n        }\n      }\n    },\n    \"relationship_types\": {\n      \"type\": \"array\",\r\n      \"items\": {\r\n        \"type\": \"object\",\r\n        \"additionalProperties\": false,\r\n        \"required\": [\r\n          \"namespace\",\r\n          \"id\",\r\n          \"type\",\r\n          \"label\",\r\n          \"category\",\r\n          \"meaning\",\n          \"color\",\n          \"inverse_color\",\n          \"line_style\",\n          \"inverse_line_style\",\n          \"default_weight\",\n          \"default_visibility\"\n        ],\r\n        \"properties\": {\r\n          \"namespace\": {\r\n            \"type\": \"string\",\r\n            \"pattern\": \"^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*$\"\r\n          },\r\n          \"id\": {\r\n            \"type\": \"string\",\r\n            \"pattern\": \"^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:[a-z][a-z0-9_-]*$\"\r\n          },\r\n          \"type\": {\r\n            \"type\": \"string\",\r\n            \"pattern\": \"^[a-z][a-z0-9_-]*$\"\r\n          },\r\n          \"label\": {\r\n            \"type\": \"string\"\r\n          },\r\n          \"category\": {\r\n            \"type\": \"string\",\r\n            \"anyOf\": [\r\n              {\r\n                \"enum\": [\r\n                  \"causation\",\r\n                  \"citation\",\r\n                  \"claim_structure\",\r\n                  \"comparison\",\r\n                  \"composition\",\r\n                  \"creation\",\r\n                  \"definition\",\r\n                  \"evidence\",\n                  \"explanation\",\n                  \"generic\",\n                  \"governance\",\n                  \"evolution\",\n                  \"historical\",\n                  \"identity\",\n                  \"influence\",\n                  \"inquiry\",\n                  \"knowledge_workflow\",\n                  \"lineage\",\n                  \"location\",\n                  \"participation\",\n                  \"reasoning\",\n                  \"research_workflow\",\n                  \"representation\",\n                  \"revision\",\n                  \"schema_mapping\",\n                  \"social\",\n                  \"temporal\",\n                  \"uncertainty\",\n                  \"discovery\",\n                  \"cognition\",\n                  \"attention\",\n                  \"communication\"\n                ]\n              },\n              {\r\n                \"pattern\": \"^[a-z][a-z0-9_:-]*$\"\r\n              }\r\n            ]\r\n          },\r\n          \"meaning\": {\r\n            \"type\": \"string\"\r\n          },\r\n          \"inverse\": {\n            \"type\": \"string\"\n          },\n          \"color\": {\n            \"type\": \"string\",\n            \"pattern\": \"^#[0-9A-Fa-f]{6}$\",\n            \"description\": \"Canonical projection color for this relationship type when rendered from source to target.\"\n          },\n          \"inverse_color\": {\n            \"type\": \"string\",\n            \"pattern\": \"^#[0-9A-Fa-f]{6}$\",\n            \"description\": \"Canonical projection color for the inverse reading of this relationship type.\"\n          },\n          \"line_style\": {\n            \"type\": \"string\",\n            \"enum\": [\n              \"solid\",\n              \"dashed\",\n              \"dotted\",\n              \"double\"\n            ],\n            \"description\": \"Canonical projection line style for this relationship type.\"\n          },\n          \"inverse_line_style\": {\n            \"type\": \"string\",\n            \"enum\": [\n              \"solid\",\n              \"dashed\",\n              \"dotted\",\n              \"double\"\n            ],\n            \"description\": \"Canonical projection line style for the inverse reading of this relationship type.\"\n          },\n          \"core\": {\n            \"type\": \"boolean\"\r\n          },\r\n          \"extends\": {\r\n            \"type\": [\r\n              \"string\",\r\n              \"null\"\r\n            ],\r\n            \"pattern\": \"^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*(:[a-z][a-z0-9_-]*)?$\"\r\n          },\r\n          \"default_weight\": {\r\n            \"type\": \"integer\",\r\n            \"minimum\": 1,\r\n            \"maximum\": 5\r\n          },\r\n          \"default_visibility\": {\n            \"type\": \"string\",\n            \"enum\": [\n              \"primary\",\n              \"secondary\",\n              \"background\"\n            ]\n          },\n          \"projection\": {\n            \"type\": \"object\",\n            \"additionalProperties\": false,\n            \"description\": \"Canonical projection metadata for this relationship type.\",\n            \"properties\": {\n              \"icon\": {\n                \"type\": \"string\",\n                \"description\": \"Stable icon identifier for renderers that use an icon library or built-in glyph set.\"\n              },\n              \"icon_label\": {\n                \"type\": \"string\",\n                \"description\": \"Short fallback label when no media asset or icon library glyph is available.\"\n              },\n              \"asset_path\": {\n                \"type\": \"string\",\n                \"description\": \"Relative path to the canonical projection media asset for this relationship type.\"\n              },\n              \"media_node\": {\n                \"type\": \"string\",\n                \"description\": \"Optional media node id that represents the canonical projection asset for this relationship type.\"\n              },\n              \"category_asset_path\": {\n                \"type\": \"string\",\n                \"description\": \"Relative path to a category-level projection media asset used when the specific type asset is absent.\"\n              }\n            }\n          }\n        }\n      }\n    }\r\n  }\r\n}\r\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;, &quot;$id&quot;: &quot;https://xananode.org/schemas/xananode-relationship-types.schema.v0.5.0.json&quot;, &quot;title&quot;: &quot;XanaNode Relationship Type Registry&quot;, &quot;description&quot;: &quot;Canonical and extension relationship type registry for XanaNode-compatible knowledge substrates.&quot;, &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [ &quot;version&quot;, &quot;relationship_types&quot; ], &quot;properties&quot;: { &quot;version&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;namespace&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*$&quot; }, &quot;media_conventions&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;description&quot;: &quot;Portable projection asset path conventions for relationship type media.&quot;, &quot;properties&quot;: { &quot;relationship_type_asset_path_template&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Relative path template for relationship type projection media. Use {type} as the relationship type placeholder.&quot; }, &quot;relationship_category_asset_path_template&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Relative path template for relationship category projection media. Use {category} as the category placeholder.&quot; } } }, &quot;relationship_types&quot;: { &quot;type&quot;: &quot;array&quot;, &quot;items&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;required&quot;: [ &quot;namespace&quot;, &quot;id&quot;, &quot;type&quot;, &quot;label&quot;, &quot;category&quot;, &quot;meaning&quot;, &quot;color&quot;, &quot;inverse_color&quot;, &quot;line_style&quot;, &quot;inverse_line_style&quot;, &quot;default_weight&quot;, &quot;default_visibility&quot; ], &quot;properties&quot;: { &quot;namespace&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*$&quot; }, &quot;id&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*:[a-z][a-z0-9_-]*$&quot; }, &quot;type&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^[a-z][a-z0-9_-]*$&quot; }, &quot;label&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;category&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;anyOf&quot;: [ { &quot;enum&quot;: [ &quot;causation&quot;, &quot;citation&quot;, &quot;claim_structure&quot;, &quot;comparison&quot;, &quot;composition&quot;, &quot;creation&quot;, &quot;definition&quot;, &quot;evidence&quot;, &quot;explanation&quot;, &quot;generic&quot;, &quot;governance&quot;, &quot;evolution&quot;, &quot;historical&quot;, &quot;identity&quot;, &quot;influence&quot;, &quot;inquiry&quot;, &quot;knowledge_workflow&quot;, &quot;lineage&quot;, &quot;location&quot;, &quot;participation&quot;, &quot;reasoning&quot;, &quot;research_workflow&quot;, &quot;representation&quot;, &quot;revision&quot;, &quot;schema_mapping&quot;, &quot;social&quot;, &quot;temporal&quot;, &quot;uncertainty&quot;, &quot;discovery&quot;, &quot;cognition&quot;, &quot;attention&quot;, &quot;communication&quot; ] }, { &quot;pattern&quot;: &quot;^[a-z][a-z0-9_:-]*$&quot; } ] }, &quot;meaning&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;inverse&quot;: { &quot;type&quot;: &quot;string&quot; }, &quot;color&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^#[0-9A-Fa-f]{6}$&quot;, &quot;description&quot;: &quot;Canonical projection color for this relationship type when rendered from source to target.&quot; }, &quot;inverse_color&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;pattern&quot;: &quot;^#[0-9A-Fa-f]{6}$&quot;, &quot;description&quot;: &quot;Canonical projection color for the inverse reading of this relationship type.&quot; }, &quot;line_style&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [ &quot;solid&quot;, &quot;dashed&quot;, &quot;dotted&quot;, &quot;double&quot; ], &quot;description&quot;: &quot;Canonical projection line style for this relationship type.&quot; }, &quot;inverse_line_style&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [ &quot;solid&quot;, &quot;dashed&quot;, &quot;dotted&quot;, &quot;double&quot; ], &quot;description&quot;: &quot;Canonical projection line style for the inverse reading of this relationship type.&quot; }, &quot;core&quot;: { &quot;type&quot;: &quot;boolean&quot; }, &quot;extends&quot;: { &quot;type&quot;: [ &quot;string&quot;, &quot;null&quot; ], &quot;pattern&quot;: &quot;^[a-z][a-z0-9_-]*(\\\\.[a-z][a-z0-9_-]*)*(:[a-z][a-z0-9_-]*)?$&quot; }, &quot;default_weight&quot;: { &quot;type&quot;: &quot;integer&quot;, &quot;minimum&quot;: 1, &quot;maximum&quot;: 5 }, &quot;default_visibility&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;enum&quot;: [ &quot;primary&quot;, &quot;secondary&quot;, &quot;background&quot; ] }, &quot;projection&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;additionalProperties&quot;: false, &quot;description&quot;: &quot;Canonical projection metadata for this relationship type.&quot;, &quot;properties&quot;: { &quot;icon&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Stable icon identifier for renderers that use an icon library or built-in glyph set.&quot; }, &quot;icon_label&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Short fallback label when no media asset or icon library glyph is available.&quot; }, &quot;asset_path&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Relative path to the canonical projection media asset for this relationship type.&quot; }, &quot;media_node&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Optional media node id that represents the canonical projection asset for this relationship type.&quot; }, &quot;category_asset_path&quot;: { &quot;type&quot;: &quot;string&quot;, &quot;description&quot;: &quot;Relative path to a category-level projection media asset used when the specific type asset is absent.&quot; } } } } } } } }</p>",
      "url": "/schema/protocol-artifact-schemas-xananode-relationship-types.schema.v0.5.0.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/xananode-relationship-types.schema.v0.5.0.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-xananode-relationship-types.schema.v0.5.0.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-xananode-relationship-types.v0.5.0.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-xananode-relationship-types.v0.5.0.json",
      "title": "Schemas / XanaNode Relationship Types v0.5.0",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "A canonical schema or registry artifact published as XanaNode Relationship Types v0.5.0.",
      "content": "{\n  \"version\": \"0.5.0\",\n  \"relationship_types\": [\n    {\n      \"type\": \"abstraction_of\",\n      \"label\": \"Abstraction of\",\n      \"category\": \"cognition\",\n      \"meaning\": \"The source abstracts away details from the target while preserving a relevant structure.\",\n      \"inverse\": \"concrete_example_of\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:abstraction_of\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#7c3aed\",\n      \"inverse_color\": \"#ddd6fe\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"abstraction_of\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/abstraction_of.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/cognition.svg\"\n      }\n    },\n    {\n      \"type\": \"alias_of\",\n      \"label\": \"Alias of\",\n      \"category\": \"representation\",\n      \"meaning\": \"The source is an alternative name for the target entity.\",\n      \"inverse\": \"has_alias\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:alias_of\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#f59e0b\",\n      \"inverse_color\": \"#fcd34d\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"alias_of\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/alias_of.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/representation.svg\"\n      }\n    },\n    {\n      \"type\": \"alternative_to\",\n      \"label\": \"Alternative to\",\n      \"category\": \"comparison\",\n      \"meaning\": \"The source is an alternate interpretation, approach, or implementation relative to the target.\",\n      \"inverse\": \"alternative_to\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:alternative_to\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#a78bfa\",\n      \"inverse_color\": \"#ddd6fe\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"alternative_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/alternative_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/comparison.svg\"\n      }\n    },\n    {\n      \"type\": \"analogous_to\",\n      \"label\": \"Analogous to\",\n      \"category\": \"cognition\",\n      \"meaning\": \"The source is analogous to the target in a way that may aid reasoning or explanation.\",\n      \"inverse\": \"analogous_to\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:analogous_to\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#7c3aed\",\n      \"inverse_color\": \"#ddd6fe\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"analogous_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/analogous_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/cognition.svg\"\n      }\n    },\n    {\n      \"type\": \"announced\",\n      \"label\": \"Announced\",\n      \"category\": \"communication\",\n      \"meaning\": \"The source announced the target event, project, release, claim, or decision.\",\n      \"inverse\": \"announced_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:announced\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"announced\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/announced.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/communication.svg\"\n      }\n    },\n    {\n      \"type\": \"answered_in\",\n      \"label\": \"Answered in\",\n      \"category\": \"communication\",\n      \"meaning\": \"The source response, claim, or answer was given in the target communication context.\",\n      \"inverse\": \"had_answer\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:answered_in\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"answered_in\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/answered_in.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/communication.svg\"\n      }\n    },\n    {\n      \"type\": \"answers\",\n      \"label\": \"Answers\",\n      \"category\": \"inquiry\",\n      \"meaning\": \"The source answers the target question or information request.\",\n      \"inverse\": \"answered_by\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:answers\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#2dd4bf\",\n      \"inverse_color\": \"#99f6e4\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"answers\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/answers.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/inquiry.svg\"\n      }\n    },\n    {\n      \"type\": \"anticipated\",\n      \"label\": \"Anticipated\",\n      \"category\": \"influence\",\n      \"meaning\": \"The source anticipated the target without necessarily directly causing it.\",\n      \"inverse\": \"anticipated_by\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:anticipated\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#14b8a6\",\n      \"inverse_color\": \"#99f6e4\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"anticipated\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/anticipated.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/influence.svg\"\n      }\n    },\n    {\n      \"type\": \"anticipates\",\n      \"label\": \"Anticipates\",\n      \"category\": \"historical\",\n      \"meaning\": \"The source foreshadows or historically precedes the target without direct causation.\",\n      \"inverse\": \"anticipated_by\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:anticipates\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#c084fc\",\n      \"inverse_color\": \"#e9d5ff\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"anticipates\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/anticipates.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/historical.svg\"\n      }\n    },\n    {\n      \"type\": \"appears_in\",\n      \"label\": \"Appears in\",\n      \"category\": \"participation\",\n      \"meaning\": \"The source appears in the target work, collection, or event.\",\n      \"inverse\": \"has_appearance\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:appears_in\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#ec4899\",\n      \"inverse_color\": \"#f9a8d4\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"appears_in\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/appears_in.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/participation.svg\"\n      }\n    },\n    {\n      \"type\": \"approved\",\n      \"label\": \"Approved\",\n      \"category\": \"governance\",\n      \"meaning\": \"The source user, reviewer, or process approved the target.\",\n      \"inverse\": \"approved_by\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:approved\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#eab308\",\n      \"inverse_color\": \"#fde047\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"double\",\n      \"projection\": {\n        \"icon\": \"approved\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/approved.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/governance.svg\"\n      }\n    },\n    {\n      \"type\": \"arrives_at\",\n      \"label\": \"Arrives at\",\n      \"category\": \"reasoning\",\n      \"meaning\": \"The source reasoning, argument, or inquiry leads to the target conclusion or position.\",\n      \"inverse\": \"arrived_from\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:arrives_at\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#818cf8\",\n      \"inverse_color\": \"#c7d2fe\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"arrives_at\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/arrives_at.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/reasoning.svg\"\n      }\n    },\n    {\n      \"type\": \"asked\",\n      \"label\": \"Asked\",\n      \"category\": \"communication\",\n      \"meaning\": \"The source asked, posed, or submitted the target question or request.\",\n      \"inverse\": \"asked_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:asked\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"asked\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/asked.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/communication.svg\"\n      }\n    },\n    {\n      \"type\": \"asked_in\",\n      \"label\": \"Asked in\",\n      \"category\": \"communication\",\n      \"meaning\": \"The source question was asked in the target communication context.\",\n      \"inverse\": \"had_question\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:asked_in\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"asked_in\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/asked_in.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/communication.svg\"\n      }\n    },\n    {\n      \"type\": \"authored\",\n      \"label\": \"Authored\",\n      \"category\": \"creation\",\n      \"meaning\": \"The source authored the target.\",\n      \"inverse\": \"authored_by\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:authored\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fb923c\",\n      \"inverse_color\": \"#fed7aa\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"authored\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/authored.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/creation.svg\"\n      }\n    },\n    {\n      \"type\": \"broadcast_to\",\n      \"label\": \"Broadcast to\",\n      \"category\": \"communication\",\n      \"meaning\": \"The source communication, publication, event, or actor broadcast the target content or message to an audience.\",\n      \"inverse\": \"received_broadcast_from\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:broadcast_to\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"broadcast_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/broadcast_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/communication.svg\"\n      }\n    },\n    {\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:broader_than\",\n      \"type\": \"broader_than\",\n      \"label\": \"Broader than\",\n      \"category\": \"schema_mapping\",\n      \"meaning\": \"The source schema type, concept, or relationship is broader or more general than the target.\",\n      \"inverse\": \"narrower_than\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"core\": true,\n      \"extends\": \"related_to\",\n      \"color\": \"#22d3ee\",\n      \"inverse_color\": \"#a5f3fc\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"double\",\n      \"projection\": {\n        \"icon\": \"broader_than\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/broader_than.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/schema_mapping.svg\"\n      }\n    },\n    {\n      \"type\": \"cites\",\n      \"label\": \"Cites\",\n      \"category\": \"citation\",\n      \"meaning\": \"The source cites the target.\",\n      \"inverse\": \"cited_by\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:cites\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"cites\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/cites.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/citation.svg\"\n      }\n    },\n    {\n      \"type\": \"clarifies\",\n      \"label\": \"Clarifies\",\n      \"category\": \"explanation\",\n      \"meaning\": \"The source clarifies, resolves ambiguity in, or makes the target more precise.\",\n      \"inverse\": \"clarified_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:clarifies\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#60a5fa\",\n      \"inverse_color\": \"#bfdbfe\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"clarifies\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/clarifies.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/explanation.svg\"\n      }\n    },\n    {\n      \"type\": \"coined\",\n      \"label\": \"Coined\",\n      \"category\": \"creation\",\n      \"meaning\": \"The source coined the target term.\",\n      \"inverse\": \"coined_by\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:coined\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fb923c\",\n      \"inverse_color\": \"#fed7aa\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"coined\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/coined.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/creation.svg\"\n      }\n    },\n    {\n      \"type\": \"collaborated_with\",\n      \"label\": \"Collaborated with\",\n      \"category\": \"social\",\n      \"meaning\": \"The source collaborated with the target.\",\n      \"inverse\": \"collaborated_with\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:collaborated_with\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fb7185\",\n      \"inverse_color\": \"#fecdd3\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"collaborated_with\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/collaborated_with.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/social.svg\"\n      }\n    },\n    {\n      \"type\": \"communicated_to\",\n      \"label\": \"Communicated to\",\n      \"category\": \"communication\",\n      \"meaning\": \"The source communicated the target message, claim, question, or source to a receiver or audience.\",\n      \"inverse\": \"communication_received_from\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:communicated_to\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"communicated_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/communicated_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/communication.svg\"\n      }\n    },\n    {\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:compatible_with\",\n      \"type\": \"compatible_with\",\n      \"label\": \"Compatible with\",\n      \"category\": \"schema_mapping\",\n      \"meaning\": \"The source schema, substrate, type, field, or relationship can interoperate with the target without destructive conversion.\",\n      \"inverse\": \"compatible_with\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"core\": true,\n      \"extends\": \"related_to\",\n      \"color\": \"#22d3ee\",\n      \"inverse_color\": \"#a5f3fc\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"double\",\n      \"projection\": {\n        \"icon\": \"compatible_with\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/compatible_with.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/schema_mapping.svg\"\n      }\n    },\n    {\n      \"type\": \"contains\",\n      \"label\": \"Contains\",\n      \"category\": \"composition\",\n      \"meaning\": \"The source contains the target.\",\n      \"inverse\": \"part_of\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:contains\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#22c55e\",\n      \"inverse_color\": \"#86efac\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"contains\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/contains.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/composition.svg\"\n      }\n    },\n    {\n      \"type\": \"made_of\",\n      \"label\": \"Made of\",\n      \"category\": \"composition\",\n      \"meaning\": \"The source physical item or structure is made of the target material or substance.\",\n      \"inverse\": \"makes_up\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:made_of\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#22c55e\",\n      \"inverse_color\": \"#86efac\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"made_of\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/made_of.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/composition.svg\"\n      }\n    },\n    {\n      \"type\": \"assembled_from\",\n      \"label\": \"Assembled from\",\n      \"category\": \"composition\",\n      \"meaning\": \"The source physical item or system was assembled from the target parts, components, or ingredients.\",\n      \"inverse\": \"assembled_into\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:assembled_from\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#22c55e\",\n      \"inverse_color\": \"#86efac\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"assembled_from\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/assembled_from.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/composition.svg\"\n      }\n    },\n    {\n      \"type\": \"ingredient_of\",\n      \"label\": \"Ingredient of\",\n      \"category\": \"composition\",\n      \"meaning\": \"The source item is an ingredient in the target recipe, dish, or preparation.\",\n      \"inverse\": \"has_ingredient\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:ingredient_of\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#22c55e\",\n      \"inverse_color\": \"#86efac\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"ingredient_of\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/ingredient_of.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/composition.svg\"\n      }\n    },\n    {\n      \"type\": \"contemporary_of\",\n      \"label\": \"Contemporary of\",\n      \"category\": \"temporal\",\n      \"meaning\": \"The source existed or worked during the same relevant period as the target.\",\n      \"inverse\": \"contemporary_of\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:contemporary_of\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#a3e635\",\n      \"inverse_color\": \"#d9f99d\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"contemporary_of\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/contemporary_of.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/temporal.svg\"\n      }\n    },\n    {\n      \"type\": \"context_for\",\n      \"label\": \"Context for\",\n      \"category\": \"explanation\",\n      \"meaning\": \"The source provides essential background or framing that makes the target intelligible.\",\n      \"inverse\": \"has_context\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:context_for\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#60a5fa\",\n      \"inverse_color\": \"#bfdbfe\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"context_for\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/context_for.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/explanation.svg\"\n      }\n    },\n    {\n      \"type\": \"continues_to\",\n      \"label\": \"Continues to\",\n      \"category\": \"temporal\",\n      \"meaning\": \"The source continues, leads into, or sequences directly to the target.\",\n      \"inverse\": \"continued_from\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:continues_to\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#a3e635\",\n      \"inverse_color\": \"#d9f99d\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"continues_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/continues_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/temporal.svg\"\n      }\n    },\n    {\n      \"type\": \"contradicts\",\n      \"label\": \"Contradicts\",\n      \"category\": \"evidence\",\n      \"meaning\": \"The source directly challenges or conflicts with the target.\",\n      \"inverse\": \"contradicted_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:contradicts\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#10b981\",\n      \"inverse_color\": \"#6ee7b7\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"contradicts\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/contradicts.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/evidence.svg\"\n      }\n    },\n    {\n      \"type\": \"contrasts_with\",\n      \"label\": \"Contrasts with\",\n      \"category\": \"comparison\",\n      \"meaning\": \"The source is usefully contrasted with the target.\",\n      \"inverse\": \"contrasts_with\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:contrasts_with\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#a78bfa\",\n      \"inverse_color\": \"#ddd6fe\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"contrasts_with\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/contrasts_with.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/comparison.svg\"\n      }\n    },\n    {\n      \"type\": \"created\",\n      \"label\": \"Created\",\n      \"category\": \"creation\",\n      \"meaning\": \"The source created the target.\",\n      \"inverse\": \"created_by\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:created\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fb923c\",\n      \"inverse_color\": \"#fed7aa\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"created\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/created.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/creation.svg\"\n      }\n    },\n    {\n      \"type\": \"critical_to\",\n      \"label\": \"Critical to\",\n      \"category\": \"attention\",\n      \"meaning\": \"The source is critical to the target and should be prioritized in navigation, review, or preservation.\",\n      \"inverse\": \"critically_depends_on\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:critical_to\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fbbf24\",\n      \"inverse_color\": \"#fde68a\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"critical_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/critical_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/attention.svg\"\n      }\n    },\n    {\n      \"type\": \"debated_with\",\n      \"label\": \"Debated with\",\n      \"category\": \"communication\",\n      \"meaning\": \"The source debated the target participant, claim, or position.\",\n      \"inverse\": \"debated_with\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:debated_with\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"debated_with\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/debated_with.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/communication.svg\"\n      }\n    },\n    {\n      \"type\": \"deep_links_to\",\n      \"label\": \"Deep links to\",\n      \"category\": \"representation\",\n      \"meaning\": \"The source points to a specific addressable fragment of the target.\",\n      \"inverse\": \"deep_linked_from\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:deep_links_to\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#f59e0b\",\n      \"inverse_color\": \"#fcd34d\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"deep_links_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/deep_links_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/representation.svg\"\n      }\n    },\n    {\n      \"type\": \"defines\",\n      \"label\": \"Defines\",\n      \"category\": \"definition\",\n      \"meaning\": \"The source gives the defining explanation of the target.\",\n      \"inverse\": \"defined_by\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:defines\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#facc15\",\n      \"inverse_color\": \"#fde68a\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"defines\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/defines.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/definition.svg\"\n      }\n    },\n    {\n      \"type\": \"demonstrates\",\n      \"label\": \"Demonstrates\",\n      \"category\": \"evidence\",\n      \"meaning\": \"The source provides an example or demonstration of the target.\",\n      \"inverse\": \"demonstrated_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:demonstrates\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#10b981\",\n      \"inverse_color\": \"#6ee7b7\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"demonstrates\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/demonstrates.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/evidence.svg\"\n      }\n    },\n    {\n      \"type\": \"depends_on\",\n      \"label\": \"Depends on\",\n      \"category\": \"composition\",\n      \"meaning\": \"The source depends on the target.\",\n      \"inverse\": \"dependency_of\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:depends_on\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#22c55e\",\n      \"inverse_color\": \"#86efac\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"depends_on\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/depends_on.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/composition.svg\"\n      }\n    },\n    {\n      \"type\": \"depicts\",\n      \"label\": \"Depicts\",\n      \"category\": \"representation\",\n      \"meaning\": \"The source media depicts the target.\",\n      \"inverse\": \"depicted_by\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:depicts\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#f59e0b\",\n      \"inverse_color\": \"#fcd34d\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"depicts\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/depicts.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/representation.svg\"\n      }\n    },\n    {\n      \"type\": \"derived_from\",\n      \"label\": \"Derived from\",\n      \"category\": \"lineage\",\n      \"meaning\": \"The source descends from or is based on the target.\",\n      \"inverse\": \"derived_into\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:derived_from\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#8b5cf6\",\n      \"inverse_color\": \"#c4b5fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"derived_from\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/derived_from.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/lineage.svg\"\n      }\n    },\n    {\n      \"type\": \"discussed_with\",\n      \"label\": \"Discussed with\",\n      \"category\": \"communication\",\n      \"meaning\": \"The source discussed the target topic, claim, problem, or source with another participant or group.\",\n      \"inverse\": \"discussion_partner_of\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:discussed_with\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"discussed_with\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/discussed_with.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/communication.svg\"\n      }\n    },\n    {\n      \"type\": \"discusses\",\n      \"label\": \"Discusses\",\n      \"category\": \"citation\",\n      \"meaning\": \"The source discusses, explores, or analyzes the target.\",\n      \"inverse\": \"discussed_in\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:discusses\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"discusses\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/discusses.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/citation.svg\"\n      }\n    },\n    {\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:disputed_identity\",\n      \"type\": \"disputed_identity\",\n      \"label\": \"Disputed identity\",\n      \"category\": \"identity\",\n      \"meaning\": \"The source and target have an identity relationship that is contested, ambiguous, or rejected by at least one substrate, contributor, or governance process.\",\n      \"inverse\": \"disputed_identity\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"core\": true,\n      \"extends\": \"disputes\",\n      \"color\": \"#f472b6\",\n      \"inverse_color\": \"#fbcfe8\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"double\",\n      \"projection\": {\n        \"icon\": \"disputed_identity\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/disputed_identity.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/identity.svg\"\n      }\n    },\n    {\n      \"type\": \"disputes\",\n      \"label\": \"Disputes\",\n      \"category\": \"governance\",\n      \"meaning\": \"The source disputes the target.\",\n      \"inverse\": \"disputed_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:disputes\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#eab308\",\n      \"inverse_color\": \"#fde047\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"double\",\n      \"projection\": {\n        \"icon\": \"disputes\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/disputes.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/governance.svg\"\n      }\n    },\n    {\n      \"type\": \"documents\",\n      \"label\": \"Documents\",\n      \"category\": \"evidence\",\n      \"meaning\": \"The source records evidence about the target.\",\n      \"inverse\": \"documented_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:documents\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#10b981\",\n      \"inverse_color\": \"#6ee7b7\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"documents\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/documents.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/evidence.svg\"\n      }\n    },\n    {\n      \"type\": \"enables\",\n      \"label\": \"Enables\",\n      \"category\": \"composition\",\n      \"meaning\": \"The source makes the target possible or easier to achieve.\",\n      \"inverse\": \"enabled_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:enables\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#22c55e\",\n      \"inverse_color\": \"#86efac\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"enables\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/enables.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/composition.svg\"\n      }\n    },\n    {\n      \"type\": \"equivalent_to\",\n      \"label\": \"Equivalent to\",\n      \"category\": \"comparison\",\n      \"meaning\": \"The source is semantically identical or interchangeable with the target.\",\n      \"inverse\": \"equivalent_to\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:equivalent_to\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#a78bfa\",\n      \"inverse_color\": \"#ddd6fe\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"equivalent_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/equivalent_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/comparison.svg\"\n      }\n    },\n    {\n      \"type\": \"evidence_for\",\n      \"label\": \"Evidence for\",\n      \"category\": \"evidence\",\n      \"meaning\": \"The source is evidence for the target claim or relationship.\",\n      \"inverse\": \"has_evidence\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:evidence_for\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#10b981\",\n      \"inverse_color\": \"#6ee7b7\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"evidence_for\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/evidence_for.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/evidence.svg\"\n      }\n    },\n    {\n      \"type\": \"example_of\",\n      \"label\": \"Example of\",\n      \"category\": \"cognition\",\n      \"meaning\": \"The source is an example or concrete instance of the target.\",\n      \"inverse\": \"has_example\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:example_of\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#7c3aed\",\n      \"inverse_color\": \"#ddd6fe\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"example_of\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/example_of.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/cognition.svg\"\n      }\n    },\n    {\n      \"type\": \"explains\",\n      \"label\": \"Explains\",\n      \"category\": \"explanation\",\n      \"meaning\": \"The source provides an explanation of the target - its causes, mechanisms, or meaning.\",\n      \"inverse\": \"explained_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:explains\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#60a5fa\",\n      \"inverse_color\": \"#bfdbfe\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"explains\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/explains.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/explanation.svg\"\n      }\n    },\n    {\n      \"type\": \"extends\",\n      \"label\": \"Extends\",\n      \"category\": \"lineage\",\n      \"meaning\": \"The source extends the target.\",\n      \"inverse\": \"extended_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:extends\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#8b5cf6\",\n      \"inverse_color\": \"#c4b5fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"extends\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/extends.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/lineage.svg\"\n      }\n    },\n    {\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:extension_of\",\n      \"type\": \"extension_of\",\n      \"label\": \"Extension of\",\n      \"category\": \"schema_mapping\",\n      \"meaning\": \"The source custom schema, type, field, or relationship extends the target core schema, type, field, or relationship.\",\n      \"inverse\": \"has_extension\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"core\": true,\n      \"extends\": \"extends\",\n      \"color\": \"#22d3ee\",\n      \"inverse_color\": \"#a5f3fc\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"double\",\n      \"projection\": {\n        \"icon\": \"extension_of\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/extension_of.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/schema_mapping.svg\"\n      }\n    },\n    {\n      \"type\": \"fails_to_answer\",\n      \"label\": \"Fails to answer\",\n      \"category\": \"inquiry\",\n      \"meaning\": \"The source explicitly does not answer the target question, or demonstrates that an attempted answer is inadequate.\",\n      \"inverse\": \"not_answered_by\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:fails_to_answer\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#2dd4bf\",\n      \"inverse_color\": \"#99f6e4\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"fails_to_answer\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/fails_to_answer.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/inquiry.svg\"\n      }\n    },\n    {\n      \"type\": \"falsifies\",\n      \"label\": \"Falsifies\",\n      \"category\": \"research_workflow\",\n      \"meaning\": \"The source falsifies, refutes, or shows the target hypothesis or claim to be false under stated conditions.\",\n      \"inverse\": \"falsified_by\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:falsifies\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#0ea5e9\",\n      \"inverse_color\": \"#7dd3fc\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"falsifies\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/falsifies.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/research_workflow.svg\"\n      }\n    },\n    {\n      \"type\": \"features\",\n      \"label\": \"Features\",\n      \"category\": \"participation\",\n      \"meaning\": \"The source features the target.\",\n      \"inverse\": \"featured_in\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:features\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#ec4899\",\n      \"inverse_color\": \"#f9a8d4\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"features\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/features.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/participation.svg\"\n      }\n    },\n    {\n      \"type\": \"frequently_misunderstood\",\n      \"label\": \"Frequently misunderstood\",\n      \"category\": \"attention\",\n      \"meaning\": \"The source is frequently misunderstood in relation to the target context or audience.\",\n      \"inverse\": \"misunderstanding_context_for\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:frequently_misunderstood\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fbbf24\",\n      \"inverse_color\": \"#fde68a\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"frequently_misunderstood\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/frequently_misunderstood.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/attention.svg\"\n      }\n    },\n    {\n      \"type\": \"friend_of\",\n      \"label\": \"Friend of\",\n      \"category\": \"social\",\n      \"meaning\": \"The source had a documented friendship with the target.\",\n      \"inverse\": \"friend_of\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:friend_of\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fb7185\",\n      \"inverse_color\": \"#fecdd3\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"friend_of\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/friend_of.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/social.svg\"\n      }\n    },\n    {\n      \"type\": \"generalizes\",\n      \"label\": \"Generalizes\",\n      \"category\": \"cognition\",\n      \"meaning\": \"The source is a more general abstraction of the target.\",\n      \"inverse\": \"specialized_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:generalizes\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#7c3aed\",\n      \"inverse_color\": \"#ddd6fe\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"generalizes\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/generalizes.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/cognition.svg\"\n      }\n    },\n    {\n      \"type\": \"generated\",\n      \"label\": \"Generated\",\n      \"category\": \"causation\",\n      \"meaning\": \"The source generated, produced, or caused the target artifact, claim, response, or knowledge object.\",\n      \"inverse\": \"generated_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:generated\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#f97316\",\n      \"inverse_color\": \"#fdba74\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"generated\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/generated.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/causation.svg\"\n      }\n    },\n    {\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:governed_by\",\n      \"type\": \"governed_by\",\n      \"label\": \"governed by\",\n      \"inverse\": \"governs\",\n      \"category\": \"governance\",\n      \"meaning\": \"The source artifact, workflow, implementation, substrate, or mark is governed by the target policy, rule, specification, or legal instrument.\",\n      \"color\": \"#eab308\",\n      \"inverse_color\": \"#fde047\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"solid\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"secondary\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"governed_by\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/governed_by.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/governance.svg\"\n      }\n    },\n    {\n      \"type\": \"has_claim\",\n      \"label\": \"Has claim\",\n      \"category\": \"claim_structure\",\n      \"meaning\": \"The source concept, essay, observation, or source contains or depends on the target claim.\",\n      \"inverse\": \"claim_of\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:has_claim\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#f43f5e\",\n      \"inverse_color\": \"#fda4af\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"has_claim\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/has_claim.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/claim_structure.svg\"\n      }\n    },\n    {\n      \"type\": \"has_primary_media\",\n      \"label\": \"Has primary media\",\n      \"category\": \"representation\",\n      \"meaning\": \"The source node uses the target media node as its primary representative image or icon.\",\n      \"inverse\": \"used_as_primary_media_for\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:has_primary_media\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#f59e0b\",\n      \"inverse_color\": \"#fcd34d\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"has_primary_media\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/has_primary_media.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/representation.svg\"\n      }\n    },\n    {\n      \"type\": \"high_risk_for\",\n      \"label\": \"High risk for\",\n      \"category\": \"attention\",\n      \"meaning\": \"The source identifies a high risk for the target.\",\n      \"inverse\": \"has_high_risk\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:high_risk_for\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fbbf24\",\n      \"inverse_color\": \"#fde68a\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"high_risk_for\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/high_risk_for.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/attention.svg\"\n      }\n    },\n    {\n      \"type\": \"identified\",\n      \"label\": \"Identified\",\n      \"category\": \"creation\",\n      \"meaning\": \"The source identified, named, or recognized the target.\",\n      \"inverse\": \"identified_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:identified\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fb923c\",\n      \"inverse_color\": \"#fed7aa\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"identified\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/identified.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/creation.svg\"\n      }\n    },\n    {\n      \"type\": \"implements\",\n      \"label\": \"Implements\",\n      \"category\": \"composition\",\n      \"meaning\": \"The source implements the target idea, technology, protocol, method, or concept.\",\n      \"inverse\": \"implemented_by\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:implements\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#22c55e\",\n      \"inverse_color\": \"#86efac\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"implements\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/implements.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/composition.svg\"\n      }\n    },\n    {\n      \"type\": \"important_for\",\n      \"label\": \"Important for\",\n      \"category\": \"attention\",\n      \"meaning\": \"The source is important for understanding, navigating, preserving, or acting on the target.\",\n      \"inverse\": \"has_important_context\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:important_for\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fbbf24\",\n      \"inverse_color\": \"#fde68a\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"important_for\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/important_for.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/attention.svg\"\n      }\n    },\n    {\n      \"type\": \"includes\",\n      \"label\": \"Includes\",\n      \"category\": \"composition\",\n      \"meaning\": \"The source includes or encompasses the target as a member or component.\",\n      \"inverse\": \"included_in\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:includes\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#22c55e\",\n      \"inverse_color\": \"#86efac\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"includes\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/includes.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/composition.svg\"\n      }\n    },\n    {\n      \"type\": \"influenced\",\n      \"label\": \"Influenced\",\n      \"category\": \"influence\",\n      \"meaning\": \"The source influenced the target.\",\n      \"inverse\": \"influenced_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:influenced\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#14b8a6\",\n      \"inverse_color\": \"#99f6e4\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"influenced\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/influenced.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/influence.svg\"\n      }\n    },\n    {\n      \"type\": \"insufficient_evidence\",\n      \"label\": \"Insufficient evidence\",\n      \"category\": \"uncertainty\",\n      \"meaning\": \"The source indicates that the target lacks enough evidence for the asserted interpretation or status.\",\n      \"inverse\": \"evidence_insufficient_for\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:insufficient_evidence\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#d946ef\",\n      \"inverse_color\": \"#f5d0fe\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"insufficient_evidence\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/insufficient_evidence.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/uncertainty.svg\"\n      }\n    },\n    {\n      \"type\": \"interviewed\",\n      \"label\": \"Interviewed\",\n      \"category\": \"social\",\n      \"meaning\": \"The source interviewed the target.\",\n      \"inverse\": \"interviewed_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:interviewed\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fb7185\",\n      \"inverse_color\": \"#fecdd3\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"interviewed\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/interviewed.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/social.svg\"\n      }\n    },\n    {\n      \"type\": \"introduced\",\n      \"label\": \"Introduced\",\n      \"category\": \"creation\",\n      \"meaning\": \"The source introduced or first formally presented the target.\",\n      \"inverse\": \"introduced_by\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:introduced\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fb923c\",\n      \"inverse_color\": \"#fed7aa\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"introduced\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/introduced.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/creation.svg\"\n      }\n    },\n    {\n      \"type\": \"introduced_in\",\n      \"label\": \"Introduced in\",\n      \"category\": \"participation\",\n      \"meaning\": \"The source was introduced, debuted, or first appeared in the target event, work, or venue.\",\n      \"inverse\": \"introduction_venue_of\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:introduced_in\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#ec4899\",\n      \"inverse_color\": \"#f9a8d4\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"introduced_in\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/introduced_in.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/participation.svg\"\n      }\n    },\n    {\n      \"type\": \"investigates\",\n      \"label\": \"Investigates\",\n      \"category\": \"inquiry\",\n      \"meaning\": \"The source investigates the target question, problem, claim, hypothesis, or knowledge gap.\",\n      \"inverse\": \"investigated_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:investigates\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#2dd4bf\",\n      \"inverse_color\": \"#99f6e4\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"investigates\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/investigates.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/inquiry.svg\"\n      }\n    },\n    {\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:licensed_under\",\n      \"type\": \"licensed_under\",\n      \"label\": \"licensed under\",\n      \"inverse\": \"license_for\",\n      \"category\": \"governance\",\n      \"meaning\": \"The source artifact, content, code, schema, media, or substrate is distributed under the target license.\",\n      \"color\": \"#eab308\",\n      \"inverse_color\": \"#fde047\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"dashed\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"secondary\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"licensed_under\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/licensed_under.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/governance.svg\"\n      }\n    },\n    {\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:maps_to\",\n      \"type\": \"maps_to\",\n      \"label\": \"Maps to\",\n      \"category\": \"schema_mapping\",\n      \"meaning\": \"The source schema type, field, node, or relationship maps to the target schema type, field, node, or relationship for interoperability.\",\n      \"inverse\": \"mapped_from\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"core\": true,\n      \"extends\": \"related_to\",\n      \"color\": \"#22d3ee\",\n      \"inverse_color\": \"#a5f3fc\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"double\",\n      \"projection\": {\n        \"icon\": \"maps_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/maps_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/schema_mapping.svg\"\n      }\n    },\n    {\n      \"type\": \"memorializes\",\n      \"label\": \"Memorializes\",\n      \"category\": \"social\",\n      \"meaning\": \"The source commemorates, honors, or preserves the memory of the target.\",\n      \"inverse\": \"memorialized_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:memorializes\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fb7185\",\n      \"inverse_color\": \"#fecdd3\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"memorializes\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/memorializes.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/social.svg\"\n      }\n    },\n    {\n      \"type\": \"mentions\",\n      \"label\": \"Mentions\",\n      \"category\": \"citation\",\n      \"meaning\": \"The source mentions the target without making it structurally central.\",\n      \"inverse\": \"mentioned_by\",\n      \"default_weight\": 2,\n      \"default_visibility\": \"background\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:mentions\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"mentions\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/mentions.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/citation.svg\"\n      }\n    },\n    {\n      \"type\": \"motivated_by\",\n      \"label\": \"Motivated by\",\n      \"category\": \"causation\",\n      \"meaning\": \"The source was motivated or driven into being by the target.\",\n      \"inverse\": \"motivates\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:motivated_by\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#f97316\",\n      \"inverse_color\": \"#fdba74\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"motivated_by\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/motivated_by.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/causation.svg\"\n      }\n    },\n    {\n      \"type\": \"motivates_inquiry\",\n      \"label\": \"Motivates inquiry\",\n      \"category\": \"inquiry\",\n      \"meaning\": \"The source motivates inquiry into the target question, problem, claim, or knowledge gap.\",\n      \"inverse\": \"inquiry_motivated_by\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:motivates_inquiry\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#2dd4bf\",\n      \"inverse_color\": \"#99f6e4\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"motivates_inquiry\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/motivates_inquiry.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/inquiry.svg\"\n      }\n    },\n    {\n      \"type\": \"negotiated_with\",\n      \"label\": \"Negotiated with\",\n      \"category\": \"communication\",\n      \"meaning\": \"The source negotiated with the target actor, group, or position.\",\n      \"inverse\": \"negotiated_with\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:negotiated_with\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"negotiated_with\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/negotiated_with.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/communication.svg\"\n      }\n    },\n    {\n      \"type\": \"occurred_at\",\n      \"label\": \"Occurred at\",\n      \"category\": \"location\",\n      \"meaning\": \"The source event occurred at the target place.\",\n      \"inverse\": \"site_of\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:occurred_at\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#84cc16\",\n      \"inverse_color\": \"#bef264\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"occurred_at\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/occurred_at.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/location.svg\"\n      }\n    },\n    {\n      \"type\": \"overlooked_by\",\n      \"label\": \"Overlooked by\",\n      \"category\": \"attention\",\n      \"meaning\": \"The source is overlooked by the target person, community, source, or substrate.\",\n      \"inverse\": \"overlooks\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:overlooked_by\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fbbf24\",\n      \"inverse_color\": \"#fde68a\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"overlooked_by\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/overlooked_by.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/attention.svg\"\n      }\n    },\n    {\n      \"type\": \"parallel_to\",\n      \"label\": \"Parallel to\",\n      \"category\": \"comparison\",\n      \"meaning\": \"The source developed alongside or resembles the target without necessarily descending from it.\",\n      \"inverse\": \"parallel_to\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:parallel_to\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#a78bfa\",\n      \"inverse_color\": \"#ddd6fe\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"parallel_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/parallel_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/comparison.svg\"\n      }\n    },\n    {\n      \"type\": \"partially_answers\",\n      \"label\": \"Partially answers\",\n      \"category\": \"inquiry\",\n      \"meaning\": \"The source provides a partial answer to the target question while leaving important parts unresolved.\",\n      \"inverse\": \"partially_answered_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:partially_answers\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#2dd4bf\",\n      \"inverse_color\": \"#99f6e4\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"partially_answers\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/partially_answers.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/inquiry.svg\"\n      }\n    },\n    {\n      \"type\": \"questions\",\n      \"label\": \"Questions\",\n      \"category\": \"inquiry\",\n      \"meaning\": \"The source questions, challenges, or casts doubt on the target claim, hypothesis, answer, method, or interpretation.\",\n      \"inverse\": \"questioned_by\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:questions\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#2dd4bf\",\n      \"inverse_color\": \"#99f6e4\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"questions\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/questions.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/inquiry.svg\"\n      }\n    },\n    {\n      \"type\": \"participated_in\",\n      \"label\": \"Participated in\",\n      \"category\": \"participation\",\n      \"meaning\": \"The source participated in the target.\",\n      \"inverse\": \"had_participant\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:participated_in\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#ec4899\",\n      \"inverse_color\": \"#f9a8d4\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"participated_in\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/participated_in.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/participation.svg\"\n      }\n    },\n    {\n      \"type\": \"popularized\",\n      \"label\": \"Popularized\",\n      \"category\": \"influence\",\n      \"meaning\": \"The source brought the target to a wider audience or made it culturally visible.\",\n      \"inverse\": \"popularized_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:popularized\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#14b8a6\",\n      \"inverse_color\": \"#99f6e4\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"popularized\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/popularized.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/influence.svg\"\n      }\n    },\n    {\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:possible_match\",\n      \"type\": \"possible_match\",\n      \"label\": \"Possible match\",\n      \"category\": \"identity\",\n      \"meaning\": \"The source may represent the same entity, concept, claim, source, or fragment as the target, but the match has not been confirmed.\",\n      \"inverse\": \"possible_match\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"core\": true,\n      \"extends\": \"related_to\",\n      \"color\": \"#f472b6\",\n      \"inverse_color\": \"#fbcfe8\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"double\",\n      \"projection\": {\n        \"icon\": \"possible_match\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/possible_match.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/identity.svg\"\n      }\n    },\n    {\n      \"type\": \"possibly_related_to\",\n      \"label\": \"Possibly related to\",\n      \"category\": \"discovery\",\n      \"meaning\": \"The source may be related to the target, but the specific relationship is not yet known or justified.\",\n      \"inverse\": \"possibly_related_to\",\n      \"default_weight\": 2,\n      \"default_visibility\": \"background\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:possibly_related_to\",\n      \"core\": true,\n      \"extends\": \"related_to\",\n      \"color\": \"#34d399\",\n      \"inverse_color\": \"#a7f3d0\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"possibly_related_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/possibly_related_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/discovery.svg\"\n      }\n    },\n    {\n      \"type\": \"preceded\",\n      \"label\": \"Preceded\",\n      \"category\": \"temporal\",\n      \"meaning\": \"The source came before the target.\",\n      \"inverse\": \"followed\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:preceded\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#a3e635\",\n      \"inverse_color\": \"#d9f99d\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"preceded\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/preceded.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/temporal.svg\"\n      }\n    },\n    {\n      \"type\": \"presented\",\n      \"label\": \"Presented\",\n      \"category\": \"participation\",\n      \"meaning\": \"The source presented, hosted, narrated, or publicly introduced the target work, program, or media object.\",\n      \"inverse\": \"presented_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:presented\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#ec4899\",\n      \"inverse_color\": \"#f9a8d4\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"presented\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/presented.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/participation.svg\"\n      }\n    },\n    {\n      \"type\": \"presented_to\",\n      \"label\": \"Presented to\",\n      \"category\": \"communication\",\n      \"meaning\": \"The source presented the target content, claim, source, or project to an audience.\",\n      \"inverse\": \"presentation_received_from\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:presented_to\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"presented_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/presented_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/communication.svg\"\n      }\n    },\n    {\n      \"type\": \"preserves\",\n      \"label\": \"Preserves\",\n      \"category\": \"composition\",\n      \"meaning\": \"The source preserves the target property, structure, lineage, or context.\",\n      \"inverse\": \"preserved_by\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:preserves\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#22c55e\",\n      \"inverse_color\": \"#86efac\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"preserves\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/preserves.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/composition.svg\"\n      }\n    },\n    {\n      \"type\": \"proposed\",\n      \"label\": \"Proposed\",\n      \"category\": \"creation\",\n      \"meaning\": \"The source proposed or put forward the target.\",\n      \"inverse\": \"proposed_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:proposed\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fb923c\",\n      \"inverse_color\": \"#fed7aa\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"proposed\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/proposed.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/creation.svg\"\n      }\n    },\n    {\n      \"type\": \"quotes\",\n      \"label\": \"Quotes\",\n      \"category\": \"citation\",\n      \"meaning\": \"The source quotes the target.\",\n      \"inverse\": \"quoted_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:quotes\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"quotes\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/quotes.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/citation.svg\"\n      }\n    },\n    {\n      \"type\": \"raises\",\n      \"label\": \"Raises\",\n      \"category\": \"inquiry\",\n      \"meaning\": \"The source raises, surfaces, or implies the target question, problem, or knowledge gap.\",\n      \"inverse\": \"raised_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:raises\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#2dd4bf\",\n      \"inverse_color\": \"#99f6e4\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"raises\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/raises.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/inquiry.svg\"\n      }\n    },\n    {\n      \"type\": \"refines\",\n      \"label\": \"Refines\",\n      \"category\": \"evolution\",\n      \"meaning\": \"The source refines, sharpens, or improves the target.\",\n      \"inverse\": \"refined_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:refines\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#64748b\",\n      \"inverse_color\": \"#cbd5e1\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"refines\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/refines.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/evolution.svg\"\n      }\n    },\n    {\n      \"type\": \"related_to\",\n      \"label\": \"Related to\",\n      \"category\": \"generic\",\n      \"meaning\": \"The source is related to the target when no more specific relationship applies.\",\n      \"inverse\": \"related_to\",\n      \"default_weight\": 2,\n      \"default_visibility\": \"background\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:related_to\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#94a3b8\",\n      \"inverse_color\": \"#cbd5e1\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"related_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/related_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/generic.svg\"\n      }\n    },\n    {\n      \"type\": \"replied_to\",\n      \"label\": \"Replied to\",\n      \"category\": \"communication\",\n      \"meaning\": \"The source is a reply to the target communication, question, response, or claim.\",\n      \"inverse\": \"replied_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:replied_to\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"replied_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/replied_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/communication.svg\"\n      }\n    },\n    {\n      \"type\": \"responds_to\",\n      \"label\": \"Responds to\",\n      \"category\": \"communication\",\n      \"meaning\": \"The source responds to the target communication, question, claim, observation, or prior response.\",\n      \"inverse\": \"responded_to_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:responds_to\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"responds_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/responds_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/communication.svg\"\n      }\n    },\n    {\n      \"type\": \"reported_to\",\n      \"label\": \"Reported to\",\n      \"category\": \"communication\",\n      \"meaning\": \"The source reported information, status, or evidence to the target actor, system, or audience.\",\n      \"inverse\": \"received_report_from\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:reported_to\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#38bdf8\",\n      \"inverse_color\": \"#bae6fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"reported_to\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/reported_to.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/communication.svg\"\n      }\n    },\n    {\n      \"type\": \"represents\",\n      \"label\": \"Represents\",\n      \"category\": \"representation\",\n      \"meaning\": \"The source media or artifact represents the target.\",\n      \"inverse\": \"represented_by\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:represents\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#f59e0b\",\n      \"inverse_color\": \"#fcd34d\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"represents\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/represents.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/representation.svg\"\n      }\n    },\n    {\n      \"type\": \"requires\",\n      \"label\": \"Requires\",\n      \"category\": \"composition\",\n      \"meaning\": \"The source requires the target as a prerequisite, input, or condition.\",\n      \"inverse\": \"required_for\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:requires\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#22c55e\",\n      \"inverse_color\": \"#86efac\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"requires\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/requires.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/composition.svg\"\n      }\n    },\n    {\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:requires_attribution\",\n      \"type\": \"requires_attribution\",\n      \"label\": \"requires attribution\",\n      \"inverse\": \"attribution_required_by\",\n      \"category\": \"governance\",\n      \"meaning\": \"The source license, artifact, substrate, or policy requires attribution to the target person, organization, project, source, or community.\",\n      \"color\": \"#eab308\",\n      \"inverse_color\": \"#fde047\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"dashed\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"secondary\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"requires_attribution\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/requires_attribution.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/governance.svg\"\n      }\n    },\n    {\n      \"type\": \"requires_context\",\n      \"label\": \"Requires context\",\n      \"category\": \"knowledge_workflow\",\n      \"meaning\": \"The source needs additional context to be interpreted responsibly.\",\n      \"inverse\": \"context_required_by\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:requires_context\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#06b6d4\",\n      \"inverse_color\": \"#a5f3fc\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"requires_context\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/requires_context.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/knowledge_workflow.svg\"\n      }\n    },\n    {\n      \"type\": \"requires_information\",\n      \"label\": \"Requires information\",\n      \"category\": \"knowledge_workflow\",\n      \"meaning\": \"The source cannot be resolved, accepted, or completed without additional information.\",\n      \"inverse\": \"information_required_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:requires_information\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#06b6d4\",\n      \"inverse_color\": \"#a5f3fc\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"requires_information\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/requires_information.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/knowledge_workflow.svg\"\n      }\n    },\n    {\n      \"type\": \"requires_review\",\n      \"label\": \"Requires review\",\n      \"category\": \"knowledge_workflow\",\n      \"meaning\": \"The source needs human, institutional, or automated review before it should be trusted or merged.\",\n      \"inverse\": \"review_required_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:requires_review\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#06b6d4\",\n      \"inverse_color\": \"#a5f3fc\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"requires_review\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/requires_review.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/knowledge_workflow.svg\"\n      }\n    },\n    {\n      \"type\": \"requires_source\",\n      \"label\": \"Requires source\",\n      \"category\": \"knowledge_workflow\",\n      \"meaning\": \"The source needs a cited source or primary evidence before it should be treated as supported.\",\n      \"inverse\": \"source_required_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:requires_source\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#06b6d4\",\n      \"inverse_color\": \"#a5f3fc\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"requires_source\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/requires_source.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/knowledge_workflow.svg\"\n      }\n    },\n    {\n      \"type\": \"requires_validation\",\n      \"label\": \"Requires validation\",\n      \"category\": \"knowledge_workflow\",\n      \"meaning\": \"The source needs schema, evidence, reproducibility, or process validation.\",\n      \"inverse\": \"validation_required_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:requires_validation\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#06b6d4\",\n      \"inverse_color\": \"#a5f3fc\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"requires_validation\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/requires_validation.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/knowledge_workflow.svg\"\n      }\n    },\n    {\n      \"type\": \"resonates_with\",\n      \"label\": \"Resonates with\",\n      \"category\": \"cognition\",\n      \"meaning\": \"The source has a low-commitment conceptual or experiential resonance with the target.\",\n      \"inverse\": \"resonates_with\",\n      \"default_weight\": 2,\n      \"default_visibility\": \"background\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:resonates_with\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#7c3aed\",\n      \"inverse_color\": \"#ddd6fe\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"resonates_with\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/resonates_with.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/cognition.svg\"\n      }\n    },\n    {\n      \"type\": \"results_from\",\n      \"label\": \"Results from\",\n      \"category\": \"causation\",\n      \"meaning\": \"The source is a consequence, failure mode, output, or downstream effect of the target.\",\n      \"inverse\": \"produces\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:results_from\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#f97316\",\n      \"inverse_color\": \"#fdba74\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"results_from\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/results_from.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/causation.svg\"\n      }\n    },\n    {\n      \"type\": \"same_concept\",\n      \"label\": \"Same concept\",\n      \"category\": \"identity\",\n      \"meaning\": \"The source and target represent the same concept across substrates, namespaces, versions, or local identifiers.\",\n      \"inverse\": \"same_concept\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:same_concept\",\n      \"core\": true,\n      \"extends\": \"same_entity\",\n      \"color\": \"#f472b6\",\n      \"inverse_color\": \"#fbcfe8\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"double\",\n      \"projection\": {\n        \"icon\": \"same_concept\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/same_concept.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/identity.svg\"\n      }\n    },\n    {\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:same_entity\",\n      \"type\": \"same_entity\",\n      \"label\": \"Same entity\",\n      \"category\": \"identity\",\n      \"meaning\": \"The source and target represent the same real-world entity across substrates, namespaces, versions, or local identifiers.\",\n      \"inverse\": \"same_entity\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"core\": true,\n      \"extends\": \"equivalent_to\",\n      \"color\": \"#f472b6\",\n      \"inverse_color\": \"#fbcfe8\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"double\",\n      \"projection\": {\n        \"icon\": \"same_entity\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/same_entity.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/identity.svg\"\n      }\n    },\n    {\n      \"type\": \"same_person\",\n      \"label\": \"Same person\",\n      \"category\": \"identity\",\n      \"meaning\": \"The source and target represent the same person across substrates, namespaces, versions, or local identifiers.\",\n      \"inverse\": \"same_person\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:same_person\",\n      \"core\": true,\n      \"extends\": \"same_entity\",\n      \"color\": \"#f472b6\",\n      \"inverse_color\": \"#fbcfe8\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"double\",\n      \"projection\": {\n        \"icon\": \"same_person\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/same_person.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/identity.svg\"\n      }\n    },\n    {\n      \"type\": \"same_source\",\n      \"label\": \"Same source\",\n      \"category\": \"identity\",\n      \"meaning\": \"The source and target represent the same source or reference object across substrates, namespaces, versions, or local identifiers.\",\n      \"inverse\": \"same_source\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:same_source\",\n      \"core\": true,\n      \"extends\": \"same_entity\",\n      \"color\": \"#f472b6\",\n      \"inverse_color\": \"#fbcfe8\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"double\",\n      \"projection\": {\n        \"icon\": \"same_source\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/same_source.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/identity.svg\"\n      }\n    },\n    {\n      \"type\": \"shapes\",\n      \"label\": \"Shapes\",\n      \"category\": \"influence\",\n      \"meaning\": \"The source significantly shapes or molds the form, direction, or character of the target.\",\n      \"inverse\": \"shaped_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:shapes\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#14b8a6\",\n      \"inverse_color\": \"#99f6e4\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"shapes\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/shapes.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/influence.svg\"\n      }\n    },\n    {\n      \"type\": \"shares_pattern_with\",\n      \"label\": \"Shares pattern with\",\n      \"category\": \"discovery\",\n      \"meaning\": \"The source shares a recognizable structure, behavior, or pattern with the target.\",\n      \"inverse\": \"shares_pattern_with\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:shares_pattern_with\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#34d399\",\n      \"inverse_color\": \"#a7f3d0\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"shares_pattern_with\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/shares_pattern_with.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/discovery.svg\"\n      }\n    },\n    {\n      \"type\": \"specializes\",\n      \"label\": \"Specializes\",\n      \"category\": \"cognition\",\n      \"meaning\": \"The source is a more specific case of the target.\",\n      \"inverse\": \"generalized_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:specializes\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#7c3aed\",\n      \"inverse_color\": \"#ddd6fe\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"specializes\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/specializes.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/cognition.svg\"\n      }\n    },\n    {\n      \"type\": \"speculative\",\n      \"label\": \"Speculative\",\n      \"category\": \"uncertainty\",\n      \"meaning\": \"The source marks the target as speculative, provisional, or not yet established.\",\n      \"inverse\": \"speculated_by\",\n      \"default_weight\": 2,\n      \"default_visibility\": \"background\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:speculative\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#d946ef\",\n      \"inverse_color\": \"#f5d0fe\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"speculative\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/speculative.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/uncertainty.svg\"\n      }\n    },\n    {\n      \"type\": \"spoke_at\",\n      \"label\": \"Spoke at\",\n      \"category\": \"participation\",\n      \"meaning\": \"The source person spoke at the target event.\",\n      \"inverse\": \"featured_speaker\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:spoke_at\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#ec4899\",\n      \"inverse_color\": \"#f9a8d4\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"spoke_at\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/spoke_at.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/participation.svg\"\n      }\n    },\n    {\n      \"type\": \"starts_with\",\n      \"label\": \"Starts with\",\n      \"category\": \"temporal\",\n      \"meaning\": \"The source sequence, work, or argument begins with the target.\",\n      \"inverse\": \"is_start_of\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:starts_with\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#a3e635\",\n      \"inverse_color\": \"#d9f99d\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"starts_with\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/starts_with.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/temporal.svg\"\n      }\n    },\n    {\n      \"type\": \"supersedes\",\n      \"label\": \"Supersedes\",\n      \"category\": \"evolution\",\n      \"meaning\": \"The source replaces the target.\",\n      \"inverse\": \"superseded_by\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:supersedes\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#64748b\",\n      \"inverse_color\": \"#cbd5e1\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"supersedes\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/supersedes.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/evolution.svg\"\n      }\n    },\n    {\n      \"type\": \"supports\",\n      \"label\": \"Supports\",\n      \"category\": \"evidence\",\n      \"meaning\": \"The source supports the target.\",\n      \"inverse\": \"supported_by\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:supports\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#10b981\",\n      \"inverse_color\": \"#6ee7b7\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"supports\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/supports.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/evidence.svg\"\n      }\n    },\n    {\n      \"type\": \"tests\",\n      \"label\": \"Tests\",\n      \"category\": \"research_workflow\",\n      \"meaning\": \"The source tests the target hypothesis, claim, method, or prediction.\",\n      \"inverse\": \"tested_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:tests\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#0ea5e9\",\n      \"inverse_color\": \"#7dd3fc\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"tests\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/tests.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/research_workflow.svg\"\n      }\n    },\n    {\n      \"type\": \"threatens\",\n      \"label\": \"Threatens\",\n      \"category\": \"governance\",\n      \"meaning\": \"The source threatens, endangers, or poses a risk to the target.\",\n      \"inverse\": \"threatened_by\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:threatens\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#eab308\",\n      \"inverse_color\": \"#fde047\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"double\",\n      \"projection\": {\n        \"icon\": \"threatens\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/threatens.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/governance.svg\"\n      }\n    },\n    {\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:trademarked_by\",\n      \"type\": \"trademarked_by\",\n      \"label\": \"trademarked by\",\n      \"inverse\": \"trademark_holder_for\",\n      \"category\": \"governance\",\n      \"meaning\": \"The source name, logo, brand asset, project identity, or mark is governed as a trademark by the target person, organization, project, or policy.\",\n      \"color\": \"#eab308\",\n      \"inverse_color\": \"#fde047\",\n      \"line_style\": \"double\",\n      \"inverse_line_style\": \"dashed\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"secondary\",\n      \"core\": true,\n      \"extends\": null,\n      \"projection\": {\n        \"icon\": \"trademarked_by\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/trademarked_by.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/governance.svg\"\n      }\n    },\n    {\n      \"type\": \"trained_on\",\n      \"label\": \"Trained on\",\n      \"category\": \"composition\",\n      \"meaning\": \"The source system or model was trained on the target dataset, corpus, or collection.\",\n      \"inverse\": \"used_to_train\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:trained_on\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#22c55e\",\n      \"inverse_color\": \"#86efac\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"trained_on\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/trained_on.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/composition.svg\"\n      }\n    },\n    {\n      \"type\": \"transcludes\",\n      \"label\": \"Transcludes\",\n      \"category\": \"representation\",\n      \"meaning\": \"The source includes a specific versioned fragment of the target by reference rather than copying it, preserving identity, attribution, and revision lineage.\",\n      \"inverse\": \"transcluded_by\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:transcludes\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#f59e0b\",\n      \"inverse_color\": \"#fcd34d\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"transcludes\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/transcludes.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/representation.svg\"\n      }\n    },\n    {\n      \"type\": \"under_review\",\n      \"label\": \"Under review\",\n      \"category\": \"uncertainty\",\n      \"meaning\": \"The source places the target under review or indicates that its status is being evaluated.\",\n      \"inverse\": \"reviewed_under\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:under_review\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#d946ef\",\n      \"inverse_color\": \"#f5d0fe\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"under_review\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/under_review.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/uncertainty.svg\"\n      }\n    },\n    {\n      \"type\": \"unresolved\",\n      \"label\": \"Unresolved\",\n      \"category\": \"uncertainty\",\n      \"meaning\": \"The source marks the target as unresolved, unsettled, or not yet answerable.\",\n      \"inverse\": \"unresolved_by\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:unresolved\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#d946ef\",\n      \"inverse_color\": \"#f5d0fe\",\n      \"line_style\": \"dotted\",\n      \"inverse_line_style\": \"dotted\",\n      \"projection\": {\n        \"icon\": \"unresolved\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/unresolved.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/uncertainty.svg\"\n      }\n    },\n    {\n      \"type\": \"uses\",\n      \"label\": \"Uses\",\n      \"category\": \"composition\",\n      \"meaning\": \"The source uses, employs, or relies on the target.\",\n      \"inverse\": \"used_by\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:uses\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#22c55e\",\n      \"inverse_color\": \"#86efac\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"uses\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/uses.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/composition.svg\"\n      }\n    },\n    {\n      \"type\": \"validates\",\n      \"label\": \"Validates\",\n      \"category\": \"research_workflow\",\n      \"meaning\": \"The source validates, confirms, or passes a test for the target hypothesis, claim, method, or artifact.\",\n      \"inverse\": \"validated_by\",\n      \"default_weight\": 5,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:validates\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#0ea5e9\",\n      \"inverse_color\": \"#7dd3fc\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"validates\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/validates.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/research_workflow.svg\"\n      }\n    },\n    {\n      \"type\": \"co_authored_with\",\n      \"label\": \"Co-authored with\",\n      \"category\": \"creation\",\n      \"meaning\": \"The source was co-authored, co-created, or jointly produced with the target.\",\n      \"inverse\": \"co_authored_with\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:co_authored_with\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#0ea5e9\",\n      \"inverse_color\": \"#7dd3fc\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"co_authored_with\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/co_authored_with.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/creation.svg\"\n      }\n    },\n    {\n      \"type\": \"adapted_from\",\n      \"label\": \"Adapted from\",\n      \"category\": \"revision\",\n      \"meaning\": \"The source is an adaptation, reworking, or new presentation of the target work.\",\n      \"inverse\": \"adapted_into\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:adapted_from\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fb923c\",\n      \"inverse_color\": \"#fdba74\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"adapted_from\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/adapted_from.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/revision.svg\"\n      }\n    },\n    {\n      \"type\": \"adapted_into\",\n      \"label\": \"Adapted into\",\n      \"category\": \"revision\",\n      \"meaning\": \"The source was transformed into the target work or presentation form.\",\n      \"inverse\": \"adapted_from\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:adapted_into\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#fdba74\",\n      \"inverse_color\": \"#fb923c\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"adapted_into\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/adapted_into.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/revision.svg\"\n      }\n    },\n    {\n      \"type\": \"format_translated_from\",\n      \"label\": \"Format translated from\",\n      \"category\": \"representation\",\n      \"meaning\": \"The source preserves the target content while changing format, medium, or presentation layer.\",\n      \"inverse\": \"format_translated_into\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:format_translated_from\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#8b5cf6\",\n      \"inverse_color\": \"#c4b5fd\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"format_translated_from\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/format_translated_from.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/representation.svg\"\n      }\n    },\n    {\n      \"type\": \"format_translated_into\",\n      \"label\": \"Format translated into\",\n      \"category\": \"representation\",\n      \"meaning\": \"The source is a format translation of the target content.\",\n      \"inverse\": \"format_translated_from\",\n      \"default_weight\": 4,\n      \"default_visibility\": \"primary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:format_translated_into\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#c4b5fd\",\n      \"inverse_color\": \"#8b5cf6\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"format_translated_into\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/format_translated_into.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/representation.svg\"\n      }\n    },\n    {\n      \"type\": \"medium_transition\",\n      \"label\": \"Medium transition\",\n      \"category\": \"evolution\",\n      \"meaning\": \"The source marks a shift from the target through a different medium, presentation mode, or publication form.\",\n      \"inverse\": \"medium_transitioned_from\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:medium_transition\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#14b8a6\",\n      \"inverse_color\": \"#99f6e4\",\n      \"line_style\": \"solid\",\n      \"inverse_line_style\": \"dashed\",\n      \"projection\": {\n        \"icon\": \"medium_transition\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/medium_transition.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/evolution.svg\"\n      }\n    },\n    {\n      \"type\": \"medium_transitioned_from\",\n      \"label\": \"Medium transitioned from\",\n      \"category\": \"evolution\",\n      \"meaning\": \"The source is the earlier medium form from which the target transitioned.\",\n      \"inverse\": \"medium_transition\",\n      \"default_weight\": 3,\n      \"default_visibility\": \"secondary\",\n      \"namespace\": \"xananode\",\n      \"id\": \"xananode:medium_transitioned_from\",\n      \"core\": true,\n      \"extends\": null,\n      \"color\": \"#99f6e4\",\n      \"inverse_color\": \"#14b8a6\",\n      \"line_style\": \"dashed\",\n      \"inverse_line_style\": \"solid\",\n      \"projection\": {\n        \"icon\": \"medium_transitioned_from\",\n        \"icon_label\": \"->\",\n        \"asset_path\": \"assets/projection/relationship-types/medium_transitioned_from.svg\",\n        \"category_asset_path\": \"assets/projection/relationship-categories/evolution.svg\"\n      }\n    }\n  ],\n  \"media_conventions\": {\n    \"relationship_type_asset_path_template\": \"assets/projection/relationship-types/{type}.svg\",\n    \"relationship_category_asset_path_template\": \"assets/projection/relationship-categories/{category}.svg\"\n  }\n}\n",
      "html": "<p>{ &quot;version&quot;: &quot;0.5.0&quot;, &quot;relationship_types&quot;: [ { &quot;type&quot;: &quot;abstraction_of&quot;, &quot;label&quot;: &quot;Abstraction of&quot;, &quot;category&quot;: &quot;cognition&quot;, &quot;meaning&quot;: &quot;The source abstracts away details from the target while preserving a relevant structure.&quot;, &quot;inverse&quot;: &quot;concrete_example_of&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:abstraction_of&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#7c3aed&quot;, &quot;inverse_color&quot;: &quot;#ddd6fe&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;abstraction_of&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/abstraction_of.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/cognition.svg&quot; } }, { &quot;type&quot;: &quot;alias_of&quot;, &quot;label&quot;: &quot;Alias of&quot;, &quot;category&quot;: &quot;representation&quot;, &quot;meaning&quot;: &quot;The source is an alternative name for the target entity.&quot;, &quot;inverse&quot;: &quot;has_alias&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:alias_of&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#f59e0b&quot;, &quot;inverse_color&quot;: &quot;#fcd34d&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;alias_of&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/alias_of.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/representation.svg&quot; } }, { &quot;type&quot;: &quot;alternative_to&quot;, &quot;label&quot;: &quot;Alternative to&quot;, &quot;category&quot;: &quot;comparison&quot;, &quot;meaning&quot;: &quot;The source is an alternate interpretation, approach, or implementation relative to the target.&quot;, &quot;inverse&quot;: &quot;alternative_to&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:alternative_to&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#a78bfa&quot;, &quot;inverse_color&quot;: &quot;#ddd6fe&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;alternative_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/alternative_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/comparison.svg&quot; } }, { &quot;type&quot;: &quot;analogous_to&quot;, &quot;label&quot;: &quot;Analogous to&quot;, &quot;category&quot;: &quot;cognition&quot;, &quot;meaning&quot;: &quot;The source is analogous to the target in a way that may aid reasoning or explanation.&quot;, &quot;inverse&quot;: &quot;analogous_to&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:analogous_to&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#7c3aed&quot;, &quot;inverse_color&quot;: &quot;#ddd6fe&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;analogous_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/analogous_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/cognition.svg&quot; } }, { &quot;type&quot;: &quot;announced&quot;, &quot;label&quot;: &quot;Announced&quot;, &quot;category&quot;: &quot;communication&quot;, &quot;meaning&quot;: &quot;The source announced the target event, project, release, claim, or decision.&quot;, &quot;inverse&quot;: &quot;announced_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:announced&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;announced&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/announced.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/communication.svg&quot; } }, { &quot;type&quot;: &quot;answered_in&quot;, &quot;label&quot;: &quot;Answered in&quot;, &quot;category&quot;: &quot;communication&quot;, &quot;meaning&quot;: &quot;The source response, claim, or answer was given in the target communication context.&quot;, &quot;inverse&quot;: &quot;had_answer&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:answered_in&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;answered_in&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/answered_in.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/communication.svg&quot; } }, { &quot;type&quot;: &quot;answers&quot;, &quot;label&quot;: &quot;Answers&quot;, &quot;category&quot;: &quot;inquiry&quot;, &quot;meaning&quot;: &quot;The source answers the target question or information request.&quot;, &quot;inverse&quot;: &quot;answered_by&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:answers&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#2dd4bf&quot;, &quot;inverse_color&quot;: &quot;#99f6e4&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;answers&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/answers.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/inquiry.svg&quot; } }, { &quot;type&quot;: &quot;anticipated&quot;, &quot;label&quot;: &quot;Anticipated&quot;, &quot;category&quot;: &quot;influence&quot;, &quot;meaning&quot;: &quot;The source anticipated the target without necessarily directly causing it.&quot;, &quot;inverse&quot;: &quot;anticipated_by&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:anticipated&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#14b8a6&quot;, &quot;inverse_color&quot;: &quot;#99f6e4&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;anticipated&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/anticipated.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/influence.svg&quot; } }, { &quot;type&quot;: &quot;anticipates&quot;, &quot;label&quot;: &quot;Anticipates&quot;, &quot;category&quot;: &quot;historical&quot;, &quot;meaning&quot;: &quot;The source foreshadows or historically precedes the target without direct causation.&quot;, &quot;inverse&quot;: &quot;anticipated_by&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:anticipates&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#c084fc&quot;, &quot;inverse_color&quot;: &quot;#e9d5ff&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;anticipates&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/anticipates.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/historical.svg&quot; } }, { &quot;type&quot;: &quot;appears_in&quot;, &quot;label&quot;: &quot;Appears in&quot;, &quot;category&quot;: &quot;participation&quot;, &quot;meaning&quot;: &quot;The source appears in the target work, collection, or event.&quot;, &quot;inverse&quot;: &quot;has_appearance&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:appears_in&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#ec4899&quot;, &quot;inverse_color&quot;: &quot;#f9a8d4&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;appears_in&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/appears_in.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/participation.svg&quot; } }, { &quot;type&quot;: &quot;approved&quot;, &quot;label&quot;: &quot;Approved&quot;, &quot;category&quot;: &quot;governance&quot;, &quot;meaning&quot;: &quot;The source user, reviewer, or process approved the target.&quot;, &quot;inverse&quot;: &quot;approved_by&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:approved&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#eab308&quot;, &quot;inverse_color&quot;: &quot;#fde047&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;double&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;approved&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/approved.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/governance.svg&quot; } }, { &quot;type&quot;: &quot;arrives_at&quot;, &quot;label&quot;: &quot;Arrives at&quot;, &quot;category&quot;: &quot;reasoning&quot;, &quot;meaning&quot;: &quot;The source reasoning, argument, or inquiry leads to the target conclusion or position.&quot;, &quot;inverse&quot;: &quot;arrived_from&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:arrives_at&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#818cf8&quot;, &quot;inverse_color&quot;: &quot;#c7d2fe&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;arrives_at&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/arrives_at.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/reasoning.svg&quot; } }, { &quot;type&quot;: &quot;asked&quot;, &quot;label&quot;: &quot;Asked&quot;, &quot;category&quot;: &quot;communication&quot;, &quot;meaning&quot;: &quot;The source asked, posed, or submitted the target question or request.&quot;, &quot;inverse&quot;: &quot;asked_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:asked&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;asked&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/asked.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/communication.svg&quot; } }, { &quot;type&quot;: &quot;asked_in&quot;, &quot;label&quot;: &quot;Asked in&quot;, &quot;category&quot;: &quot;communication&quot;, &quot;meaning&quot;: &quot;The source question was asked in the target communication context.&quot;, &quot;inverse&quot;: &quot;had_question&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:asked_in&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;asked_in&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/asked_in.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/communication.svg&quot; } }, { &quot;type&quot;: &quot;authored&quot;, &quot;label&quot;: &quot;Authored&quot;, &quot;category&quot;: &quot;creation&quot;, &quot;meaning&quot;: &quot;The source authored the target.&quot;, &quot;inverse&quot;: &quot;authored_by&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:authored&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fb923c&quot;, &quot;inverse_color&quot;: &quot;#fed7aa&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;authored&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/authored.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/creation.svg&quot; } }, { &quot;type&quot;: &quot;broadcast_to&quot;, &quot;label&quot;: &quot;Broadcast to&quot;, &quot;category&quot;: &quot;communication&quot;, &quot;meaning&quot;: &quot;The source communication, publication, event, or actor broadcast the target content or message to an audience.&quot;, &quot;inverse&quot;: &quot;received_broadcast_from&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:broadcast_to&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;broadcast_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/broadcast_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/communication.svg&quot; } }, { &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:broader_than&quot;, &quot;type&quot;: &quot;broader_than&quot;, &quot;label&quot;: &quot;Broader than&quot;, &quot;category&quot;: &quot;schema_mapping&quot;, &quot;meaning&quot;: &quot;The source schema type, concept, or relationship is broader or more general than the target.&quot;, &quot;inverse&quot;: &quot;narrower_than&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;core&quot;: true, &quot;extends&quot;: &quot;related_to&quot;, &quot;color&quot;: &quot;#22d3ee&quot;, &quot;inverse_color&quot;: &quot;#a5f3fc&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;double&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;broader_than&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/broader_than.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/schema_mapping.svg&quot; } }, { &quot;type&quot;: &quot;cites&quot;, &quot;label&quot;: &quot;Cites&quot;, &quot;category&quot;: &quot;citation&quot;, &quot;meaning&quot;: &quot;The source cites the target.&quot;, &quot;inverse&quot;: &quot;cited_by&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:cites&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;cites&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/cites.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/citation.svg&quot; } }, { &quot;type&quot;: &quot;clarifies&quot;, &quot;label&quot;: &quot;Clarifies&quot;, &quot;category&quot;: &quot;explanation&quot;, &quot;meaning&quot;: &quot;The source clarifies, resolves ambiguity in, or makes the target more precise.&quot;, &quot;inverse&quot;: &quot;clarified_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:clarifies&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#60a5fa&quot;, &quot;inverse_color&quot;: &quot;#bfdbfe&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;clarifies&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/clarifies.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/explanation.svg&quot; } }, { &quot;type&quot;: &quot;coined&quot;, &quot;label&quot;: &quot;Coined&quot;, &quot;category&quot;: &quot;creation&quot;, &quot;meaning&quot;: &quot;The source coined the target term.&quot;, &quot;inverse&quot;: &quot;coined_by&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:coined&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fb923c&quot;, &quot;inverse_color&quot;: &quot;#fed7aa&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;coined&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/coined.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/creation.svg&quot; } }, { &quot;type&quot;: &quot;collaborated_with&quot;, &quot;label&quot;: &quot;Collaborated with&quot;, &quot;category&quot;: &quot;social&quot;, &quot;meaning&quot;: &quot;The source collaborated with the target.&quot;, &quot;inverse&quot;: &quot;collaborated_with&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:collaborated_with&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fb7185&quot;, &quot;inverse_color&quot;: &quot;#fecdd3&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;collaborated_with&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/collaborated_with.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/social.svg&quot; } }, { &quot;type&quot;: &quot;communicated_to&quot;, &quot;label&quot;: &quot;Communicated to&quot;, &quot;category&quot;: &quot;communication&quot;, &quot;meaning&quot;: &quot;The source communicated the target message, claim, question, or source to a receiver or audience.&quot;, &quot;inverse&quot;: &quot;communication_received_from&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:communicated_to&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;communicated_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/communicated_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/communication.svg&quot; } }, { &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:compatible_with&quot;, &quot;type&quot;: &quot;compatible_with&quot;, &quot;label&quot;: &quot;Compatible with&quot;, &quot;category&quot;: &quot;schema_mapping&quot;, &quot;meaning&quot;: &quot;The source schema, substrate, type, field, or relationship can interoperate with the target without destructive conversion.&quot;, &quot;inverse&quot;: &quot;compatible_with&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;core&quot;: true, &quot;extends&quot;: &quot;related_to&quot;, &quot;color&quot;: &quot;#22d3ee&quot;, &quot;inverse_color&quot;: &quot;#a5f3fc&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;double&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;compatible_with&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/compatible_with.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/schema_mapping.svg&quot; } }, { &quot;type&quot;: &quot;contains&quot;, &quot;label&quot;: &quot;Contains&quot;, &quot;category&quot;: &quot;composition&quot;, &quot;meaning&quot;: &quot;The source contains the target.&quot;, &quot;inverse&quot;: &quot;part_of&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:contains&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#22c55e&quot;, &quot;inverse_color&quot;: &quot;#86efac&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;contains&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/contains.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/composition.svg&quot; } }, { &quot;type&quot;: &quot;made_of&quot;, &quot;label&quot;: &quot;Made of&quot;, &quot;category&quot;: &quot;composition&quot;, &quot;meaning&quot;: &quot;The source physical item or structure is made of the target material or substance.&quot;, &quot;inverse&quot;: &quot;makes_up&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:made_of&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#22c55e&quot;, &quot;inverse_color&quot;: &quot;#86efac&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;made_of&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/made_of.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/composition.svg&quot; } }, { &quot;type&quot;: &quot;assembled_from&quot;, &quot;label&quot;: &quot;Assembled from&quot;, &quot;category&quot;: &quot;composition&quot;, &quot;meaning&quot;: &quot;The source physical item or system was assembled from the target parts, components, or ingredients.&quot;, &quot;inverse&quot;: &quot;assembled_into&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:assembled_from&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#22c55e&quot;, &quot;inverse_color&quot;: &quot;#86efac&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;assembled_from&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/assembled_from.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/composition.svg&quot; } }, { &quot;type&quot;: &quot;ingredient_of&quot;, &quot;label&quot;: &quot;Ingredient of&quot;, &quot;category&quot;: &quot;composition&quot;, &quot;meaning&quot;: &quot;The source item is an ingredient in the target recipe, dish, or preparation.&quot;, &quot;inverse&quot;: &quot;has_ingredient&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:ingredient_of&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#22c55e&quot;, &quot;inverse_color&quot;: &quot;#86efac&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;ingredient_of&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/ingredient_of.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/composition.svg&quot; } }, { &quot;type&quot;: &quot;contemporary_of&quot;, &quot;label&quot;: &quot;Contemporary of&quot;, &quot;category&quot;: &quot;temporal&quot;, &quot;meaning&quot;: &quot;The source existed or worked during the same relevant period as the target.&quot;, &quot;inverse&quot;: &quot;contemporary_of&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:contemporary_of&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#a3e635&quot;, &quot;inverse_color&quot;: &quot;#d9f99d&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;contemporary_of&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/contemporary_of.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/temporal.svg&quot; } }, { &quot;type&quot;: &quot;context_for&quot;, &quot;label&quot;: &quot;Context for&quot;, &quot;category&quot;: &quot;explanation&quot;, &quot;meaning&quot;: &quot;The source provides essential background or framing that makes the target intelligible.&quot;, &quot;inverse&quot;: &quot;has_context&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:context_for&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#60a5fa&quot;, &quot;inverse_color&quot;: &quot;#bfdbfe&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;context_for&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/context_for.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/explanation.svg&quot; } }, { &quot;type&quot;: &quot;continues_to&quot;, &quot;label&quot;: &quot;Continues to&quot;, &quot;category&quot;: &quot;temporal&quot;, &quot;meaning&quot;: &quot;The source continues, leads into, or sequences directly to the target.&quot;, &quot;inverse&quot;: &quot;continued_from&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:continues_to&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#a3e635&quot;, &quot;inverse_color&quot;: &quot;#d9f99d&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;continues_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/continues_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/temporal.svg&quot; } }, { &quot;type&quot;: &quot;contradicts&quot;, &quot;label&quot;: &quot;Contradicts&quot;, &quot;category&quot;: &quot;evidence&quot;, &quot;meaning&quot;: &quot;The source directly challenges or conflicts with the target.&quot;, &quot;inverse&quot;: &quot;contradicted_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:contradicts&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#10b981&quot;, &quot;inverse_color&quot;: &quot;#6ee7b7&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;contradicts&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/contradicts.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/evidence.svg&quot; } }, { &quot;type&quot;: &quot;contrasts_with&quot;, &quot;label&quot;: &quot;Contrasts with&quot;, &quot;category&quot;: &quot;comparison&quot;, &quot;meaning&quot;: &quot;The source is usefully contrasted with the target.&quot;, &quot;inverse&quot;: &quot;contrasts_with&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:contrasts_with&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#a78bfa&quot;, &quot;inverse_color&quot;: &quot;#ddd6fe&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;contrasts_with&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/contrasts_with.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/comparison.svg&quot; } }, { &quot;type&quot;: &quot;created&quot;, &quot;label&quot;: &quot;Created&quot;, &quot;category&quot;: &quot;creation&quot;, &quot;meaning&quot;: &quot;The source created the target.&quot;, &quot;inverse&quot;: &quot;created_by&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:created&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fb923c&quot;, &quot;inverse_color&quot;: &quot;#fed7aa&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;created&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/created.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/creation.svg&quot; } }, { &quot;type&quot;: &quot;critical_to&quot;, &quot;label&quot;: &quot;Critical to&quot;, &quot;category&quot;: &quot;attention&quot;, &quot;meaning&quot;: &quot;The source is critical to the target and should be prioritized in navigation, review, or preservation.&quot;, &quot;inverse&quot;: &quot;critically_depends_on&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:critical_to&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fbbf24&quot;, &quot;inverse_color&quot;: &quot;#fde68a&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;critical_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/critical_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/attention.svg&quot; } }, { &quot;type&quot;: &quot;debated_with&quot;, &quot;label&quot;: &quot;Debated with&quot;, &quot;category&quot;: &quot;communication&quot;, &quot;meaning&quot;: &quot;The source debated the target participant, claim, or position.&quot;, &quot;inverse&quot;: &quot;debated_with&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:debated_with&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;debated_with&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/debated_with.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/communication.svg&quot; } }, { &quot;type&quot;: &quot;deep_links_to&quot;, &quot;label&quot;: &quot;Deep links to&quot;, &quot;category&quot;: &quot;representation&quot;, &quot;meaning&quot;: &quot;The source points to a specific addressable fragment of the target.&quot;, &quot;inverse&quot;: &quot;deep_linked_from&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:deep_links_to&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#f59e0b&quot;, &quot;inverse_color&quot;: &quot;#fcd34d&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;deep_links_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/deep_links_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/representation.svg&quot; } }, { &quot;type&quot;: &quot;defines&quot;, &quot;label&quot;: &quot;Defines&quot;, &quot;category&quot;: &quot;definition&quot;, &quot;meaning&quot;: &quot;The source gives the defining explanation of the target.&quot;, &quot;inverse&quot;: &quot;defined_by&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:defines&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#facc15&quot;, &quot;inverse_color&quot;: &quot;#fde68a&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;defines&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/defines.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/definition.svg&quot; } }, { &quot;type&quot;: &quot;demonstrates&quot;, &quot;label&quot;: &quot;Demonstrates&quot;, &quot;category&quot;: &quot;evidence&quot;, &quot;meaning&quot;: &quot;The source provides an example or demonstration of the target.&quot;, &quot;inverse&quot;: &quot;demonstrated_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:demonstrates&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#10b981&quot;, &quot;inverse_color&quot;: &quot;#6ee7b7&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;demonstrates&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/demonstrates.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/evidence.svg&quot; } }, { &quot;type&quot;: &quot;depends_on&quot;, &quot;label&quot;: &quot;Depends on&quot;, &quot;category&quot;: &quot;composition&quot;, &quot;meaning&quot;: &quot;The source depends on the target.&quot;, &quot;inverse&quot;: &quot;dependency_of&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:depends_on&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#22c55e&quot;, &quot;inverse_color&quot;: &quot;#86efac&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;depends_on&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/depends_on.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/composition.svg&quot; } }, { &quot;type&quot;: &quot;depicts&quot;, &quot;label&quot;: &quot;Depicts&quot;, &quot;category&quot;: &quot;representation&quot;, &quot;meaning&quot;: &quot;The source media depicts the target.&quot;, &quot;inverse&quot;: &quot;depicted_by&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:depicts&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#f59e0b&quot;, &quot;inverse_color&quot;: &quot;#fcd34d&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;depicts&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/depicts.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/representation.svg&quot; } }, { &quot;type&quot;: &quot;derived_from&quot;, &quot;label&quot;: &quot;Derived from&quot;, &quot;category&quot;: &quot;lineage&quot;, &quot;meaning&quot;: &quot;The source descends from or is based on the target.&quot;, &quot;inverse&quot;: &quot;derived_into&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:derived_from&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#8b5cf6&quot;, &quot;inverse_color&quot;: &quot;#c4b5fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;derived_from&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/derived_from.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/lineage.svg&quot; } }, { &quot;type&quot;: &quot;discussed_with&quot;, &quot;label&quot;: &quot;Discussed with&quot;, &quot;category&quot;: &quot;communication&quot;, &quot;meaning&quot;: &quot;The source discussed the target topic, claim, problem, or source with another participant or group.&quot;, &quot;inverse&quot;: &quot;discussion_partner_of&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:discussed_with&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;discussed_with&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/discussed_with.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/communication.svg&quot; } }, { &quot;type&quot;: &quot;discusses&quot;, &quot;label&quot;: &quot;Discusses&quot;, &quot;category&quot;: &quot;citation&quot;, &quot;meaning&quot;: &quot;The source discusses, explores, or analyzes the target.&quot;, &quot;inverse&quot;: &quot;discussed_in&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:discusses&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;discusses&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/discusses.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/citation.svg&quot; } }, { &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:disputed_identity&quot;, &quot;type&quot;: &quot;disputed_identity&quot;, &quot;label&quot;: &quot;Disputed identity&quot;, &quot;category&quot;: &quot;identity&quot;, &quot;meaning&quot;: &quot;The source and target have an identity relationship that is contested, ambiguous, or rejected by at least one substrate, contributor, or governance process.&quot;, &quot;inverse&quot;: &quot;disputed_identity&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;core&quot;: true, &quot;extends&quot;: &quot;disputes&quot;, &quot;color&quot;: &quot;#f472b6&quot;, &quot;inverse_color&quot;: &quot;#fbcfe8&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;double&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;disputed_identity&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/disputed_identity.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/identity.svg&quot; } }, { &quot;type&quot;: &quot;disputes&quot;, &quot;label&quot;: &quot;Disputes&quot;, &quot;category&quot;: &quot;governance&quot;, &quot;meaning&quot;: &quot;The source disputes the target.&quot;, &quot;inverse&quot;: &quot;disputed_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:disputes&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#eab308&quot;, &quot;inverse_color&quot;: &quot;#fde047&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;double&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;disputes&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/disputes.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/governance.svg&quot; } }, { &quot;type&quot;: &quot;documents&quot;, &quot;label&quot;: &quot;Documents&quot;, &quot;category&quot;: &quot;evidence&quot;, &quot;meaning&quot;: &quot;The source records evidence about the target.&quot;, &quot;inverse&quot;: &quot;documented_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:documents&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#10b981&quot;, &quot;inverse_color&quot;: &quot;#6ee7b7&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;documents&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/documents.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/evidence.svg&quot; } }, { &quot;type&quot;: &quot;enables&quot;, &quot;label&quot;: &quot;Enables&quot;, &quot;category&quot;: &quot;composition&quot;, &quot;meaning&quot;: &quot;The source makes the target possible or easier to achieve.&quot;, &quot;inverse&quot;: &quot;enabled_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:enables&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#22c55e&quot;, &quot;inverse_color&quot;: &quot;#86efac&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;enables&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/enables.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/composition.svg&quot; } }, { &quot;type&quot;: &quot;equivalent_to&quot;, &quot;label&quot;: &quot;Equivalent to&quot;, &quot;category&quot;: &quot;comparison&quot;, &quot;meaning&quot;: &quot;The source is semantically identical or interchangeable with the target.&quot;, &quot;inverse&quot;: &quot;equivalent_to&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:equivalent_to&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#a78bfa&quot;, &quot;inverse_color&quot;: &quot;#ddd6fe&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;equivalent_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/equivalent_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/comparison.svg&quot; } }, { &quot;type&quot;: &quot;evidence_for&quot;, &quot;label&quot;: &quot;Evidence for&quot;, &quot;category&quot;: &quot;evidence&quot;, &quot;meaning&quot;: &quot;The source is evidence for the target claim or relationship.&quot;, &quot;inverse&quot;: &quot;has_evidence&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:evidence_for&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#10b981&quot;, &quot;inverse_color&quot;: &quot;#6ee7b7&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;evidence_for&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/evidence_for.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/evidence.svg&quot; } }, { &quot;type&quot;: &quot;example_of&quot;, &quot;label&quot;: &quot;Example of&quot;, &quot;category&quot;: &quot;cognition&quot;, &quot;meaning&quot;: &quot;The source is an example or concrete instance of the target.&quot;, &quot;inverse&quot;: &quot;has_example&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:example_of&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#7c3aed&quot;, &quot;inverse_color&quot;: &quot;#ddd6fe&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;example_of&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/example_of.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/cognition.svg&quot; } }, { &quot;type&quot;: &quot;explains&quot;, &quot;label&quot;: &quot;Explains&quot;, &quot;category&quot;: &quot;explanation&quot;, &quot;meaning&quot;: &quot;The source provides an explanation of the target - its causes, mechanisms, or meaning.&quot;, &quot;inverse&quot;: &quot;explained_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:explains&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#60a5fa&quot;, &quot;inverse_color&quot;: &quot;#bfdbfe&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;explains&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/explains.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/explanation.svg&quot; } }, { &quot;type&quot;: &quot;extends&quot;, &quot;label&quot;: &quot;Extends&quot;, &quot;category&quot;: &quot;lineage&quot;, &quot;meaning&quot;: &quot;The source extends the target.&quot;, &quot;inverse&quot;: &quot;extended_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:extends&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#8b5cf6&quot;, &quot;inverse_color&quot;: &quot;#c4b5fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;extends&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/extends.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/lineage.svg&quot; } }, { &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:extension_of&quot;, &quot;type&quot;: &quot;extension_of&quot;, &quot;label&quot;: &quot;Extension of&quot;, &quot;category&quot;: &quot;schema_mapping&quot;, &quot;meaning&quot;: &quot;The source custom schema, type, field, or relationship extends the target core schema, type, field, or relationship.&quot;, &quot;inverse&quot;: &quot;has_extension&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;core&quot;: true, &quot;extends&quot;: &quot;extends&quot;, &quot;color&quot;: &quot;#22d3ee&quot;, &quot;inverse_color&quot;: &quot;#a5f3fc&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;double&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;extension_of&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/extension_of.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/schema_mapping.svg&quot; } }, { &quot;type&quot;: &quot;fails_to_answer&quot;, &quot;label&quot;: &quot;Fails to answer&quot;, &quot;category&quot;: &quot;inquiry&quot;, &quot;meaning&quot;: &quot;The source explicitly does not answer the target question, or demonstrates that an attempted answer is inadequate.&quot;, &quot;inverse&quot;: &quot;not_answered_by&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:fails_to_answer&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#2dd4bf&quot;, &quot;inverse_color&quot;: &quot;#99f6e4&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;fails_to_answer&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/fails_to_answer.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/inquiry.svg&quot; } }, { &quot;type&quot;: &quot;falsifies&quot;, &quot;label&quot;: &quot;Falsifies&quot;, &quot;category&quot;: &quot;research_workflow&quot;, &quot;meaning&quot;: &quot;The source falsifies, refutes, or shows the target hypothesis or claim to be false under stated conditions.&quot;, &quot;inverse&quot;: &quot;falsified_by&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:falsifies&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#0ea5e9&quot;, &quot;inverse_color&quot;: &quot;#7dd3fc&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;falsifies&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/falsifies.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/research_workflow.svg&quot; } }, { &quot;type&quot;: &quot;features&quot;, &quot;label&quot;: &quot;Features&quot;, &quot;category&quot;: &quot;participation&quot;, &quot;meaning&quot;: &quot;The source features the target.&quot;, &quot;inverse&quot;: &quot;featured_in&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:features&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#ec4899&quot;, &quot;inverse_color&quot;: &quot;#f9a8d4&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;features&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/features.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/participation.svg&quot; } }, { &quot;type&quot;: &quot;frequently_misunderstood&quot;, &quot;label&quot;: &quot;Frequently misunderstood&quot;, &quot;category&quot;: &quot;attention&quot;, &quot;meaning&quot;: &quot;The source is frequently misunderstood in relation to the target context or audience.&quot;, &quot;inverse&quot;: &quot;misunderstanding_context_for&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:frequently_misunderstood&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fbbf24&quot;, &quot;inverse_color&quot;: &quot;#fde68a&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;frequently_misunderstood&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/frequently_misunderstood.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/attention.svg&quot; } }, { &quot;type&quot;: &quot;friend_of&quot;, &quot;label&quot;: &quot;Friend of&quot;, &quot;category&quot;: &quot;social&quot;, &quot;meaning&quot;: &quot;The source had a documented friendship with the target.&quot;, &quot;inverse&quot;: &quot;friend_of&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:friend_of&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fb7185&quot;, &quot;inverse_color&quot;: &quot;#fecdd3&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;friend_of&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/friend_of.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/social.svg&quot; } }, { &quot;type&quot;: &quot;generalizes&quot;, &quot;label&quot;: &quot;Generalizes&quot;, &quot;category&quot;: &quot;cognition&quot;, &quot;meaning&quot;: &quot;The source is a more general abstraction of the target.&quot;, &quot;inverse&quot;: &quot;specialized_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:generalizes&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#7c3aed&quot;, &quot;inverse_color&quot;: &quot;#ddd6fe&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;generalizes&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/generalizes.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/cognition.svg&quot; } }, { &quot;type&quot;: &quot;generated&quot;, &quot;label&quot;: &quot;Generated&quot;, &quot;category&quot;: &quot;causation&quot;, &quot;meaning&quot;: &quot;The source generated, produced, or caused the target artifact, claim, response, or knowledge object.&quot;, &quot;inverse&quot;: &quot;generated_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:generated&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#f97316&quot;, &quot;inverse_color&quot;: &quot;#fdba74&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;generated&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/generated.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/causation.svg&quot; } }, { &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:governed_by&quot;, &quot;type&quot;: &quot;governed_by&quot;, &quot;label&quot;: &quot;governed by&quot;, &quot;inverse&quot;: &quot;governs&quot;, &quot;category&quot;: &quot;governance&quot;, &quot;meaning&quot;: &quot;The source artifact, workflow, implementation, substrate, or mark is governed by the target policy, rule, specification, or legal instrument.&quot;, &quot;color&quot;: &quot;#eab308&quot;, &quot;inverse_color&quot;: &quot;#fde047&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;governed_by&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/governed_by.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/governance.svg&quot; } }, { &quot;type&quot;: &quot;has_claim&quot;, &quot;label&quot;: &quot;Has claim&quot;, &quot;category&quot;: &quot;claim_structure&quot;, &quot;meaning&quot;: &quot;The source concept, essay, observation, or source contains or depends on the target claim.&quot;, &quot;inverse&quot;: &quot;claim_of&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:has_claim&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#f43f5e&quot;, &quot;inverse_color&quot;: &quot;#fda4af&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;has_claim&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/has_claim.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/claim_structure.svg&quot; } }, { &quot;type&quot;: &quot;has_primary_media&quot;, &quot;label&quot;: &quot;Has primary media&quot;, &quot;category&quot;: &quot;representation&quot;, &quot;meaning&quot;: &quot;The source node uses the target media node as its primary representative image or icon.&quot;, &quot;inverse&quot;: &quot;used_as_primary_media_for&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:has_primary_media&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#f59e0b&quot;, &quot;inverse_color&quot;: &quot;#fcd34d&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;has_primary_media&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/has_primary_media.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/representation.svg&quot; } }, { &quot;type&quot;: &quot;high_risk_for&quot;, &quot;label&quot;: &quot;High risk for&quot;, &quot;category&quot;: &quot;attention&quot;, &quot;meaning&quot;: &quot;The source identifies a high risk for the target.&quot;, &quot;inverse&quot;: &quot;has_high_risk&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:high_risk_for&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fbbf24&quot;, &quot;inverse_color&quot;: &quot;#fde68a&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;high_risk_for&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/high_risk_for.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/attention.svg&quot; } }, { &quot;type&quot;: &quot;identified&quot;, &quot;label&quot;: &quot;Identified&quot;, &quot;category&quot;: &quot;creation&quot;, &quot;meaning&quot;: &quot;The source identified, named, or recognized the target.&quot;, &quot;inverse&quot;: &quot;identified_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:identified&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fb923c&quot;, &quot;inverse_color&quot;: &quot;#fed7aa&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;identified&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/identified.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/creation.svg&quot; } }, { &quot;type&quot;: &quot;implements&quot;, &quot;label&quot;: &quot;Implements&quot;, &quot;category&quot;: &quot;composition&quot;, &quot;meaning&quot;: &quot;The source implements the target idea, technology, protocol, method, or concept.&quot;, &quot;inverse&quot;: &quot;implemented_by&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:implements&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#22c55e&quot;, &quot;inverse_color&quot;: &quot;#86efac&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;implements&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/implements.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/composition.svg&quot; } }, { &quot;type&quot;: &quot;important_for&quot;, &quot;label&quot;: &quot;Important for&quot;, &quot;category&quot;: &quot;attention&quot;, &quot;meaning&quot;: &quot;The source is important for understanding, navigating, preserving, or acting on the target.&quot;, &quot;inverse&quot;: &quot;has_important_context&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:important_for&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fbbf24&quot;, &quot;inverse_color&quot;: &quot;#fde68a&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;important_for&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/important_for.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/attention.svg&quot; } }, { &quot;type&quot;: &quot;includes&quot;, &quot;label&quot;: &quot;Includes&quot;, &quot;category&quot;: &quot;composition&quot;, &quot;meaning&quot;: &quot;The source includes or encompasses the target as a member or component.&quot;, &quot;inverse&quot;: &quot;included_in&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:includes&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#22c55e&quot;, &quot;inverse_color&quot;: &quot;#86efac&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;includes&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/includes.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/composition.svg&quot; } }, { &quot;type&quot;: &quot;influenced&quot;, &quot;label&quot;: &quot;Influenced&quot;, &quot;category&quot;: &quot;influence&quot;, &quot;meaning&quot;: &quot;The source influenced the target.&quot;, &quot;inverse&quot;: &quot;influenced_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:influenced&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#14b8a6&quot;, &quot;inverse_color&quot;: &quot;#99f6e4&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;influenced&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/influenced.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/influence.svg&quot; } }, { &quot;type&quot;: &quot;insufficient_evidence&quot;, &quot;label&quot;: &quot;Insufficient evidence&quot;, &quot;category&quot;: &quot;uncertainty&quot;, &quot;meaning&quot;: &quot;The source indicates that the target lacks enough evidence for the asserted interpretation or status.&quot;, &quot;inverse&quot;: &quot;evidence_insufficient_for&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:insufficient_evidence&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#d946ef&quot;, &quot;inverse_color&quot;: &quot;#f5d0fe&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;insufficient_evidence&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/insufficient_evidence.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/uncertainty.svg&quot; } }, { &quot;type&quot;: &quot;interviewed&quot;, &quot;label&quot;: &quot;Interviewed&quot;, &quot;category&quot;: &quot;social&quot;, &quot;meaning&quot;: &quot;The source interviewed the target.&quot;, &quot;inverse&quot;: &quot;interviewed_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:interviewed&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fb7185&quot;, &quot;inverse_color&quot;: &quot;#fecdd3&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;interviewed&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/interviewed.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/social.svg&quot; } }, { &quot;type&quot;: &quot;introduced&quot;, &quot;label&quot;: &quot;Introduced&quot;, &quot;category&quot;: &quot;creation&quot;, &quot;meaning&quot;: &quot;The source introduced or first formally presented the target.&quot;, &quot;inverse&quot;: &quot;introduced_by&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:introduced&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fb923c&quot;, &quot;inverse_color&quot;: &quot;#fed7aa&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;introduced&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/introduced.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/creation.svg&quot; } }, { &quot;type&quot;: &quot;introduced_in&quot;, &quot;label&quot;: &quot;Introduced in&quot;, &quot;category&quot;: &quot;participation&quot;, &quot;meaning&quot;: &quot;The source was introduced, debuted, or first appeared in the target event, work, or venue.&quot;, &quot;inverse&quot;: &quot;introduction_venue_of&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:introduced_in&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#ec4899&quot;, &quot;inverse_color&quot;: &quot;#f9a8d4&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;introduced_in&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/introduced_in.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/participation.svg&quot; } }, { &quot;type&quot;: &quot;investigates&quot;, &quot;label&quot;: &quot;Investigates&quot;, &quot;category&quot;: &quot;inquiry&quot;, &quot;meaning&quot;: &quot;The source investigates the target question, problem, claim, hypothesis, or knowledge gap.&quot;, &quot;inverse&quot;: &quot;investigated_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:investigates&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#2dd4bf&quot;, &quot;inverse_color&quot;: &quot;#99f6e4&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;investigates&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/investigates.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/inquiry.svg&quot; } }, { &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:licensed_under&quot;, &quot;type&quot;: &quot;licensed_under&quot;, &quot;label&quot;: &quot;licensed under&quot;, &quot;inverse&quot;: &quot;license_for&quot;, &quot;category&quot;: &quot;governance&quot;, &quot;meaning&quot;: &quot;The source artifact, content, code, schema, media, or substrate is distributed under the target license.&quot;, &quot;color&quot;: &quot;#eab308&quot;, &quot;inverse_color&quot;: &quot;#fde047&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;licensed_under&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/licensed_under.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/governance.svg&quot; } }, { &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:maps_to&quot;, &quot;type&quot;: &quot;maps_to&quot;, &quot;label&quot;: &quot;Maps to&quot;, &quot;category&quot;: &quot;schema_mapping&quot;, &quot;meaning&quot;: &quot;The source schema type, field, node, or relationship maps to the target schema type, field, node, or relationship for interoperability.&quot;, &quot;inverse&quot;: &quot;mapped_from&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;core&quot;: true, &quot;extends&quot;: &quot;related_to&quot;, &quot;color&quot;: &quot;#22d3ee&quot;, &quot;inverse_color&quot;: &quot;#a5f3fc&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;double&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;maps_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/maps_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/schema_mapping.svg&quot; } }, { &quot;type&quot;: &quot;memorializes&quot;, &quot;label&quot;: &quot;Memorializes&quot;, &quot;category&quot;: &quot;social&quot;, &quot;meaning&quot;: &quot;The source commemorates, honors, or preserves the memory of the target.&quot;, &quot;inverse&quot;: &quot;memorialized_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:memorializes&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fb7185&quot;, &quot;inverse_color&quot;: &quot;#fecdd3&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;memorializes&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/memorializes.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/social.svg&quot; } }, { &quot;type&quot;: &quot;mentions&quot;, &quot;label&quot;: &quot;Mentions&quot;, &quot;category&quot;: &quot;citation&quot;, &quot;meaning&quot;: &quot;The source mentions the target without making it structurally central.&quot;, &quot;inverse&quot;: &quot;mentioned_by&quot;, &quot;default_weight&quot;: 2, &quot;default_visibility&quot;: &quot;background&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:mentions&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;mentions&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/mentions.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/citation.svg&quot; } }, { &quot;type&quot;: &quot;motivated_by&quot;, &quot;label&quot;: &quot;Motivated by&quot;, &quot;category&quot;: &quot;causation&quot;, &quot;meaning&quot;: &quot;The source was motivated or driven into being by the target.&quot;, &quot;inverse&quot;: &quot;motivates&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:motivated_by&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#f97316&quot;, &quot;inverse_color&quot;: &quot;#fdba74&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;motivated_by&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/motivated_by.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/causation.svg&quot; } }, { &quot;type&quot;: &quot;motivates_inquiry&quot;, &quot;label&quot;: &quot;Motivates inquiry&quot;, &quot;category&quot;: &quot;inquiry&quot;, &quot;meaning&quot;: &quot;The source motivates inquiry into the target question, problem, claim, or knowledge gap.&quot;, &quot;inverse&quot;: &quot;inquiry_motivated_by&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:motivates_inquiry&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#2dd4bf&quot;, &quot;inverse_color&quot;: &quot;#99f6e4&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;motivates_inquiry&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/motivates_inquiry.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/inquiry.svg&quot; } }, { &quot;type&quot;: &quot;negotiated_with&quot;, &quot;label&quot;: &quot;Negotiated with&quot;, &quot;category&quot;: &quot;communication&quot;, &quot;meaning&quot;: &quot;The source negotiated with the target actor, group, or position.&quot;, &quot;inverse&quot;: &quot;negotiated_with&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:negotiated_with&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;negotiated_with&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/negotiated_with.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/communication.svg&quot; } }, { &quot;type&quot;: &quot;occurred_at&quot;, &quot;label&quot;: &quot;Occurred at&quot;, &quot;category&quot;: &quot;location&quot;, &quot;meaning&quot;: &quot;The source event occurred at the target place.&quot;, &quot;inverse&quot;: &quot;site_of&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:occurred_at&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#84cc16&quot;, &quot;inverse_color&quot;: &quot;#bef264&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;occurred_at&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/occurred_at.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/location.svg&quot; } }, { &quot;type&quot;: &quot;overlooked_by&quot;, &quot;label&quot;: &quot;Overlooked by&quot;, &quot;category&quot;: &quot;attention&quot;, &quot;meaning&quot;: &quot;The source is overlooked by the target person, community, source, or substrate.&quot;, &quot;inverse&quot;: &quot;overlooks&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:overlooked_by&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fbbf24&quot;, &quot;inverse_color&quot;: &quot;#fde68a&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;overlooked_by&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/overlooked_by.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/attention.svg&quot; } }, { &quot;type&quot;: &quot;parallel_to&quot;, &quot;label&quot;: &quot;Parallel to&quot;, &quot;category&quot;: &quot;comparison&quot;, &quot;meaning&quot;: &quot;The source developed alongside or resembles the target without necessarily descending from it.&quot;, &quot;inverse&quot;: &quot;parallel_to&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:parallel_to&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#a78bfa&quot;, &quot;inverse_color&quot;: &quot;#ddd6fe&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;parallel_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/parallel_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/comparison.svg&quot; } }, { &quot;type&quot;: &quot;partially_answers&quot;, &quot;label&quot;: &quot;Partially answers&quot;, &quot;category&quot;: &quot;inquiry&quot;, &quot;meaning&quot;: &quot;The source provides a partial answer to the target question while leaving important parts unresolved.&quot;, &quot;inverse&quot;: &quot;partially_answered_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:partially_answers&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#2dd4bf&quot;, &quot;inverse_color&quot;: &quot;#99f6e4&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;partially_answers&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/partially_answers.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/inquiry.svg&quot; } }, { &quot;type&quot;: &quot;questions&quot;, &quot;label&quot;: &quot;Questions&quot;, &quot;category&quot;: &quot;inquiry&quot;, &quot;meaning&quot;: &quot;The source questions, challenges, or casts doubt on the target claim, hypothesis, answer, method, or interpretation.&quot;, &quot;inverse&quot;: &quot;questioned_by&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:questions&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#2dd4bf&quot;, &quot;inverse_color&quot;: &quot;#99f6e4&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;questions&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/questions.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/inquiry.svg&quot; } }, { &quot;type&quot;: &quot;participated_in&quot;, &quot;label&quot;: &quot;Participated in&quot;, &quot;category&quot;: &quot;participation&quot;, &quot;meaning&quot;: &quot;The source participated in the target.&quot;, &quot;inverse&quot;: &quot;had_participant&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:participated_in&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#ec4899&quot;, &quot;inverse_color&quot;: &quot;#f9a8d4&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;participated_in&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/participated_in.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/participation.svg&quot; } }, { &quot;type&quot;: &quot;popularized&quot;, &quot;label&quot;: &quot;Popularized&quot;, &quot;category&quot;: &quot;influence&quot;, &quot;meaning&quot;: &quot;The source brought the target to a wider audience or made it culturally visible.&quot;, &quot;inverse&quot;: &quot;popularized_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:popularized&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#14b8a6&quot;, &quot;inverse_color&quot;: &quot;#99f6e4&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;popularized&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/popularized.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/influence.svg&quot; } }, { &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:possible_match&quot;, &quot;type&quot;: &quot;possible_match&quot;, &quot;label&quot;: &quot;Possible match&quot;, &quot;category&quot;: &quot;identity&quot;, &quot;meaning&quot;: &quot;The source may represent the same entity, concept, claim, source, or fragment as the target, but the match has not been confirmed.&quot;, &quot;inverse&quot;: &quot;possible_match&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;core&quot;: true, &quot;extends&quot;: &quot;related_to&quot;, &quot;color&quot;: &quot;#f472b6&quot;, &quot;inverse_color&quot;: &quot;#fbcfe8&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;double&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;possible_match&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/possible_match.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/identity.svg&quot; } }, { &quot;type&quot;: &quot;possibly_related_to&quot;, &quot;label&quot;: &quot;Possibly related to&quot;, &quot;category&quot;: &quot;discovery&quot;, &quot;meaning&quot;: &quot;The source may be related to the target, but the specific relationship is not yet known or justified.&quot;, &quot;inverse&quot;: &quot;possibly_related_to&quot;, &quot;default_weight&quot;: 2, &quot;default_visibility&quot;: &quot;background&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:possibly_related_to&quot;, &quot;core&quot;: true, &quot;extends&quot;: &quot;related_to&quot;, &quot;color&quot;: &quot;#34d399&quot;, &quot;inverse_color&quot;: &quot;#a7f3d0&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;possibly_related_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/possibly_related_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/discovery.svg&quot; } }, { &quot;type&quot;: &quot;preceded&quot;, &quot;label&quot;: &quot;Preceded&quot;, &quot;category&quot;: &quot;temporal&quot;, &quot;meaning&quot;: &quot;The source came before the target.&quot;, &quot;inverse&quot;: &quot;followed&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:preceded&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#a3e635&quot;, &quot;inverse_color&quot;: &quot;#d9f99d&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;preceded&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/preceded.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/temporal.svg&quot; } }, { &quot;type&quot;: &quot;presented&quot;, &quot;label&quot;: &quot;Presented&quot;, &quot;category&quot;: &quot;participation&quot;, &quot;meaning&quot;: &quot;The source presented, hosted, narrated, or publicly introduced the target work, program, or media object.&quot;, &quot;inverse&quot;: &quot;presented_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:presented&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#ec4899&quot;, &quot;inverse_color&quot;: &quot;#f9a8d4&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;presented&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/presented.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/participation.svg&quot; } }, { &quot;type&quot;: &quot;presented_to&quot;, &quot;label&quot;: &quot;Presented to&quot;, &quot;category&quot;: &quot;communication&quot;, &quot;meaning&quot;: &quot;The source presented the target content, claim, source, or project to an audience.&quot;, &quot;inverse&quot;: &quot;presentation_received_from&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:presented_to&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;presented_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/presented_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/communication.svg&quot; } }, { &quot;type&quot;: &quot;preserves&quot;, &quot;label&quot;: &quot;Preserves&quot;, &quot;category&quot;: &quot;composition&quot;, &quot;meaning&quot;: &quot;The source preserves the target property, structure, lineage, or context.&quot;, &quot;inverse&quot;: &quot;preserved_by&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:preserves&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#22c55e&quot;, &quot;inverse_color&quot;: &quot;#86efac&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;preserves&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/preserves.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/composition.svg&quot; } }, { &quot;type&quot;: &quot;proposed&quot;, &quot;label&quot;: &quot;Proposed&quot;, &quot;category&quot;: &quot;creation&quot;, &quot;meaning&quot;: &quot;The source proposed or put forward the target.&quot;, &quot;inverse&quot;: &quot;proposed_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:proposed&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fb923c&quot;, &quot;inverse_color&quot;: &quot;#fed7aa&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;proposed&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/proposed.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/creation.svg&quot; } }, { &quot;type&quot;: &quot;quotes&quot;, &quot;label&quot;: &quot;Quotes&quot;, &quot;category&quot;: &quot;citation&quot;, &quot;meaning&quot;: &quot;The source quotes the target.&quot;, &quot;inverse&quot;: &quot;quoted_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:quotes&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;quotes&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/quotes.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/citation.svg&quot; } }, { &quot;type&quot;: &quot;raises&quot;, &quot;label&quot;: &quot;Raises&quot;, &quot;category&quot;: &quot;inquiry&quot;, &quot;meaning&quot;: &quot;The source raises, surfaces, or implies the target question, problem, or knowledge gap.&quot;, &quot;inverse&quot;: &quot;raised_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:raises&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#2dd4bf&quot;, &quot;inverse_color&quot;: &quot;#99f6e4&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;raises&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/raises.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/inquiry.svg&quot; } }, { &quot;type&quot;: &quot;refines&quot;, &quot;label&quot;: &quot;Refines&quot;, &quot;category&quot;: &quot;evolution&quot;, &quot;meaning&quot;: &quot;The source refines, sharpens, or improves the target.&quot;, &quot;inverse&quot;: &quot;refined_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:refines&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#64748b&quot;, &quot;inverse_color&quot;: &quot;#cbd5e1&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;refines&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/refines.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/evolution.svg&quot; } }, { &quot;type&quot;: &quot;related_to&quot;, &quot;label&quot;: &quot;Related to&quot;, &quot;category&quot;: &quot;generic&quot;, &quot;meaning&quot;: &quot;The source is related to the target when no more specific relationship applies.&quot;, &quot;inverse&quot;: &quot;related_to&quot;, &quot;default_weight&quot;: 2, &quot;default_visibility&quot;: &quot;background&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:related_to&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#94a3b8&quot;, &quot;inverse_color&quot;: &quot;#cbd5e1&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;related_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/related_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/generic.svg&quot; } }, { &quot;type&quot;: &quot;replied_to&quot;, &quot;label&quot;: &quot;Replied to&quot;, &quot;category&quot;: &quot;communication&quot;, &quot;meaning&quot;: &quot;The source is a reply to the target communication, question, response, or claim.&quot;, &quot;inverse&quot;: &quot;replied_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:replied_to&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;replied_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/replied_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/communication.svg&quot; } }, { &quot;type&quot;: &quot;responds_to&quot;, &quot;label&quot;: &quot;Responds to&quot;, &quot;category&quot;: &quot;communication&quot;, &quot;meaning&quot;: &quot;The source responds to the target communication, question, claim, observation, or prior response.&quot;, &quot;inverse&quot;: &quot;responded_to_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:responds_to&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;responds_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/responds_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/communication.svg&quot; } }, { &quot;type&quot;: &quot;reported_to&quot;, &quot;label&quot;: &quot;Reported to&quot;, &quot;category&quot;: &quot;communication&quot;, &quot;meaning&quot;: &quot;The source reported information, status, or evidence to the target actor, system, or audience.&quot;, &quot;inverse&quot;: &quot;received_report_from&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:reported_to&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#38bdf8&quot;, &quot;inverse_color&quot;: &quot;#bae6fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;reported_to&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/reported_to.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/communication.svg&quot; } }, { &quot;type&quot;: &quot;represents&quot;, &quot;label&quot;: &quot;Represents&quot;, &quot;category&quot;: &quot;representation&quot;, &quot;meaning&quot;: &quot;The source media or artifact represents the target.&quot;, &quot;inverse&quot;: &quot;represented_by&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:represents&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#f59e0b&quot;, &quot;inverse_color&quot;: &quot;#fcd34d&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;represents&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/represents.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/representation.svg&quot; } }, { &quot;type&quot;: &quot;requires&quot;, &quot;label&quot;: &quot;Requires&quot;, &quot;category&quot;: &quot;composition&quot;, &quot;meaning&quot;: &quot;The source requires the target as a prerequisite, input, or condition.&quot;, &quot;inverse&quot;: &quot;required_for&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:requires&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#22c55e&quot;, &quot;inverse_color&quot;: &quot;#86efac&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;requires&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/requires.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/composition.svg&quot; } }, { &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:requires_attribution&quot;, &quot;type&quot;: &quot;requires_attribution&quot;, &quot;label&quot;: &quot;requires attribution&quot;, &quot;inverse&quot;: &quot;attribution_required_by&quot;, &quot;category&quot;: &quot;governance&quot;, &quot;meaning&quot;: &quot;The source license, artifact, substrate, or policy requires attribution to the target person, organization, project, source, or community.&quot;, &quot;color&quot;: &quot;#eab308&quot;, &quot;inverse_color&quot;: &quot;#fde047&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;requires_attribution&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/requires_attribution.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/governance.svg&quot; } }, { &quot;type&quot;: &quot;requires_context&quot;, &quot;label&quot;: &quot;Requires context&quot;, &quot;category&quot;: &quot;knowledge_workflow&quot;, &quot;meaning&quot;: &quot;The source needs additional context to be interpreted responsibly.&quot;, &quot;inverse&quot;: &quot;context_required_by&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:requires_context&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#06b6d4&quot;, &quot;inverse_color&quot;: &quot;#a5f3fc&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;requires_context&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/requires_context.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/knowledge_workflow.svg&quot; } }, { &quot;type&quot;: &quot;requires_information&quot;, &quot;label&quot;: &quot;Requires information&quot;, &quot;category&quot;: &quot;knowledge_workflow&quot;, &quot;meaning&quot;: &quot;The source cannot be resolved, accepted, or completed without additional information.&quot;, &quot;inverse&quot;: &quot;information_required_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:requires_information&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#06b6d4&quot;, &quot;inverse_color&quot;: &quot;#a5f3fc&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;requires_information&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/requires_information.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/knowledge_workflow.svg&quot; } }, { &quot;type&quot;: &quot;requires_review&quot;, &quot;label&quot;: &quot;Requires review&quot;, &quot;category&quot;: &quot;knowledge_workflow&quot;, &quot;meaning&quot;: &quot;The source needs human, institutional, or automated review before it should be trusted or merged.&quot;, &quot;inverse&quot;: &quot;review_required_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:requires_review&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#06b6d4&quot;, &quot;inverse_color&quot;: &quot;#a5f3fc&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;requires_review&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/requires_review.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/knowledge_workflow.svg&quot; } }, { &quot;type&quot;: &quot;requires_source&quot;, &quot;label&quot;: &quot;Requires source&quot;, &quot;category&quot;: &quot;knowledge_workflow&quot;, &quot;meaning&quot;: &quot;The source needs a cited source or primary evidence before it should be treated as supported.&quot;, &quot;inverse&quot;: &quot;source_required_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:requires_source&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#06b6d4&quot;, &quot;inverse_color&quot;: &quot;#a5f3fc&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;requires_source&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/requires_source.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/knowledge_workflow.svg&quot; } }, { &quot;type&quot;: &quot;requires_validation&quot;, &quot;label&quot;: &quot;Requires validation&quot;, &quot;category&quot;: &quot;knowledge_workflow&quot;, &quot;meaning&quot;: &quot;The source needs schema, evidence, reproducibility, or process validation.&quot;, &quot;inverse&quot;: &quot;validation_required_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:requires_validation&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#06b6d4&quot;, &quot;inverse_color&quot;: &quot;#a5f3fc&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;requires_validation&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/requires_validation.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/knowledge_workflow.svg&quot; } }, { &quot;type&quot;: &quot;resonates_with&quot;, &quot;label&quot;: &quot;Resonates with&quot;, &quot;category&quot;: &quot;cognition&quot;, &quot;meaning&quot;: &quot;The source has a low-commitment conceptual or experiential resonance with the target.&quot;, &quot;inverse&quot;: &quot;resonates_with&quot;, &quot;default_weight&quot;: 2, &quot;default_visibility&quot;: &quot;background&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:resonates_with&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#7c3aed&quot;, &quot;inverse_color&quot;: &quot;#ddd6fe&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;resonates_with&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/resonates_with.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/cognition.svg&quot; } }, { &quot;type&quot;: &quot;results_from&quot;, &quot;label&quot;: &quot;Results from&quot;, &quot;category&quot;: &quot;causation&quot;, &quot;meaning&quot;: &quot;The source is a consequence, failure mode, output, or downstream effect of the target.&quot;, &quot;inverse&quot;: &quot;produces&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:results_from&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#f97316&quot;, &quot;inverse_color&quot;: &quot;#fdba74&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;results_from&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/results_from.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/causation.svg&quot; } }, { &quot;type&quot;: &quot;same_concept&quot;, &quot;label&quot;: &quot;Same concept&quot;, &quot;category&quot;: &quot;identity&quot;, &quot;meaning&quot;: &quot;The source and target represent the same concept across substrates, namespaces, versions, or local identifiers.&quot;, &quot;inverse&quot;: &quot;same_concept&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:same_concept&quot;, &quot;core&quot;: true, &quot;extends&quot;: &quot;same_entity&quot;, &quot;color&quot;: &quot;#f472b6&quot;, &quot;inverse_color&quot;: &quot;#fbcfe8&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;double&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;same_concept&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/same_concept.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/identity.svg&quot; } }, { &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:same_entity&quot;, &quot;type&quot;: &quot;same_entity&quot;, &quot;label&quot;: &quot;Same entity&quot;, &quot;category&quot;: &quot;identity&quot;, &quot;meaning&quot;: &quot;The source and target represent the same real-world entity across substrates, namespaces, versions, or local identifiers.&quot;, &quot;inverse&quot;: &quot;same_entity&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;core&quot;: true, &quot;extends&quot;: &quot;equivalent_to&quot;, &quot;color&quot;: &quot;#f472b6&quot;, &quot;inverse_color&quot;: &quot;#fbcfe8&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;double&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;same_entity&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/same_entity.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/identity.svg&quot; } }, { &quot;type&quot;: &quot;same_person&quot;, &quot;label&quot;: &quot;Same person&quot;, &quot;category&quot;: &quot;identity&quot;, &quot;meaning&quot;: &quot;The source and target represent the same person across substrates, namespaces, versions, or local identifiers.&quot;, &quot;inverse&quot;: &quot;same_person&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:same_person&quot;, &quot;core&quot;: true, &quot;extends&quot;: &quot;same_entity&quot;, &quot;color&quot;: &quot;#f472b6&quot;, &quot;inverse_color&quot;: &quot;#fbcfe8&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;double&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;same_person&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/same_person.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/identity.svg&quot; } }, { &quot;type&quot;: &quot;same_source&quot;, &quot;label&quot;: &quot;Same source&quot;, &quot;category&quot;: &quot;identity&quot;, &quot;meaning&quot;: &quot;The source and target represent the same source or reference object across substrates, namespaces, versions, or local identifiers.&quot;, &quot;inverse&quot;: &quot;same_source&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:same_source&quot;, &quot;core&quot;: true, &quot;extends&quot;: &quot;same_entity&quot;, &quot;color&quot;: &quot;#f472b6&quot;, &quot;inverse_color&quot;: &quot;#fbcfe8&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;double&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;same_source&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/same_source.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/identity.svg&quot; } }, { &quot;type&quot;: &quot;shapes&quot;, &quot;label&quot;: &quot;Shapes&quot;, &quot;category&quot;: &quot;influence&quot;, &quot;meaning&quot;: &quot;The source significantly shapes or molds the form, direction, or character of the target.&quot;, &quot;inverse&quot;: &quot;shaped_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:shapes&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#14b8a6&quot;, &quot;inverse_color&quot;: &quot;#99f6e4&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;shapes&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/shapes.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/influence.svg&quot; } }, { &quot;type&quot;: &quot;shares_pattern_with&quot;, &quot;label&quot;: &quot;Shares pattern with&quot;, &quot;category&quot;: &quot;discovery&quot;, &quot;meaning&quot;: &quot;The source shares a recognizable structure, behavior, or pattern with the target.&quot;, &quot;inverse&quot;: &quot;shares_pattern_with&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:shares_pattern_with&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#34d399&quot;, &quot;inverse_color&quot;: &quot;#a7f3d0&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;shares_pattern_with&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/shares_pattern_with.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/discovery.svg&quot; } }, { &quot;type&quot;: &quot;specializes&quot;, &quot;label&quot;: &quot;Specializes&quot;, &quot;category&quot;: &quot;cognition&quot;, &quot;meaning&quot;: &quot;The source is a more specific case of the target.&quot;, &quot;inverse&quot;: &quot;generalized_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:specializes&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#7c3aed&quot;, &quot;inverse_color&quot;: &quot;#ddd6fe&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;specializes&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/specializes.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/cognition.svg&quot; } }, { &quot;type&quot;: &quot;speculative&quot;, &quot;label&quot;: &quot;Speculative&quot;, &quot;category&quot;: &quot;uncertainty&quot;, &quot;meaning&quot;: &quot;The source marks the target as speculative, provisional, or not yet established.&quot;, &quot;inverse&quot;: &quot;speculated_by&quot;, &quot;default_weight&quot;: 2, &quot;default_visibility&quot;: &quot;background&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:speculative&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#d946ef&quot;, &quot;inverse_color&quot;: &quot;#f5d0fe&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;speculative&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/speculative.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/uncertainty.svg&quot; } }, { &quot;type&quot;: &quot;spoke_at&quot;, &quot;label&quot;: &quot;Spoke at&quot;, &quot;category&quot;: &quot;participation&quot;, &quot;meaning&quot;: &quot;The source person spoke at the target event.&quot;, &quot;inverse&quot;: &quot;featured_speaker&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:spoke_at&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#ec4899&quot;, &quot;inverse_color&quot;: &quot;#f9a8d4&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;spoke_at&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/spoke_at.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/participation.svg&quot; } }, { &quot;type&quot;: &quot;starts_with&quot;, &quot;label&quot;: &quot;Starts with&quot;, &quot;category&quot;: &quot;temporal&quot;, &quot;meaning&quot;: &quot;The source sequence, work, or argument begins with the target.&quot;, &quot;inverse&quot;: &quot;is_start_of&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:starts_with&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#a3e635&quot;, &quot;inverse_color&quot;: &quot;#d9f99d&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;starts_with&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/starts_with.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/temporal.svg&quot; } }, { &quot;type&quot;: &quot;supersedes&quot;, &quot;label&quot;: &quot;Supersedes&quot;, &quot;category&quot;: &quot;evolution&quot;, &quot;meaning&quot;: &quot;The source replaces the target.&quot;, &quot;inverse&quot;: &quot;superseded_by&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:supersedes&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#64748b&quot;, &quot;inverse_color&quot;: &quot;#cbd5e1&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;supersedes&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/supersedes.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/evolution.svg&quot; } }, { &quot;type&quot;: &quot;supports&quot;, &quot;label&quot;: &quot;Supports&quot;, &quot;category&quot;: &quot;evidence&quot;, &quot;meaning&quot;: &quot;The source supports the target.&quot;, &quot;inverse&quot;: &quot;supported_by&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:supports&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#10b981&quot;, &quot;inverse_color&quot;: &quot;#6ee7b7&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;supports&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/supports.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/evidence.svg&quot; } }, { &quot;type&quot;: &quot;tests&quot;, &quot;label&quot;: &quot;Tests&quot;, &quot;category&quot;: &quot;research_workflow&quot;, &quot;meaning&quot;: &quot;The source tests the target hypothesis, claim, method, or prediction.&quot;, &quot;inverse&quot;: &quot;tested_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:tests&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#0ea5e9&quot;, &quot;inverse_color&quot;: &quot;#7dd3fc&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;tests&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/tests.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/research_workflow.svg&quot; } }, { &quot;type&quot;: &quot;threatens&quot;, &quot;label&quot;: &quot;Threatens&quot;, &quot;category&quot;: &quot;governance&quot;, &quot;meaning&quot;: &quot;The source threatens, endangers, or poses a risk to the target.&quot;, &quot;inverse&quot;: &quot;threatened_by&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:threatens&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#eab308&quot;, &quot;inverse_color&quot;: &quot;#fde047&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;double&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;threatens&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/threatens.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/governance.svg&quot; } }, { &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:trademarked_by&quot;, &quot;type&quot;: &quot;trademarked_by&quot;, &quot;label&quot;: &quot;trademarked by&quot;, &quot;inverse&quot;: &quot;trademark_holder_for&quot;, &quot;category&quot;: &quot;governance&quot;, &quot;meaning&quot;: &quot;The source name, logo, brand asset, project identity, or mark is governed as a trademark by the target person, organization, project, or policy.&quot;, &quot;color&quot;: &quot;#eab308&quot;, &quot;inverse_color&quot;: &quot;#fde047&quot;, &quot;line_style&quot;: &quot;double&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;projection&quot;: { &quot;icon&quot;: &quot;trademarked_by&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/trademarked_by.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/governance.svg&quot; } }, { &quot;type&quot;: &quot;trained_on&quot;, &quot;label&quot;: &quot;Trained on&quot;, &quot;category&quot;: &quot;composition&quot;, &quot;meaning&quot;: &quot;The source system or model was trained on the target dataset, corpus, or collection.&quot;, &quot;inverse&quot;: &quot;used_to_train&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:trained_on&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#22c55e&quot;, &quot;inverse_color&quot;: &quot;#86efac&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;trained_on&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/trained_on.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/composition.svg&quot; } }, { &quot;type&quot;: &quot;transcludes&quot;, &quot;label&quot;: &quot;Transcludes&quot;, &quot;category&quot;: &quot;representation&quot;, &quot;meaning&quot;: &quot;The source includes a specific versioned fragment of the target by reference rather than copying it, preserving identity, attribution, and revision lineage.&quot;, &quot;inverse&quot;: &quot;transcluded_by&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:transcludes&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#f59e0b&quot;, &quot;inverse_color&quot;: &quot;#fcd34d&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;transcludes&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/transcludes.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/representation.svg&quot; } }, { &quot;type&quot;: &quot;under_review&quot;, &quot;label&quot;: &quot;Under review&quot;, &quot;category&quot;: &quot;uncertainty&quot;, &quot;meaning&quot;: &quot;The source places the target under review or indicates that its status is being evaluated.&quot;, &quot;inverse&quot;: &quot;reviewed_under&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:under_review&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#d946ef&quot;, &quot;inverse_color&quot;: &quot;#f5d0fe&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;under_review&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/under_review.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/uncertainty.svg&quot; } }, { &quot;type&quot;: &quot;unresolved&quot;, &quot;label&quot;: &quot;Unresolved&quot;, &quot;category&quot;: &quot;uncertainty&quot;, &quot;meaning&quot;: &quot;The source marks the target as unresolved, unsettled, or not yet answerable.&quot;, &quot;inverse&quot;: &quot;unresolved_by&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:unresolved&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#d946ef&quot;, &quot;inverse_color&quot;: &quot;#f5d0fe&quot;, &quot;line_style&quot;: &quot;dotted&quot;, &quot;inverse_line_style&quot;: &quot;dotted&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;unresolved&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/unresolved.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/uncertainty.svg&quot; } }, { &quot;type&quot;: &quot;uses&quot;, &quot;label&quot;: &quot;Uses&quot;, &quot;category&quot;: &quot;composition&quot;, &quot;meaning&quot;: &quot;The source uses, employs, or relies on the target.&quot;, &quot;inverse&quot;: &quot;used_by&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:uses&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#22c55e&quot;, &quot;inverse_color&quot;: &quot;#86efac&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;uses&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/uses.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/composition.svg&quot; } }, { &quot;type&quot;: &quot;validates&quot;, &quot;label&quot;: &quot;Validates&quot;, &quot;category&quot;: &quot;research_workflow&quot;, &quot;meaning&quot;: &quot;The source validates, confirms, or passes a test for the target hypothesis, claim, method, or artifact.&quot;, &quot;inverse&quot;: &quot;validated_by&quot;, &quot;default_weight&quot;: 5, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:validates&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#0ea5e9&quot;, &quot;inverse_color&quot;: &quot;#7dd3fc&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;validates&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/validates.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/research_workflow.svg&quot; } }, { &quot;type&quot;: &quot;co_authored_with&quot;, &quot;label&quot;: &quot;Co-authored with&quot;, &quot;category&quot;: &quot;creation&quot;, &quot;meaning&quot;: &quot;The source was co-authored, co-created, or jointly produced with the target.&quot;, &quot;inverse&quot;: &quot;co_authored_with&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:co_authored_with&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#0ea5e9&quot;, &quot;inverse_color&quot;: &quot;#7dd3fc&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;co_authored_with&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/co_authored_with.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/creation.svg&quot; } }, { &quot;type&quot;: &quot;adapted_from&quot;, &quot;label&quot;: &quot;Adapted from&quot;, &quot;category&quot;: &quot;revision&quot;, &quot;meaning&quot;: &quot;The source is an adaptation, reworking, or new presentation of the target work.&quot;, &quot;inverse&quot;: &quot;adapted_into&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:adapted_from&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fb923c&quot;, &quot;inverse_color&quot;: &quot;#fdba74&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;adapted_from&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/adapted_from.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/revision.svg&quot; } }, { &quot;type&quot;: &quot;adapted_into&quot;, &quot;label&quot;: &quot;Adapted into&quot;, &quot;category&quot;: &quot;revision&quot;, &quot;meaning&quot;: &quot;The source was transformed into the target work or presentation form.&quot;, &quot;inverse&quot;: &quot;adapted_from&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:adapted_into&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#fdba74&quot;, &quot;inverse_color&quot;: &quot;#fb923c&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;adapted_into&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/adapted_into.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/revision.svg&quot; } }, { &quot;type&quot;: &quot;format_translated_from&quot;, &quot;label&quot;: &quot;Format translated from&quot;, &quot;category&quot;: &quot;representation&quot;, &quot;meaning&quot;: &quot;The source preserves the target content while changing format, medium, or presentation layer.&quot;, &quot;inverse&quot;: &quot;format_translated_into&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:format_translated_from&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#8b5cf6&quot;, &quot;inverse_color&quot;: &quot;#c4b5fd&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;format_translated_from&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/format_translated_from.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/representation.svg&quot; } }, { &quot;type&quot;: &quot;format_translated_into&quot;, &quot;label&quot;: &quot;Format translated into&quot;, &quot;category&quot;: &quot;representation&quot;, &quot;meaning&quot;: &quot;The source is a format translation of the target content.&quot;, &quot;inverse&quot;: &quot;format_translated_from&quot;, &quot;default_weight&quot;: 4, &quot;default_visibility&quot;: &quot;primary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:format_translated_into&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#c4b5fd&quot;, &quot;inverse_color&quot;: &quot;#8b5cf6&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;format_translated_into&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/format_translated_into.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/representation.svg&quot; } }, { &quot;type&quot;: &quot;medium_transition&quot;, &quot;label&quot;: &quot;Medium transition&quot;, &quot;category&quot;: &quot;evolution&quot;, &quot;meaning&quot;: &quot;The source marks a shift from the target through a different medium, presentation mode, or publication form.&quot;, &quot;inverse&quot;: &quot;medium_transitioned_from&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:medium_transition&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#14b8a6&quot;, &quot;inverse_color&quot;: &quot;#99f6e4&quot;, &quot;line_style&quot;: &quot;solid&quot;, &quot;inverse_line_style&quot;: &quot;dashed&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;medium_transition&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/medium_transition.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/evolution.svg&quot; } }, { &quot;type&quot;: &quot;medium_transitioned_from&quot;, &quot;label&quot;: &quot;Medium transitioned from&quot;, &quot;category&quot;: &quot;evolution&quot;, &quot;meaning&quot;: &quot;The source is the earlier medium form from which the target transitioned.&quot;, &quot;inverse&quot;: &quot;medium_transition&quot;, &quot;default_weight&quot;: 3, &quot;default_visibility&quot;: &quot;secondary&quot;, &quot;namespace&quot;: &quot;xananode&quot;, &quot;id&quot;: &quot;xananode:medium_transitioned_from&quot;, &quot;core&quot;: true, &quot;extends&quot;: null, &quot;color&quot;: &quot;#99f6e4&quot;, &quot;inverse_color&quot;: &quot;#14b8a6&quot;, &quot;line_style&quot;: &quot;dashed&quot;, &quot;inverse_line_style&quot;: &quot;solid&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;medium_transitioned_from&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/medium_transitioned_from.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/evolution.svg&quot; } } ], &quot;media_conventions&quot;: { &quot;relationship_type_asset_path_template&quot;: &quot;assets/projection/relationship-types/{type}.svg&quot;, &quot;relationship_category_asset_path_template&quot;: &quot;assets/projection/relationship-categories/{category}.svg&quot; } }</p>",
      "url": "/schema/protocol-artifact-schemas-xananode-relationship-types.v0.5.0.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/xananode-relationship-types.v0.5.0.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-xananode-relationship-types.v0.5.0.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-schemas-xananode-substrate-layout.v0.1.0.json",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-schemas-xananode-substrate-layout.v0.1.0.json",
      "title": "Schemas / XanaNode Substrate Layout v0.1.0",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "A canonical schema or registry artifact published as XanaNode Substrate Layout v0.1.0.",
      "content": "{\n  \"$schema\": \"./substrate-layout.schema.json\",\n  \"id\": \"xananode.substrate-layout\",\n  \"version\": \"0.1.0\",\n  \"description\": \"The standard directory layout for a portable XanaNode substrate root.\",\n  \"root_contract\": \"A substrate root is the directory containing substrate.json. Tools should be able to validate, pack, mount, and project a substrate from this root without needing private application state.\",\n  \"required_paths\": [\n    {\n      \"path\": \"substrate.json\",\n      \"role\": \"substrate_manifest\",\n      \"required\": true,\n      \"kind\": \"file\",\n      \"format\": \"json\",\n      \"description\": \"The substrate manifest declaring id, name, namespace, version, repository, imports, sharing policy, and build/provenance metadata.\",\n      \"tools_must_preserve\": true\n    }\n  ],\n  \"recognized_paths\": [\n    {\n      \"path\": \"nodes/*.json\",\n      \"role\": \"protocol_nodes\",\n      \"kind\": \"glob\",\n      \"format\": \"json\",\n      \"description\": \"Canonical protocol node records. A hand-built substrate may use this directory directly.\",\n      \"tools_must_preserve\": true\n    },\n    {\n      \"path\": \"nodes.json\",\n      \"role\": \"protocol_node_bundle\",\n      \"kind\": \"file\",\n      \"format\": \"json\",\n      \"description\": \"An alternate bundled protocol node artifact with a top-level nodes array.\",\n      \"tools_must_preserve\": true\n    },\n    {\n      \"path\": \"relationships.json\",\n      \"role\": \"protocol_relationships\",\n      \"kind\": \"file\",\n      \"format\": \"json\",\n      \"description\": \"Typed relationship records for the substrate.\",\n      \"tools_must_preserve\": true\n    },\n    {\n      \"path\": \"assets/**\",\n      \"role\": \"portable_media_and_source_assets\",\n      \"kind\": \"glob\",\n      \"description\": \"Images, PDFs, audio, video, source snapshots, projection media, documents, and other files carried by the substrate.\",\n      \"tools_must_preserve\": true\n    },\n    {\n      \"path\": \"schemas/*.json\",\n      \"role\": \"local_schema_extensions\",\n      \"kind\": \"glob\",\n      \"format\": \"json\",\n      \"description\": \"Namespaced node type, relationship type, property, layout, or validation extensions.\",\n      \"tools_must_preserve\": true\n    },\n    {\n      \"path\": \"reports/*.json\",\n      \"role\": \"reports\",\n      \"kind\": \"glob\",\n      \"format\": \"json\",\n      \"description\": \"Merge, compatibility, health, validation, duplicate-file, and intake reports.\",\n      \"tools_must_preserve\": true\n    },\n    {\n      \"path\": \"packs/*\",\n      \"role\": \"mounted_substrate_packs\",\n      \"kind\": \"glob\",\n      \"description\": \"Unpacked substrate packs mounted into this substrate for local federation.\",\n      \"tools_must_preserve\": true\n    },\n    {\n      \"path\": \"imports/*\",\n      \"role\": \"incoming_substrate_material\",\n      \"kind\": \"glob\",\n      \"description\": \"Dropped-in incoming packs or source material awaiting review, mounting, importing, or merge.\",\n      \"tools_must_preserve\": true\n    },\n    {\n      \"path\": \"author-profile.json\",\n      \"role\": \"default_author_profile\",\n      \"kind\": \"file\",\n      \"format\": \"json\",\n      \"description\": \"Portable default author profile for hand-built or minimal substrates.\",\n      \"tools_must_preserve\": true\n    },\n    {\n      \"path\": \"ro-crate-metadata.json\",\n      \"role\": \"research_object_metadata\",\n      \"kind\": \"file\",\n      \"format\": \"json\",\n      \"description\": \"Optional RO-Crate metadata describing the substrate as a research object.\",\n      \"tools_must_preserve\": true\n    }\n  ],\n  \"authoring_paths\": [\n    {\n      \"path\": \"content/nodes/*.md\",\n      \"role\": \"markdown_authoring_nodes\",\n      \"kind\": \"glob\",\n      \"format\": \"markdown_frontmatter\",\n      \"description\": \"Markdown authoring projection used by Core, Workspace, Studio, and Hugo workflows. Tools may generate protocol nodes from these files.\",\n      \"tools_must_preserve\": true\n    },\n    {\n      \"path\": \".xananode/**\",\n      \"role\": \"workspace_metadata\",\n      \"kind\": \"glob\",\n      \"description\": \"Local workspace metadata such as preview settings, author lists, caches, and opened-source copies. Public exports may omit private caches but must preserve metadata needed for authored workspace round trips.\",\n      \"tools_must_preserve\": false\n    }\n  ],\n  \"archive_rules\": [\n    \"A .substrate archive should contain every recognized path unless sharing policy excludes it.\",\n    \"Tools must not include .git, node_modules, public renderer output, transient caches, or generated build directories unless explicitly requested.\",\n    \"Every local media/source file referenced by asset_path, file, source_snapshot, primary media resolution, or registry projection metadata must be included or reported as missing.\",\n    \"Duplicate files should be reported by content hash rather than silently duplicated without provenance.\",\n    \"A hand-built substrate that follows this layout should open in Core, Workspace, Studio, Hugo, or any compatible projection without private tool state.\"\n  ]\n}\n",
      "html": "<p>{ &quot;$schema&quot;: &quot;./substrate-layout.schema.json&quot;, &quot;id&quot;: &quot;xananode.substrate-layout&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;description&quot;: &quot;The standard directory layout for a portable XanaNode substrate root.&quot;, &quot;root_contract&quot;: &quot;A substrate root is the directory containing substrate.json. Tools should be able to validate, pack, mount, and project a substrate from this root without needing private application state.&quot;, &quot;required_paths&quot;: [ { &quot;path&quot;: &quot;substrate.json&quot;, &quot;role&quot;: &quot;substrate_manifest&quot;, &quot;required&quot;: true, &quot;kind&quot;: &quot;file&quot;, &quot;format&quot;: &quot;json&quot;, &quot;description&quot;: &quot;The substrate manifest declaring id, name, namespace, version, repository, imports, sharing policy, and build/provenance metadata.&quot;, &quot;tools_must_preserve&quot;: true } ], &quot;recognized_paths&quot;: [ { &quot;path&quot;: &quot;nodes/*.json&quot;, &quot;role&quot;: &quot;protocol_nodes&quot;, &quot;kind&quot;: &quot;glob&quot;, &quot;format&quot;: &quot;json&quot;, &quot;description&quot;: &quot;Canonical protocol node records. A hand-built substrate may use this directory directly.&quot;, &quot;tools_must_preserve&quot;: true }, { &quot;path&quot;: &quot;nodes.json&quot;, &quot;role&quot;: &quot;protocol_node_bundle&quot;, &quot;kind&quot;: &quot;file&quot;, &quot;format&quot;: &quot;json&quot;, &quot;description&quot;: &quot;An alternate bundled protocol node artifact with a top-level nodes array.&quot;, &quot;tools_must_preserve&quot;: true }, { &quot;path&quot;: &quot;relationships.json&quot;, &quot;role&quot;: &quot;protocol_relationships&quot;, &quot;kind&quot;: &quot;file&quot;, &quot;format&quot;: &quot;json&quot;, &quot;description&quot;: &quot;Typed relationship records for the substrate.&quot;, &quot;tools_must_preserve&quot;: true }, { &quot;path&quot;: &quot;assets/**&quot;, &quot;role&quot;: &quot;portable_media_and_source_assets&quot;, &quot;kind&quot;: &quot;glob&quot;, &quot;description&quot;: &quot;Images, PDFs, audio, video, source snapshots, projection media, documents, and other files carried by the substrate.&quot;, &quot;tools_must_preserve&quot;: true }, { &quot;path&quot;: &quot;schemas/*.json&quot;, &quot;role&quot;: &quot;local_schema_extensions&quot;, &quot;kind&quot;: &quot;glob&quot;, &quot;format&quot;: &quot;json&quot;, &quot;description&quot;: &quot;Namespaced node type, relationship type, property, layout, or validation extensions.&quot;, &quot;tools_must_preserve&quot;: true }, { &quot;path&quot;: &quot;reports/*.json&quot;, &quot;role&quot;: &quot;reports&quot;, &quot;kind&quot;: &quot;glob&quot;, &quot;format&quot;: &quot;json&quot;, &quot;description&quot;: &quot;Merge, compatibility, health, validation, duplicate-file, and intake reports.&quot;, &quot;tools_must_preserve&quot;: true }, { &quot;path&quot;: &quot;packs/*&quot;, &quot;role&quot;: &quot;mounted_substrate_packs&quot;, &quot;kind&quot;: &quot;glob&quot;, &quot;description&quot;: &quot;Unpacked substrate packs mounted into this substrate for local federation.&quot;, &quot;tools_must_preserve&quot;: true }, { &quot;path&quot;: &quot;imports/*&quot;, &quot;role&quot;: &quot;incoming_substrate_material&quot;, &quot;kind&quot;: &quot;glob&quot;, &quot;description&quot;: &quot;Dropped-in incoming packs or source material awaiting review, mounting, importing, or merge.&quot;, &quot;tools_must_preserve&quot;: true }, { &quot;path&quot;: &quot;author-profile.json&quot;, &quot;role&quot;: &quot;default_author_profile&quot;, &quot;kind&quot;: &quot;file&quot;, &quot;format&quot;: &quot;json&quot;, &quot;description&quot;: &quot;Portable default author profile for hand-built or minimal substrates.&quot;, &quot;tools_must_preserve&quot;: true }, { &quot;path&quot;: &quot;ro-crate-metadata.json&quot;, &quot;role&quot;: &quot;research_object_metadata&quot;, &quot;kind&quot;: &quot;file&quot;, &quot;format&quot;: &quot;json&quot;, &quot;description&quot;: &quot;Optional RO-Crate metadata describing the substrate as a research object.&quot;, &quot;tools_must_preserve&quot;: true } ], &quot;authoring_paths&quot;: [ { &quot;path&quot;: &quot;content/nodes/*.md&quot;, &quot;role&quot;: &quot;markdown_authoring_nodes&quot;, &quot;kind&quot;: &quot;glob&quot;, &quot;format&quot;: &quot;markdown_frontmatter&quot;, &quot;description&quot;: &quot;Markdown authoring projection used by Core, Workspace, Studio, and Hugo workflows. Tools may generate protocol nodes from these files.&quot;, &quot;tools_must_preserve&quot;: true }, { &quot;path&quot;: &quot;.xananode/**&quot;, &quot;role&quot;: &quot;workspace_metadata&quot;, &quot;kind&quot;: &quot;glob&quot;, &quot;description&quot;: &quot;Local workspace metadata such as preview settings, author lists, caches, and opened-source copies. Public exports may omit private caches but must preserve metadata needed for authored workspace round trips.&quot;, &quot;tools_must_preserve&quot;: false } ], &quot;archive_rules&quot;: [ &quot;A .substrate archive should contain every recognized path unless sharing policy excludes it.&quot;, &quot;Tools must not include .git, node_modules, public renderer output, transient caches, or generated build directories unless explicitly requested.&quot;, &quot;Every local media/source file referenced by asset_path, file, source_snapshot, primary media resolution, or registry projection metadata must be included or reported as missing.&quot;, &quot;Duplicate files should be reported by content hash rather than silently duplicated without provenance.&quot;, &quot;A hand-built substrate that follows this layout should open in Core, Workspace, Studio, Hugo, or any compatible projection without private tool state.&quot; ] }</p>",
      "url": "/schema/protocol-artifact-schemas-xananode-substrate-layout.v0.1.0.json/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/xananode-substrate-layout.v0.1.0.json",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-schemas-xananode-substrate-layout.v0.1.0.json.json"
    },
    {
      "id": "xananode.canonical:schema/protocol-artifact-specs",
      "protocol_id": "xananode.canonical:schema/protocol-artifact-specs",
      "title": "Protocol Specs",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 3,
      "summary": "The protocol specifications describing substrate behavior, interoperability, federation, and compatibility.",
      "content": "The protocol specifications describing substrate behavior, interoperability, federation, and compatibility.",
      "html": "<p>The protocol specifications describing substrate behavior, interoperability, federation, and compatibility.</p>",
      "url": "/schema/protocol-artifact-specs/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/specs/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_protocol-artifact-specs.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-attention",
      "protocol_id": "xananode.canonical:schema/relationship-category-attention",
      "title": "Attention Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The attention category groups relationship types with related meaning.",
      "content": "The attention category groups relationship types with related meaning.",
      "html": "<p>The attention category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-attention/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-attention.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-causation",
      "protocol_id": "xananode.canonical:schema/relationship-category-causation",
      "title": "Causation Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The causation category groups relationship types with related meaning.",
      "content": "The causation category groups relationship types with related meaning.",
      "html": "<p>The causation category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-causation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-causation.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-citation",
      "protocol_id": "xananode.canonical:schema/relationship-category-citation",
      "title": "Citation Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The citation category groups relationship types with related meaning.",
      "content": "The citation category groups relationship types with related meaning.",
      "html": "<p>The citation category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-citation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-citation.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-claim_structure",
      "protocol_id": "xananode.canonical:schema/relationship-category-claim_structure",
      "title": "Claim Structure Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The claim_structure category groups relationship types with related meaning.",
      "content": "The claim_structure category groups relationship types with related meaning.",
      "html": "<p>The claim_structure category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-claim_structure/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-claim_structure.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-cognition",
      "protocol_id": "xananode.canonical:schema/relationship-category-cognition",
      "title": "Cognition Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The cognition category groups relationship types with related meaning.",
      "content": "The cognition category groups relationship types with related meaning.",
      "html": "<p>The cognition category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-cognition/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-cognition.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-communication",
      "protocol_id": "xananode.canonical:schema/relationship-category-communication",
      "title": "Communication Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The communication category groups relationship types with related meaning.",
      "content": "The communication category groups relationship types with related meaning.",
      "html": "<p>The communication category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-communication/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-communication.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-comparison",
      "protocol_id": "xananode.canonical:schema/relationship-category-comparison",
      "title": "Comparison Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The comparison category groups relationship types with related meaning.",
      "content": "The comparison category groups relationship types with related meaning.",
      "html": "<p>The comparison category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-comparison/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-comparison.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-composition",
      "protocol_id": "xananode.canonical:schema/relationship-category-composition",
      "title": "Composition Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The composition category groups relationship types with related meaning.",
      "content": "The composition category groups relationship types with related meaning.",
      "html": "<p>The composition category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-composition/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-composition.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-creation",
      "protocol_id": "xananode.canonical:schema/relationship-category-creation",
      "title": "Creation Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The creation category groups relationship types with related meaning.",
      "content": "The creation category groups relationship types with related meaning.",
      "html": "<p>The creation category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-creation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-creation.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-definition",
      "protocol_id": "xananode.canonical:schema/relationship-category-definition",
      "title": "Definition Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The definition category groups relationship types with related meaning.",
      "content": "The definition category groups relationship types with related meaning.",
      "html": "<p>The definition category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-definition/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-definition.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-discovery",
      "protocol_id": "xananode.canonical:schema/relationship-category-discovery",
      "title": "Discovery Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The discovery category groups relationship types with related meaning.",
      "content": "The discovery category groups relationship types with related meaning.",
      "html": "<p>The discovery category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-discovery/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-discovery.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-evidence",
      "protocol_id": "xananode.canonical:schema/relationship-category-evidence",
      "title": "Evidence Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The evidence category groups relationship types with related meaning.",
      "content": "The evidence category groups relationship types with related meaning.",
      "html": "<p>The evidence category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-evidence/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-evidence.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-evolution",
      "protocol_id": "xananode.canonical:schema/relationship-category-evolution",
      "title": "Evolution Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The evolution category groups relationship types with related meaning.",
      "content": "The evolution category groups relationship types with related meaning.",
      "html": "<p>The evolution category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-evolution/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-evolution.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-explanation",
      "protocol_id": "xananode.canonical:schema/relationship-category-explanation",
      "title": "Explanation Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The explanation category groups relationship types with related meaning.",
      "content": "The explanation category groups relationship types with related meaning.",
      "html": "<p>The explanation category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-explanation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-explanation.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-generic",
      "protocol_id": "xananode.canonical:schema/relationship-category-generic",
      "title": "Generic Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The generic category groups relationship types with related meaning.",
      "content": "The generic category groups relationship types with related meaning.",
      "html": "<p>The generic category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-generic/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-generic.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-governance",
      "protocol_id": "xananode.canonical:schema/relationship-category-governance",
      "title": "Governance Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The governance category groups relationship types with related meaning.",
      "content": "The governance category groups relationship types with related meaning.",
      "html": "<p>The governance category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-governance/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-governance.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-historical",
      "protocol_id": "xananode.canonical:schema/relationship-category-historical",
      "title": "Historical Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The historical category groups relationship types with related meaning.",
      "content": "The historical category groups relationship types with related meaning.",
      "html": "<p>The historical category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-historical/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-historical.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-identity",
      "protocol_id": "xananode.canonical:schema/relationship-category-identity",
      "title": "Identity Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The identity category groups relationship types with related meaning.",
      "content": "The identity category groups relationship types with related meaning.",
      "html": "<p>The identity category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-identity/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-identity.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-influence",
      "protocol_id": "xananode.canonical:schema/relationship-category-influence",
      "title": "Influence Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The influence category groups relationship types with related meaning.",
      "content": "The influence category groups relationship types with related meaning.",
      "html": "<p>The influence category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-influence/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-influence.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-inquiry",
      "protocol_id": "xananode.canonical:schema/relationship-category-inquiry",
      "title": "Inquiry Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The inquiry category groups relationship types with related meaning.",
      "content": "The inquiry category groups relationship types with related meaning.",
      "html": "<p>The inquiry category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-inquiry/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-inquiry.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-knowledge_workflow",
      "protocol_id": "xananode.canonical:schema/relationship-category-knowledge_workflow",
      "title": "Knowledge Workflow Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The knowledge_workflow category groups relationship types with related meaning.",
      "content": "The knowledge_workflow category groups relationship types with related meaning.",
      "html": "<p>The knowledge_workflow category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-knowledge_workflow/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-knowledge_workflow.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-lineage",
      "protocol_id": "xananode.canonical:schema/relationship-category-lineage",
      "title": "Lineage Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The lineage category groups relationship types with related meaning.",
      "content": "The lineage category groups relationship types with related meaning.",
      "html": "<p>The lineage category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-lineage/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-lineage.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-location",
      "protocol_id": "xananode.canonical:schema/relationship-category-location",
      "title": "Location Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The location category groups relationship types with related meaning.",
      "content": "The location category groups relationship types with related meaning.",
      "html": "<p>The location category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-location/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-location.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-participation",
      "protocol_id": "xananode.canonical:schema/relationship-category-participation",
      "title": "Participation Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The participation category groups relationship types with related meaning.",
      "content": "The participation category groups relationship types with related meaning.",
      "html": "<p>The participation category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-participation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-participation.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-reasoning",
      "protocol_id": "xananode.canonical:schema/relationship-category-reasoning",
      "title": "Reasoning Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The reasoning category groups relationship types with related meaning.",
      "content": "The reasoning category groups relationship types with related meaning.",
      "html": "<p>The reasoning category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-reasoning/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-reasoning.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-representation",
      "protocol_id": "xananode.canonical:schema/relationship-category-representation",
      "title": "Representation Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The representation category groups relationship types with related meaning.",
      "content": "The representation category groups relationship types with related meaning.",
      "html": "<p>The representation category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-representation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-representation.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-research_workflow",
      "protocol_id": "xananode.canonical:schema/relationship-category-research_workflow",
      "title": "Research Workflow Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The research_workflow category groups relationship types with related meaning.",
      "content": "The research_workflow category groups relationship types with related meaning.",
      "html": "<p>The research_workflow category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-research_workflow/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-research_workflow.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-revision",
      "protocol_id": "xananode.canonical:schema/relationship-category-revision",
      "title": "Revision Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The revision category groups relationship types with related meaning.",
      "content": "The revision category groups relationship types with related meaning.",
      "html": "<p>The revision category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-revision/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-revision.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-schema_mapping",
      "protocol_id": "xananode.canonical:schema/relationship-category-schema_mapping",
      "title": "Schema Mapping Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The schema_mapping category groups relationship types with related meaning.",
      "content": "The schema_mapping category groups relationship types with related meaning.",
      "html": "<p>The schema_mapping category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-schema_mapping/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-schema_mapping.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-social",
      "protocol_id": "xananode.canonical:schema/relationship-category-social",
      "title": "Social Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The social category groups relationship types with related meaning.",
      "content": "The social category groups relationship types with related meaning.",
      "html": "<p>The social category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-social/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-social.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-temporal",
      "protocol_id": "xananode.canonical:schema/relationship-category-temporal",
      "title": "Temporal Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The temporal category groups relationship types with related meaning.",
      "content": "The temporal category groups relationship types with related meaning.",
      "html": "<p>The temporal category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-temporal/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-temporal.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-category-uncertainty",
      "protocol_id": "xananode.canonical:schema/relationship-category-uncertainty",
      "title": "Uncertainty Relationship Category",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The uncertainty category groups relationship types with related meaning.",
      "content": "The uncertainty category groups relationship types with related meaning.",
      "html": "<p>The uncertainty category groups relationship types with related meaning.</p>",
      "url": "/schema/relationship-category-uncertainty/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-category-uncertainty.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-abstraction_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-abstraction_of",
      "title": "Abstraction of",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source abstracts away details from the target while preserving a relevant structure.",
      "content": "The source abstracts away details from the target while preserving a relevant structure.",
      "html": "<p>The source abstracts away details from the target while preserving a relevant structure.</p>",
      "url": "/schema/relationship-type-abstraction_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-abstraction_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-adapted_from",
      "protocol_id": "xananode.canonical:schema/relationship-type-adapted_from",
      "title": "Adapted from",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is an adaptation, reworking, or new presentation of the target work.",
      "content": "The source is an adaptation, reworking, or new presentation of the target work.",
      "html": "<p>The source is an adaptation, reworking, or new presentation of the target work.</p>",
      "url": "/schema/relationship-type-adapted_from/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-adapted_from.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-adapted_into",
      "protocol_id": "xananode.canonical:schema/relationship-type-adapted_into",
      "title": "Adapted into",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source was transformed into the target work or presentation form.",
      "content": "The source was transformed into the target work or presentation form.",
      "html": "<p>The source was transformed into the target work or presentation form.</p>",
      "url": "/schema/relationship-type-adapted_into/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-adapted_into.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-alias_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-alias_of",
      "title": "Alias of",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is an alternative name for the target entity.",
      "content": "The source is an alternative name for the target entity.",
      "html": "<p>The source is an alternative name for the target entity.</p>",
      "url": "/schema/relationship-type-alias_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-alias_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-alternative_to",
      "protocol_id": "xananode.canonical:schema/relationship-type-alternative_to",
      "title": "Alternative to",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is an alternate interpretation, approach, or implementation relative to the target.",
      "content": "The source is an alternate interpretation, approach, or implementation relative to the target.",
      "html": "<p>The source is an alternate interpretation, approach, or implementation relative to the target.</p>",
      "url": "/schema/relationship-type-alternative_to/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-alternative_to.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-analogous_to",
      "protocol_id": "xananode.canonical:schema/relationship-type-analogous_to",
      "title": "Analogous to",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is analogous to the target in a way that may aid reasoning or explanation.",
      "content": "The source is analogous to the target in a way that may aid reasoning or explanation.",
      "html": "<p>The source is analogous to the target in a way that may aid reasoning or explanation.</p>",
      "url": "/schema/relationship-type-analogous_to/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-analogous_to.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-announced",
      "protocol_id": "xananode.canonical:schema/relationship-type-announced",
      "title": "Announced",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source announced the target event, project, release, claim, or decision.",
      "content": "The source announced the target event, project, release, claim, or decision.",
      "html": "<p>The source announced the target event, project, release, claim, or decision.</p>",
      "url": "/schema/relationship-type-announced/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-announced.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-announced_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-announced_by",
      "title": "Announced By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The announced_by inverse relationship term derived from announced.",
      "content": "The announced_by inverse relationship term derived from announced.",
      "html": "<p>The announced_by inverse relationship term derived from announced.</p>",
      "url": "/schema/relationship-type-announced_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-announced_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-answered_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-answered_by",
      "title": "Answered By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The answered_by inverse relationship term derived from answers.",
      "content": "The answered_by inverse relationship term derived from answers.",
      "html": "<p>The answered_by inverse relationship term derived from answers.</p>",
      "url": "/schema/relationship-type-answered_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-answered_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-answered_in",
      "protocol_id": "xananode.canonical:schema/relationship-type-answered_in",
      "title": "Answered in",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source response, claim, or answer was given in the target communication context.",
      "content": "The source response, claim, or answer was given in the target communication context.",
      "html": "<p>The source response, claim, or answer was given in the target communication context.</p>",
      "url": "/schema/relationship-type-answered_in/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-answered_in.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-answers",
      "protocol_id": "xananode.canonical:schema/relationship-type-answers",
      "title": "Answers",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source answers the target question or information request.",
      "content": "The source answers the target question or information request.",
      "html": "<p>The source answers the target question or information request.</p>",
      "url": "/schema/relationship-type-answers/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-answers.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-anticipated",
      "protocol_id": "xananode.canonical:schema/relationship-type-anticipated",
      "title": "Anticipated",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source anticipated the target without necessarily directly causing it.",
      "content": "The source anticipated the target without necessarily directly causing it.",
      "html": "<p>The source anticipated the target without necessarily directly causing it.</p>",
      "url": "/schema/relationship-type-anticipated/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-anticipated.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-anticipated_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-anticipated_by",
      "title": "Anticipated By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The anticipated_by inverse relationship term derived from anticipated.",
      "content": "The anticipated_by inverse relationship term derived from anticipated.",
      "html": "<p>The anticipated_by inverse relationship term derived from anticipated.</p>",
      "url": "/schema/relationship-type-anticipated_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-anticipated_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-anticipates",
      "protocol_id": "xananode.canonical:schema/relationship-type-anticipates",
      "title": "Anticipates",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source foreshadows or historically precedes the target without direct causation.",
      "content": "The source foreshadows or historically precedes the target without direct causation.",
      "html": "<p>The source foreshadows or historically precedes the target without direct causation.</p>",
      "url": "/schema/relationship-type-anticipates/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-anticipates.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-appears_in",
      "protocol_id": "xananode.canonical:schema/relationship-type-appears_in",
      "title": "Appears in",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source appears in the target work, collection, or event.",
      "content": "The source appears in the target work, collection, or event.",
      "html": "<p>The source appears in the target work, collection, or event.</p>",
      "url": "/schema/relationship-type-appears_in/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-appears_in.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-approved",
      "protocol_id": "xananode.canonical:schema/relationship-type-approved",
      "title": "Approved",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source user, reviewer, or process approved the target.",
      "content": "The source user, reviewer, or process approved the target.",
      "html": "<p>The source user, reviewer, or process approved the target.</p>",
      "url": "/schema/relationship-type-approved/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-approved.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-approved_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-approved_by",
      "title": "Approved By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The approved_by inverse relationship term derived from approved.",
      "content": "The approved_by inverse relationship term derived from approved.",
      "html": "<p>The approved_by inverse relationship term derived from approved.</p>",
      "url": "/schema/relationship-type-approved_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-approved_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-arrived_from",
      "protocol_id": "xananode.canonical:schema/relationship-type-arrived_from",
      "title": "Arrived From Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The arrived_from inverse relationship term derived from arrives_at.",
      "content": "The arrived_from inverse relationship term derived from arrives_at.",
      "html": "<p>The arrived_from inverse relationship term derived from arrives_at.</p>",
      "url": "/schema/relationship-type-arrived_from/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-arrived_from.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-arrives_at",
      "protocol_id": "xananode.canonical:schema/relationship-type-arrives_at",
      "title": "Arrives at",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source reasoning, argument, or inquiry leads to the target conclusion or position.",
      "content": "The source reasoning, argument, or inquiry leads to the target conclusion or position.",
      "html": "<p>The source reasoning, argument, or inquiry leads to the target conclusion or position.</p>",
      "url": "/schema/relationship-type-arrives_at/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-arrives_at.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-asked",
      "protocol_id": "xananode.canonical:schema/relationship-type-asked",
      "title": "Asked",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source asked, posed, or submitted the target question or request.",
      "content": "The source asked, posed, or submitted the target question or request.",
      "html": "<p>The source asked, posed, or submitted the target question or request.</p>",
      "url": "/schema/relationship-type-asked/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-asked.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-asked_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-asked_by",
      "title": "Asked By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The asked_by inverse relationship term derived from asked.",
      "content": "The asked_by inverse relationship term derived from asked.",
      "html": "<p>The asked_by inverse relationship term derived from asked.</p>",
      "url": "/schema/relationship-type-asked_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-asked_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-asked_in",
      "protocol_id": "xananode.canonical:schema/relationship-type-asked_in",
      "title": "Asked in",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source question was asked in the target communication context.",
      "content": "The source question was asked in the target communication context.",
      "html": "<p>The source question was asked in the target communication context.</p>",
      "url": "/schema/relationship-type-asked_in/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-asked_in.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-assembled_from",
      "protocol_id": "xananode.canonical:schema/relationship-type-assembled_from",
      "title": "Assembled from",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source physical item or system was assembled from the target parts, components, or ingredients.",
      "content": "The source physical item or system was assembled from the target parts, components, or ingredients.",
      "html": "<p>The source physical item or system was assembled from the target parts, components, or ingredients.</p>",
      "url": "/schema/relationship-type-assembled_from/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-assembled_from.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-assembled_into",
      "protocol_id": "xananode.canonical:schema/relationship-type-assembled_into",
      "title": "Assembled Into Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The assembled_into inverse relationship term derived from assembled_from.",
      "content": "The assembled_into inverse relationship term derived from assembled_from.",
      "html": "<p>The assembled_into inverse relationship term derived from assembled_from.</p>",
      "url": "/schema/relationship-type-assembled_into/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-assembled_into.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-attribution_required_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-attribution_required_by",
      "title": "Attribution Required By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The attribution_required_by inverse relationship term derived from requires_attribution.",
      "content": "The attribution_required_by inverse relationship term derived from requires_attribution.",
      "html": "<p>The attribution_required_by inverse relationship term derived from requires_attribution.</p>",
      "url": "/schema/relationship-type-attribution_required_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-attribution_required_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-authored",
      "protocol_id": "xananode.canonical:schema/relationship-type-authored",
      "title": "Authored",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source authored the target.",
      "content": "The source authored the target.",
      "html": "<p>The source authored the target.</p>",
      "url": "/schema/relationship-type-authored/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-authored.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-authored_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-authored_by",
      "title": "Authored By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The authored_by inverse relationship term derived from authored.",
      "content": "The authored_by inverse relationship term derived from authored.",
      "html": "<p>The authored_by inverse relationship term derived from authored.</p>",
      "url": "/schema/relationship-type-authored_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-authored_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-broadcast_to",
      "protocol_id": "xananode.canonical:schema/relationship-type-broadcast_to",
      "title": "Broadcast to",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source communication, publication, event, or actor broadcast the target content or message to an audience.",
      "content": "The source communication, publication, event, or actor broadcast the target content or message to an audience.",
      "html": "<p>The source communication, publication, event, or actor broadcast the target content or message to an audience.</p>",
      "url": "/schema/relationship-type-broadcast_to/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-broadcast_to.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-broader_than",
      "protocol_id": "xananode.canonical:schema/relationship-type-broader_than",
      "title": "Broader than",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source schema type, concept, or relationship is broader or more general than the target.",
      "content": "The source schema type, concept, or relationship is broader or more general than the target.",
      "html": "<p>The source schema type, concept, or relationship is broader or more general than the target.</p>",
      "url": "/schema/relationship-type-broader_than/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-broader_than.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-cited_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-cited_by",
      "title": "Cited By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The cited_by inverse relationship term derived from cites.",
      "content": "The cited_by inverse relationship term derived from cites.",
      "html": "<p>The cited_by inverse relationship term derived from cites.</p>",
      "url": "/schema/relationship-type-cited_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-cited_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-cites",
      "protocol_id": "xananode.canonical:schema/relationship-type-cites",
      "title": "Cites",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source cites the target.",
      "content": "The source cites the target.",
      "html": "<p>The source cites the target.</p>",
      "url": "/schema/relationship-type-cites/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-cites.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-claim_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-claim_of",
      "title": "Claim Of Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The claim_of inverse relationship term derived from has_claim.",
      "content": "The claim_of inverse relationship term derived from has_claim.",
      "html": "<p>The claim_of inverse relationship term derived from has_claim.</p>",
      "url": "/schema/relationship-type-claim_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-claim_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-clarified_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-clarified_by",
      "title": "Clarified By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The clarified_by inverse relationship term derived from clarifies.",
      "content": "The clarified_by inverse relationship term derived from clarifies.",
      "html": "<p>The clarified_by inverse relationship term derived from clarifies.</p>",
      "url": "/schema/relationship-type-clarified_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-clarified_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-clarifies",
      "protocol_id": "xananode.canonical:schema/relationship-type-clarifies",
      "title": "Clarifies",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source clarifies, resolves ambiguity in, or makes the target more precise.",
      "content": "The source clarifies, resolves ambiguity in, or makes the target more precise.",
      "html": "<p>The source clarifies, resolves ambiguity in, or makes the target more precise.</p>",
      "url": "/schema/relationship-type-clarifies/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-clarifies.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-co_authored_with",
      "protocol_id": "xananode.canonical:schema/relationship-type-co_authored_with",
      "title": "Co-authored with",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source was co-authored, co-created, or jointly produced with the target.",
      "content": "The source was co-authored, co-created, or jointly produced with the target.",
      "html": "<p>The source was co-authored, co-created, or jointly produced with the target.</p>",
      "url": "/schema/relationship-type-co_authored_with/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-co_authored_with.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-coined",
      "protocol_id": "xananode.canonical:schema/relationship-type-coined",
      "title": "Coined",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source coined the target term.",
      "content": "The source coined the target term.",
      "html": "<p>The source coined the target term.</p>",
      "url": "/schema/relationship-type-coined/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-coined.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-coined_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-coined_by",
      "title": "Coined By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The coined_by inverse relationship term derived from coined.",
      "content": "The coined_by inverse relationship term derived from coined.",
      "html": "<p>The coined_by inverse relationship term derived from coined.</p>",
      "url": "/schema/relationship-type-coined_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-coined_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-collaborated_with",
      "protocol_id": "xananode.canonical:schema/relationship-type-collaborated_with",
      "title": "Collaborated with",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source collaborated with the target.",
      "content": "The source collaborated with the target.",
      "html": "<p>The source collaborated with the target.</p>",
      "url": "/schema/relationship-type-collaborated_with/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-collaborated_with.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-communicated_to",
      "protocol_id": "xananode.canonical:schema/relationship-type-communicated_to",
      "title": "Communicated to",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source communicated the target message, claim, question, or source to a receiver or audience.",
      "content": "The source communicated the target message, claim, question, or source to a receiver or audience.",
      "html": "<p>The source communicated the target message, claim, question, or source to a receiver or audience.</p>",
      "url": "/schema/relationship-type-communicated_to/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-communicated_to.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-communication_received_from",
      "protocol_id": "xananode.canonical:schema/relationship-type-communication_received_from",
      "title": "Communication Received From Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The communication_received_from inverse relationship term derived from communicated_to.",
      "content": "The communication_received_from inverse relationship term derived from communicated_to.",
      "html": "<p>The communication_received_from inverse relationship term derived from communicated_to.</p>",
      "url": "/schema/relationship-type-communication_received_from/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-communication_received_from.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-compatible_with",
      "protocol_id": "xananode.canonical:schema/relationship-type-compatible_with",
      "title": "Compatible with",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source schema, substrate, type, field, or relationship can interoperate with the target without destructive conversion.",
      "content": "The source schema, substrate, type, field, or relationship can interoperate with the target without destructive conversion.",
      "html": "<p>The source schema, substrate, type, field, or relationship can interoperate with the target without destructive conversion.</p>",
      "url": "/schema/relationship-type-compatible_with/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-compatible_with.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-concrete_example_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-concrete_example_of",
      "title": "Concrete Example Of Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The concrete_example_of inverse relationship term derived from abstraction_of.",
      "content": "The concrete_example_of inverse relationship term derived from abstraction_of.",
      "html": "<p>The concrete_example_of inverse relationship term derived from abstraction_of.</p>",
      "url": "/schema/relationship-type-concrete_example_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-concrete_example_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-contains",
      "protocol_id": "xananode.canonical:schema/relationship-type-contains",
      "title": "Contains",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source contains the target.",
      "content": "The source contains the target.",
      "html": "<p>The source contains the target.</p>",
      "url": "/schema/relationship-type-contains/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-contains.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-contemporary_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-contemporary_of",
      "title": "Contemporary of",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source existed or worked during the same relevant period as the target.",
      "content": "The source existed or worked during the same relevant period as the target.",
      "html": "<p>The source existed or worked during the same relevant period as the target.</p>",
      "url": "/schema/relationship-type-contemporary_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-contemporary_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-context_for",
      "protocol_id": "xananode.canonical:schema/relationship-type-context_for",
      "title": "Context for",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source provides essential background or framing that makes the target intelligible.",
      "content": "The source provides essential background or framing that makes the target intelligible.",
      "html": "<p>The source provides essential background or framing that makes the target intelligible.</p>",
      "url": "/schema/relationship-type-context_for/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-context_for.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-context_required_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-context_required_by",
      "title": "Context Required By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The context_required_by inverse relationship term derived from requires_context.",
      "content": "The context_required_by inverse relationship term derived from requires_context.",
      "html": "<p>The context_required_by inverse relationship term derived from requires_context.</p>",
      "url": "/schema/relationship-type-context_required_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-context_required_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-continued_from",
      "protocol_id": "xananode.canonical:schema/relationship-type-continued_from",
      "title": "Continued From Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The continued_from inverse relationship term derived from continues_to.",
      "content": "The continued_from inverse relationship term derived from continues_to.",
      "html": "<p>The continued_from inverse relationship term derived from continues_to.</p>",
      "url": "/schema/relationship-type-continued_from/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-continued_from.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-continues_to",
      "protocol_id": "xananode.canonical:schema/relationship-type-continues_to",
      "title": "Continues to",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source continues, leads into, or sequences directly to the target.",
      "content": "The source continues, leads into, or sequences directly to the target.",
      "html": "<p>The source continues, leads into, or sequences directly to the target.</p>",
      "url": "/schema/relationship-type-continues_to/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-continues_to.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-contradicted_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-contradicted_by",
      "title": "Contradicted By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The contradicted_by inverse relationship term derived from contradicts.",
      "content": "The contradicted_by inverse relationship term derived from contradicts.",
      "html": "<p>The contradicted_by inverse relationship term derived from contradicts.</p>",
      "url": "/schema/relationship-type-contradicted_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-contradicted_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-contradicts",
      "protocol_id": "xananode.canonical:schema/relationship-type-contradicts",
      "title": "Contradicts",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source directly challenges or conflicts with the target.",
      "content": "The source directly challenges or conflicts with the target.",
      "html": "<p>The source directly challenges or conflicts with the target.</p>",
      "url": "/schema/relationship-type-contradicts/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-contradicts.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-contrasts_with",
      "protocol_id": "xananode.canonical:schema/relationship-type-contrasts_with",
      "title": "Contrasts with",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is usefully contrasted with the target.",
      "content": "The source is usefully contrasted with the target.",
      "html": "<p>The source is usefully contrasted with the target.</p>",
      "url": "/schema/relationship-type-contrasts_with/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-contrasts_with.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-created",
      "protocol_id": "xananode.canonical:schema/relationship-type-created",
      "title": "Created",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source created the target.",
      "content": "The source created the target.",
      "html": "<p>The source created the target.</p>",
      "url": "/schema/relationship-type-created/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-created.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-created_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-created_by",
      "title": "Created By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The created_by inverse relationship term derived from created.",
      "content": "The created_by inverse relationship term derived from created.",
      "html": "<p>The created_by inverse relationship term derived from created.</p>",
      "url": "/schema/relationship-type-created_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-created_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-critical_to",
      "protocol_id": "xananode.canonical:schema/relationship-type-critical_to",
      "title": "Critical to",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is critical to the target and should be prioritized in navigation, review, or preservation.",
      "content": "The source is critical to the target and should be prioritized in navigation, review, or preservation.",
      "html": "<p>The source is critical to the target and should be prioritized in navigation, review, or preservation.</p>",
      "url": "/schema/relationship-type-critical_to/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-critical_to.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-critically_depends_on",
      "protocol_id": "xananode.canonical:schema/relationship-type-critically_depends_on",
      "title": "Critically Depends On Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The critically_depends_on inverse relationship term derived from critical_to.",
      "content": "The critically_depends_on inverse relationship term derived from critical_to.",
      "html": "<p>The critically_depends_on inverse relationship term derived from critical_to.</p>",
      "url": "/schema/relationship-type-critically_depends_on/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-critically_depends_on.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-debated_with",
      "protocol_id": "xananode.canonical:schema/relationship-type-debated_with",
      "title": "Debated with",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source debated the target participant, claim, or position.",
      "content": "The source debated the target participant, claim, or position.",
      "html": "<p>The source debated the target participant, claim, or position.</p>",
      "url": "/schema/relationship-type-debated_with/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-debated_with.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-deep_linked_from",
      "protocol_id": "xananode.canonical:schema/relationship-type-deep_linked_from",
      "title": "Deep Linked From Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The deep_linked_from inverse relationship term derived from deep_links_to.",
      "content": "The deep_linked_from inverse relationship term derived from deep_links_to.",
      "html": "<p>The deep_linked_from inverse relationship term derived from deep_links_to.</p>",
      "url": "/schema/relationship-type-deep_linked_from/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-deep_linked_from.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-deep_links_to",
      "protocol_id": "xananode.canonical:schema/relationship-type-deep_links_to",
      "title": "Deep links to",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source points to a specific addressable fragment of the target.",
      "content": "The source points to a specific addressable fragment of the target.",
      "html": "<p>The source points to a specific addressable fragment of the target.</p>",
      "url": "/schema/relationship-type-deep_links_to/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-deep_links_to.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-defined_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-defined_by",
      "title": "Defined By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The defined_by inverse relationship term derived from defines.",
      "content": "The defined_by inverse relationship term derived from defines.",
      "html": "<p>The defined_by inverse relationship term derived from defines.</p>",
      "url": "/schema/relationship-type-defined_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-defined_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-defines",
      "protocol_id": "xananode.canonical:schema/relationship-type-defines",
      "title": "Defines",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source gives the defining explanation of the target.",
      "content": "The source gives the defining explanation of the target.",
      "html": "<p>The source gives the defining explanation of the target.</p>",
      "url": "/schema/relationship-type-defines/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-defines.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-demonstrated_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-demonstrated_by",
      "title": "Demonstrated By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The demonstrated_by inverse relationship term derived from demonstrates.",
      "content": "The demonstrated_by inverse relationship term derived from demonstrates.",
      "html": "<p>The demonstrated_by inverse relationship term derived from demonstrates.</p>",
      "url": "/schema/relationship-type-demonstrated_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-demonstrated_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-demonstrates",
      "protocol_id": "xananode.canonical:schema/relationship-type-demonstrates",
      "title": "Demonstrates",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source provides an example or demonstration of the target.",
      "content": "The source provides an example or demonstration of the target.",
      "html": "<p>The source provides an example or demonstration of the target.</p>",
      "url": "/schema/relationship-type-demonstrates/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-demonstrates.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-dependency_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-dependency_of",
      "title": "Dependency Of Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The dependency_of inverse relationship term derived from depends_on.",
      "content": "The dependency_of inverse relationship term derived from depends_on.",
      "html": "<p>The dependency_of inverse relationship term derived from depends_on.</p>",
      "url": "/schema/relationship-type-dependency_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-dependency_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-depends_on",
      "protocol_id": "xananode.canonical:schema/relationship-type-depends_on",
      "title": "Depends on",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source depends on the target.",
      "content": "The source depends on the target.",
      "html": "<p>The source depends on the target.</p>",
      "url": "/schema/relationship-type-depends_on/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-depends_on.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-depicted_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-depicted_by",
      "title": "Depicted By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The depicted_by inverse relationship term derived from depicts.",
      "content": "The depicted_by inverse relationship term derived from depicts.",
      "html": "<p>The depicted_by inverse relationship term derived from depicts.</p>",
      "url": "/schema/relationship-type-depicted_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-depicted_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-depicts",
      "protocol_id": "xananode.canonical:schema/relationship-type-depicts",
      "title": "Depicts",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source media depicts the target.",
      "content": "The source media depicts the target.",
      "html": "<p>The source media depicts the target.</p>",
      "url": "/schema/relationship-type-depicts/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-depicts.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-derived_from",
      "protocol_id": "xananode.canonical:schema/relationship-type-derived_from",
      "title": "Derived from",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source descends from or is based on the target.",
      "content": "The source descends from or is based on the target.",
      "html": "<p>The source descends from or is based on the target.</p>",
      "url": "/schema/relationship-type-derived_from/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-derived_from.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-derived_into",
      "protocol_id": "xananode.canonical:schema/relationship-type-derived_into",
      "title": "Derived Into Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The derived_into inverse relationship term derived from derived_from.",
      "content": "The derived_into inverse relationship term derived from derived_from.",
      "html": "<p>The derived_into inverse relationship term derived from derived_from.</p>",
      "url": "/schema/relationship-type-derived_into/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-derived_into.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-discussed_in",
      "protocol_id": "xananode.canonical:schema/relationship-type-discussed_in",
      "title": "Discussed In Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The discussed_in inverse relationship term derived from discusses.",
      "content": "The discussed_in inverse relationship term derived from discusses.",
      "html": "<p>The discussed_in inverse relationship term derived from discusses.</p>",
      "url": "/schema/relationship-type-discussed_in/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-discussed_in.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-discussed_with",
      "protocol_id": "xananode.canonical:schema/relationship-type-discussed_with",
      "title": "Discussed with",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source discussed the target topic, claim, problem, or source with another participant or group.",
      "content": "The source discussed the target topic, claim, problem, or source with another participant or group.",
      "html": "<p>The source discussed the target topic, claim, problem, or source with another participant or group.</p>",
      "url": "/schema/relationship-type-discussed_with/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-discussed_with.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-discusses",
      "protocol_id": "xananode.canonical:schema/relationship-type-discusses",
      "title": "Discusses",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source discusses, explores, or analyzes the target.",
      "content": "The source discusses, explores, or analyzes the target.",
      "html": "<p>The source discusses, explores, or analyzes the target.</p>",
      "url": "/schema/relationship-type-discusses/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-discusses.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-discussion_partner_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-discussion_partner_of",
      "title": "Discussion Partner Of Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The discussion_partner_of inverse relationship term derived from discussed_with.",
      "content": "The discussion_partner_of inverse relationship term derived from discussed_with.",
      "html": "<p>The discussion_partner_of inverse relationship term derived from discussed_with.</p>",
      "url": "/schema/relationship-type-discussion_partner_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-discussion_partner_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-disputed_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-disputed_by",
      "title": "Disputed By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The disputed_by inverse relationship term derived from disputes.",
      "content": "The disputed_by inverse relationship term derived from disputes.",
      "html": "<p>The disputed_by inverse relationship term derived from disputes.</p>",
      "url": "/schema/relationship-type-disputed_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-disputed_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-disputed_identity",
      "protocol_id": "xananode.canonical:schema/relationship-type-disputed_identity",
      "title": "Disputed identity",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source and target have an identity relationship that is contested, ambiguous, or rejected by at least one substrate, contributor, or governance process.",
      "content": "The source and target have an identity relationship that is contested, ambiguous, or rejected by at least one substrate, contributor, or governance process.",
      "html": "<p>The source and target have an identity relationship that is contested, ambiguous, or rejected by at least one substrate, contributor, or governance process.</p>",
      "url": "/schema/relationship-type-disputed_identity/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-disputed_identity.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-disputes",
      "protocol_id": "xananode.canonical:schema/relationship-type-disputes",
      "title": "Disputes",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source disputes the target.",
      "content": "The source disputes the target.",
      "html": "<p>The source disputes the target.</p>",
      "url": "/schema/relationship-type-disputes/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-disputes.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-documented_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-documented_by",
      "title": "Documented By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The documented_by inverse relationship term derived from documents.",
      "content": "The documented_by inverse relationship term derived from documents.",
      "html": "<p>The documented_by inverse relationship term derived from documents.</p>",
      "url": "/schema/relationship-type-documented_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-documented_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-documents",
      "protocol_id": "xananode.canonical:schema/relationship-type-documents",
      "title": "Documents",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source records evidence about the target.",
      "content": "The source records evidence about the target.",
      "html": "<p>The source records evidence about the target.</p>",
      "url": "/schema/relationship-type-documents/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-documents.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-enabled_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-enabled_by",
      "title": "Enabled By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The enabled_by inverse relationship term derived from enables.",
      "content": "The enabled_by inverse relationship term derived from enables.",
      "html": "<p>The enabled_by inverse relationship term derived from enables.</p>",
      "url": "/schema/relationship-type-enabled_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-enabled_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-enables",
      "protocol_id": "xananode.canonical:schema/relationship-type-enables",
      "title": "Enables",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source makes the target possible or easier to achieve.",
      "content": "The source makes the target possible or easier to achieve.",
      "html": "<p>The source makes the target possible or easier to achieve.</p>",
      "url": "/schema/relationship-type-enables/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-enables.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-equivalent_to",
      "protocol_id": "xananode.canonical:schema/relationship-type-equivalent_to",
      "title": "Equivalent to",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is semantically identical or interchangeable with the target.",
      "content": "The source is semantically identical or interchangeable with the target.",
      "html": "<p>The source is semantically identical or interchangeable with the target.</p>",
      "url": "/schema/relationship-type-equivalent_to/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-equivalent_to.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-evidence_for",
      "protocol_id": "xananode.canonical:schema/relationship-type-evidence_for",
      "title": "Evidence for",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is evidence for the target claim or relationship.",
      "content": "The source is evidence for the target claim or relationship.",
      "html": "<p>The source is evidence for the target claim or relationship.</p>",
      "url": "/schema/relationship-type-evidence_for/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-evidence_for.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-evidence_insufficient_for",
      "protocol_id": "xananode.canonical:schema/relationship-type-evidence_insufficient_for",
      "title": "Evidence Insufficient For Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The evidence_insufficient_for inverse relationship term derived from insufficient_evidence.",
      "content": "The evidence_insufficient_for inverse relationship term derived from insufficient_evidence.",
      "html": "<p>The evidence_insufficient_for inverse relationship term derived from insufficient_evidence.</p>",
      "url": "/schema/relationship-type-evidence_insufficient_for/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-evidence_insufficient_for.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-example_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-example_of",
      "title": "Example of",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is an example or concrete instance of the target.",
      "content": "The source is an example or concrete instance of the target.",
      "html": "<p>The source is an example or concrete instance of the target.</p>",
      "url": "/schema/relationship-type-example_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-example_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-explained_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-explained_by",
      "title": "Explained By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The explained_by inverse relationship term derived from explains.",
      "content": "The explained_by inverse relationship term derived from explains.",
      "html": "<p>The explained_by inverse relationship term derived from explains.</p>",
      "url": "/schema/relationship-type-explained_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-explained_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-explains",
      "protocol_id": "xananode.canonical:schema/relationship-type-explains",
      "title": "Explains",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source provides an explanation of the target - its causes, mechanisms, or meaning.",
      "content": "The source provides an explanation of the target - its causes, mechanisms, or meaning.",
      "html": "<p>The source provides an explanation of the target - its causes, mechanisms, or meaning.</p>",
      "url": "/schema/relationship-type-explains/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-explains.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-extended_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-extended_by",
      "title": "Extended By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The extended_by inverse relationship term derived from extends.",
      "content": "The extended_by inverse relationship term derived from extends.",
      "html": "<p>The extended_by inverse relationship term derived from extends.</p>",
      "url": "/schema/relationship-type-extended_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-extended_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-extends",
      "protocol_id": "xananode.canonical:schema/relationship-type-extends",
      "title": "Extends",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source extends the target.",
      "content": "The source extends the target.",
      "html": "<p>The source extends the target.</p>",
      "url": "/schema/relationship-type-extends/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-extends.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-extension_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-extension_of",
      "title": "Extension of",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source custom schema, type, field, or relationship extends the target core schema, type, field, or relationship.",
      "content": "The source custom schema, type, field, or relationship extends the target core schema, type, field, or relationship.",
      "html": "<p>The source custom schema, type, field, or relationship extends the target core schema, type, field, or relationship.</p>",
      "url": "/schema/relationship-type-extension_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-extension_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-fails_to_answer",
      "protocol_id": "xananode.canonical:schema/relationship-type-fails_to_answer",
      "title": "Fails to answer",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source explicitly does not answer the target question, or demonstrates that an attempted answer is inadequate.",
      "content": "The source explicitly does not answer the target question, or demonstrates that an attempted answer is inadequate.",
      "html": "<p>The source explicitly does not answer the target question, or demonstrates that an attempted answer is inadequate.</p>",
      "url": "/schema/relationship-type-fails_to_answer/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-fails_to_answer.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-falsified_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-falsified_by",
      "title": "Falsified By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The falsified_by inverse relationship term derived from falsifies.",
      "content": "The falsified_by inverse relationship term derived from falsifies.",
      "html": "<p>The falsified_by inverse relationship term derived from falsifies.</p>",
      "url": "/schema/relationship-type-falsified_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-falsified_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-falsifies",
      "protocol_id": "xananode.canonical:schema/relationship-type-falsifies",
      "title": "Falsifies",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source falsifies, refutes, or shows the target hypothesis or claim to be false under stated conditions.",
      "content": "The source falsifies, refutes, or shows the target hypothesis or claim to be false under stated conditions.",
      "html": "<p>The source falsifies, refutes, or shows the target hypothesis or claim to be false under stated conditions.</p>",
      "url": "/schema/relationship-type-falsifies/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-falsifies.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-featured_in",
      "protocol_id": "xananode.canonical:schema/relationship-type-featured_in",
      "title": "Featured In Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The featured_in inverse relationship term derived from features.",
      "content": "The featured_in inverse relationship term derived from features.",
      "html": "<p>The featured_in inverse relationship term derived from features.</p>",
      "url": "/schema/relationship-type-featured_in/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-featured_in.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-featured_speaker",
      "protocol_id": "xananode.canonical:schema/relationship-type-featured_speaker",
      "title": "Featured Speaker Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The featured_speaker inverse relationship term derived from spoke_at.",
      "content": "The featured_speaker inverse relationship term derived from spoke_at.",
      "html": "<p>The featured_speaker inverse relationship term derived from spoke_at.</p>",
      "url": "/schema/relationship-type-featured_speaker/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-featured_speaker.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-features",
      "protocol_id": "xananode.canonical:schema/relationship-type-features",
      "title": "Features",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source features the target.",
      "content": "The source features the target.",
      "html": "<p>The source features the target.</p>",
      "url": "/schema/relationship-type-features/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-features.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-followed",
      "protocol_id": "xananode.canonical:schema/relationship-type-followed",
      "title": "Followed Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The followed inverse relationship term derived from preceded.",
      "content": "The followed inverse relationship term derived from preceded.",
      "html": "<p>The followed inverse relationship term derived from preceded.</p>",
      "url": "/schema/relationship-type-followed/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-followed.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-format_translated_from",
      "protocol_id": "xananode.canonical:schema/relationship-type-format_translated_from",
      "title": "Format translated from",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source preserves the target content while changing format, medium, or presentation layer.",
      "content": "The source preserves the target content while changing format, medium, or presentation layer.",
      "html": "<p>The source preserves the target content while changing format, medium, or presentation layer.</p>",
      "url": "/schema/relationship-type-format_translated_from/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-format_translated_from.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-format_translated_into",
      "protocol_id": "xananode.canonical:schema/relationship-type-format_translated_into",
      "title": "Format translated into",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is a format translation of the target content.",
      "content": "The source is a format translation of the target content.",
      "html": "<p>The source is a format translation of the target content.</p>",
      "url": "/schema/relationship-type-format_translated_into/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-format_translated_into.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-frequently_misunderstood",
      "protocol_id": "xananode.canonical:schema/relationship-type-frequently_misunderstood",
      "title": "Frequently misunderstood",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is frequently misunderstood in relation to the target context or audience.",
      "content": "The source is frequently misunderstood in relation to the target context or audience.",
      "html": "<p>The source is frequently misunderstood in relation to the target context or audience.</p>",
      "url": "/schema/relationship-type-frequently_misunderstood/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-frequently_misunderstood.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-friend_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-friend_of",
      "title": "Friend of",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source had a documented friendship with the target.",
      "content": "The source had a documented friendship with the target.",
      "html": "<p>The source had a documented friendship with the target.</p>",
      "url": "/schema/relationship-type-friend_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-friend_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-generalized_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-generalized_by",
      "title": "Generalized By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The generalized_by inverse relationship term derived from specializes.",
      "content": "The generalized_by inverse relationship term derived from specializes.",
      "html": "<p>The generalized_by inverse relationship term derived from specializes.</p>",
      "url": "/schema/relationship-type-generalized_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-generalized_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-generalizes",
      "protocol_id": "xananode.canonical:schema/relationship-type-generalizes",
      "title": "Generalizes",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is a more general abstraction of the target.",
      "content": "The source is a more general abstraction of the target.",
      "html": "<p>The source is a more general abstraction of the target.</p>",
      "url": "/schema/relationship-type-generalizes/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-generalizes.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-generated",
      "protocol_id": "xananode.canonical:schema/relationship-type-generated",
      "title": "Generated",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source generated, produced, or caused the target artifact, claim, response, or knowledge object.",
      "content": "The source generated, produced, or caused the target artifact, claim, response, or knowledge object.",
      "html": "<p>The source generated, produced, or caused the target artifact, claim, response, or knowledge object.</p>",
      "url": "/schema/relationship-type-generated/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-generated.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-generated_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-generated_by",
      "title": "Generated By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The generated_by inverse relationship term derived from generated.",
      "content": "The generated_by inverse relationship term derived from generated.",
      "html": "<p>The generated_by inverse relationship term derived from generated.</p>",
      "url": "/schema/relationship-type-generated_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-generated_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-governed_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-governed_by",
      "title": "governed by",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source artifact, workflow, implementation, substrate, or mark is governed by the target policy, rule, specification, or legal instrument.",
      "content": "The source artifact, workflow, implementation, substrate, or mark is governed by the target policy, rule, specification, or legal instrument.",
      "html": "<p>The source artifact, workflow, implementation, substrate, or mark is governed by the target policy, rule, specification, or legal instrument.</p>",
      "url": "/schema/relationship-type-governed_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-governed_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-governs",
      "protocol_id": "xananode.canonical:schema/relationship-type-governs",
      "title": "Governs Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The governs inverse relationship term derived from governed_by.",
      "content": "The governs inverse relationship term derived from governed_by.",
      "html": "<p>The governs inverse relationship term derived from governed_by.</p>",
      "url": "/schema/relationship-type-governs/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-governs.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-had_answer",
      "protocol_id": "xananode.canonical:schema/relationship-type-had_answer",
      "title": "Had Answer Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The had_answer inverse relationship term derived from answered_in.",
      "content": "The had_answer inverse relationship term derived from answered_in.",
      "html": "<p>The had_answer inverse relationship term derived from answered_in.</p>",
      "url": "/schema/relationship-type-had_answer/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-had_answer.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-had_participant",
      "protocol_id": "xananode.canonical:schema/relationship-type-had_participant",
      "title": "Had Participant Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The had_participant inverse relationship term derived from participated_in.",
      "content": "The had_participant inverse relationship term derived from participated_in.",
      "html": "<p>The had_participant inverse relationship term derived from participated_in.</p>",
      "url": "/schema/relationship-type-had_participant/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-had_participant.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-had_question",
      "protocol_id": "xananode.canonical:schema/relationship-type-had_question",
      "title": "Had Question Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The had_question inverse relationship term derived from asked_in.",
      "content": "The had_question inverse relationship term derived from asked_in.",
      "html": "<p>The had_question inverse relationship term derived from asked_in.</p>",
      "url": "/schema/relationship-type-had_question/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-had_question.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-has_alias",
      "protocol_id": "xananode.canonical:schema/relationship-type-has_alias",
      "title": "Has Alias Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The has_alias inverse relationship term derived from alias_of.",
      "content": "The has_alias inverse relationship term derived from alias_of.",
      "html": "<p>The has_alias inverse relationship term derived from alias_of.</p>",
      "url": "/schema/relationship-type-has_alias/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-has_alias.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-has_appearance",
      "protocol_id": "xananode.canonical:schema/relationship-type-has_appearance",
      "title": "Has Appearance Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The has_appearance inverse relationship term derived from appears_in.",
      "content": "The has_appearance inverse relationship term derived from appears_in.",
      "html": "<p>The has_appearance inverse relationship term derived from appears_in.</p>",
      "url": "/schema/relationship-type-has_appearance/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-has_appearance.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-has_claim",
      "protocol_id": "xananode.canonical:schema/relationship-type-has_claim",
      "title": "Has claim",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source concept, essay, observation, or source contains or depends on the target claim.",
      "content": "The source concept, essay, observation, or source contains or depends on the target claim.",
      "html": "<p>The source concept, essay, observation, or source contains or depends on the target claim.</p>",
      "url": "/schema/relationship-type-has_claim/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-has_claim.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-has_context",
      "protocol_id": "xananode.canonical:schema/relationship-type-has_context",
      "title": "Has Context Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The has_context inverse relationship term derived from context_for.",
      "content": "The has_context inverse relationship term derived from context_for.",
      "html": "<p>The has_context inverse relationship term derived from context_for.</p>",
      "url": "/schema/relationship-type-has_context/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-has_context.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-has_evidence",
      "protocol_id": "xananode.canonical:schema/relationship-type-has_evidence",
      "title": "Has Evidence Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The has_evidence inverse relationship term derived from evidence_for.",
      "content": "The has_evidence inverse relationship term derived from evidence_for.",
      "html": "<p>The has_evidence inverse relationship term derived from evidence_for.</p>",
      "url": "/schema/relationship-type-has_evidence/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-has_evidence.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-has_example",
      "protocol_id": "xananode.canonical:schema/relationship-type-has_example",
      "title": "Has Example Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The has_example inverse relationship term derived from example_of.",
      "content": "The has_example inverse relationship term derived from example_of.",
      "html": "<p>The has_example inverse relationship term derived from example_of.</p>",
      "url": "/schema/relationship-type-has_example/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-has_example.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-has_extension",
      "protocol_id": "xananode.canonical:schema/relationship-type-has_extension",
      "title": "Has Extension Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The has_extension inverse relationship term derived from extension_of.",
      "content": "The has_extension inverse relationship term derived from extension_of.",
      "html": "<p>The has_extension inverse relationship term derived from extension_of.</p>",
      "url": "/schema/relationship-type-has_extension/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-has_extension.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-has_high_risk",
      "protocol_id": "xananode.canonical:schema/relationship-type-has_high_risk",
      "title": "Has High Risk Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The has_high_risk inverse relationship term derived from high_risk_for.",
      "content": "The has_high_risk inverse relationship term derived from high_risk_for.",
      "html": "<p>The has_high_risk inverse relationship term derived from high_risk_for.</p>",
      "url": "/schema/relationship-type-has_high_risk/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-has_high_risk.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-has_important_context",
      "protocol_id": "xananode.canonical:schema/relationship-type-has_important_context",
      "title": "Has Important Context Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The has_important_context inverse relationship term derived from important_for.",
      "content": "The has_important_context inverse relationship term derived from important_for.",
      "html": "<p>The has_important_context inverse relationship term derived from important_for.</p>",
      "url": "/schema/relationship-type-has_important_context/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-has_important_context.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-has_ingredient",
      "protocol_id": "xananode.canonical:schema/relationship-type-has_ingredient",
      "title": "Has Ingredient Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The has_ingredient inverse relationship term derived from ingredient_of.",
      "content": "The has_ingredient inverse relationship term derived from ingredient_of.",
      "html": "<p>The has_ingredient inverse relationship term derived from ingredient_of.</p>",
      "url": "/schema/relationship-type-has_ingredient/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-has_ingredient.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-has_primary_media",
      "protocol_id": "xananode.canonical:schema/relationship-type-has_primary_media",
      "title": "Has primary media",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source node uses the target media node as its primary representative image or icon.",
      "content": "The source node uses the target media node as its primary representative image or icon.",
      "html": "<p>The source node uses the target media node as its primary representative image or icon.</p>",
      "url": "/schema/relationship-type-has_primary_media/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-has_primary_media.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-high_risk_for",
      "protocol_id": "xananode.canonical:schema/relationship-type-high_risk_for",
      "title": "High risk for",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source identifies a high risk for the target.",
      "content": "The source identifies a high risk for the target.",
      "html": "<p>The source identifies a high risk for the target.</p>",
      "url": "/schema/relationship-type-high_risk_for/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-high_risk_for.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-identified",
      "protocol_id": "xananode.canonical:schema/relationship-type-identified",
      "title": "Identified",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source identified, named, or recognized the target.",
      "content": "The source identified, named, or recognized the target.",
      "html": "<p>The source identified, named, or recognized the target.</p>",
      "url": "/schema/relationship-type-identified/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-identified.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-identified_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-identified_by",
      "title": "Identified By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The identified_by inverse relationship term derived from identified.",
      "content": "The identified_by inverse relationship term derived from identified.",
      "html": "<p>The identified_by inverse relationship term derived from identified.</p>",
      "url": "/schema/relationship-type-identified_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-identified_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-implemented_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-implemented_by",
      "title": "Implemented By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The implemented_by inverse relationship term derived from implements.",
      "content": "The implemented_by inverse relationship term derived from implements.",
      "html": "<p>The implemented_by inverse relationship term derived from implements.</p>",
      "url": "/schema/relationship-type-implemented_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-implemented_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-implements",
      "protocol_id": "xananode.canonical:schema/relationship-type-implements",
      "title": "Implements",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source implements the target idea, technology, protocol, method, or concept.",
      "content": "The source implements the target idea, technology, protocol, method, or concept.",
      "html": "<p>The source implements the target idea, technology, protocol, method, or concept.</p>",
      "url": "/schema/relationship-type-implements/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-implements.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-important_for",
      "protocol_id": "xananode.canonical:schema/relationship-type-important_for",
      "title": "Important for",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is important for understanding, navigating, preserving, or acting on the target.",
      "content": "The source is important for understanding, navigating, preserving, or acting on the target.",
      "html": "<p>The source is important for understanding, navigating, preserving, or acting on the target.</p>",
      "url": "/schema/relationship-type-important_for/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-important_for.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-included_in",
      "protocol_id": "xananode.canonical:schema/relationship-type-included_in",
      "title": "Included In Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The included_in inverse relationship term derived from includes.",
      "content": "The included_in inverse relationship term derived from includes.",
      "html": "<p>The included_in inverse relationship term derived from includes.</p>",
      "url": "/schema/relationship-type-included_in/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-included_in.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-includes",
      "protocol_id": "xananode.canonical:schema/relationship-type-includes",
      "title": "Includes",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source includes or encompasses the target as a member or component.",
      "content": "The source includes or encompasses the target as a member or component.",
      "html": "<p>The source includes or encompasses the target as a member or component.</p>",
      "url": "/schema/relationship-type-includes/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-includes.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-influenced",
      "protocol_id": "xananode.canonical:schema/relationship-type-influenced",
      "title": "Influenced",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source influenced the target.",
      "content": "The source influenced the target.",
      "html": "<p>The source influenced the target.</p>",
      "url": "/schema/relationship-type-influenced/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-influenced.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-influenced_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-influenced_by",
      "title": "Influenced By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The influenced_by inverse relationship term derived from influenced.",
      "content": "The influenced_by inverse relationship term derived from influenced.",
      "html": "<p>The influenced_by inverse relationship term derived from influenced.</p>",
      "url": "/schema/relationship-type-influenced_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-influenced_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-information_required_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-information_required_by",
      "title": "Information Required By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The information_required_by inverse relationship term derived from requires_information.",
      "content": "The information_required_by inverse relationship term derived from requires_information.",
      "html": "<p>The information_required_by inverse relationship term derived from requires_information.</p>",
      "url": "/schema/relationship-type-information_required_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-information_required_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-ingredient_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-ingredient_of",
      "title": "Ingredient of",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source item is an ingredient in the target recipe, dish, or preparation.",
      "content": "The source item is an ingredient in the target recipe, dish, or preparation.",
      "html": "<p>The source item is an ingredient in the target recipe, dish, or preparation.</p>",
      "url": "/schema/relationship-type-ingredient_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-ingredient_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-inquiry_motivated_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-inquiry_motivated_by",
      "title": "Inquiry Motivated By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The inquiry_motivated_by inverse relationship term derived from motivates_inquiry.",
      "content": "The inquiry_motivated_by inverse relationship term derived from motivates_inquiry.",
      "html": "<p>The inquiry_motivated_by inverse relationship term derived from motivates_inquiry.</p>",
      "url": "/schema/relationship-type-inquiry_motivated_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-inquiry_motivated_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-insufficient_evidence",
      "protocol_id": "xananode.canonical:schema/relationship-type-insufficient_evidence",
      "title": "Insufficient evidence",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source indicates that the target lacks enough evidence for the asserted interpretation or status.",
      "content": "The source indicates that the target lacks enough evidence for the asserted interpretation or status.",
      "html": "<p>The source indicates that the target lacks enough evidence for the asserted interpretation or status.</p>",
      "url": "/schema/relationship-type-insufficient_evidence/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-insufficient_evidence.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-interviewed",
      "protocol_id": "xananode.canonical:schema/relationship-type-interviewed",
      "title": "Interviewed",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source interviewed the target.",
      "content": "The source interviewed the target.",
      "html": "<p>The source interviewed the target.</p>",
      "url": "/schema/relationship-type-interviewed/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-interviewed.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-interviewed_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-interviewed_by",
      "title": "Interviewed By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The interviewed_by inverse relationship term derived from interviewed.",
      "content": "The interviewed_by inverse relationship term derived from interviewed.",
      "html": "<p>The interviewed_by inverse relationship term derived from interviewed.</p>",
      "url": "/schema/relationship-type-interviewed_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-interviewed_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-introduced",
      "protocol_id": "xananode.canonical:schema/relationship-type-introduced",
      "title": "Introduced",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source introduced or first formally presented the target.",
      "content": "The source introduced or first formally presented the target.",
      "html": "<p>The source introduced or first formally presented the target.</p>",
      "url": "/schema/relationship-type-introduced/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-introduced.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-introduced_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-introduced_by",
      "title": "Introduced By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The introduced_by inverse relationship term derived from introduced.",
      "content": "The introduced_by inverse relationship term derived from introduced.",
      "html": "<p>The introduced_by inverse relationship term derived from introduced.</p>",
      "url": "/schema/relationship-type-introduced_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-introduced_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-introduced_in",
      "protocol_id": "xananode.canonical:schema/relationship-type-introduced_in",
      "title": "Introduced in",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source was introduced, debuted, or first appeared in the target event, work, or venue.",
      "content": "The source was introduced, debuted, or first appeared in the target event, work, or venue.",
      "html": "<p>The source was introduced, debuted, or first appeared in the target event, work, or venue.</p>",
      "url": "/schema/relationship-type-introduced_in/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-introduced_in.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-introduction_venue_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-introduction_venue_of",
      "title": "Introduction Venue Of Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The introduction_venue_of inverse relationship term derived from introduced_in.",
      "content": "The introduction_venue_of inverse relationship term derived from introduced_in.",
      "html": "<p>The introduction_venue_of inverse relationship term derived from introduced_in.</p>",
      "url": "/schema/relationship-type-introduction_venue_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-introduction_venue_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-investigated_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-investigated_by",
      "title": "Investigated By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The investigated_by inverse relationship term derived from investigates.",
      "content": "The investigated_by inverse relationship term derived from investigates.",
      "html": "<p>The investigated_by inverse relationship term derived from investigates.</p>",
      "url": "/schema/relationship-type-investigated_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-investigated_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-investigates",
      "protocol_id": "xananode.canonical:schema/relationship-type-investigates",
      "title": "Investigates",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source investigates the target question, problem, claim, hypothesis, or knowledge gap.",
      "content": "The source investigates the target question, problem, claim, hypothesis, or knowledge gap.",
      "html": "<p>The source investigates the target question, problem, claim, hypothesis, or knowledge gap.</p>",
      "url": "/schema/relationship-type-investigates/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-investigates.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-is_start_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-is_start_of",
      "title": "Is Start Of Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The is_start_of inverse relationship term derived from starts_with.",
      "content": "The is_start_of inverse relationship term derived from starts_with.",
      "html": "<p>The is_start_of inverse relationship term derived from starts_with.</p>",
      "url": "/schema/relationship-type-is_start_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-is_start_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-license_for",
      "protocol_id": "xananode.canonical:schema/relationship-type-license_for",
      "title": "License For Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The license_for inverse relationship term derived from licensed_under.",
      "content": "The license_for inverse relationship term derived from licensed_under.",
      "html": "<p>The license_for inverse relationship term derived from licensed_under.</p>",
      "url": "/schema/relationship-type-license_for/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-license_for.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-licensed_under",
      "protocol_id": "xananode.canonical:schema/relationship-type-licensed_under",
      "title": "licensed under",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source artifact, content, code, schema, media, or substrate is distributed under the target license.",
      "content": "The source artifact, content, code, schema, media, or substrate is distributed under the target license.",
      "html": "<p>The source artifact, content, code, schema, media, or substrate is distributed under the target license.</p>",
      "url": "/schema/relationship-type-licensed_under/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-licensed_under.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-made_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-made_of",
      "title": "Made of",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source physical item or structure is made of the target material or substance.",
      "content": "The source physical item or structure is made of the target material or substance.",
      "html": "<p>The source physical item or structure is made of the target material or substance.</p>",
      "url": "/schema/relationship-type-made_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-made_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-makes_up",
      "protocol_id": "xananode.canonical:schema/relationship-type-makes_up",
      "title": "Makes Up Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The makes_up inverse relationship term derived from made_of.",
      "content": "The makes_up inverse relationship term derived from made_of.",
      "html": "<p>The makes_up inverse relationship term derived from made_of.</p>",
      "url": "/schema/relationship-type-makes_up/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-makes_up.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-mapped_from",
      "protocol_id": "xananode.canonical:schema/relationship-type-mapped_from",
      "title": "Mapped From Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The mapped_from inverse relationship term derived from maps_to.",
      "content": "The mapped_from inverse relationship term derived from maps_to.",
      "html": "<p>The mapped_from inverse relationship term derived from maps_to.</p>",
      "url": "/schema/relationship-type-mapped_from/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-mapped_from.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-maps_to",
      "protocol_id": "xananode.canonical:schema/relationship-type-maps_to",
      "title": "Maps to",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source schema type, field, node, or relationship maps to the target schema type, field, node, or relationship for interoperability.",
      "content": "The source schema type, field, node, or relationship maps to the target schema type, field, node, or relationship for interoperability.",
      "html": "<p>The source schema type, field, node, or relationship maps to the target schema type, field, node, or relationship for interoperability.</p>",
      "url": "/schema/relationship-type-maps_to/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-maps_to.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-medium_transition",
      "protocol_id": "xananode.canonical:schema/relationship-type-medium_transition",
      "title": "Medium transition",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source marks a shift from the target through a different medium, presentation mode, or publication form.",
      "content": "The source marks a shift from the target through a different medium, presentation mode, or publication form.",
      "html": "<p>The source marks a shift from the target through a different medium, presentation mode, or publication form.</p>",
      "url": "/schema/relationship-type-medium_transition/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-medium_transition.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-medium_transitioned_from",
      "protocol_id": "xananode.canonical:schema/relationship-type-medium_transitioned_from",
      "title": "Medium transitioned from",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is the earlier medium form from which the target transitioned.",
      "content": "The source is the earlier medium form from which the target transitioned.",
      "html": "<p>The source is the earlier medium form from which the target transitioned.</p>",
      "url": "/schema/relationship-type-medium_transitioned_from/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-medium_transitioned_from.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-memorialized_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-memorialized_by",
      "title": "Memorialized By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The memorialized_by inverse relationship term derived from memorializes.",
      "content": "The memorialized_by inverse relationship term derived from memorializes.",
      "html": "<p>The memorialized_by inverse relationship term derived from memorializes.</p>",
      "url": "/schema/relationship-type-memorialized_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-memorialized_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-memorializes",
      "protocol_id": "xananode.canonical:schema/relationship-type-memorializes",
      "title": "Memorializes",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source commemorates, honors, or preserves the memory of the target.",
      "content": "The source commemorates, honors, or preserves the memory of the target.",
      "html": "<p>The source commemorates, honors, or preserves the memory of the target.</p>",
      "url": "/schema/relationship-type-memorializes/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-memorializes.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-mentioned_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-mentioned_by",
      "title": "Mentioned By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The mentioned_by inverse relationship term derived from mentions.",
      "content": "The mentioned_by inverse relationship term derived from mentions.",
      "html": "<p>The mentioned_by inverse relationship term derived from mentions.</p>",
      "url": "/schema/relationship-type-mentioned_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-mentioned_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-mentions",
      "protocol_id": "xananode.canonical:schema/relationship-type-mentions",
      "title": "Mentions",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source mentions the target without making it structurally central.",
      "content": "The source mentions the target without making it structurally central.",
      "html": "<p>The source mentions the target without making it structurally central.</p>",
      "url": "/schema/relationship-type-mentions/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-mentions.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-misunderstanding_context_for",
      "protocol_id": "xananode.canonical:schema/relationship-type-misunderstanding_context_for",
      "title": "Misunderstanding Context For Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The misunderstanding_context_for inverse relationship term derived from frequently_misunderstood.",
      "content": "The misunderstanding_context_for inverse relationship term derived from frequently_misunderstood.",
      "html": "<p>The misunderstanding_context_for inverse relationship term derived from frequently_misunderstood.</p>",
      "url": "/schema/relationship-type-misunderstanding_context_for/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-misunderstanding_context_for.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-motivated_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-motivated_by",
      "title": "Motivated by",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source was motivated or driven into being by the target.",
      "content": "The source was motivated or driven into being by the target.",
      "html": "<p>The source was motivated or driven into being by the target.</p>",
      "url": "/schema/relationship-type-motivated_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-motivated_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-motivates",
      "protocol_id": "xananode.canonical:schema/relationship-type-motivates",
      "title": "Motivates Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The motivates inverse relationship term derived from motivated_by.",
      "content": "The motivates inverse relationship term derived from motivated_by.",
      "html": "<p>The motivates inverse relationship term derived from motivated_by.</p>",
      "url": "/schema/relationship-type-motivates/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-motivates.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-motivates_inquiry",
      "protocol_id": "xananode.canonical:schema/relationship-type-motivates_inquiry",
      "title": "Motivates inquiry",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source motivates inquiry into the target question, problem, claim, or knowledge gap.",
      "content": "The source motivates inquiry into the target question, problem, claim, or knowledge gap.",
      "html": "<p>The source motivates inquiry into the target question, problem, claim, or knowledge gap.</p>",
      "url": "/schema/relationship-type-motivates_inquiry/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-motivates_inquiry.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-narrower_than",
      "protocol_id": "xananode.canonical:schema/relationship-type-narrower_than",
      "title": "Narrower Than Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The narrower_than inverse relationship term derived from broader_than.",
      "content": "The narrower_than inverse relationship term derived from broader_than.",
      "html": "<p>The narrower_than inverse relationship term derived from broader_than.</p>",
      "url": "/schema/relationship-type-narrower_than/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-narrower_than.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-negotiated_with",
      "protocol_id": "xananode.canonical:schema/relationship-type-negotiated_with",
      "title": "Negotiated with",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source negotiated with the target actor, group, or position.",
      "content": "The source negotiated with the target actor, group, or position.",
      "html": "<p>The source negotiated with the target actor, group, or position.</p>",
      "url": "/schema/relationship-type-negotiated_with/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-negotiated_with.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-not_answered_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-not_answered_by",
      "title": "Not Answered By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The not_answered_by inverse relationship term derived from fails_to_answer.",
      "content": "The not_answered_by inverse relationship term derived from fails_to_answer.",
      "html": "<p>The not_answered_by inverse relationship term derived from fails_to_answer.</p>",
      "url": "/schema/relationship-type-not_answered_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-not_answered_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-occurred_at",
      "protocol_id": "xananode.canonical:schema/relationship-type-occurred_at",
      "title": "Occurred at",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source event occurred at the target place.",
      "content": "The source event occurred at the target place.",
      "html": "<p>The source event occurred at the target place.</p>",
      "url": "/schema/relationship-type-occurred_at/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-occurred_at.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-overlooked_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-overlooked_by",
      "title": "Overlooked by",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is overlooked by the target person, community, source, or substrate.",
      "content": "The source is overlooked by the target person, community, source, or substrate.",
      "html": "<p>The source is overlooked by the target person, community, source, or substrate.</p>",
      "url": "/schema/relationship-type-overlooked_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-overlooked_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-overlooks",
      "protocol_id": "xananode.canonical:schema/relationship-type-overlooks",
      "title": "Overlooks Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The overlooks inverse relationship term derived from overlooked_by.",
      "content": "The overlooks inverse relationship term derived from overlooked_by.",
      "html": "<p>The overlooks inverse relationship term derived from overlooked_by.</p>",
      "url": "/schema/relationship-type-overlooks/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-overlooks.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-parallel_to",
      "protocol_id": "xananode.canonical:schema/relationship-type-parallel_to",
      "title": "Parallel to",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source developed alongside or resembles the target without necessarily descending from it.",
      "content": "The source developed alongside or resembles the target without necessarily descending from it.",
      "html": "<p>The source developed alongside or resembles the target without necessarily descending from it.</p>",
      "url": "/schema/relationship-type-parallel_to/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-parallel_to.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-part_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-part_of",
      "title": "Part Of Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The part_of inverse relationship term derived from contains.",
      "content": "The part_of inverse relationship term derived from contains.",
      "html": "<p>The part_of inverse relationship term derived from contains.</p>",
      "url": "/schema/relationship-type-part_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-part_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-partially_answered_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-partially_answered_by",
      "title": "Partially Answered By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The partially_answered_by inverse relationship term derived from partially_answers.",
      "content": "The partially_answered_by inverse relationship term derived from partially_answers.",
      "html": "<p>The partially_answered_by inverse relationship term derived from partially_answers.</p>",
      "url": "/schema/relationship-type-partially_answered_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-partially_answered_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-partially_answers",
      "protocol_id": "xananode.canonical:schema/relationship-type-partially_answers",
      "title": "Partially answers",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source provides a partial answer to the target question while leaving important parts unresolved.",
      "content": "The source provides a partial answer to the target question while leaving important parts unresolved.",
      "html": "<p>The source provides a partial answer to the target question while leaving important parts unresolved.</p>",
      "url": "/schema/relationship-type-partially_answers/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-partially_answers.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-participated_in",
      "protocol_id": "xananode.canonical:schema/relationship-type-participated_in",
      "title": "Participated in",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source participated in the target.",
      "content": "The source participated in the target.",
      "html": "<p>The source participated in the target.</p>",
      "url": "/schema/relationship-type-participated_in/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-participated_in.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-popularized",
      "protocol_id": "xananode.canonical:schema/relationship-type-popularized",
      "title": "Popularized",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source brought the target to a wider audience or made it culturally visible.",
      "content": "The source brought the target to a wider audience or made it culturally visible.",
      "html": "<p>The source brought the target to a wider audience or made it culturally visible.</p>",
      "url": "/schema/relationship-type-popularized/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-popularized.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-popularized_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-popularized_by",
      "title": "Popularized By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The popularized_by inverse relationship term derived from popularized.",
      "content": "The popularized_by inverse relationship term derived from popularized.",
      "html": "<p>The popularized_by inverse relationship term derived from popularized.</p>",
      "url": "/schema/relationship-type-popularized_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-popularized_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-possible_match",
      "protocol_id": "xananode.canonical:schema/relationship-type-possible_match",
      "title": "Possible match",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source may represent the same entity, concept, claim, source, or fragment as the target, but the match has not been confirmed.",
      "content": "The source may represent the same entity, concept, claim, source, or fragment as the target, but the match has not been confirmed.",
      "html": "<p>The source may represent the same entity, concept, claim, source, or fragment as the target, but the match has not been confirmed.</p>",
      "url": "/schema/relationship-type-possible_match/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-possible_match.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-possibly_related_to",
      "protocol_id": "xananode.canonical:schema/relationship-type-possibly_related_to",
      "title": "Possibly related to",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source may be related to the target, but the specific relationship is not yet known or justified.",
      "content": "The source may be related to the target, but the specific relationship is not yet known or justified.",
      "html": "<p>The source may be related to the target, but the specific relationship is not yet known or justified.</p>",
      "url": "/schema/relationship-type-possibly_related_to/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-possibly_related_to.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-preceded",
      "protocol_id": "xananode.canonical:schema/relationship-type-preceded",
      "title": "Preceded",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source came before the target.",
      "content": "The source came before the target.",
      "html": "<p>The source came before the target.</p>",
      "url": "/schema/relationship-type-preceded/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-preceded.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-presentation_received_from",
      "protocol_id": "xananode.canonical:schema/relationship-type-presentation_received_from",
      "title": "Presentation Received From Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The presentation_received_from inverse relationship term derived from presented_to.",
      "content": "The presentation_received_from inverse relationship term derived from presented_to.",
      "html": "<p>The presentation_received_from inverse relationship term derived from presented_to.</p>",
      "url": "/schema/relationship-type-presentation_received_from/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-presentation_received_from.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-presented",
      "protocol_id": "xananode.canonical:schema/relationship-type-presented",
      "title": "Presented",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source presented, hosted, narrated, or publicly introduced the target work, program, or media object.",
      "content": "The source presented, hosted, narrated, or publicly introduced the target work, program, or media object.",
      "html": "<p>The source presented, hosted, narrated, or publicly introduced the target work, program, or media object.</p>",
      "url": "/schema/relationship-type-presented/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-presented.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-presented_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-presented_by",
      "title": "Presented By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The presented_by inverse relationship term derived from presented.",
      "content": "The presented_by inverse relationship term derived from presented.",
      "html": "<p>The presented_by inverse relationship term derived from presented.</p>",
      "url": "/schema/relationship-type-presented_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-presented_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-presented_to",
      "protocol_id": "xananode.canonical:schema/relationship-type-presented_to",
      "title": "Presented to",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source presented the target content, claim, source, or project to an audience.",
      "content": "The source presented the target content, claim, source, or project to an audience.",
      "html": "<p>The source presented the target content, claim, source, or project to an audience.</p>",
      "url": "/schema/relationship-type-presented_to/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-presented_to.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-preserved_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-preserved_by",
      "title": "Preserved By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The preserved_by inverse relationship term derived from preserves.",
      "content": "The preserved_by inverse relationship term derived from preserves.",
      "html": "<p>The preserved_by inverse relationship term derived from preserves.</p>",
      "url": "/schema/relationship-type-preserved_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-preserved_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-preserves",
      "protocol_id": "xananode.canonical:schema/relationship-type-preserves",
      "title": "Preserves",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source preserves the target property, structure, lineage, or context.",
      "content": "The source preserves the target property, structure, lineage, or context.",
      "html": "<p>The source preserves the target property, structure, lineage, or context.</p>",
      "url": "/schema/relationship-type-preserves/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-preserves.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-produces",
      "protocol_id": "xananode.canonical:schema/relationship-type-produces",
      "title": "Produces Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The produces inverse relationship term derived from results_from.",
      "content": "The produces inverse relationship term derived from results_from.",
      "html": "<p>The produces inverse relationship term derived from results_from.</p>",
      "url": "/schema/relationship-type-produces/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-produces.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-proposed",
      "protocol_id": "xananode.canonical:schema/relationship-type-proposed",
      "title": "Proposed",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source proposed or put forward the target.",
      "content": "The source proposed or put forward the target.",
      "html": "<p>The source proposed or put forward the target.</p>",
      "url": "/schema/relationship-type-proposed/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-proposed.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-proposed_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-proposed_by",
      "title": "Proposed By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The proposed_by inverse relationship term derived from proposed.",
      "content": "The proposed_by inverse relationship term derived from proposed.",
      "html": "<p>The proposed_by inverse relationship term derived from proposed.</p>",
      "url": "/schema/relationship-type-proposed_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-proposed_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-quoted_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-quoted_by",
      "title": "Quoted By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The quoted_by inverse relationship term derived from quotes.",
      "content": "The quoted_by inverse relationship term derived from quotes.",
      "html": "<p>The quoted_by inverse relationship term derived from quotes.</p>",
      "url": "/schema/relationship-type-quoted_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-quoted_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-quotes",
      "protocol_id": "xananode.canonical:schema/relationship-type-quotes",
      "title": "Quotes",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source quotes the target.",
      "content": "The source quotes the target.",
      "html": "<p>The source quotes the target.</p>",
      "url": "/schema/relationship-type-quotes/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-quotes.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-raised_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-raised_by",
      "title": "Raised By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The raised_by inverse relationship term derived from raises.",
      "content": "The raised_by inverse relationship term derived from raises.",
      "html": "<p>The raised_by inverse relationship term derived from raises.</p>",
      "url": "/schema/relationship-type-raised_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-raised_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-raises",
      "protocol_id": "xananode.canonical:schema/relationship-type-raises",
      "title": "Raises",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source raises, surfaces, or implies the target question, problem, or knowledge gap.",
      "content": "The source raises, surfaces, or implies the target question, problem, or knowledge gap.",
      "html": "<p>The source raises, surfaces, or implies the target question, problem, or knowledge gap.</p>",
      "url": "/schema/relationship-type-raises/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-raises.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-received_broadcast_from",
      "protocol_id": "xananode.canonical:schema/relationship-type-received_broadcast_from",
      "title": "Received Broadcast From Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The received_broadcast_from inverse relationship term derived from broadcast_to.",
      "content": "The received_broadcast_from inverse relationship term derived from broadcast_to.",
      "html": "<p>The received_broadcast_from inverse relationship term derived from broadcast_to.</p>",
      "url": "/schema/relationship-type-received_broadcast_from/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-received_broadcast_from.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-received_report_from",
      "protocol_id": "xananode.canonical:schema/relationship-type-received_report_from",
      "title": "Received Report From Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The received_report_from inverse relationship term derived from reported_to.",
      "content": "The received_report_from inverse relationship term derived from reported_to.",
      "html": "<p>The received_report_from inverse relationship term derived from reported_to.</p>",
      "url": "/schema/relationship-type-received_report_from/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-received_report_from.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-refined_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-refined_by",
      "title": "Refined By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The refined_by inverse relationship term derived from refines.",
      "content": "The refined_by inverse relationship term derived from refines.",
      "html": "<p>The refined_by inverse relationship term derived from refines.</p>",
      "url": "/schema/relationship-type-refined_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-refined_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-refines",
      "protocol_id": "xananode.canonical:schema/relationship-type-refines",
      "title": "Refines",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source refines, sharpens, or improves the target.",
      "content": "The source refines, sharpens, or improves the target.",
      "html": "<p>The source refines, sharpens, or improves the target.</p>",
      "url": "/schema/relationship-type-refines/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-refines.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-registry",
      "protocol_id": "xananode.canonical:schema/relationship-type-registry",
      "title": "Relationship Type Registry",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The canonical registry of current XanaNode relationship types and inverse semantics.",
      "content": "The canonical registry of current XanaNode relationship types and inverse semantics.",
      "html": "<p>The canonical registry of current XanaNode relationship types and inverse semantics.</p>",
      "url": "/schema/relationship-type-registry/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/xananode-relationship-types.v0.5.0.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-registry.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-related_to",
      "protocol_id": "xananode.canonical:schema/relationship-type-related_to",
      "title": "Related to",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is related to the target when no more specific relationship applies.",
      "content": "The source is related to the target when no more specific relationship applies.",
      "html": "<p>The source is related to the target when no more specific relationship applies.</p>",
      "url": "/schema/relationship-type-related_to/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-related_to.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-replied_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-replied_by",
      "title": "Replied By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The replied_by inverse relationship term derived from replied_to.",
      "content": "The replied_by inverse relationship term derived from replied_to.",
      "html": "<p>The replied_by inverse relationship term derived from replied_to.</p>",
      "url": "/schema/relationship-type-replied_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-replied_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-replied_to",
      "protocol_id": "xananode.canonical:schema/relationship-type-replied_to",
      "title": "Replied to",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is a reply to the target communication, question, response, or claim.",
      "content": "The source is a reply to the target communication, question, response, or claim.",
      "html": "<p>The source is a reply to the target communication, question, response, or claim.</p>",
      "url": "/schema/relationship-type-replied_to/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-replied_to.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-reported_to",
      "protocol_id": "xananode.canonical:schema/relationship-type-reported_to",
      "title": "Reported to",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source reported information, status, or evidence to the target actor, system, or audience.",
      "content": "The source reported information, status, or evidence to the target actor, system, or audience.",
      "html": "<p>The source reported information, status, or evidence to the target actor, system, or audience.</p>",
      "url": "/schema/relationship-type-reported_to/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-reported_to.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-represented_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-represented_by",
      "title": "Represented By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The represented_by inverse relationship term derived from represents.",
      "content": "The represented_by inverse relationship term derived from represents.",
      "html": "<p>The represented_by inverse relationship term derived from represents.</p>",
      "url": "/schema/relationship-type-represented_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-represented_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-represents",
      "protocol_id": "xananode.canonical:schema/relationship-type-represents",
      "title": "Represents",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source media or artifact represents the target.",
      "content": "The source media or artifact represents the target.",
      "html": "<p>The source media or artifact represents the target.</p>",
      "url": "/schema/relationship-type-represents/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-represents.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-required_for",
      "protocol_id": "xananode.canonical:schema/relationship-type-required_for",
      "title": "Required For Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The required_for inverse relationship term derived from requires.",
      "content": "The required_for inverse relationship term derived from requires.",
      "html": "<p>The required_for inverse relationship term derived from requires.</p>",
      "url": "/schema/relationship-type-required_for/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-required_for.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-requires",
      "protocol_id": "xananode.canonical:schema/relationship-type-requires",
      "title": "Requires",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source requires the target as a prerequisite, input, or condition.",
      "content": "The source requires the target as a prerequisite, input, or condition.",
      "html": "<p>The source requires the target as a prerequisite, input, or condition.</p>",
      "url": "/schema/relationship-type-requires/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-requires.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-requires_attribution",
      "protocol_id": "xananode.canonical:schema/relationship-type-requires_attribution",
      "title": "requires attribution",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source license, artifact, substrate, or policy requires attribution to the target person, organization, project, source, or community.",
      "content": "The source license, artifact, substrate, or policy requires attribution to the target person, organization, project, source, or community.",
      "html": "<p>The source license, artifact, substrate, or policy requires attribution to the target person, organization, project, source, or community.</p>",
      "url": "/schema/relationship-type-requires_attribution/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-requires_attribution.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-requires_context",
      "protocol_id": "xananode.canonical:schema/relationship-type-requires_context",
      "title": "Requires context",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source needs additional context to be interpreted responsibly.",
      "content": "The source needs additional context to be interpreted responsibly.",
      "html": "<p>The source needs additional context to be interpreted responsibly.</p>",
      "url": "/schema/relationship-type-requires_context/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-requires_context.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-requires_information",
      "protocol_id": "xananode.canonical:schema/relationship-type-requires_information",
      "title": "Requires information",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source cannot be resolved, accepted, or completed without additional information.",
      "content": "The source cannot be resolved, accepted, or completed without additional information.",
      "html": "<p>The source cannot be resolved, accepted, or completed without additional information.</p>",
      "url": "/schema/relationship-type-requires_information/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-requires_information.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-requires_review",
      "protocol_id": "xananode.canonical:schema/relationship-type-requires_review",
      "title": "Requires review",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source needs human, institutional, or automated review before it should be trusted or merged.",
      "content": "The source needs human, institutional, or automated review before it should be trusted or merged.",
      "html": "<p>The source needs human, institutional, or automated review before it should be trusted or merged.</p>",
      "url": "/schema/relationship-type-requires_review/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-requires_review.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-requires_source",
      "protocol_id": "xananode.canonical:schema/relationship-type-requires_source",
      "title": "Requires source",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source needs a cited source or primary evidence before it should be treated as supported.",
      "content": "The source needs a cited source or primary evidence before it should be treated as supported.",
      "html": "<p>The source needs a cited source or primary evidence before it should be treated as supported.</p>",
      "url": "/schema/relationship-type-requires_source/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-requires_source.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-requires_validation",
      "protocol_id": "xananode.canonical:schema/relationship-type-requires_validation",
      "title": "Requires validation",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source needs schema, evidence, reproducibility, or process validation.",
      "content": "The source needs schema, evidence, reproducibility, or process validation.",
      "html": "<p>The source needs schema, evidence, reproducibility, or process validation.</p>",
      "url": "/schema/relationship-type-requires_validation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-requires_validation.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-resonates_with",
      "protocol_id": "xananode.canonical:schema/relationship-type-resonates_with",
      "title": "Resonates with",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source has a low-commitment conceptual or experiential resonance with the target.",
      "content": "The source has a low-commitment conceptual or experiential resonance with the target.",
      "html": "<p>The source has a low-commitment conceptual or experiential resonance with the target.</p>",
      "url": "/schema/relationship-type-resonates_with/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-resonates_with.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-results_from",
      "protocol_id": "xananode.canonical:schema/relationship-type-results_from",
      "title": "Results from",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is a consequence, failure mode, output, or downstream effect of the target.",
      "content": "The source is a consequence, failure mode, output, or downstream effect of the target.",
      "html": "<p>The source is a consequence, failure mode, output, or downstream effect of the target.</p>",
      "url": "/schema/relationship-type-results_from/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-results_from.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-review_required_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-review_required_by",
      "title": "Review Required By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The review_required_by inverse relationship term derived from requires_review.",
      "content": "The review_required_by inverse relationship term derived from requires_review.",
      "html": "<p>The review_required_by inverse relationship term derived from requires_review.</p>",
      "url": "/schema/relationship-type-review_required_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-review_required_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-reviewed_under",
      "protocol_id": "xananode.canonical:schema/relationship-type-reviewed_under",
      "title": "Reviewed Under Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The reviewed_under inverse relationship term derived from under_review.",
      "content": "The reviewed_under inverse relationship term derived from under_review.",
      "html": "<p>The reviewed_under inverse relationship term derived from under_review.</p>",
      "url": "/schema/relationship-type-reviewed_under/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-reviewed_under.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-same_concept",
      "protocol_id": "xananode.canonical:schema/relationship-type-same_concept",
      "title": "Same concept",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source and target represent the same concept across substrates, namespaces, versions, or local identifiers.",
      "content": "The source and target represent the same concept across substrates, namespaces, versions, or local identifiers.",
      "html": "<p>The source and target represent the same concept across substrates, namespaces, versions, or local identifiers.</p>",
      "url": "/schema/relationship-type-same_concept/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-same_concept.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-same_entity",
      "protocol_id": "xananode.canonical:schema/relationship-type-same_entity",
      "title": "Same entity",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source and target represent the same real-world entity across substrates, namespaces, versions, or local identifiers.",
      "content": "The source and target represent the same real-world entity across substrates, namespaces, versions, or local identifiers.",
      "html": "<p>The source and target represent the same real-world entity across substrates, namespaces, versions, or local identifiers.</p>",
      "url": "/schema/relationship-type-same_entity/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-same_entity.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-same_person",
      "protocol_id": "xananode.canonical:schema/relationship-type-same_person",
      "title": "Same person",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source and target represent the same person across substrates, namespaces, versions, or local identifiers.",
      "content": "The source and target represent the same person across substrates, namespaces, versions, or local identifiers.",
      "html": "<p>The source and target represent the same person across substrates, namespaces, versions, or local identifiers.</p>",
      "url": "/schema/relationship-type-same_person/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-same_person.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-same_source",
      "protocol_id": "xananode.canonical:schema/relationship-type-same_source",
      "title": "Same source",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source and target represent the same source or reference object across substrates, namespaces, versions, or local identifiers.",
      "content": "The source and target represent the same source or reference object across substrates, namespaces, versions, or local identifiers.",
      "html": "<p>The source and target represent the same source or reference object across substrates, namespaces, versions, or local identifiers.</p>",
      "url": "/schema/relationship-type-same_source/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-same_source.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-shaped_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-shaped_by",
      "title": "Shaped By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The shaped_by inverse relationship term derived from shapes.",
      "content": "The shaped_by inverse relationship term derived from shapes.",
      "html": "<p>The shaped_by inverse relationship term derived from shapes.</p>",
      "url": "/schema/relationship-type-shaped_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-shaped_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-shapes",
      "protocol_id": "xananode.canonical:schema/relationship-type-shapes",
      "title": "Shapes",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source significantly shapes or molds the form, direction, or character of the target.",
      "content": "The source significantly shapes or molds the form, direction, or character of the target.",
      "html": "<p>The source significantly shapes or molds the form, direction, or character of the target.</p>",
      "url": "/schema/relationship-type-shapes/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-shapes.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-shares_pattern_with",
      "protocol_id": "xananode.canonical:schema/relationship-type-shares_pattern_with",
      "title": "Shares pattern with",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source shares a recognizable structure, behavior, or pattern with the target.",
      "content": "The source shares a recognizable structure, behavior, or pattern with the target.",
      "html": "<p>The source shares a recognizable structure, behavior, or pattern with the target.</p>",
      "url": "/schema/relationship-type-shares_pattern_with/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-shares_pattern_with.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-site_of",
      "protocol_id": "xananode.canonical:schema/relationship-type-site_of",
      "title": "Site Of Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The site_of inverse relationship term derived from occurred_at.",
      "content": "The site_of inverse relationship term derived from occurred_at.",
      "html": "<p>The site_of inverse relationship term derived from occurred_at.</p>",
      "url": "/schema/relationship-type-site_of/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-site_of.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-source_required_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-source_required_by",
      "title": "Source Required By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The source_required_by inverse relationship term derived from requires_source.",
      "content": "The source_required_by inverse relationship term derived from requires_source.",
      "html": "<p>The source_required_by inverse relationship term derived from requires_source.</p>",
      "url": "/schema/relationship-type-source_required_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-source_required_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-specialized_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-specialized_by",
      "title": "Specialized By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The specialized_by inverse relationship term derived from generalizes.",
      "content": "The specialized_by inverse relationship term derived from generalizes.",
      "html": "<p>The specialized_by inverse relationship term derived from generalizes.</p>",
      "url": "/schema/relationship-type-specialized_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-specialized_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-specializes",
      "protocol_id": "xananode.canonical:schema/relationship-type-specializes",
      "title": "Specializes",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source is a more specific case of the target.",
      "content": "The source is a more specific case of the target.",
      "html": "<p>The source is a more specific case of the target.</p>",
      "url": "/schema/relationship-type-specializes/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-specializes.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-speculated_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-speculated_by",
      "title": "Speculated By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The speculated_by inverse relationship term derived from speculative.",
      "content": "The speculated_by inverse relationship term derived from speculative.",
      "html": "<p>The speculated_by inverse relationship term derived from speculative.</p>",
      "url": "/schema/relationship-type-speculated_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-speculated_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-speculative",
      "protocol_id": "xananode.canonical:schema/relationship-type-speculative",
      "title": "Speculative",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source marks the target as speculative, provisional, or not yet established.",
      "content": "The source marks the target as speculative, provisional, or not yet established.",
      "html": "<p>The source marks the target as speculative, provisional, or not yet established.</p>",
      "url": "/schema/relationship-type-speculative/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-speculative.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-spoke_at",
      "protocol_id": "xananode.canonical:schema/relationship-type-spoke_at",
      "title": "Spoke at",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source person spoke at the target event.",
      "content": "The source person spoke at the target event.",
      "html": "<p>The source person spoke at the target event.</p>",
      "url": "/schema/relationship-type-spoke_at/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-spoke_at.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-starts_with",
      "protocol_id": "xananode.canonical:schema/relationship-type-starts_with",
      "title": "Starts with",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source sequence, work, or argument begins with the target.",
      "content": "The source sequence, work, or argument begins with the target.",
      "html": "<p>The source sequence, work, or argument begins with the target.</p>",
      "url": "/schema/relationship-type-starts_with/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-starts_with.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-superseded_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-superseded_by",
      "title": "Superseded By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The superseded_by inverse relationship term derived from supersedes.",
      "content": "The superseded_by inverse relationship term derived from supersedes.",
      "html": "<p>The superseded_by inverse relationship term derived from supersedes.</p>",
      "url": "/schema/relationship-type-superseded_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-superseded_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-supersedes",
      "protocol_id": "xananode.canonical:schema/relationship-type-supersedes",
      "title": "Supersedes",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source replaces the target.",
      "content": "The source replaces the target.",
      "html": "<p>The source replaces the target.</p>",
      "url": "/schema/relationship-type-supersedes/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-supersedes.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-supported_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-supported_by",
      "title": "Supported By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The supported_by inverse relationship term derived from supports.",
      "content": "The supported_by inverse relationship term derived from supports.",
      "html": "<p>The supported_by inverse relationship term derived from supports.</p>",
      "url": "/schema/relationship-type-supported_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-supported_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-supports",
      "protocol_id": "xananode.canonical:schema/relationship-type-supports",
      "title": "Supports",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source supports the target.",
      "content": "The source supports the target.",
      "html": "<p>The source supports the target.</p>",
      "url": "/schema/relationship-type-supports/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-supports.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-tested_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-tested_by",
      "title": "Tested By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The tested_by inverse relationship term derived from tests.",
      "content": "The tested_by inverse relationship term derived from tests.",
      "html": "<p>The tested_by inverse relationship term derived from tests.</p>",
      "url": "/schema/relationship-type-tested_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-tested_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-tests",
      "protocol_id": "xananode.canonical:schema/relationship-type-tests",
      "title": "Tests",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source tests the target hypothesis, claim, method, or prediction.",
      "content": "The source tests the target hypothesis, claim, method, or prediction.",
      "html": "<p>The source tests the target hypothesis, claim, method, or prediction.</p>",
      "url": "/schema/relationship-type-tests/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-tests.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-threatened_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-threatened_by",
      "title": "Threatened By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The threatened_by inverse relationship term derived from threatens.",
      "content": "The threatened_by inverse relationship term derived from threatens.",
      "html": "<p>The threatened_by inverse relationship term derived from threatens.</p>",
      "url": "/schema/relationship-type-threatened_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-threatened_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-threatens",
      "protocol_id": "xananode.canonical:schema/relationship-type-threatens",
      "title": "Threatens",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source threatens, endangers, or poses a risk to the target.",
      "content": "The source threatens, endangers, or poses a risk to the target.",
      "html": "<p>The source threatens, endangers, or poses a risk to the target.</p>",
      "url": "/schema/relationship-type-threatens/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-threatens.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-trademark_holder_for",
      "protocol_id": "xananode.canonical:schema/relationship-type-trademark_holder_for",
      "title": "Trademark Holder For Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The trademark_holder_for inverse relationship term derived from trademarked_by.",
      "content": "The trademark_holder_for inverse relationship term derived from trademarked_by.",
      "html": "<p>The trademark_holder_for inverse relationship term derived from trademarked_by.</p>",
      "url": "/schema/relationship-type-trademark_holder_for/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-trademark_holder_for.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-trademarked_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-trademarked_by",
      "title": "trademarked by",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source name, logo, brand asset, project identity, or mark is governed as a trademark by the target person, organization, project, or policy.",
      "content": "The source name, logo, brand asset, project identity, or mark is governed as a trademark by the target person, organization, project, or policy.",
      "html": "<p>The source name, logo, brand asset, project identity, or mark is governed as a trademark by the target person, organization, project, or policy.</p>",
      "url": "/schema/relationship-type-trademarked_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-trademarked_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-trained_on",
      "protocol_id": "xananode.canonical:schema/relationship-type-trained_on",
      "title": "Trained on",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source system or model was trained on the target dataset, corpus, or collection.",
      "content": "The source system or model was trained on the target dataset, corpus, or collection.",
      "html": "<p>The source system or model was trained on the target dataset, corpus, or collection.</p>",
      "url": "/schema/relationship-type-trained_on/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-trained_on.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-transcluded_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-transcluded_by",
      "title": "Transcluded By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The transcluded_by inverse relationship term derived from transcludes.",
      "content": "The transcluded_by inverse relationship term derived from transcludes.",
      "html": "<p>The transcluded_by inverse relationship term derived from transcludes.</p>",
      "url": "/schema/relationship-type-transcluded_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-transcluded_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-transcludes",
      "protocol_id": "xananode.canonical:schema/relationship-type-transcludes",
      "title": "Transcludes",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source includes a specific versioned fragment of the target by reference rather than copying it, preserving identity, attribution, and revision lineage.",
      "content": "The source includes a specific versioned fragment of the target by reference rather than copying it, preserving identity, attribution, and revision lineage.",
      "html": "<p>The source includes a specific versioned fragment of the target by reference rather than copying it, preserving identity, attribution, and revision lineage.</p>",
      "url": "/schema/relationship-type-transcludes/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-transcludes.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-under_review",
      "protocol_id": "xananode.canonical:schema/relationship-type-under_review",
      "title": "Under review",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source places the target under review or indicates that its status is being evaluated.",
      "content": "The source places the target under review or indicates that its status is being evaluated.",
      "html": "<p>The source places the target under review or indicates that its status is being evaluated.</p>",
      "url": "/schema/relationship-type-under_review/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-under_review.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-unresolved",
      "protocol_id": "xananode.canonical:schema/relationship-type-unresolved",
      "title": "Unresolved",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source marks the target as unresolved, unsettled, or not yet answerable.",
      "content": "The source marks the target as unresolved, unsettled, or not yet answerable.",
      "html": "<p>The source marks the target as unresolved, unsettled, or not yet answerable.</p>",
      "url": "/schema/relationship-type-unresolved/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-unresolved.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-unresolved_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-unresolved_by",
      "title": "Unresolved By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The unresolved_by inverse relationship term derived from unresolved.",
      "content": "The unresolved_by inverse relationship term derived from unresolved.",
      "html": "<p>The unresolved_by inverse relationship term derived from unresolved.</p>",
      "url": "/schema/relationship-type-unresolved_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-unresolved_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-used_as_primary_media_for",
      "protocol_id": "xananode.canonical:schema/relationship-type-used_as_primary_media_for",
      "title": "Used As Primary Media For Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The used_as_primary_media_for inverse relationship term derived from has_primary_media.",
      "content": "The used_as_primary_media_for inverse relationship term derived from has_primary_media.",
      "html": "<p>The used_as_primary_media_for inverse relationship term derived from has_primary_media.</p>",
      "url": "/schema/relationship-type-used_as_primary_media_for/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-used_as_primary_media_for.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-used_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-used_by",
      "title": "Used By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The used_by inverse relationship term derived from uses.",
      "content": "The used_by inverse relationship term derived from uses.",
      "html": "<p>The used_by inverse relationship term derived from uses.</p>",
      "url": "/schema/relationship-type-used_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-used_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-used_to_train",
      "protocol_id": "xananode.canonical:schema/relationship-type-used_to_train",
      "title": "Used To Train Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The used_to_train inverse relationship term derived from trained_on.",
      "content": "The used_to_train inverse relationship term derived from trained_on.",
      "html": "<p>The used_to_train inverse relationship term derived from trained_on.</p>",
      "url": "/schema/relationship-type-used_to_train/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-used_to_train.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-uses",
      "protocol_id": "xananode.canonical:schema/relationship-type-uses",
      "title": "Uses",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source uses, employs, or relies on the target.",
      "content": "The source uses, employs, or relies on the target.",
      "html": "<p>The source uses, employs, or relies on the target.</p>",
      "url": "/schema/relationship-type-uses/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-uses.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-validated_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-validated_by",
      "title": "Validated By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The validated_by inverse relationship term derived from validates.",
      "content": "The validated_by inverse relationship term derived from validates.",
      "html": "<p>The validated_by inverse relationship term derived from validates.</p>",
      "url": "/schema/relationship-type-validated_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-validated_by.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-validates",
      "protocol_id": "xananode.canonical:schema/relationship-type-validates",
      "title": "Validates",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 5,
      "summary": "The source validates, confirms, or passes a test for the target hypothesis, claim, method, or artifact.",
      "content": "The source validates, confirms, or passes a test for the target hypothesis, claim, method, or artifact.",
      "html": "<p>The source validates, confirms, or passes a test for the target hypothesis, claim, method, or artifact.</p>",
      "url": "/schema/relationship-type-validates/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-validates.json"
    },
    {
      "id": "xananode.canonical:schema/relationship-type-validation_required_by",
      "protocol_id": "xananode.canonical:schema/relationship-type-validation_required_by",
      "title": "Validation Required By Relationship Term",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The validation_required_by inverse relationship term derived from requires_validation.",
      "content": "The validation_required_by inverse relationship term derived from requires_validation.",
      "html": "<p>The validation_required_by inverse relationship term derived from requires_validation.</p>",
      "url": "/schema/relationship-type-validation_required_by/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_relationship-type-validation_required_by.json"
    },
    {
      "id": "xananode.canonical:schema/ro-crate-metadata-schema",
      "protocol_id": "xananode.canonical:schema/ro-crate-metadata-schema",
      "title": "RO-Crate Metadata Schema",
      "type": "schema",
      "facets": [],
      "section": "schemas",
      "importance": 4,
      "summary": "The JSON Schema for Research Object Crate metadata used to describe packaged substrate artifacts and their provenance.",
      "content": "The JSON Schema for Research Object Crate metadata used to describe packaged substrate artifacts and their provenance.",
      "html": "<p>The JSON Schema for Research Object Crate metadata used to describe packaged substrate artifacts and their provenance.</p>",
      "url": "/schema/ro-crate-metadata-schema/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/ro-crate-metadata.schema.json",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_schema_ro-crate-metadata-schema.json"
    },
    {
      "id": "xananode.canonical:source/apache-2-0-license",
      "protocol_id": "xananode.canonical:source/apache-2-0-license",
      "title": "Apache License 2.0",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 5,
      "summary": "The permissive open source license used for XanaNode schemas, validators, tooling, and reference implementation code.",
      "content": "The permissive open source license used for XanaNode schemas, validators, tooling, and reference implementation code.",
      "html": "<p>The permissive open source license used for XanaNode schemas, validators, tooling, and reference implementation code.</p>",
      "url": "/source/apache-2-0-license/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://www.apache.org/licenses/LICENSE-2.0",
      "license": "Apache-2.0",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_apache-2-0-license.json"
    },
    {
      "id": "xananode.canonical:source/cc-by-4-0-license",
      "protocol_id": "xananode.canonical:source/cc-by-4-0-license",
      "title": "Creative Commons Attribution 4.0 International",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 5,
      "summary": "The Creative Commons license used for XanaNode protocol documentation, allowing sharing and adaptation with attribution.",
      "content": "The Creative Commons license used for XanaNode protocol documentation, allowing sharing and adaptation with attribution.",
      "html": "<p>The Creative Commons license used for XanaNode protocol documentation, allowing sharing and adaptation with attribution.</p>",
      "url": "/source/cc-by-4-0-license/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://creativecommons.org/licenses/by/4.0/",
      "license": "CC-BY-4.0",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_cc-by-4-0-license.json"
    },
    {
      "id": "xananode.canonical:source/cc0-1-0-public-domain-dedication",
      "protocol_id": "xananode.canonical:source/cc0-1-0-public-domain-dedication",
      "title": "CC0 1.0 Public Domain Dedication",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A public-domain dedication used when authors want to waive copyright restrictions as fully as possible.",
      "content": "A public-domain dedication used when authors want to waive copyright restrictions as fully as possible.",
      "html": "<p>A public-domain dedication used when authors want to waive copyright restrictions as fully as possible.</p>",
      "url": "/source/cc0-1-0-public-domain-dedication/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://creativecommons.org/publicdomain/zero/1.0/",
      "license": "CC0-1.0",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_cc0-1-0-public-domain-dedication.json"
    },
    {
      "id": "xananode.canonical:source/federated-substrate-xananode.alphabet",
      "protocol_id": "xananode.canonical:source/federated-substrate-xananode.alphabet",
      "title": "XanaNode Alphabet Substrate",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A deliberately small example substrate with a start trail, A-Z letter nodes, typed relationships, and bundled media assets for every letter.",
      "content": "A deliberately small example substrate with a start trail, A-Z letter nodes, typed relationships, and bundled media assets for every letter.",
      "html": "<p>A deliberately small example substrate with a start trail, A-Z letter nodes, typed relationships, and bundled media assets for every letter.</p>",
      "url": "/source/federated-substrate-xananode.alphabet/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://xananode.com/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_federated-substrate-xananode.alphabet.json"
    },
    {
      "id": "xananode.canonical:source/federated-substrate-xananode.canonical",
      "protocol_id": "xananode.canonical:source/federated-substrate-xananode.canonical",
      "title": "XanaNode Canonical Substrate",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 5,
      "summary": "The canonical XanaNode substrate for protocol vocabulary, project identity, governance, software stack records, raw source snapshots, branding, and self-referential examples.",
      "content": "The canonical XanaNode substrate for protocol vocabulary, project identity, governance, software stack records, raw source snapshots, branding, and self-referential examples.",
      "html": "<p>The canonical XanaNode substrate for protocol vocabulary, project identity, governance, software stack records, raw source snapshots, branding, and self-referential examples.</p>",
      "url": "/source/federated-substrate-xananode.canonical/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://xananode.com/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_federated-substrate-xananode.canonical.json"
    },
    {
      "id": "xananode.canonical:source/federated-substrate-xananode.core",
      "protocol_id": "xananode.canonical:source/federated-substrate-xananode.core",
      "title": "XanaNode Core SDK Substrate",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A substrate source built directly from the XanaNode Core SDK repository, preserving its implementation identity, schemas, registries, templates, executable-contract artifacts, and key documents while carrying lower-level repository files as attached assets unless they have independent semantic weight.",
      "content": "A substrate source built directly from the XanaNode Core SDK repository, preserving its implementation identity, schemas, registries, templates, executable-contract artifacts, and key documents while carrying lower-level repository files as attached assets unless they have independent semantic weight.",
      "html": "<p>A substrate source built directly from the XanaNode Core SDK repository, preserving its implementation identity, schemas, registries, templates, executable-contract artifacts, and key documents while carrying lower-level repository files as attached assets unless they have independent semantic weight.</p>",
      "url": "/source/federated-substrate-xananode.core/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://xananode.com/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_federated-substrate-xananode.core.json"
    },
    {
      "id": "xananode.canonical:source/federated-substrate-xananode.hugo",
      "protocol_id": "xananode.canonical:source/federated-substrate-xananode.hugo",
      "title": "XanaNode Hugo Theme Substrate",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A substrate source built directly from the XanaNode Hugo repository, preserving the Hugo projection layer's identity, projection-facing documents, and key theme artifacts while carrying lower-level implementation files as attached assets unless they deserve their own nodes.",
      "content": "A substrate source built directly from the XanaNode Hugo repository, preserving the Hugo projection layer's identity, projection-facing documents, and key theme artifacts while carrying lower-level implementation files as attached assets unless they deserve their own nodes.",
      "html": "<p>A substrate source built directly from the XanaNode Hugo repository, preserving the Hugo projection layer&#39;s identity, projection-facing documents, and key theme artifacts while carrying lower-level implementation files as attached assets unless they deserve their own nodes.</p>",
      "url": "/source/federated-substrate-xananode.hugo/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://xananode.com/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_federated-substrate-xananode.hugo.json"
    },
    {
      "id": "xananode.canonical:source/federated-substrate-xananode.lineage",
      "protocol_id": "xananode.canonical:source/federated-substrate-xananode.lineage",
      "title": "XanaNode Lost Lineage Substrate",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A lineage substrate for the historical and conceptual path into XanaNode.",
      "content": "A lineage substrate for the historical and conceptual path into XanaNode.",
      "html": "<p>A lineage substrate for the historical and conceptual path into XanaNode.</p>",
      "url": "/source/federated-substrate-xananode.lineage/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://xananode.com/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_federated-substrate-xananode.lineage.json"
    },
    {
      "id": "xananode.canonical:source/federated-substrate-xananode.mobile",
      "protocol_id": "xananode.canonical:source/federated-substrate-xananode.mobile",
      "title": "XanaNode Mobile Substrate",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A substrate source built directly from the XanaNode Mobile repository, preserving the mobile application's identity, capture workflows, and key documents while carrying lower-level implementation files as attached assets unless they have independent semantic weight.",
      "content": "A substrate source built directly from the XanaNode Mobile repository, preserving the mobile application's identity, capture workflows, and key documents while carrying lower-level implementation files as attached assets unless they have independent semantic weight.",
      "html": "<p>A substrate source built directly from the XanaNode Mobile repository, preserving the mobile application&#39;s identity, capture workflows, and key documents while carrying lower-level implementation files as attached assets unless they have independent semantic weight.</p>",
      "url": "/source/federated-substrate-xananode.mobile/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://xananode.com/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_federated-substrate-xananode.mobile.json"
    },
    {
      "id": "xananode.canonical:source/federated-substrate-xananode.protocol",
      "protocol_id": "xananode.canonical:source/federated-substrate-xananode.protocol",
      "title": "XanaNode Protocol Substrate",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 5,
      "summary": "A substrate source built directly from the XanaNode Protocol repository, preserving the protocol's schemas, registries, specs, governance artifacts, and canonical documents while carrying lower-level repository files as attached assets when they do not deserve independent node status.",
      "content": "A substrate source built directly from the XanaNode Protocol repository, preserving the protocol's schemas, registries, specs, governance artifacts, and canonical documents while carrying lower-level repository files as attached assets when they do not deserve independent node status.",
      "html": "<p>A substrate source built directly from the XanaNode Protocol repository, preserving the protocol&#39;s schemas, registries, specs, governance artifacts, and canonical documents while carrying lower-level repository files as attached assets when they do not deserve independent node status.</p>",
      "url": "/source/federated-substrate-xananode.protocol/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://xananode.com/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_federated-substrate-xananode.protocol.json"
    },
    {
      "id": "xananode.canonical:source/federated-substrate-xananode.studio",
      "protocol_id": "xananode.canonical:source/federated-substrate-xananode.studio",
      "title": "XanaNode Studio Substrate",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A substrate source built directly from the XanaNode Studio repository, preserving the Studio application identity, major authoring artifacts, and key documents while carrying lower-level implementation files as attached assets unless they are independently citable or governable.",
      "content": "A substrate source built directly from the XanaNode Studio repository, preserving the Studio application identity, major authoring artifacts, and key documents while carrying lower-level implementation files as attached assets unless they are independently citable or governable.",
      "html": "<p>A substrate source built directly from the XanaNode Studio repository, preserving the Studio application identity, major authoring artifacts, and key documents while carrying lower-level implementation files as attached assets unless they are independently citable or governable.</p>",
      "url": "/source/federated-substrate-xananode.studio/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://xananode.com/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_federated-substrate-xananode.studio.json"
    },
    {
      "id": "xananode.canonical:source/federated-substrate-xananode.workspace",
      "protocol_id": "xananode.canonical:source/federated-substrate-xananode.workspace",
      "title": "XanaNode Workspace Substrate",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A substrate source built directly from the XanaNode Workspace repository, preserving the workspace engine, CLI surface, templates, packaged executable artifacts, and key documents while carrying lower-level repository files as attached assets unless they merit their own nodes.",
      "content": "A substrate source built directly from the XanaNode Workspace repository, preserving the workspace engine, CLI surface, templates, packaged executable artifacts, and key documents while carrying lower-level repository files as attached assets unless they merit their own nodes.",
      "html": "<p>A substrate source built directly from the XanaNode Workspace repository, preserving the workspace engine, CLI surface, templates, packaged executable artifacts, and key documents while carrying lower-level repository files as attached assets unless they merit their own nodes.</p>",
      "url": "/source/federated-substrate-xananode.workspace/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://xananode.com/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_federated-substrate-xananode.workspace.json"
    },
    {
      "id": "xananode.canonical:source/github-profile",
      "protocol_id": "xananode.canonical:source/github-profile",
      "title": "GitHub Profile",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "The public GitHub profile collecting XanaNode development activity and repositories.",
      "content": "The public GitHub profile collecting XanaNode development activity and repositories.",
      "html": "<p>The public GitHub profile collecting XanaNode development activity and repositories.</p>",
      "url": "/source/github-profile/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_github-profile.json"
    },
    {
      "id": "xananode.canonical:source/gpl-3-0-license",
      "protocol_id": "xananode.canonical:source/gpl-3-0-license",
      "title": "GNU General Public License 3.0",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A strong copyleft open source license included as a comparative licensing concept.",
      "content": "A strong copyleft open source license included as a comparative licensing concept.",
      "html": "<p>A strong copyleft open source license included as a comparative licensing concept.</p>",
      "url": "/source/gpl-3-0-license/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://www.gnu.org/licenses/gpl-3.0.en.html",
      "license": "GPL-3.0",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_gpl-3-0-license.json"
    },
    {
      "id": "xananode.canonical:source/hugo-official-site",
      "protocol_id": "xananode.canonical:source/hugo-official-site",
      "title": "Hugo Official Site",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "The official website and documentation source for Hugo.",
      "content": "The official website and documentation source for Hugo.",
      "html": "<p>The official website and documentation source for Hugo.</p>",
      "url": "/source/hugo-official-site/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://gohugo.io/",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_hugo-official-site.json"
    },
    {
      "id": "xananode.canonical:source/mit-license",
      "protocol_id": "xananode.canonical:source/mit-license",
      "title": "MIT License",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A widely used permissive open source license included as a comparative licensing concept.",
      "content": "A widely used permissive open source license included as a comparative licensing concept.",
      "html": "<p>A widely used permissive open source license included as a comparative licensing concept.</p>",
      "url": "/source/mit-license/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://opensource.org/license/mit/",
      "license": "MIT",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_mit-license.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-examples-federation-example-readme.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-examples-federation-example-readme.md",
      "title": "Examples / Federation Example / README",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "The README for Examples / Federation Example.",
      "content": "# Federation Example\n\nThis example shows how two independently authored substrates can be compared and partially merged without forcing a single source of truth.\n\n- `substrate-a/` models \"knowledge substrate\" as a concept.\n- `substrate-b/` models \"memory substrate\" as a similar concept.\n- `review-workspace/` shows the temporary mounted review state where both concepts stay visible together with their possible-match overlap.\n- each substrate records an outbound `possible_match` relationship to the other substrate's local concept.\n- `merge-report.json` records the result of a federation/merge pass, including the decision to preserve both local concepts instead of collapsing them.\n- `compatibility-report.json` records the practical compatibility level reached by the example.\n- `substrate-diff.json` shows the exact node and relationship additions that appear when the two substrates are analyzed together.\n\nThe merge report does not overwrite either substrate. It records a reviewable mapping, keeps both local nodes intact, and makes the overlap explicit enough for tools to compare, mount, inspect, or later merge with human approval. The review workspace exists so the example does not stop at prose about merge behavior; it also shows an openable temporary substrate where the overlap is already visible.\n",
      "html": "<p># Federation Example</p>\n<p>This example shows how two independently authored substrates can be compared and partially merged without forcing a single source of truth.</p>\n<ul><li><code>substrate-a/</code> models &quot;knowledge substrate&quot; as a concept.</li><li><code>substrate-b/</code> models &quot;memory substrate&quot; as a similar concept.</li><li><code>review-workspace/</code> shows the temporary mounted review state where both concepts stay visible together with their possible-match overlap.</li><li>each substrate records an outbound <code>possible_match</code> relationship to the other substrate&#39;s local concept.</li><li><code>merge-report.json</code> records the result of a federation/merge pass, including the decision to preserve both local concepts instead of collapsing them.</li><li><code>compatibility-report.json</code> records the practical compatibility level reached by the example.</li><li><code>substrate-diff.json</code> shows the exact node and relationship additions that appear when the two substrates are analyzed together.</li></ul>\n<p>The merge report does not overwrite either substrate. It records a reviewable mapping, keeps both local nodes intact, and makes the overlap explicit enough for tools to compare, mount, inspect, or later merge with human approval. The review workspace exists so the example does not stop at prose about merge behavior; it also shows an openable temporary substrate where the overlap is already visible.</p>",
      "url": "/source/protocol-artifact-examples-federation-example-readme.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/README.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-examples-federation-example-readme.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-examples-federation-example-review-workspace-readme.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-examples-federation-example-review-workspace-readme.md",
      "title": "Examples / Federation Example / Review Workspace / README",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "The README for Examples / Federation Example / Review Workspace.",
      "content": "# Federation Review Workspace\n\nThis example is the temporary review view a XanaNode tool can expose after mounting both federation example substrates together.\n\n- It keeps `example.researcher_a:concept/knowledge-substrate` and `example.researcher_b:concept/memory-substrate` as separate nodes.\n- It makes their `possible_match` overlap visible instead of silently collapsing them.\n- It adds a short trail and review concept so the mounted result can be opened as a real substrate, not only read as reports.\n\nThis is not the only possible review projection. It is one valid example of the non-destructive merge state that sits between \"independently authored substrates\" and \"human-approved permanent merge.\"\n",
      "html": "<p># Federation Review Workspace</p>\n<p>This example is the temporary review view a XanaNode tool can expose after mounting both federation example substrates together.</p>\n<ul><li>It keeps <code>example.researcher_a:concept/knowledge-substrate</code> and <code>example.researcher_b:concept/memory-substrate</code> as separate nodes.</li><li>It makes their <code>possible_match</code> overlap visible instead of silently collapsing them.</li><li>It adds a short trail and review concept so the mounted result can be opened as a real substrate, not only read as reports.</li></ul>\n<p>This is not the only possible review projection. It is one valid example of the non-destructive merge state that sits between &quot;independently authored substrates&quot; and &quot;human-approved permanent merge.&quot;</p>",
      "url": "/source/protocol-artifact-examples-federation-example-review-workspace-readme.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/review-workspace/README.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-examples-federation-example-review-workspace-readme.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-examples-federation-example-substrate-a-readme.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-examples-federation-example-substrate-a-readme.md",
      "title": "Examples / Federation Example / Substrate A / README",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "The README for Examples / Federation Example / Substrate A.",
      "content": "# substrate-a\n\nAn independently authored substrate using namespace `example.researcher_a`.\n\nThis substrate intentionally overlaps with the other example substrate without using identical node IDs.\n",
      "html": "<p># substrate-a</p>\n<p>An independently authored substrate using namespace <code>example.researcher_a</code>.</p>\n<p>This substrate intentionally overlaps with the other example substrate without using identical node IDs.</p>",
      "url": "/source/protocol-artifact-examples-federation-example-substrate-a-readme.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/substrate-a/README.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-examples-federation-example-substrate-a-readme.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-examples-federation-example-substrate-b-readme.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-examples-federation-example-substrate-b-readme.md",
      "title": "Examples / Federation Example / Substrate B / README",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "The README for Examples / Federation Example / Substrate B.",
      "content": "# substrate-b\n\nAn independently authored substrate using namespace `example.researcher_b`.\n\nThis substrate intentionally overlaps with the other example substrate without using identical node IDs.\n",
      "html": "<p># substrate-b</p>\n<p>An independently authored substrate using namespace <code>example.researcher_b</code>.</p>\n<p>This substrate intentionally overlaps with the other example substrate without using identical node IDs.</p>",
      "url": "/source/protocol-artifact-examples-federation-example-substrate-b-readme.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/federation-example/substrate-b/README.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-examples-federation-example-substrate-b-readme.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-examples-minimal-substrate-nodes-readme.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-examples-minimal-substrate-nodes-readme.md",
      "title": "Examples / Minimal Substrate / Nodes / README",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "The README for Examples / Minimal Substrate / Nodes.",
      "content": "# Nodes\n\nEach file in this directory is a node.\n\nEvery node in this example includes relationship references. This is intentional: the example should demonstrate a connected substrate, not just isolated nodes plus a trail.\n\nThe canonical relationship list lives in `../relationships.json`.\n",
      "html": "<p># Nodes</p>\n<p>Each file in this directory is a node.</p>\n<p>Every node in this example includes relationship references. This is intentional: the example should demonstrate a connected substrate, not just isolated nodes plus a trail.</p>\n<p>The canonical relationship list lives in <code>../relationships.json</code>.</p>",
      "url": "/source/protocol-artifact-examples-minimal-substrate-nodes-readme.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/nodes/README.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-examples-minimal-substrate-nodes-readme.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-examples-minimal-substrate-readme.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-examples-minimal-substrate-readme.md",
      "title": "Examples / Minimal Substrate / README",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "The README for Examples / Minimal Substrate.",
      "content": "# Minimal XanaNode Substrate Example\r\n\r\nThis is the smallest useful XanaNode substrate that still follows the core rule:\r\n\r\n> Nodes should not float as isolated facts. Concepts are built from claims, claims are supported by sources, and trails are curated routes through an already-connected graph.\r\n\r\nThis example uses only canonical XanaNode Core node types:\r\n\r\n- `source`\r\n- `concept`\r\n- `claim`\r\n- `person`\r\n- `essay`\r\n- `fragment`\r\n- `trail`\r\n\r\nIt also uses canonical relationship types:\r\n\r\n- `supports`\r\n- `discusses`\r\n- `related_to`\r\n- `defines`\r\n- `has_claim`\r\n- `starts_with`\r\n- `continues_to`\r\n- `features`\r\n- `created`\r\n- `derived_from`\r\n- `transcludes`\r\n\r\n## What this example demonstrates\r\n\r\nThe graph is intentionally tiny, but it is not just a bag of nodes.\r\n\r\n```text\r\nAs We May Think\r\n  supports\r\n    A knowledge substrate is structure, not just information\r\n      defines\r\n        Knowledge Substrate\r\n\r\nAs We May Think\r\n  discusses\r\n    Associative Trails\r\n      related_to\r\n        Knowledge Substrate\r\n\r\nStart Here\r\n  starts_with\r\n    As We May Think\r\n\r\nRelationship Navigation Intro\r\n  transcludes\r\n    As We May Think Fragment 0004\r\n```\r\n\r\n## Why the relationships matter\r\n\r\nA normal hyperlink can show that the source, claim, and concept are somehow related.\r\n\r\nXanaNode requires the relationship to say **how** they are related:\r\n\r\n- The source `supports` the claim.\r\n- The claim `defines` the concept.\r\n- The concept `has_claim` so it is not unsupported.\r\n- The source `discusses` associative trails.\r\n- Associative trails are `related_to` the knowledge substrate as historical and conceptual context.\r\n- The trail provides a human reading route, but it is not the only connection.\r\n- The essay `transcludes` a fragment using the versioned tumbler address `example.minimal:source/as-we-may-think@git:8e47e70:examples/minimal-substrate/nodes/source-as-we-may-think.json#fragment/0004@sha256:example-as-we-may-think-fragment-0004`.\n\r\n## Files\r\n\r\n- `substrate.json` declares the substrate namespace and schema version.\r\n- `relationships.json` declares canonical typed edges.\r\n- `nodes/*.json` are individually addressable nodes with relationship references.\r\n",
      "html": "<p># Minimal XanaNode Substrate Example</p>\n<p>This is the smallest useful XanaNode substrate that still follows the core rule:</p>\n<blockquote><p>Nodes should not float as isolated facts. Concepts are built from claims, claims are supported by sources, and trails are curated routes through an already-connected graph.</p></blockquote>\n<p>This example uses only canonical XanaNode Core node types:</p>\n<ul><li><code>source</code></li><li><code>concept</code></li><li><code>claim</code></li><li><code>person</code></li><li><code>essay</code></li><li><code>fragment</code></li><li><code>trail</code></li></ul>\n<p>It also uses canonical relationship types:</p>\n<ul><li><code>supports</code></li><li><code>discusses</code></li><li><code>related_to</code></li><li><code>defines</code></li><li><code>has_claim</code></li><li><code>starts_with</code></li><li><code>continues_to</code></li><li><code>features</code></li><li><code>created</code></li><li><code>derived_from</code></li><li><code>transcludes</code></li></ul>\n<h2>What this example demonstrates</h2>\n<p>The graph is intentionally tiny, but it is not just a bag of nodes.</p>\n<p>```text As We May Think supports A knowledge substrate is structure, not just information defines Knowledge Substrate</p>\n<p>As We May Think discusses Associative Trails related_to Knowledge Substrate</p>\n<p>Start Here starts_with As We May Think</p>\n<p>Relationship Navigation Intro transcludes As We May Think Fragment 0004 ```</p>\n<h2>Why the relationships matter</h2>\n<p>A normal hyperlink can show that the source, claim, and concept are somehow related.</p>\n<p>XanaNode requires the relationship to say **how** they are related:</p>\n<ul><li>The source <code>supports</code> the claim.</li><li>The claim <code>defines</code> the concept.</li><li>The concept <code>has_claim</code> so it is not unsupported.</li><li>The source <code>discusses</code> associative trails.</li><li>Associative trails are <code>related_to</code> the knowledge substrate as historical and conceptual context.</li><li>The trail provides a human reading route, but it is not the only connection.</li><li>The essay <code>transcludes</code> a fragment using the versioned tumbler address <code>example.minimal:source/as-we-may-think@git:8e47e70:examples/minimal-substrate/nodes/source-as-we-may-think.json#fragment/0004@sha256:example-as-we-may-think-fragment-0004</code>.</li></ul>\n<h2>Files</h2>\n<ul><li><code>substrate.json</code> declares the substrate namespace and schema version.</li><li><code>relationships.json</code> declares canonical typed edges.</li><li><code>nodes/*.json</code> are individually addressable nodes with relationship references.</li></ul>",
      "url": "/source/protocol-artifact-examples-minimal-substrate-readme.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/minimal-substrate/README.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-examples-minimal-substrate-readme.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-examples-readme.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-examples-readme.md",
      "title": "Examples / README",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "The README for Examples.",
      "content": "# XanaNode Examples\n\nThese examples are protocol examples, not full applications.\n\nThey show how a substrate can declare a namespace, define nodes, create typed relationships, and produce a federation merge report.\n\n## Examples\n\n- `minimal-substrate/` - the smallest useful XanaNode substrate.\n- `federation-example/` - two independently authored substrates plus a merge report.\n\nThe examples intentionally use JSON files instead of a specific CMS, static-site generator, database, or graph renderer. Implementations may store the same structures in Markdown front matter, a database, RDF, graph stores, or other formats.\n",
      "html": "<p># XanaNode Examples</p>\n<p>These examples are protocol examples, not full applications.</p>\n<p>They show how a substrate can declare a namespace, define nodes, create typed relationships, and produce a federation merge report.</p>\n<h2>Examples</h2>\n<ul><li><code>minimal-substrate/</code> - the smallest useful XanaNode substrate.</li><li><code>federation-example/</code> - two independently authored substrates plus a merge report.</li></ul>\n<p>The examples intentionally use JSON files instead of a specific CMS, static-site generator, database, or graph renderer. Implementations may store the same structures in Markdown front matter, a database, RDF, graph stores, or other formats.</p>",
      "url": "/source/protocol-artifact-examples-readme.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/examples/README.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-examples-readme.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-governance-canonical-type-policy.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-governance-canonical-type-policy.md",
      "title": "Governance / Canonical Type Policy",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A governance document covering Canonical Type Policy.",
      "content": "# Canonical Type Policy\n\nCanonical types are the shared vocabulary that make independent XanaNode substrates interoperable.\n\nA type should become canonical only when it is:\n\n- broadly useful across many domains\n- clearly distinguishable from existing types\n- describable in plain language\n- stable enough to validate\n- useful to both humans and machines\n\nAvoid adding canonical types for every domain-specific object. Prefer subtypes or namespaced extensions.\n\n## Projection Style Governance\n\nCanonical relationship types include visual projection metadata. Every canonical relationship type must define:\n\n- `color`\n- `inverse_color`\n- `line_style`\n- `inverse_line_style`\n\nThese values are part of the shared vocabulary. Renderers use them to stratify connective lines so relationship meaning remains visible in graph projections, trails, maps, and other views.\n\nImplementations may adapt the exact rendered appearance for accessibility, contrast, print, color-blind themes, or device constraints, but they should not collapse all relationship types into one undifferentiated line treatment while claiming full protocol projection compliance.\n\n## Multi-Role Node Projection\n\nThe primary node `type` remains the authoritative validation and routing category. Secondary roles belong in `facets`, and narrower labels belong in `subtype` or `subtypes`.\n\nProjection layers should preserve visible evidence of every recognized role. When a node has facets that match known node types, the projected mark should mix the primary type color with the facet type colors. Slices, rings, bands, layered borders, or another accessible mixed treatment are all valid. The important governance rule is that the projection must not silently flatten a multi-role node into one color when the substrate says the node participates in several modeling categories.\n\nSchema vocabulary terms, schema fields, property registry entries, relationship categories, subtype entries, governance rules, and projection style rules should be modeled as `schema` nodes with specific subtypes. Those terms are part of the substrate vocabulary, not private implementation comments.\n\n## Canonical vs Extension\n\nUse canonical types for common substrate structure.\n\nUse extensions for domain-specific modeling.\n\nExample:\n\n- `xananode:media` should be canonical.\n- `museum:artifact` should be an extension.\n- `biology:species` should be an extension unless future adoption proves otherwise.\n",
      "html": "<p># Canonical Type Policy</p>\n<p>Canonical types are the shared vocabulary that make independent XanaNode substrates interoperable.</p>\n<p>A type should become canonical only when it is:</p>\n<ul><li>broadly useful across many domains</li><li>clearly distinguishable from existing types</li><li>describable in plain language</li><li>stable enough to validate</li><li>useful to both humans and machines</li></ul>\n<p>Avoid adding canonical types for every domain-specific object. Prefer subtypes or namespaced extensions.</p>\n<h2>Projection Style Governance</h2>\n<p>Canonical relationship types include visual projection metadata. Every canonical relationship type must define:</p>\n<ul><li><code>color</code></li><li><code>inverse_color</code></li><li><code>line_style</code></li><li><code>inverse_line_style</code></li></ul>\n<p>These values are part of the shared vocabulary. Renderers use them to stratify connective lines so relationship meaning remains visible in graph projections, trails, maps, and other views.</p>\n<p>Implementations may adapt the exact rendered appearance for accessibility, contrast, print, color-blind themes, or device constraints, but they should not collapse all relationship types into one undifferentiated line treatment while claiming full protocol projection compliance.</p>\n<h2>Multi-Role Node Projection</h2>\n<p>The primary node <code>type</code> remains the authoritative validation and routing category. Secondary roles belong in <code>facets</code>, and narrower labels belong in <code>subtype</code> or <code>subtypes</code>.</p>\n<p>Projection layers should preserve visible evidence of every recognized role. When a node has facets that match known node types, the projected mark should mix the primary type color with the facet type colors. Slices, rings, bands, layered borders, or another accessible mixed treatment are all valid. The important governance rule is that the projection must not silently flatten a multi-role node into one color when the substrate says the node participates in several modeling categories.</p>\n<p>Schema vocabulary terms, schema fields, property registry entries, relationship categories, subtype entries, governance rules, and projection style rules should be modeled as <code>schema</code> nodes with specific subtypes. Those terms are part of the substrate vocabulary, not private implementation comments.</p>\n<h2>Canonical vs Extension</h2>\n<p>Use canonical types for common substrate structure.</p>\n<p>Use extensions for domain-specific modeling.</p>\n<p>Example:</p>\n<ul><li><code>xananode:media</code> should be canonical.</li><li><code>museum:artifact</code> should be an extension.</li><li><code>biology:species</code> should be an extension unless future adoption proves otherwise.</li></ul>",
      "url": "/source/protocol-artifact-governance-canonical-type-policy.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/governance/canonical-type-policy.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-governance-canonical-type-policy.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-governance-dispute-resolution.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-governance-dispute-resolution.md",
      "title": "Governance / Dispute Resolution",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A governance document covering Dispute Resolution.",
      "content": "# Dispute Resolution\n\nXanaNode treats disputes as knowledge, not merely failure.\n\nA disputed claim should remain visible when appropriate, along with:\n\n- who disputes it\n- what evidence supports it\n- what counterevidence challenges it\n- what assumptions differ\n- what sources are involved\n\nDisputes can be represented with relationships such as:\n\n- `contradicts`\n- `contradicted_by`\n- `disputes`\n- `disputed_by`\n- `alternative_to`\n- `possible_match`\n- `disputed_identity`\n\nThe goal is not instant consensus. The goal is navigable uncertainty.\n",
      "html": "<p># Dispute Resolution</p>\n<p>XanaNode treats disputes as knowledge, not merely failure.</p>\n<p>A disputed claim should remain visible when appropriate, along with:</p>\n<ul><li>who disputes it</li><li>what evidence supports it</li><li>what counterevidence challenges it</li><li>what assumptions differ</li><li>what sources are involved</li></ul>\n<p>Disputes can be represented with relationships such as:</p>\n<ul><li><code>contradicts</code></li><li><code>contradicted_by</code></li><li><code>disputes</code></li><li><code>disputed_by</code></li><li><code>alternative_to</code></li><li><code>possible_match</code></li><li><code>disputed_identity</code></li></ul>\n<p>The goal is not instant consensus. The goal is navigable uncertainty.</p>",
      "url": "/source/protocol-artifact-governance-dispute-resolution.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/governance/dispute-resolution.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-governance-dispute-resolution.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-governance-federation-rules.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-governance-federation-rules.md",
      "title": "Governance / Federation Rules",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A governance document covering Federation Rules.",
      "content": "# Federation Rules\n\nFederation connects independently authored substrates without forcing one source of truth.\n\nA federation process should:\n\n1. Load each substrate manifest.\n2. Resolve each substrate's Git repository metadata.\n3. Validate each substrate against declared schemas.\n4. Preserve original node IDs and namespaces.\n5. Detect likely overlaps.\n6. Generate mapping relationships.\n7. Preserve conflicts and uncertainty.\n8. Avoid destructive merging.\n\nFederation should create more knowledge, not erase local context.\n\n## Never Collapse by Default\n\nTwo nodes that look similar should not automatically become one node.\n\nPrefer:\n\n- `same_entity`\n- `possible_match`\n- `disputed_identity`\n- `equivalent_to`\n\ndepending on confidence and review status.\n",
      "html": "<p># Federation Rules</p>\n<p>Federation connects independently authored substrates without forcing one source of truth.</p>\n<p>A federation process should:</p>\n<p>1. Load each substrate manifest. 2. Resolve each substrate&#39;s Git repository metadata. 3. Validate each substrate against declared schemas. 4. Preserve original node IDs and namespaces. 5. Detect likely overlaps. 6. Generate mapping relationships. 7. Preserve conflicts and uncertainty. 8. Avoid destructive merging.</p>\n<p>Federation should create more knowledge, not erase local context.</p>\n<h2>Never Collapse by Default</h2>\n<p>Two nodes that look similar should not automatically become one node.</p>\n<p>Prefer:</p>\n<ul><li><code>same_entity</code></li><li><code>possible_match</code></li><li><code>disputed_identity</code></li><li><code>equivalent_to</code></li></ul>\n<p>depending on confidence and review status.</p>",
      "url": "/source/protocol-artifact-governance-federation-rules.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/governance/federation-rules.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-governance-federation-rules.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-governance-moderation-model.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-governance-moderation-model.md",
      "title": "Governance / Moderation Model",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A governance document covering Moderation Model.",
      "content": "# Moderation Model\n\nXanaNode does not require one universal moderation authority.\n\nEach substrate controls its own moderation rules.\n\nFederation allows independently moderated substrates to be analyzed together while preserving their local decisions.\n\nA substrate may choose to:\n\n- approve nodes\n- reject nodes\n- deprecate claims\n- preserve disputed claims\n- hide low-confidence relationships\n- publish merge reports\n\nModeration actions should themselves be traceable whenever possible.\n",
      "html": "<p># Moderation Model</p>\n<p>XanaNode does not require one universal moderation authority.</p>\n<p>Each substrate controls its own moderation rules.</p>\n<p>Federation allows independently moderated substrates to be analyzed together while preserving their local decisions.</p>\n<p>A substrate may choose to:</p>\n<ul><li>approve nodes</li><li>reject nodes</li><li>deprecate claims</li><li>preserve disputed claims</li><li>hide low-confidence relationships</li><li>publish merge reports</li></ul>\n<p>Moderation actions should themselves be traceable whenever possible.</p>",
      "url": "/source/protocol-artifact-governance-moderation-model.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/governance/moderation-model.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-governance-moderation-model.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-governance-readme.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-governance-readme.md",
      "title": "Governance / README",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A governance document covering README.",
      "content": "# XanaNode Governance\n\nXanaNode governance defines how the protocol evolves while allowing independent substrates to remain sovereign.\n\nThe governance model is intentionally minimal:\n\n1. Maintain a small stable core.\n2. Allow namespaced extensions.\n3. Preserve disagreement rather than deleting it.\n4. Treat mappings, disputes, and merge results as knowledge.\n5. Avoid centralizing truth in one moderation team.\n\nGovernance applies to the protocol repository. It does not dictate how every independent substrate must moderate its own content.\n",
      "html": "<p># XanaNode Governance</p>\n<p>XanaNode governance defines how the protocol evolves while allowing independent substrates to remain sovereign.</p>\n<p>The governance model is intentionally minimal:</p>\n<p>1. Maintain a small stable core. 2. Allow namespaced extensions. 3. Preserve disagreement rather than deleting it. 4. Treat mappings, disputes, and merge results as knowledge. 5. Avoid centralizing truth in one moderation team.</p>\n<p>Governance applies to the protocol repository. It does not dictate how every independent substrate must moderate its own content.</p>",
      "url": "/source/protocol-artifact-governance-readme.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/governance/README.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-governance-readme.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-governance-schema-extension-rules.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-governance-schema-extension-rules.md",
      "title": "Governance / Schema Extension Rules",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A governance document covering Schema Extension Rules.",
      "content": "# Schema Extension Rules\n\nSubstrates may define custom node and relationship types.\n\nCustom types must be:\n\n- namespaced\n- versioned\n- human-readable\n- machine-readable\n- preserved even when not understood\n- optionally mapped to a core type\n\nA valid extension should include:\n\n- `id`\n- `namespace`\n- `type`\n- `label`\n- `purpose` or `meaning`\n- `core: false`\n- optional `extends`\n\nUnknown extension types should not break import. They should be marked opaque and preserved.\n",
      "html": "<p># Schema Extension Rules</p>\n<p>Substrates may define custom node and relationship types.</p>\n<p>Custom types must be:</p>\n<ul><li>namespaced</li><li>versioned</li><li>human-readable</li><li>machine-readable</li><li>preserved even when not understood</li><li>optionally mapped to a core type</li></ul>\n<p>A valid extension should include:</p>\n<ul><li><code>id</code></li><li><code>namespace</code></li><li><code>type</code></li><li><code>label</code></li><li><code>purpose</code> or <code>meaning</code></li><li><code>core: false</code></li><li>optional <code>extends</code></li></ul>\n<p>Unknown extension types should not break import. They should be marked opaque and preserved.</p>",
      "url": "/source/protocol-artifact-governance-schema-extension-rules.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/governance/schema-extension-rules.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-governance-schema-extension-rules.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-governance-versioning-policy.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-governance-versioning-policy.md",
      "title": "Governance / Versioning Policy",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A governance document covering Versioning Policy.",
      "content": "# Versioning Policy\n\nXanaNode protocol files use semantic versioning where practical.\n\n- Patch versions fix wording or validation mistakes.\n- Minor versions add compatible types, fields, or examples.\n- Major versions change compatibility expectations.\n\nSchemas should be versioned independently from individual substrates.\n\nSubstrates should declare which core schema version they target.\n\nSubstrate history should be tracked in Git. Protocol version fields describe schema compatibility; Git commits describe concrete substrate revisions.\n\nExample:\n\n```json\n{\n  \"schema_version\": \"xananode-core@0.5.0\"\n}\n```\n\nBreaking changes should go through the proposal process.\n",
      "html": "<p># Versioning Policy</p>\n<p>XanaNode protocol files use semantic versioning where practical.</p>\n<ul><li>Patch versions fix wording or validation mistakes.</li><li>Minor versions add compatible types, fields, or examples.</li><li>Major versions change compatibility expectations.</li></ul>\n<p>Schemas should be versioned independently from individual substrates.</p>\n<p>Substrates should declare which core schema version they target.</p>\n<p>Substrate history should be tracked in Git. Protocol version fields describe schema compatibility; Git commits describe concrete substrate revisions.</p>\n<p>Example:</p>\n<p>``<code>json { &quot;schema_version&quot;: &quot;xananode-core@0.5.0&quot; } </code>``</p>\n<p>Breaking changes should go through the proposal process.</p>",
      "url": "/source/protocol-artifact-governance-versioning-policy.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/governance/versioning-policy.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-governance-versioning-policy.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-license.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-license.md",
      "title": "XanaNode Protocol License",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "The license document describing how XanaNode protocol materials may be used and shared.",
      "content": "# XanaNode Protocol Licensing\n\nXanaNode uses a split license model.\n\n## Documentation\n\nProtocol documentation, explanatory text, specifications, governance text, proposals, examples, and README files are licensed under:\n\n`CC-BY-4.0`\n\nYou may share and adapt the documentation with attribution.\n\n## Schemas, Validators, And Reference Code\n\nJSON Schemas, schema registries, validators, tooling, examples intended as machine-readable fixtures, and reference implementation code are licensed under:\n\n`Apache-2.0`\n\nYou may use, modify, distribute, and implement these artifacts under the Apache License 2.0.\n\n## Trademarks\n\nThe XanaNode name, XanaNode logo, and related brand assets are trademarks or trade dress of the XanaNode project. License grants for documentation, schemas, validators, and code do not grant trademark rights.\n\nSee [TRADEMARK.md](TRADEMARK.md).\n\n",
      "html": "<p># XanaNode Protocol Licensing</p>\n<p>XanaNode uses a split license model.</p>\n<h2>Documentation</h2>\n<p>Protocol documentation, explanatory text, specifications, governance text, proposals, examples, and README files are licensed under:</p>\n<p><code>CC-BY-4.0</code></p>\n<p>You may share and adapt the documentation with attribution.</p>\n<h2>Schemas, Validators, And Reference Code</h2>\n<p>JSON Schemas, schema registries, validators, tooling, examples intended as machine-readable fixtures, and reference implementation code are licensed under:</p>\n<p><code>Apache-2.0</code></p>\n<p>You may use, modify, distribute, and implement these artifacts under the Apache License 2.0.</p>\n<h2>Trademarks</h2>\n<p>The XanaNode name, XanaNode logo, and related brand assets are trademarks or trade dress of the XanaNode project. License grants for documentation, schemas, validators, and code do not grant trademark rights.</p>\n<p>See <a href=\"TRADEMARK.md\">TRADEMARK.md</a>.</p>",
      "url": "/source/protocol-artifact-license.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/LICENSE.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-license.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-notice",
      "protocol_id": "xananode.canonical:source/protocol-artifact-notice",
      "title": "XanaNode Protocol Notice",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "The notice file summarizing protocol copyright, licensing, and trademark attribution.",
      "content": "XanaNode Protocol\n\nCopyright 2026 Christian Siefen and contributors.\n\nDocumentation is licensed under CC-BY-4.0.\nSchemas, validators, and reference code are licensed under Apache-2.0.\n\nXanaNode and the XanaNode logo are trademarks of the XanaNode project.\n\n",
      "html": "<p>XanaNode Protocol</p>\n<p>Copyright 2026 Christian Siefen and contributors.</p>\n<p>Documentation is licensed under CC-BY-4.0. Schemas, validators, and reference code are licensed under Apache-2.0.</p>\n<p>XanaNode and the XanaNode logo are trademarks of the XanaNode project.</p>",
      "url": "/source/protocol-artifact-notice/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/NOTICE",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-notice.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-proposals-readme.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-proposals-readme.md",
      "title": "Proposals / README",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A XanaNode proposal covering README.",
      "content": "# XanaNode Proposals\n\nXanaNode Proposals, or XNPs, are design records for protocol changes.\n\nUse proposals for changes that affect:\n\n- canonical schemas\n- federation behavior\n- namespace rules\n- compatibility levels\n- transclusion\n- tumbler addressing\n- Git-backed substrates\n- derived inverse relationships\n- standards alignment profiles\n- federation discovery and trust\n- Studio local-first authoring\n- governance\n\nProposal statuses:\n\n- Draft\n- Review\n- Accepted\n- Rejected\n- Superseded\n- Experimental\n",
      "html": "<p># XanaNode Proposals</p>\n<p>XanaNode Proposals, or XNPs, are design records for protocol changes.</p>\n<p>Use proposals for changes that affect:</p>\n<ul><li>canonical schemas</li><li>federation behavior</li><li>namespace rules</li><li>compatibility levels</li><li>transclusion</li><li>tumbler addressing</li><li>Git-backed substrates</li><li>derived inverse relationships</li><li>standards alignment profiles</li><li>federation discovery and trust</li><li>Studio local-first authoring</li><li>governance</li></ul>\n<p>Proposal statuses:</p>\n<ul><li>Draft</li><li>Review</li><li>Accepted</li><li>Rejected</li><li>Superseded</li><li>Experimental</li></ul>",
      "url": "/source/protocol-artifact-proposals-readme.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/proposals/README.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-proposals-readme.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0001-namespaces.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0001-namespaces.md",
      "title": "Proposals / XNP 0001 Namespaces",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A XanaNode proposal covering XNP 0001 Namespaces.",
      "content": "# XNP-0001: Namespaces\n\nStatus: Accepted\n\n## Summary\n\nDefines how substrates and extension schemas avoid ID collisions.\n\n## Motivation\n\nXanaNode aims to support independently authored knowledge substrates that can later interoperate. This proposal records the design expectations for namespaces so implementations can converge without requiring centralized control.\n\n## Requirements\n\n- Must remain human-readable.\n- Must remain machine-interpretable.\n- Must preserve provenance.\n- Must avoid destructive merging.\n- Must allow independent substrate ownership.\n\n## Open Questions\n\n- What is the smallest useful implementation?\n- Which parts are required for compatibility?\n- Which parts should remain optional or experimental?\n",
      "html": "<p># XNP-0001: Namespaces</p>\n<p>Status: Accepted</p>\n<h2>Summary</h2>\n<p>Defines how substrates and extension schemas avoid ID collisions.</p>\n<h2>Motivation</h2>\n<p>XanaNode aims to support independently authored knowledge substrates that can later interoperate. This proposal records the design expectations for namespaces so implementations can converge without requiring centralized control.</p>\n<h2>Requirements</h2>\n<ul><li>Must remain human-readable.</li><li>Must remain machine-interpretable.</li><li>Must preserve provenance.</li><li>Must avoid destructive merging.</li><li>Must allow independent substrate ownership.</li></ul>\n<h2>Open Questions</h2>\n<ul><li>What is the smallest useful implementation?</li><li>Which parts are required for compatibility?</li><li>Which parts should remain optional or experimental?</li></ul>",
      "url": "/source/protocol-artifact-proposals-xnp-0001-namespaces.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/proposals/XNP-0001-namespaces.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-proposals-xnp-0001-namespaces.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0002-extension-schemas.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0002-extension-schemas.md",
      "title": "Proposals / XNP 0002 Extension Schemas",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A XanaNode proposal covering XNP 0002 Extension Schemas.",
      "content": "# XNP-0002: Extension Schemas\n\nStatus: Accepted\n\n## Summary\n\nDefines how custom node and relationship types are declared.\n\n## Motivation\n\nXanaNode aims to support independently authored knowledge substrates that can later interoperate. This proposal records the design expectations for extension schemas so implementations can converge without requiring centralized control.\n\n## Requirements\n\n- Must remain human-readable.\n- Must remain machine-interpretable.\n- Must preserve provenance.\n- Must avoid destructive merging.\n- Must allow independent substrate ownership.\n\n## Open Questions\n\n- What is the smallest useful implementation?\n- Which parts are required for compatibility?\n- Which parts should remain optional or experimental?\n",
      "html": "<p># XNP-0002: Extension Schemas</p>\n<p>Status: Accepted</p>\n<h2>Summary</h2>\n<p>Defines how custom node and relationship types are declared.</p>\n<h2>Motivation</h2>\n<p>XanaNode aims to support independently authored knowledge substrates that can later interoperate. This proposal records the design expectations for extension schemas so implementations can converge without requiring centralized control.</p>\n<h2>Requirements</h2>\n<ul><li>Must remain human-readable.</li><li>Must remain machine-interpretable.</li><li>Must preserve provenance.</li><li>Must avoid destructive merging.</li><li>Must allow independent substrate ownership.</li></ul>\n<h2>Open Questions</h2>\n<ul><li>What is the smallest useful implementation?</li><li>Which parts are required for compatibility?</li><li>Which parts should remain optional or experimental?</li></ul>",
      "url": "/source/protocol-artifact-proposals-xnp-0002-extension-schemas.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/proposals/XNP-0002-extension-schemas.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-proposals-xnp-0002-extension-schemas.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0003-federation.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0003-federation.md",
      "title": "Proposals / XNP 0003 Federation",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A XanaNode proposal covering XNP 0003 Federation.",
      "content": "# XNP-0003: Federation\n\nStatus: Draft\n\n## Summary\n\nDefines how independently authored substrates can be analyzed together.\n\n## Motivation\n\nXanaNode aims to support independently authored knowledge substrates that can later interoperate. This proposal records the design expectations for federation so implementations can converge without requiring centralized control.\n\n## Requirements\n\n- Must remain human-readable.\n- Must remain machine-interpretable.\n- Must preserve provenance.\n- Must avoid destructive merging.\n- Must allow independent substrate ownership.\n\n## Open Questions\n\n- What is the smallest useful implementation?\n- Which parts are required for compatibility?\n- Which parts should remain optional or experimental?\n",
      "html": "<p># XNP-0003: Federation</p>\n<p>Status: Draft</p>\n<h2>Summary</h2>\n<p>Defines how independently authored substrates can be analyzed together.</p>\n<h2>Motivation</h2>\n<p>XanaNode aims to support independently authored knowledge substrates that can later interoperate. This proposal records the design expectations for federation so implementations can converge without requiring centralized control.</p>\n<h2>Requirements</h2>\n<ul><li>Must remain human-readable.</li><li>Must remain machine-interpretable.</li><li>Must preserve provenance.</li><li>Must avoid destructive merging.</li><li>Must allow independent substrate ownership.</li></ul>\n<h2>Open Questions</h2>\n<ul><li>What is the smallest useful implementation?</li><li>Which parts are required for compatibility?</li><li>Which parts should remain optional or experimental?</li></ul>",
      "url": "/source/protocol-artifact-proposals-xnp-0003-federation.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/proposals/XNP-0003-federation.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-proposals-xnp-0003-federation.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0004-merge-validation.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0004-merge-validation.md",
      "title": "Proposals / XNP 0004 Merge Validation",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A XanaNode proposal covering XNP 0004 Merge Validation.",
      "content": "# XNP-0004: Merge Validation\n\nStatus: Draft\n\n## Summary\n\nDefines merge reports and compatibility checks.\n\n## Motivation\n\nXanaNode aims to support independently authored knowledge substrates that can later interoperate. This proposal records the design expectations for merge validation so implementations can converge without requiring centralized control.\n\n## Requirements\n\n- Must remain human-readable.\n- Must remain machine-interpretable.\n- Must preserve provenance.\n- Must avoid destructive merging.\n- Must allow independent substrate ownership.\n\n## Open Questions\n\n- What is the smallest useful implementation?\n- Which parts are required for compatibility?\n- Which parts should remain optional or experimental?\n",
      "html": "<p># XNP-0004: Merge Validation</p>\n<p>Status: Draft</p>\n<h2>Summary</h2>\n<p>Defines merge reports and compatibility checks.</p>\n<h2>Motivation</h2>\n<p>XanaNode aims to support independently authored knowledge substrates that can later interoperate. This proposal records the design expectations for merge validation so implementations can converge without requiring centralized control.</p>\n<h2>Requirements</h2>\n<ul><li>Must remain human-readable.</li><li>Must remain machine-interpretable.</li><li>Must preserve provenance.</li><li>Must avoid destructive merging.</li><li>Must allow independent substrate ownership.</li></ul>\n<h2>Open Questions</h2>\n<ul><li>What is the smallest useful implementation?</li><li>Which parts are required for compatibility?</li><li>Which parts should remain optional or experimental?</li></ul>",
      "url": "/source/protocol-artifact-proposals-xnp-0004-merge-validation.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/proposals/XNP-0004-merge-validation.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-proposals-xnp-0004-merge-validation.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0005-transclusion.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0005-transclusion.md",
      "title": "Proposals / XNP 0005 Transclusion",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A XanaNode proposal covering XNP 0005 Transclusion.",
      "content": "# XNP-0005: Transclusion\r\n\r\nStatus: Experimental\r\n\r\n## Summary\r\n\r\nDefines inclusion by reference rather than copying.\r\n\r\nThe initial interoperable form uses a `transcludes` relationship from a consuming node to a fragment node with a stable `tumbler` address.\r\n\r\n## Motivation\r\n\r\nXanaNode aims to support independently authored knowledge substrates that can later interoperate. This proposal records the design expectations for transclusion so implementations can converge without requiring centralized control.\r\n\r\n## Requirements\r\n\r\n- Must remain human-readable.\r\n- Must remain machine-interpretable.\r\n- Must preserve provenance.\r\n- Must avoid destructive merging.\r\n- Must allow independent substrate ownership.\r\n\r\n## Open Questions\r\n\r\n- What is the smallest useful implementation?\r\n- Which parts are required for compatibility?\r\n- Which parts should remain optional or experimental?\r\n",
      "html": "<p># XNP-0005: Transclusion</p>\n<p>Status: Experimental</p>\n<h2>Summary</h2>\n<p>Defines inclusion by reference rather than copying.</p>\n<p>The initial interoperable form uses a <code>transcludes</code> relationship from a consuming node to a fragment node with a stable <code>tumbler</code> address.</p>\n<h2>Motivation</h2>\n<p>XanaNode aims to support independently authored knowledge substrates that can later interoperate. This proposal records the design expectations for transclusion so implementations can converge without requiring centralized control.</p>\n<h2>Requirements</h2>\n<ul><li>Must remain human-readable.</li><li>Must remain machine-interpretable.</li><li>Must preserve provenance.</li><li>Must avoid destructive merging.</li><li>Must allow independent substrate ownership.</li></ul>\n<h2>Open Questions</h2>\n<ul><li>What is the smallest useful implementation?</li><li>Which parts are required for compatibility?</li><li>Which parts should remain optional or experimental?</li></ul>",
      "url": "/source/protocol-artifact-proposals-xnp-0005-transclusion.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/proposals/XNP-0005-transclusion.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-proposals-xnp-0005-transclusion.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0006-tumbler-addressing.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0006-tumbler-addressing.md",
      "title": "Proposals / XNP 0006 Tumbler Addressing",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A XanaNode proposal covering XNP 0006 Tumbler Addressing.",
      "content": "# XNP-0006: Tumbler Addressing\r\n\r\nStatus: Experimental\r\n\r\n## Summary\r\n\r\nDefines persistent addressing for nodes and fragments.\r\n\r\nThe initial accepted profile is:\r\n\r\n```text\r\n<namespace>:<node-kind>/<local-id>\n<namespace>:<node-kind>/<local-id>@<version-id>\n<namespace>:<node-kind>/<local-id>@<source-version-id>#fragment/<fragment-id>@<fragment-version-id>\n```\n\r\n## Motivation\r\n\r\nXanaNode aims to support independently authored knowledge substrates that can later interoperate. This proposal records the design expectations for tumbler addressing so implementations can converge without requiring centralized control.\r\n\r\n## Requirements\r\n\r\n- Must remain human-readable.\r\n- Must remain machine-interpretable.\r\n- Must preserve provenance.\r\n- Must avoid destructive merging.\r\n- Must allow independent substrate ownership.\r\n\r\n## Open Questions\r\n\r\n- What is the smallest useful implementation?\r\n- Which parts are required for compatibility?\r\n- Which parts should remain optional or experimental?\r\n",
      "html": "<p># XNP-0006: Tumbler Addressing</p>\n<p>Status: Experimental</p>\n<h2>Summary</h2>\n<p>Defines persistent addressing for nodes and fragments.</p>\n<p>The initial accepted profile is:</p>\n<p>``<code>text &lt;namespace&gt;:&lt;node-kind&gt;/&lt;local-id&gt; &lt;namespace&gt;:&lt;node-kind&gt;/&lt;local-id&gt;@&lt;version-id&gt; &lt;namespace&gt;:&lt;node-kind&gt;/&lt;local-id&gt;@&lt;source-version-id&gt;#fragment/&lt;fragment-id&gt;@&lt;fragment-version-id&gt; </code>``</p>\n<h2>Motivation</h2>\n<p>XanaNode aims to support independently authored knowledge substrates that can later interoperate. This proposal records the design expectations for tumbler addressing so implementations can converge without requiring centralized control.</p>\n<h2>Requirements</h2>\n<ul><li>Must remain human-readable.</li><li>Must remain machine-interpretable.</li><li>Must preserve provenance.</li><li>Must avoid destructive merging.</li><li>Must allow independent substrate ownership.</li></ul>\n<h2>Open Questions</h2>\n<ul><li>What is the smallest useful implementation?</li><li>Which parts are required for compatibility?</li><li>Which parts should remain optional or experimental?</li></ul>",
      "url": "/source/protocol-artifact-proposals-xnp-0006-tumbler-addressing.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/proposals/XNP-0006-tumbler-addressing.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-proposals-xnp-0006-tumbler-addressing.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0007-git-backed-substrates.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0007-git-backed-substrates.md",
      "title": "Proposals / XNP 0007 Git Backed Substrates",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A XanaNode proposal covering XNP 0007 Git Backed Substrates.",
      "content": "# XNP-0007: Git-Backed Substrates\n\nStatus: Accepted\n\n## Summary\n\nDefines Git as the required versioning and history layer for production XanaNode substrates.\n\n## Decision\n\nEach production substrate is a Git repository. The substrate manifest must include a `repository` block describing the Git remote and default branch.\n\nGit provides:\n\n- revision history\n- branching\n- review\n- merge\n- synchronization\n- rollback\n\nXanaNode provides:\n\n- node and relationship artifacts\n- schema validation\n- provenance fields\n- merge and compatibility reports\n- federation semantics\n\n## Rationale\n\nXanaNode should not reinvent distributed version control. Git already provides the substrate-level history model that knowledge authors need, while XanaNode adds knowledge-specific structure on top.\n\nUser-facing tools may rename Git concepts for approachability, such as \"save snapshot\" for commit or \"draft path\" for branch, but the underlying substrate history remains Git.\n",
      "html": "<p># XNP-0007: Git-Backed Substrates</p>\n<p>Status: Accepted</p>\n<h2>Summary</h2>\n<p>Defines Git as the required versioning and history layer for production XanaNode substrates.</p>\n<h2>Decision</h2>\n<p>Each production substrate is a Git repository. The substrate manifest must include a <code>repository</code> block describing the Git remote and default branch.</p>\n<p>Git provides:</p>\n<ul><li>revision history</li><li>branching</li><li>review</li><li>merge</li><li>synchronization</li><li>rollback</li></ul>\n<p>XanaNode provides:</p>\n<ul><li>node and relationship artifacts</li><li>schema validation</li><li>provenance fields</li><li>merge and compatibility reports</li><li>federation semantics</li></ul>\n<h2>Rationale</h2>\n<p>XanaNode should not reinvent distributed version control. Git already provides the substrate-level history model that knowledge authors need, while XanaNode adds knowledge-specific structure on top.</p>\n<p>User-facing tools may rename Git concepts for approachability, such as &quot;save snapshot&quot; for commit or &quot;draft path&quot; for branch, but the underlying substrate history remains Git.</p>",
      "url": "/source/protocol-artifact-proposals-xnp-0007-git-backed-substrates.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/proposals/XNP-0007-git-backed-substrates.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-proposals-xnp-0007-git-backed-substrates.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0008-derived-inverse-relationships.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0008-derived-inverse-relationships.md",
      "title": "Proposals / XNP 0008 Derived Inverse Relationships",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A XanaNode proposal covering XNP 0008 Derived Inverse Relationships.",
      "content": "# XNP-0008: Derived Inverse Relationships\n\nStatus: Accepted\n\n## Summary\n\nDefines inverse relationship labels as derived views rather than separate canonical relationship types.\n\n## Decision\n\nCanonical relationship types are authored in one direction only. A relationship type may declare an `inverse` label for display, querying, or generated indexes, but the inverse should not be registered as a second canonical type.\n\nExample:\n\n```json\n{\n  \"type\": \"created\",\n  \"inverse\": \"created_by\"\n}\n```\n\nA relationship record should store:\n\n```json\n{\n  \"source\": \"example:person/alice\",\n  \"target\": \"example:essay/intro\",\n  \"type\": \"created\"\n}\n```\n\nAn implementation may display `created_by` when viewing the target node, but should not store a second `created_by` relationship type or edge.\n\n## Rationale\n\nRegistering both directions bloats the canonical vocabulary and creates avoidable consistency risks:\n\n- duplicate relationship type definitions\n- mismatched inverse pairs\n- dangling inverse types\n- unnecessary authoring choices\n- harder validation\n\nDerived inverse views keep the graph navigable in both directions without doubling the protocol vocabulary.\n",
      "html": "<p># XNP-0008: Derived Inverse Relationships</p>\n<p>Status: Accepted</p>\n<h2>Summary</h2>\n<p>Defines inverse relationship labels as derived views rather than separate canonical relationship types.</p>\n<h2>Decision</h2>\n<p>Canonical relationship types are authored in one direction only. A relationship type may declare an <code>inverse</code> label for display, querying, or generated indexes, but the inverse should not be registered as a second canonical type.</p>\n<p>Example:</p>\n<p>``<code>json { &quot;type&quot;: &quot;created&quot;, &quot;inverse&quot;: &quot;created_by&quot; } </code>``</p>\n<p>A relationship record should store:</p>\n<p>``<code>json { &quot;source&quot;: &quot;example:person/alice&quot;, &quot;target&quot;: &quot;example:essay/intro&quot;, &quot;type&quot;: &quot;created&quot; } </code>``</p>\n<p>An implementation may display <code>created_by</code> when viewing the target node, but should not store a second <code>created_by</code> relationship type or edge.</p>\n<h2>Rationale</h2>\n<p>Registering both directions bloats the canonical vocabulary and creates avoidable consistency risks:</p>\n<ul><li>duplicate relationship type definitions</li><li>mismatched inverse pairs</li><li>dangling inverse types</li><li>unnecessary authoring choices</li><li>harder validation</li></ul>\n<p>Derived inverse views keep the graph navigable in both directions without doubling the protocol vocabulary.</p>",
      "url": "/source/protocol-artifact-proposals-xnp-0008-derived-inverse-relationships.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/proposals/XNP-0008-derived-inverse-relationships.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-proposals-xnp-0008-derived-inverse-relationships.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0009-standards-alignment.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0009-standards-alignment.md",
      "title": "Proposals / XNP 0009 Standards Alignment",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A XanaNode proposal covering XNP 0009 Standards Alignment.",
      "content": "# XNP-0009: Standards Alignment Profiles\n\nStatus: Accepted\n\n## Summary\n\nDefines optional interoperability profiles for JSON-LD, Web Annotation selectors, PROV-O, content IDs, RO-Crate, and nanopublication-style claim packages.\n\n## Decision\n\nXanaNode keeps its native artifacts simple, but provides mappings and companion profiles for standards-aware tools.\n\nAccepted profiles:\n\n- JSON-LD context\n- Web Annotation selector names\n- PROV-O provenance mapping\n- optional content IDs and version IDs\n- RO-Crate-compatible preservation metadata\n- nanopublication-like claim packaging\n\nThese profiles are optional for basic substrates but recommended for archival, scholarly, legal, scientific, and federated deployments.\n",
      "html": "<p># XNP-0009: Standards Alignment Profiles</p>\n<p>Status: Accepted</p>\n<h2>Summary</h2>\n<p>Defines optional interoperability profiles for JSON-LD, Web Annotation selectors, PROV-O, content IDs, RO-Crate, and nanopublication-style claim packages.</p>\n<h2>Decision</h2>\n<p>XanaNode keeps its native artifacts simple, but provides mappings and companion profiles for standards-aware tools.</p>\n<p>Accepted profiles:</p>\n<ul><li>JSON-LD context</li><li>Web Annotation selector names</li><li>PROV-O provenance mapping</li><li>optional content IDs and version IDs</li><li>RO-Crate-compatible preservation metadata</li><li>nanopublication-like claim packaging</li></ul>\n<p>These profiles are optional for basic substrates but recommended for archival, scholarly, legal, scientific, and federated deployments.</p>",
      "url": "/source/protocol-artifact-proposals-xnp-0009-standards-alignment.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/proposals/XNP-0009-standards-alignment.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-proposals-xnp-0009-standards-alignment.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0010-federation-discovery-and-trust.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0010-federation-discovery-and-trust.md",
      "title": "Proposals / XNP 0010 Federation Discovery And Trust",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A XanaNode proposal covering XNP 0010 Federation Discovery And Trust.",
      "content": "# XNP-0010: Federation Discovery and Trust\n\nStatus: Accepted\n\n## Summary\n\nDefines optional discovery and trust metadata in substrate manifests.\n\n## Decision\n\nSubstrate manifests may include:\n\n- federation inbox\n- federation outbox\n- subscription or feed URL\n- merge report endpoint\n- mapping endpoint\n- signature metadata\n- public key metadata\n- trust scopes\n\nTrust scopes are:\n\n- `local_substrate`\n- `imported_schema`\n- `mapping`\n- `assertion`\n\n## Rationale\n\nGit-backed substrates can federate through repository exchange, but active federation benefits from discoverable update and mapping endpoints. Signatures and public keys provide a path toward verifiable manifests, merge reports, mappings, and assertions.\n",
      "html": "<p># XNP-0010: Federation Discovery and Trust</p>\n<p>Status: Accepted</p>\n<h2>Summary</h2>\n<p>Defines optional discovery and trust metadata in substrate manifests.</p>\n<h2>Decision</h2>\n<p>Substrate manifests may include:</p>\n<ul><li>federation inbox</li><li>federation outbox</li><li>subscription or feed URL</li><li>merge report endpoint</li><li>mapping endpoint</li><li>signature metadata</li><li>public key metadata</li><li>trust scopes</li></ul>\n<p>Trust scopes are:</p>\n<ul><li><code>local_substrate</code></li><li><code>imported_schema</code></li><li><code>mapping</code></li><li><code>assertion</code></li></ul>\n<h2>Rationale</h2>\n<p>Git-backed substrates can federate through repository exchange, but active federation benefits from discoverable update and mapping endpoints. Signatures and public keys provide a path toward verifiable manifests, merge reports, mappings, and assertions.</p>",
      "url": "/source/protocol-artifact-proposals-xnp-0010-federation-discovery-and-trust.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/proposals/XNP-0010-federation-discovery-and-trust.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-proposals-xnp-0010-federation-discovery-and-trust.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0011-studio-local-first-authoring.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0011-studio-local-first-authoring.md",
      "title": "Proposals / XNP 0011 Studio Local First Authoring",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A XanaNode proposal covering XNP 0011 Studio Local First Authoring.",
      "content": "# XNP-0011: Studio Local-First Authoring\n\nStatus: Draft\n\n## Summary\n\nCaptures the Studio product direction as local-first Git-backed authoring for knowledge substrates.\n\n## Decision\n\nStudio should treat a substrate as a local Git repository and expose user-facing concepts before raw Git mechanics.\n\nAuthor-facing language:\n\n- save snapshot\n- draft path\n- bring changes together\n- propose changes\n- what changed\n- history\n\nThe Studio MVP should focus on opening substrate repos, editing nodes, adding relationships, validating, previewing with the Hugo implementation, saving snapshots, and publishing.\n",
      "html": "<p># XNP-0011: Studio Local-First Authoring</p>\n<p>Status: Draft</p>\n<h2>Summary</h2>\n<p>Captures the Studio product direction as local-first Git-backed authoring for knowledge substrates.</p>\n<h2>Decision</h2>\n<p>Studio should treat a substrate as a local Git repository and expose user-facing concepts before raw Git mechanics.</p>\n<p>Author-facing language:</p>\n<ul><li>save snapshot</li><li>draft path</li><li>bring changes together</li><li>propose changes</li><li>what changed</li><li>history</li></ul>\n<p>The Studio MVP should focus on opening substrate repos, editing nodes, adding relationships, validating, previewing with the Hugo implementation, saving snapshots, and publishing.</p>",
      "url": "/source/protocol-artifact-proposals-xnp-0011-studio-local-first-authoring.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/proposals/XNP-0011-studio-local-first-authoring.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-proposals-xnp-0011-studio-local-first-authoring.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0012-executable-tool-contract.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-proposals-xnp-0012-executable-tool-contract.md",
      "title": "Proposals / XNP 0012 Executable Tool Contract",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A XanaNode proposal covering XNP 0012 Executable Tool Contract.",
      "content": "# XNP-0012: Executable Tool Contract\n\n## Status\n\nDraft\n\n## Summary\n\nDefine a stable executable contract for official XanaNode tooling so applications can call Core and Workspace behavior without embedding Node.js directly.\n\n## Motivation\n\nXanaNode is a protocol, not a JavaScript framework.\n\nRight now, the reference stack is implemented in Node-based repositories:\n\n- XanaNode-Protocol\n- XanaNode-Core-SDK\n- XanaNode-Workspace\n- XanaNode-Hugo\n- XanaNode-Studio\n- XanaNode-Mobile\n\nThat is acceptable as an implementation phase, but it is not the right long-term dependency story for the protocol itself.\n\nIf a desktop app, mobile app, static-site builder, AI agent, or institutional integration must install Node and call private JavaScript modules directly, then the protocol boundary is too soft. The protocol should be callable from any stack that can execute a program, pass files, and read JSON results.\n\n## Proposal\n\nOfficial tooling should converge on two primary executable surfaces:\n\n- `xananode-core`\n- `xananode-workspace`\n\nThese names describe roles, not implementation language. They may be delivered as:\n\n- native binaries\n- packaged runtime executables\n- OS-specific launchers\n- language wrappers that preserve the same command contract\n\n## Goals\n\n1. Keep protocol behavior callable from any language or host environment.\n2. Separate implementation language from protocol contract.\n3. Give Studio, Mobile, Hugo helpers, AI agents, and third-party tools one stable thing to call.\n4. Keep artifact generation, intake analysis, and projection derivation aligned across the stack.\n\n## Non-goals\n\n1. This proposal does not replace language SDKs.\n2. This proposal does not forbid direct in-process library use.\n3. This proposal does not require one operating-system packaging strategy.\n\n## Core responsibilities\n\n`xananode-core` should own:\n\n- substrate validation\n- protocol inspection\n- artifact builds\n- portable bundle generation\n- fragment derivation\n- review suggestion generation\n- intake analysis\n- projection-data derivation\n\nRecommended commands:\n\n- `validate`\n- `inspect`\n- `build`\n- `bundle`\n- `analyze-intake`\n- `projection`\n\n## Workspace responsibilities\n\n`xananode-workspace` should own:\n\n- substrate initialization\n- workspace open/create behavior\n- author and repository enforcement\n- local build orchestration\n- portable export\n- mounted substrate intake\n- working-copy creation\n- de-intertwingle cleanup\n- health reporting\n- snapshot orchestration\n\nRecommended commands:\n\n- `init`\n- `open`\n- `build`\n- `export`\n- `intertwingle`\n- `deintertwingle`\n- `health`\n- `snapshot`\n\n## Input and output rules\n\nExecutable implementations should:\n\n- accept filesystem paths to substrate folders, `.substrate` archives, `substrate-bundle.json`, and `substrate-bundle.jsonl`\n- support structured JSON output for machine callers\n- emit non-zero exit codes on failure\n- expose build metadata including implementation version and commit when possible\n- preserve protocol semantics regardless of implementation language\n\nMachine callers should not be expected to scrape prose logs to determine success.\n\n## Why this matters\n\nXanaNode is supposed to let knowledge move across tools and media without losing structure.\n\nThe same principle applies to the tooling itself.\n\nIf the protocol is real, then:\n\n- a Kotlin Android app should be able to call it\n- a Rust CLI should be able to call it\n- a Python workflow should be able to call it\n- a static-site renderer should be able to call it\n- an AI agent should be able to call it\n\nwithout pretending JavaScript is the protocol.\n\n## Transition path\n\n1. Keep the current Node reference implementations.\n2. Tighten their command contracts and JSON outputs.\n3. Package them as self-contained executables for supported platforms.\n4. Teach official tools to prefer the executable boundary.\n5. Allow alternate implementations later as long as they preserve the same artifact rules and command semantics.\n\n## Compatibility\n\nThis proposal is additive.\n\nExisting repositories may continue to expose:\n\n- Node modules\n- npm CLIs\n- internal helper APIs\n\nBut official documentation should increasingly describe the executable contract as the stable cross-stack surface.\n",
      "html": "<p># XNP-0012: Executable Tool Contract</p>\n<h2>Status</h2>\n<p>Draft</p>\n<h2>Summary</h2>\n<p>Define a stable executable contract for official XanaNode tooling so applications can call Core and Workspace behavior without embedding Node.js directly.</p>\n<h2>Motivation</h2>\n<p>XanaNode is a protocol, not a JavaScript framework.</p>\n<p>Right now, the reference stack is implemented in Node-based repositories:</p>\n<ul><li>XanaNode-Protocol</li><li>XanaNode-Core-SDK</li><li>XanaNode-Workspace</li><li>XanaNode-Hugo</li><li>XanaNode-Studio</li><li>XanaNode-Mobile</li></ul>\n<p>That is acceptable as an implementation phase, but it is not the right long-term dependency story for the protocol itself.</p>\n<p>If a desktop app, mobile app, static-site builder, AI agent, or institutional integration must install Node and call private JavaScript modules directly, then the protocol boundary is too soft. The protocol should be callable from any stack that can execute a program, pass files, and read JSON results.</p>\n<h2>Proposal</h2>\n<p>Official tooling should converge on two primary executable surfaces:</p>\n<ul><li><code>xananode-core</code></li><li><code>xananode-workspace</code></li></ul>\n<p>These names describe roles, not implementation language. They may be delivered as:</p>\n<ul><li>native binaries</li><li>packaged runtime executables</li><li>OS-specific launchers</li><li>language wrappers that preserve the same command contract</li></ul>\n<h2>Goals</h2>\n<p>1. Keep protocol behavior callable from any language or host environment. 2. Separate implementation language from protocol contract. 3. Give Studio, Mobile, Hugo helpers, AI agents, and third-party tools one stable thing to call. 4. Keep artifact generation, intake analysis, and projection derivation aligned across the stack.</p>\n<h2>Non-goals</h2>\n<p>1. This proposal does not replace language SDKs. 2. This proposal does not forbid direct in-process library use. 3. This proposal does not require one operating-system packaging strategy.</p>\n<h2>Core responsibilities</h2>\n<p><code>xananode-core</code> should own:</p>\n<ul><li>substrate validation</li><li>protocol inspection</li><li>artifact builds</li><li>portable bundle generation</li><li>fragment derivation</li><li>review suggestion generation</li><li>intake analysis</li><li>projection-data derivation</li></ul>\n<p>Recommended commands:</p>\n<ul><li><code>validate</code></li><li><code>inspect</code></li><li><code>build</code></li><li><code>bundle</code></li><li><code>analyze-intake</code></li><li><code>projection</code></li></ul>\n<h2>Workspace responsibilities</h2>\n<p><code>xananode-workspace</code> should own:</p>\n<ul><li>substrate initialization</li><li>workspace open/create behavior</li><li>author and repository enforcement</li><li>local build orchestration</li><li>portable export</li><li>mounted substrate intake</li><li>working-copy creation</li><li>de-intertwingle cleanup</li><li>health reporting</li><li>snapshot orchestration</li></ul>\n<p>Recommended commands:</p>\n<ul><li><code>init</code></li><li><code>open</code></li><li><code>build</code></li><li><code>export</code></li><li><code>intertwingle</code></li><li><code>deintertwingle</code></li><li><code>health</code></li><li><code>snapshot</code></li></ul>\n<h2>Input and output rules</h2>\n<p>Executable implementations should:</p>\n<ul><li>accept filesystem paths to substrate folders, <code>.substrate</code> archives, <code>substrate-bundle.json</code>, and <code>substrate-bundle.jsonl</code></li><li>support structured JSON output for machine callers</li><li>emit non-zero exit codes on failure</li><li>expose build metadata including implementation version and commit when possible</li><li>preserve protocol semantics regardless of implementation language</li></ul>\n<p>Machine callers should not be expected to scrape prose logs to determine success.</p>\n<h2>Why this matters</h2>\n<p>XanaNode is supposed to let knowledge move across tools and media without losing structure.</p>\n<p>The same principle applies to the tooling itself.</p>\n<p>If the protocol is real, then:</p>\n<ul><li>a Kotlin Android app should be able to call it</li><li>a Rust CLI should be able to call it</li><li>a Python workflow should be able to call it</li><li>a static-site renderer should be able to call it</li><li>an AI agent should be able to call it</li></ul>\n<p>without pretending JavaScript is the protocol.</p>\n<h2>Transition path</h2>\n<p>1. Keep the current Node reference implementations. 2. Tighten their command contracts and JSON outputs. 3. Package them as self-contained executables for supported platforms. 4. Teach official tools to prefer the executable boundary. 5. Allow alternate implementations later as long as they preserve the same artifact rules and command semantics.</p>\n<h2>Compatibility</h2>\n<p>This proposal is additive.</p>\n<p>Existing repositories may continue to expose:</p>\n<ul><li>Node modules</li><li>npm CLIs</li><li>internal helper APIs</li></ul>\n<p>But official documentation should increasingly describe the executable contract as the stable cross-stack surface.</p>",
      "url": "/source/protocol-artifact-proposals-xnp-0012-executable-tool-contract.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/proposals/XNP-0012-executable-tool-contract.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-proposals-xnp-0012-executable-tool-contract.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-readme.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-readme.md",
      "title": "XanaNode Protocol README",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "The main human-readable overview of the XanaNode protocol.",
      "content": "# XanaNode\r\n\r\n![XanaNode Logo](media/images/xananode-icon.svg)\r\n\r\n## What is XanaNode?\n\nShort:\n\nRelationships preserve knowledge.\n\nCanonical:\n\nXanaNode is a protocol for independently authored knowledge substrates that preserve relationships, provenance, lineage, disagreement, and addressable fragments, so knowledge can move across tools and media without losing its structure.\n\nExpanded:\n\nXanaNode is a protocol for independently authoring, transmitting, and federating knowledge substrates that preserve relationships, provenance, lineage, disagreement, and addressable fragments, enabling durable human-to-machine knowledge transfer through many possible projection layers.\n\r\nRather than treating documents as the primary unit of knowledge, XanaNode treats relationships as first-class entities and models knowledge as a connected network of people, concepts, claims, questions, hypotheses, problems, knowledge gaps, communications, responses, sources, events, media, organizations, technologies, and their relationships.\n\r\nXanaNode is designed to be both human-readable and machine-interpretable.\n\nXanaNode is also a working software stack. The protocol, Core SDK, Workspace engine, Studio workbench, Mobile capture companion, Hugo projection layer, and canonical XanaNode.com substrate are designed to run together and to describe themselves as XanaNode data. The canonical substrate is not only documentation about the project; it is a living example of the protocol carrying its own schemas, registries, media assets, source snapshots, project history, implementation links, build metadata, governance notes, and unresolved work.\n\nThis repository now also publishes an explicit substrate source at `substrate-source/`. That folder is generated from the protocol repository itself so the rest of the stack can federate with the protocol as a normal substrate instead of treating this repository as a private implementation detail.\n\nThat recursive quality is intentional. If XanaNode says relationships preserve knowledge, the XanaNode project itself must preserve the relationships that explain XanaNode: why files exist, where schemas came from, which tools consume them, what changed, what is pending, and how the public website was produced.\n\nDocumentation is licensed under `CC-BY-4.0`. Schemas, validators, and reference code are licensed under `Apache-2.0`. The XanaNode name and logo are trademarks of the XanaNode project; see [LICENSE.md](LICENSE.md) and [TRADEMARK.md](TRADEMARK.md).\n\nImplementations should identify themselves as XanaNode-compatible and link to the canonical specification when accurate:\n\n```text\nThis project is a XanaNode-compatible implementation.\nCanonical specification: https://github.com/kingc95/XanaNode\n```\n\nIt is not a wiki.\n\r\nIt is not a graph database.\r\n\r\nIt is not a note-taking application.\r\n\r\nIt is a protocol for knowledge substrates and the rules that let them move, federate, and be projected without losing their structure.\n\nFragments are not limited to paragraph chunks. The protocol's fragment/tumbler model can also describe quoted spans, character or word ranges, page regions, and time-based media segments. The stable address is the tumbler; the selector carries the granular \"where inside this source version\" detail.\n\r\n---\r\n\r\n## The Core Problem\r\n\r\nHumanity has become exceptionally good at publishing information.\r\n\r\nWe have become far less successful at preserving the relationships that give information meaning.\r\n\r\nModern publishing systems prioritize documents:\r\n\r\n* web pages\r\n* articles\r\n* books\r\n* PDFs\r\n* databases\r\n\r\nYet knowledge does not exist inside isolated documents.\r\n\r\nKnowledge exists in:\r\n\r\n* provenance\r\n* context\r\n* lineage\r\n* contradiction\r\n* influence\r\n* evidence\r\n* explanation\r\n* association\r\n\r\nThe result is a civilization-scale memory problem.\r\n\r\nInformation survives.\r\n\r\nRelationships disappear.\r\n\r\nSources become detached from conclusions.\r\n\r\nClaims lose context.\r\n\r\nLinks decay.\r\n\r\nAuthority becomes difficult to evaluate.\r\n\r\nThe problem becomes increasingly visible in artificial intelligence systems, but it predates AI by decades.\r\n\r\nXanaNode is an attempt to address this deeper problem.\r\n\r\n---\r\n\r\n# Core Principles\r\n\r\n## 1. Relationships Are First-Class\r\n\r\nTraditional systems primarily store content.\r\n\r\nXanaNode stores both content and the relationships that connect content.\r\n\r\nExamples:\r\n\r\n* supports\r\n* contradicts\r\n* explains\r\n* derived_from\r\n* created\n* memorializes\r\n* documents\r\n* participates_in\r\n\r\nRelationships are explicit, queryable, versioned structures.\r\n\r\n---\r\n\r\n## 2. Provenance Matters\r\n\r\nEvery claim should be traceable.\r\n\r\nUsers should be able to answer:\r\n\r\n* Where did this come from?\r\n* Who said it?\r\n* What evidence supports it?\r\n* What contradicts it?\r\n* What changed over time?\r\n\r\nXanaNode prioritizes preserving knowledge lineage rather than merely preserving information.\r\n\r\n---\r\n\r\n## 3. Claims Are Not Facts\r\n\r\nClaims, observations, concepts, essays, and sources are distinct node types.\r\n\r\nXanaNode does not assume consensus.\r\n\r\nInstead it preserves:\n\n* claims\n* counterclaims\n* evidence\n* disagreement\n* uncertainty\n* open questions\n* hypotheses\n* knowledge gaps\n* review status\n\nThe goal is not enforced truth.\n\nThe goal is navigable knowledge.\n\r\n---\r\n\r\n## 4. Knowledge Is Structure\r\n\r\nA knowledge substrate is not information.\r\n\r\nA knowledge substrate is the structure that determines how information relates, persists, evolves, and can be understood.\r\n\r\nThe same information arranged differently produces different knowledge capabilities.\r\n\r\n---\r\n\r\n## 5. Human Readable and Machine Interpretable\r\n\r\nMost semantic systems optimize for machines.\r\n\r\nMost publishing systems optimize for humans.\r\n\r\nXanaNode attempts to support both.\r\n\r\nHumans should be able to browse, understand, and author the graph.\r\n\r\nMachines should be able to query, reason over, and analyze it.\r\n\r\n---\r\n\r\n# Knowledge Substrates\n\nA knowledge substrate is an independently authored graph of knowledge.\n\nIn XanaNode, a production substrate is backed by a Git repository. Git supplies history, branching, review, merge, and synchronization; XanaNode supplies the knowledge model, schemas, validation rules, and federation semantics.\n\nA substrate is portable. A hand-built substrate should be able to follow the standard folder tree, include its own files, and open in compatible tools without private state. A `.substrate` archive carries the whole substrate as data: manifest, nodes, relationships, media, source files, schemas, reports, and workspace metadata needed for round trips.\n\nExamples:\n\r\n* personal knowledge substrates\r\n* research substrates\r\n* organizational substrates\r\n* historical archives\r\n* educational collections\r\n* institutional memory systems\r\n\r\nEach substrate remains independently owned and moderated.\n\nThere is no requirement for a central authority.\n\n## Repository Files, Assets, And Knowledge Objects\n\nXanaNode does not treat every file in a Git repository as equally worthy of becoming its own node.\n\nPortable substrates should preserve important local files, but preservation and elevation are different actions:\n\n* **Preserve as an attached asset** when the file is implementation support, packaging glue, projection inventory, test scaffolding, or another file whose meaning is already carried by a higher-level node.\n* **Promote to a first-class node** when the file is itself a knowledge-bearing object that should be citable, discussable, governable, reviewable, or traversable on its own.\n\nA raw repository file generally deserves its own node when one or more of these are true:\n\n* it defines protocol, schema, registry, compatibility, or governance behavior\n* it is an independently citable specification, proposal, policy, source document, or canonical example\n* it is itself a portable substrate/report/registry artifact that other tools may inspect directly\n* authors are likely to discuss its contents semantically, not merely acknowledge that the file exists\n\nA raw repository file should usually remain an attached asset, snapshot, or supporting file when:\n\n* it exists mainly to make another node render, build, test, package, or execute\n* it is one item in a large projection-asset inventory such as icons, thumbnails, static images, or generated output\n* it is better modeled as provenance on a higher-level source, media, project, schema, or substrate node\n\nThis rule also applies to source/media modeling. A file does not need two separate nodes just because it is both readable and visual.\n\n* If the knowledge object being cited is the file itself, prefer one `source` node.\n* If that same node carries a local image, PDF, audio, video, or other file, it may also carry the `media` facet and related `media_type` fields.\n* Use a separate `media` node only when the media object is distinct from the source object it previews, documents, depicts, or was derived from.\n\nThe practical goal is simple: preserve the bytes, but only promote the files that carry real semantic weight.\n\n---\n\r\n# Federation\r\n\r\nXanaNode is designed for federation.\r\n\r\nMultiple independent substrates can interoperate without surrendering ownership.\r\n\r\nExample:\r\n\r\nResearcher A maintains a substrate.\r\n\r\nResearcher B maintains a substrate.\r\n\r\nA university maintains a substrate.\r\n\r\nA museum maintains a substrate.\r\n\r\nEach can preserve its own interpretations and governance policies.\r\n\r\nFederation allows these substrates to be connected and analyzed together.\r\n\r\nThe goal is not one global database.\r\n\r\nThe goal is a network of interoperable knowledge substrates.\r\n\r\n---\r\n\r\n# Schema Architecture\n\r\nXanaNode uses a layered schema model.\r\n\r\n## Core Schema\r\n\r\nProvides the canonical node and relationship registries for the protocol.\r\n\r\nThe current core registry files are versioned and live in [schemas/](schemas):\r\n\r\n* [xananode-node-types.v0.3.0.json](schemas/xananode-node-types.v0.3.0.json)\r\n* [xananode-node-types.schema.v0.3.0.json](schemas/xananode-node-types.schema.v0.3.0.json)\r\n* [xananode-relationship-types.v0.5.0.json](schemas/xananode-relationship-types.v0.5.0.json)\n* [xananode-relationship-types.schema.v0.5.0.json](schemas/xananode-relationship-types.schema.v0.5.0.json)\n\r\nThe node registry currently centers on core types such as person, concept, claim, question, hypothesis, problem, knowledge_gap, communication, response, source, essay, and observation.\n\nThe relationship registry currently centers on core types such as defines, has_claim, supports, contradicts, documents, derived_from, answers, investigates, requires_source, possibly_related_to, and communicated_to.\n\nThe core property registry standardizes common open properties such as `uncertainty_level`, `review_status`, `research_priority`, `evidence_strength`, `communication_model`, and `communication_pattern`.\n\nThe substrate layout registry defines the standard folder tree that compatible tools should understand:\n\n* [substrate-layout.schema.json](schemas/substrate-layout.schema.json)\n* [xananode-substrate-layout.v0.1.0.json](schemas/xananode-substrate-layout.v0.1.0.json)\n\nThis makes the substrate format tight enough that someone can manually build a substrate outside the XanaNode tools, drop it into Core, Workspace, Studio, Hugo, or another compatible implementation, and expect the records and files to be discoverable.\n\r\nThe core schema provides interoperability while still allowing extension schemas to define namespaced custom types.\r\n\r\nValidation tools live in [tools/](tools). The repository validator checks JSON Schema conformance plus XanaNode-specific integrity rules such as declared relationship types, registered namespaces, and resolvable relationship endpoints.\n\n---\n\n# Implementations\n\nThe protocol repository is implementation-neutral. It defines the canonical schemas, registries, examples, governance material, and validation rules. The active implementation stack is maintained in separate repositories that consume this protocol:\n\n* [XanaNode Core SDK](https://github.com/kingc95/XanaNode-Core-SDK) is the renderer-independent parser, validator, graph builder, fragment engine, and exporter. It includes this protocol repository as `vendor/xananode-protocol`.\n* [XanaNode Workspace](https://github.com/kingc95/XanaNode-Workspace) is the local-first workspace engine used by Studio, CLIs, and editor integrations. It includes Core SDK as `vendor/xananode-core`.\n* [XanaNode Hugo Theme](https://github.com/kingc95/XanaNode-Hugo) is the static-site renderer and graph viewer for XanaNode-compatible substrates.\n* [XanaNode Studio](https://github.com/kingc95/XanaNode-Studio) is the desktop authoring workbench. It includes Hugo and Workspace as submodules.\n* [XanaNode Mobile](https://github.com/kingc95/XanaNode-Mobile) is the Android capture companion for field intake, media capture, quick notes, portable `.substrate` handoff, and later federation back into the rest of the stack.\n\nThe intended dependency chain is:\n\n```text\nxananode protocol\n  -> XanaNode-Core-SDK\n    -> XanaNode-Workspace\n      -> XanaNode-Studio\n      -> XanaNode-Mobile\n\nXanaNode-Hugo consumes the protocol artifacts as the published/static preview renderer.\n```\n\nFor a full local Studio checkout:\n\n```bash\ngit clone --recurse-submodules https://github.com/kingc95/XanaNode-Studio.git\ncd XanaNode-Studio\nnpm install\nnpm test\n```\n\n---\n\n## How The Stack Fits Together\n\nXanaNode is designed so the same substrate can move through the whole stack without being reinvented at each layer.\n\n```text\nProtocol defines the rules\nCore reads, validates, analyzes, and exports substrates\nWorkspace manages substrate folders, registry targets, working copies, and .substrate bundles\nStudio uses Workspace/Core for authoring and federation UX\nMobile uses Workspace/Core for capture-first intake and portable handoff\nHugo uses Core to validate and mount substrate sources, then projects them as a static site\n```\n\nOnce you are past Core, the thing is still a substrate. Sometimes it is a Git-backed substrate folder. Sometimes it is a portable `.substrate` bundle. Sometimes it is a mounted registry target cloned locally. These are transport and governance forms of the same thing, not separate knowledge objects.\n\nThe protocol registry can list known federation targets. Official tools should prefer that registry when offering online substrate choices, while still allowing federation with valid external substrates that are not yet listed there.\n\nTo regenerate the Protocol repo's own substrate source:\n\n```powershell\nnode tools/build-substrate-source.mjs\n```\n\nOr from the `XanaNode-Master` workspace root:\n\n```powershell\nnpm run protocol:build-substrate-source\n```\n\nThe protocol itself is not tied to Node.js. The current reference stack happens to be Node-based, but the protocol-facing contract should be callable from any stack. Official tooling should converge on stable `xananode-core` and `xananode-workspace` executable interfaces so Studio, Mobile, Hugo helpers, AI agents, and future third-party tools can operate on substrates without embedding one implementation language directly. See [specs/substrates.md](specs/substrates.md) and [proposals/XNP-0012-executable-tool-contract.md](proposals/XNP-0012-executable-tool-contract.md).\n\n## FAQ\n\n### Is this a real working stack?\n\nYes. XanaNode is not just a schema set. The protocol, Core SDK, Workspace engine, Studio authoring tool, Mobile capture companion, Hugo projection layer, and canonical XanaNode substrate are meant to run together right now.\n\n### What is a `.substrate` file?\n\nA `.substrate` file is a portable bundled substrate. It can carry the manifest, nodes, relationships, media, source snapshots, schemas, and supporting metadata needed to move a substrate between tools without losing pieces.\n\n### Is a `.substrate` different from a substrate folder?\n\nNo. It is the same substrate in a packaged transmission form. A Git-backed folder is better for active authorship and history. A `.substrate` bundle is better for shipping, handoff, offline import, and archival release.\n\n### Where does federation happen?\n\nFederation begins at the protocol level and is enforced through Core. Workspace is the management layer that should clone, mount, compare, import, or merge external substrates. Studio is the human-facing authoring interface for that workflow. Hugo is a projection layer that can mount configured substrate sources at build time and render the result.\n\n### Do I have to rewrite imported substrate data as Markdown for Hugo?\n\nNo. Markdown is an authoring convenience, not the only source form. Hugo should be able to mount or import validated substrate JSON through Core and render it directly.\n\n### Can substrates overlap?\n\nYes. Overlap is expected. Independent substrates may describe the same people, organizations, concepts, or works differently. XanaNode is meant to preserve that overlap, carry the provenance, and let tools surface the comparison instead of flattening it away.\n\n---\n\n## Extension Schema\n\nSubstrates may define custom node types and relationship types.\n\r\nExamples:\r\n\r\nmuseum:artifact\r\n\r\nbiology:species\r\n\r\nlegal:precedent\r\n\r\ngenealogy:ancestor_of\r\n\r\nCustom types are:\r\n\r\n* namespaced\r\n* documented\r\n* versioned\r\n* machine-readable\r\n\r\nThis allows evolution without breaking compatibility.\r\n\r\n---\r\n\r\n# Namespaces\r\n\r\nXanaNode supports schema namespaces.\r\n\r\nExamples:\r\n\r\nxananode:claim\r\n\r\nmuseum:artifact\r\n\r\nresearch:experiment\r\n\r\nNamespaces prevent collisions and allow independent schema development.\r\n\r\nRelationships between schemas can themselves be represented.\r\n\r\nExamples:\r\n\r\nequivalent_to\r\n\r\nbroader_than\r\n\r\nnarrower_than\r\n\r\nrelated_to\r\n\r\n---\r\n\r\n# Tumbler Addressing\r\n\r\nXanaNode is intended to support persistent, location-independent addressing.\r\n\r\nThe goal is to move beyond URLs and document paths.\r\n\r\nObjects should remain addressable even if:\r\n\r\n* files move\r\n* websites migrate\r\n* structures change\r\n\r\nFuture implementations may support:\r\n\r\n* node-level addressing\r\n* relationship-level addressing\r\n* claim-level addressing\r\n* fragment-level addressing\r\n* transcluded content references\r\n\r\nThis provides durable references across time.\r\n\r\n---\r\n\r\n# Transclusion\r\n\r\nXanaNode embraces transclusion principles inspired by Project Xanadu.\r\n\r\nRather than duplicating information repeatedly, knowledge should be referenced and reused.\r\n\r\nBenefits include:\r\n\r\n* provenance preservation\r\n* reduction of duplication\r\n* easier revision tracking\r\n* stronger lineage visibility\r\n\r\nPractical implementations may initially focus on partial transclusion while preserving compatibility with existing publishing systems.\r\n\r\n---\r\n\r\n# Mergeability\r\n\r\nMergeability is a core design goal.\r\n\r\nTwo substrates should be able to exchange knowledge without requiring identical governance.\r\n\r\nMerge operations should preserve:\r\n\r\n* authorship\r\n* provenance\r\n* disagreement\r\n* source attribution\r\n* local moderation decisions\r\n\r\nMerging should add structure rather than destroy context.\r\n\r\n---\r\n\r\n# Civilizational Memory\r\n\r\nThe long-term goal of XanaNode is not merely better note-taking, search, or AI retrieval.\r\n\r\nThe goal is the creation of a federated civilizational memory system.\r\n\r\nA system where:\r\n\r\n* knowledge remains locally owned\r\n* provenance remains visible\r\n* disagreement remains preserved\r\n* schemas remain interoperable\r\n* relationships remain navigable\r\n\r\nA civilization-scale memory substrate built from independently maintained knowledge systems rather than a single centralized authority.\r\n\r\nXanaNode is an open protocol for building interoperable knowledge substrates that preserve relationships, provenance, lineage, and disagreement across independently authored and federated knowledge systems.\r\n\r\n",
      "html": "<p># XanaNode</p>\n<p>!<a href=\"media/images/xananode-icon.svg\">XanaNode Logo</a></p>\n<h2>What is XanaNode?</h2>\n<p>Short:</p>\n<p>Relationships preserve knowledge.</p>\n<p>Canonical:</p>\n<p>XanaNode is a protocol for independently authored knowledge substrates that preserve relationships, provenance, lineage, disagreement, and addressable fragments, so knowledge can move across tools and media without losing its structure.</p>\n<p>Expanded:</p>\n<p>XanaNode is a protocol for independently authoring, transmitting, and federating knowledge substrates that preserve relationships, provenance, lineage, disagreement, and addressable fragments, enabling durable human-to-machine knowledge transfer through many possible projection layers.</p>\n<p>Rather than treating documents as the primary unit of knowledge, XanaNode treats relationships as first-class entities and models knowledge as a connected network of people, concepts, claims, questions, hypotheses, problems, knowledge gaps, communications, responses, sources, events, media, organizations, technologies, and their relationships.</p>\n<p>XanaNode is designed to be both human-readable and machine-interpretable.</p>\n<p>XanaNode is also a working software stack. The protocol, Core SDK, Workspace engine, Studio workbench, Mobile capture companion, Hugo projection layer, and canonical XanaNode.com substrate are designed to run together and to describe themselves as XanaNode data. The canonical substrate is not only documentation about the project; it is a living example of the protocol carrying its own schemas, registries, media assets, source snapshots, project history, implementation links, build metadata, governance notes, and unresolved work.</p>\n<p>This repository now also publishes an explicit substrate source at <code>substrate-source/</code>. That folder is generated from the protocol repository itself so the rest of the stack can federate with the protocol as a normal substrate instead of treating this repository as a private implementation detail.</p>\n<p>That recursive quality is intentional. If XanaNode says relationships preserve knowledge, the XanaNode project itself must preserve the relationships that explain XanaNode: why files exist, where schemas came from, which tools consume them, what changed, what is pending, and how the public website was produced.</p>\n<p>Documentation is licensed under <code>CC-BY-4.0</code>. Schemas, validators, and reference code are licensed under <code>Apache-2.0</code>. The XanaNode name and logo are trademarks of the XanaNode project; see <a href=\"LICENSE.md\">LICENSE.md</a> and <a href=\"TRADEMARK.md\">TRADEMARK.md</a>.</p>\n<p>Implementations should identify themselves as XanaNode-compatible and link to the canonical specification when accurate:</p>\n<p>``<code>text This project is a XanaNode-compatible implementation. Canonical specification: https://github.com/kingc95/XanaNode </code>``</p>\n<p>It is not a wiki.</p>\n<p>It is not a graph database.</p>\n<p>It is not a note-taking application.</p>\n<p>It is a protocol for knowledge substrates and the rules that let them move, federate, and be projected without losing their structure.</p>\n<p>Fragments are not limited to paragraph chunks. The protocol&#39;s fragment/tumbler model can also describe quoted spans, character or word ranges, page regions, and time-based media segments. The stable address is the tumbler; the selector carries the granular &quot;where inside this source version&quot; detail.</p>\n<p>---</p>\n<h2>The Core Problem</h2>\n<p>Humanity has become exceptionally good at publishing information.</p>\n<p>We have become far less successful at preserving the relationships that give information meaning.</p>\n<p>Modern publishing systems prioritize documents:</p>\n<p>* web pages * articles * books * PDFs * databases</p>\n<p>Yet knowledge does not exist inside isolated documents.</p>\n<p>Knowledge exists in:</p>\n<p>* provenance * context * lineage * contradiction * influence * evidence * explanation * association</p>\n<p>The result is a civilization-scale memory problem.</p>\n<p>Information survives.</p>\n<p>Relationships disappear.</p>\n<p>Sources become detached from conclusions.</p>\n<p>Claims lose context.</p>\n<p>Links decay.</p>\n<p>Authority becomes difficult to evaluate.</p>\n<p>The problem becomes increasingly visible in artificial intelligence systems, but it predates AI by decades.</p>\n<p>XanaNode is an attempt to address this deeper problem.</p>\n<p>---</p>\n<p># Core Principles</p>\n<h2>1. Relationships Are First-Class</h2>\n<p>Traditional systems primarily store content.</p>\n<p>XanaNode stores both content and the relationships that connect content.</p>\n<p>Examples:</p>\n<p>* supports * contradicts * explains * derived_from * created * memorializes * documents * participates_in</p>\n<p>Relationships are explicit, queryable, versioned structures.</p>\n<p>---</p>\n<h2>2. Provenance Matters</h2>\n<p>Every claim should be traceable.</p>\n<p>Users should be able to answer:</p>\n<p>* Where did this come from? * Who said it? * What evidence supports it? * What contradicts it? * What changed over time?</p>\n<p>XanaNode prioritizes preserving knowledge lineage rather than merely preserving information.</p>\n<p>---</p>\n<h2>3. Claims Are Not Facts</h2>\n<p>Claims, observations, concepts, essays, and sources are distinct node types.</p>\n<p>XanaNode does not assume consensus.</p>\n<p>Instead it preserves:</p>\n<p>* claims * counterclaims * evidence * disagreement * uncertainty * open questions * hypotheses * knowledge gaps * review status</p>\n<p>The goal is not enforced truth.</p>\n<p>The goal is navigable knowledge.</p>\n<p>---</p>\n<h2>4. Knowledge Is Structure</h2>\n<p>A knowledge substrate is not information.</p>\n<p>A knowledge substrate is the structure that determines how information relates, persists, evolves, and can be understood.</p>\n<p>The same information arranged differently produces different knowledge capabilities.</p>\n<p>---</p>\n<h2>5. Human Readable and Machine Interpretable</h2>\n<p>Most semantic systems optimize for machines.</p>\n<p>Most publishing systems optimize for humans.</p>\n<p>XanaNode attempts to support both.</p>\n<p>Humans should be able to browse, understand, and author the graph.</p>\n<p>Machines should be able to query, reason over, and analyze it.</p>\n<p>---</p>\n<p># Knowledge Substrates</p>\n<p>A knowledge substrate is an independently authored graph of knowledge.</p>\n<p>In XanaNode, a production substrate is backed by a Git repository. Git supplies history, branching, review, merge, and synchronization; XanaNode supplies the knowledge model, schemas, validation rules, and federation semantics.</p>\n<p>A substrate is portable. A hand-built substrate should be able to follow the standard folder tree, include its own files, and open in compatible tools without private state. A <code>.substrate</code> archive carries the whole substrate as data: manifest, nodes, relationships, media, source files, schemas, reports, and workspace metadata needed for round trips.</p>\n<p>Examples:</p>\n<p>* personal knowledge substrates * research substrates * organizational substrates * historical archives * educational collections * institutional memory systems</p>\n<p>Each substrate remains independently owned and moderated.</p>\n<p>There is no requirement for a central authority.</p>\n<h2>Repository Files, Assets, And Knowledge Objects</h2>\n<p>XanaNode does not treat every file in a Git repository as equally worthy of becoming its own node.</p>\n<p>Portable substrates should preserve important local files, but preservation and elevation are different actions:</p>\n<p>* **Preserve as an attached asset** when the file is implementation support, packaging glue, projection inventory, test scaffolding, or another file whose meaning is already carried by a higher-level node. * **Promote to a first-class node** when the file is itself a knowledge-bearing object that should be citable, discussable, governable, reviewable, or traversable on its own.</p>\n<p>A raw repository file generally deserves its own node when one or more of these are true:</p>\n<p>* it defines protocol, schema, registry, compatibility, or governance behavior * it is an independently citable specification, proposal, policy, source document, or canonical example * it is itself a portable substrate/report/registry artifact that other tools may inspect directly * authors are likely to discuss its contents semantically, not merely acknowledge that the file exists</p>\n<p>A raw repository file should usually remain an attached asset, snapshot, or supporting file when:</p>\n<p>* it exists mainly to make another node render, build, test, package, or execute * it is one item in a large projection-asset inventory such as icons, thumbnails, static images, or generated output * it is better modeled as provenance on a higher-level source, media, project, schema, or substrate node</p>\n<p>This rule also applies to source/media modeling. A file does not need two separate nodes just because it is both readable and visual.</p>\n<p>* If the knowledge object being cited is the file itself, prefer one <code>source</code> node. * If that same node carries a local image, PDF, audio, video, or other file, it may also carry the <code>media</code> facet and related <code>media_type</code> fields. * Use a separate <code>media</code> node only when the media object is distinct from the source object it previews, documents, depicts, or was derived from.</p>\n<p>The practical goal is simple: preserve the bytes, but only promote the files that carry real semantic weight.</p>\n<p>---</p>\n<p># Federation</p>\n<p>XanaNode is designed for federation.</p>\n<p>Multiple independent substrates can interoperate without surrendering ownership.</p>\n<p>Example:</p>\n<p>Researcher A maintains a substrate.</p>\n<p>Researcher B maintains a substrate.</p>\n<p>A university maintains a substrate.</p>\n<p>A museum maintains a substrate.</p>\n<p>Each can preserve its own interpretations and governance policies.</p>\n<p>Federation allows these substrates to be connected and analyzed together.</p>\n<p>The goal is not one global database.</p>\n<p>The goal is a network of interoperable knowledge substrates.</p>\n<p>---</p>\n<p># Schema Architecture</p>\n<p>XanaNode uses a layered schema model.</p>\n<h2>Core Schema</h2>\n<p>Provides the canonical node and relationship registries for the protocol.</p>\n<p>The current core registry files are versioned and live in <a href=\"schemas\">schemas/</a>:</p>\n<p>* <a href=\"schemas/xananode-node-types.v0.3.0.json\">xananode-node-types.v0.3.0.json</a> * <a href=\"schemas/xananode-node-types.schema.v0.3.0.json\">xananode-node-types.schema.v0.3.0.json</a> * <a href=\"schemas/xananode-relationship-types.v0.5.0.json\">xananode-relationship-types.v0.5.0.json</a> * <a href=\"schemas/xananode-relationship-types.schema.v0.5.0.json\">xananode-relationship-types.schema.v0.5.0.json</a></p>\n<p>The node registry currently centers on core types such as person, concept, claim, question, hypothesis, problem, knowledge_gap, communication, response, source, essay, and observation.</p>\n<p>The relationship registry currently centers on core types such as defines, has_claim, supports, contradicts, documents, derived_from, answers, investigates, requires_source, possibly_related_to, and communicated_to.</p>\n<p>The core property registry standardizes common open properties such as <code>uncertainty_level</code>, <code>review_status</code>, <code>research_priority</code>, <code>evidence_strength</code>, <code>communication_model</code>, and <code>communication_pattern</code>.</p>\n<p>The substrate layout registry defines the standard folder tree that compatible tools should understand:</p>\n<p>* <a href=\"schemas/substrate-layout.schema.json\">substrate-layout.schema.json</a> * <a href=\"schemas/xananode-substrate-layout.v0.1.0.json\">xananode-substrate-layout.v0.1.0.json</a></p>\n<p>This makes the substrate format tight enough that someone can manually build a substrate outside the XanaNode tools, drop it into Core, Workspace, Studio, Hugo, or another compatible implementation, and expect the records and files to be discoverable.</p>\n<p>The core schema provides interoperability while still allowing extension schemas to define namespaced custom types.</p>\n<p>Validation tools live in <a href=\"tools\">tools/</a>. The repository validator checks JSON Schema conformance plus XanaNode-specific integrity rules such as declared relationship types, registered namespaces, and resolvable relationship endpoints.</p>\n<p>---</p>\n<p># Implementations</p>\n<p>The protocol repository is implementation-neutral. It defines the canonical schemas, registries, examples, governance material, and validation rules. The active implementation stack is maintained in separate repositories that consume this protocol:</p>\n<p>* <a href=\"https://github.com/kingc95/XanaNode-Core-SDK\">XanaNode Core SDK</a> is the renderer-independent parser, validator, graph builder, fragment engine, and exporter. It includes this protocol repository as <code>vendor/xananode-protocol</code>. * <a href=\"https://github.com/kingc95/XanaNode-Workspace\">XanaNode Workspace</a> is the local-first workspace engine used by Studio, CLIs, and editor integrations. It includes Core SDK as <code>vendor/xananode-core</code>. * <a href=\"https://github.com/kingc95/XanaNode-Hugo\">XanaNode Hugo Theme</a> is the static-site renderer and graph viewer for XanaNode-compatible substrates. * <a href=\"https://github.com/kingc95/XanaNode-Studio\">XanaNode Studio</a> is the desktop authoring workbench. It includes Hugo and Workspace as submodules. * <a href=\"https://github.com/kingc95/XanaNode-Mobile\">XanaNode Mobile</a> is the Android capture companion for field intake, media capture, quick notes, portable <code>.substrate</code> handoff, and later federation back into the rest of the stack.</p>\n<p>The intended dependency chain is:</p>\n<p>```text xananode protocol -&gt; XanaNode-Core-SDK -&gt; XanaNode-Workspace -&gt; XanaNode-Studio -&gt; XanaNode-Mobile</p>\n<p>XanaNode-Hugo consumes the protocol artifacts as the published/static preview renderer. ```</p>\n<p>For a full local Studio checkout:</p>\n<p>``<code>bash git clone --recurse-submodules https://github.com/kingc95/XanaNode-Studio.git cd XanaNode-Studio npm install npm test </code>``</p>\n<p>---</p>\n<h2>How The Stack Fits Together</h2>\n<p>XanaNode is designed so the same substrate can move through the whole stack without being reinvented at each layer.</p>\n<p>``<code>text Protocol defines the rules Core reads, validates, analyzes, and exports substrates Workspace manages substrate folders, registry targets, working copies, and .substrate bundles Studio uses Workspace/Core for authoring and federation UX Mobile uses Workspace/Core for capture-first intake and portable handoff Hugo uses Core to validate and mount substrate sources, then projects them as a static site </code>``</p>\n<p>Once you are past Core, the thing is still a substrate. Sometimes it is a Git-backed substrate folder. Sometimes it is a portable <code>.substrate</code> bundle. Sometimes it is a mounted registry target cloned locally. These are transport and governance forms of the same thing, not separate knowledge objects.</p>\n<p>The protocol registry can list known federation targets. Official tools should prefer that registry when offering online substrate choices, while still allowing federation with valid external substrates that are not yet listed there.</p>\n<p>To regenerate the Protocol repo&#39;s own substrate source:</p>\n<p>``<code>powershell node tools/build-substrate-source.mjs </code>``</p>\n<p>Or from the <code>XanaNode-Master</code> workspace root:</p>\n<p>``<code>powershell npm run protocol:build-substrate-source </code>``</p>\n<p>The protocol itself is not tied to Node.js. The current reference stack happens to be Node-based, but the protocol-facing contract should be callable from any stack. Official tooling should converge on stable <code>xananode-core</code> and <code>xananode-workspace</code> executable interfaces so Studio, Mobile, Hugo helpers, AI agents, and future third-party tools can operate on substrates without embedding one implementation language directly. See <a href=\"specs/substrates.md\">specs/substrates.md</a> and <a href=\"proposals/XNP-0012-executable-tool-contract.md\">proposals/XNP-0012-executable-tool-contract.md</a>.</p>\n<h2>FAQ</h2>\n<h3>Is this a real working stack?</h3>\n<p>Yes. XanaNode is not just a schema set. The protocol, Core SDK, Workspace engine, Studio authoring tool, Mobile capture companion, Hugo projection layer, and canonical XanaNode substrate are meant to run together right now.</p>\n<h3>What is a <code>.substrate</code> file?</h3>\n<p>A <code>.substrate</code> file is a portable bundled substrate. It can carry the manifest, nodes, relationships, media, source snapshots, schemas, and supporting metadata needed to move a substrate between tools without losing pieces.</p>\n<h3>Is a <code>.substrate</code> different from a substrate folder?</h3>\n<p>No. It is the same substrate in a packaged transmission form. A Git-backed folder is better for active authorship and history. A <code>.substrate</code> bundle is better for shipping, handoff, offline import, and archival release.</p>\n<h3>Where does federation happen?</h3>\n<p>Federation begins at the protocol level and is enforced through Core. Workspace is the management layer that should clone, mount, compare, import, or merge external substrates. Studio is the human-facing authoring interface for that workflow. Hugo is a projection layer that can mount configured substrate sources at build time and render the result.</p>\n<h3>Do I have to rewrite imported substrate data as Markdown for Hugo?</h3>\n<p>No. Markdown is an authoring convenience, not the only source form. Hugo should be able to mount or import validated substrate JSON through Core and render it directly.</p>\n<h3>Can substrates overlap?</h3>\n<p>Yes. Overlap is expected. Independent substrates may describe the same people, organizations, concepts, or works differently. XanaNode is meant to preserve that overlap, carry the provenance, and let tools surface the comparison instead of flattening it away.</p>\n<p>---</p>\n<h2>Extension Schema</h2>\n<p>Substrates may define custom node types and relationship types.</p>\n<p>Examples:</p>\n<p>museum:artifact</p>\n<p>biology:species</p>\n<p>legal:precedent</p>\n<p>genealogy:ancestor_of</p>\n<p>Custom types are:</p>\n<p>* namespaced * documented * versioned * machine-readable</p>\n<p>This allows evolution without breaking compatibility.</p>\n<p>---</p>\n<p># Namespaces</p>\n<p>XanaNode supports schema namespaces.</p>\n<p>Examples:</p>\n<p>xananode:claim</p>\n<p>museum:artifact</p>\n<p>research:experiment</p>\n<p>Namespaces prevent collisions and allow independent schema development.</p>\n<p>Relationships between schemas can themselves be represented.</p>\n<p>Examples:</p>\n<p>equivalent_to</p>\n<p>broader_than</p>\n<p>narrower_than</p>\n<p>related_to</p>\n<p>---</p>\n<p># Tumbler Addressing</p>\n<p>XanaNode is intended to support persistent, location-independent addressing.</p>\n<p>The goal is to move beyond URLs and document paths.</p>\n<p>Objects should remain addressable even if:</p>\n<p>* files move * websites migrate * structures change</p>\n<p>Future implementations may support:</p>\n<p>* node-level addressing * relationship-level addressing * claim-level addressing * fragment-level addressing * transcluded content references</p>\n<p>This provides durable references across time.</p>\n<p>---</p>\n<p># Transclusion</p>\n<p>XanaNode embraces transclusion principles inspired by Project Xanadu.</p>\n<p>Rather than duplicating information repeatedly, knowledge should be referenced and reused.</p>\n<p>Benefits include:</p>\n<p>* provenance preservation * reduction of duplication * easier revision tracking * stronger lineage visibility</p>\n<p>Practical implementations may initially focus on partial transclusion while preserving compatibility with existing publishing systems.</p>\n<p>---</p>\n<p># Mergeability</p>\n<p>Mergeability is a core design goal.</p>\n<p>Two substrates should be able to exchange knowledge without requiring identical governance.</p>\n<p>Merge operations should preserve:</p>\n<p>* authorship * provenance * disagreement * source attribution * local moderation decisions</p>\n<p>Merging should add structure rather than destroy context.</p>\n<p>---</p>\n<p># Civilizational Memory</p>\n<p>The long-term goal of XanaNode is not merely better note-taking, search, or AI retrieval.</p>\n<p>The goal is the creation of a federated civilizational memory system.</p>\n<p>A system where:</p>\n<p>* knowledge remains locally owned * provenance remains visible * disagreement remains preserved * schemas remain interoperable * relationships remain navigable</p>\n<p>A civilization-scale memory substrate built from independently maintained knowledge systems rather than a single centralized authority.</p>\n<p>XanaNode is an open protocol for building interoperable knowledge substrates that preserve relationships, provenance, lineage, and disagreement across independently authored and federated knowledge systems.</p>",
      "url": "/source/protocol-artifact-readme.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/README.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-readme.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-registry-readme.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-registry-readme.md",
      "title": "Registry / README",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "A registry artifact covering README.",
      "content": "# Registry\n\nThe registry directory lists known namespaces, schemas, implementations, and related resources.\n\nThis is not a central authority over truth.\n\nIt is a discovery aid.\n\nKnown implementations are listed in [known-implementations.json](known-implementations.json). Implementation repositories should point back to the protocol version and schema artifacts they target.\n\nKnown federation targets are listed in [federation-targets.json](federation-targets.json). These are discoverable online substrate sources that Workspace tools can clone, identify by branch and commit, and mount into another substrate without absorbing their records.\n",
      "html": "<p># Registry</p>\n<p>The registry directory lists known namespaces, schemas, implementations, and related resources.</p>\n<p>This is not a central authority over truth.</p>\n<p>It is a discovery aid.</p>\n<p>Known implementations are listed in <a href=\"known-implementations.json\">known-implementations.json</a>. Implementation repositories should point back to the protocol version and schema artifacts they target.</p>\n<p>Known federation targets are listed in <a href=\"federation-targets.json\">federation-targets.json</a>. These are discoverable online substrate sources that Workspace tools can clone, identify by branch and commit, and mount into another substrate without absorbing their records.</p>",
      "url": "/source/protocol-artifact-registry-readme.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/registry/README.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-registry-readme.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-schemas-readme.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-schemas-readme.md",
      "title": "Schemas / README",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A canonical schema or registry artifact published as README.",
      "content": "# Schemas\r\n\r\nThis directory contains the machine-readable registry and validation artifacts for XanaNode.\r\n\r\nThe current layout is versioned and split between canonical type registries and JSON Schemas that validate substrate metadata and reports.\r\n\r\nCore files:\r\n\r\n- [xananode-node-types.v0.3.0.json](xananode-node-types.v0.3.0.json)\r\n- [xananode-node-types.schema.v0.3.0.json](xananode-node-types.schema.v0.3.0.json)\r\n- [xananode-relationship-types.v0.5.0.json](xananode-relationship-types.v0.5.0.json)\n- [xananode-relationship-types.schema.v0.5.0.json](xananode-relationship-types.schema.v0.5.0.json)\n- [substrate-manifest.schema.json](substrate-manifest.schema.json)\n- [substrate-node.schema.json](substrate-node.schema.json)\n- [substrate-relationships.schema.json](substrate-relationships.schema.json)\n- [property-registry.schema.json](property-registry.schema.json)\n- [xananode-property-registry.v0.1.0.json](xananode-property-registry.v0.1.0.json)\n- [substrate-layout.schema.json](substrate-layout.schema.json)\n- [xananode-substrate-layout.v0.1.0.json](xananode-substrate-layout.v0.1.0.json)\n- [namespace.schema.json](namespace.schema.json)\n- [merge-report.schema.json](merge-report.schema.json)\n- [compatibility-report.schema.json](compatibility-report.schema.json)\n- [substrate-diff.schema.json](substrate-diff.schema.json)\n- [author-profile.schema.json](author-profile.schema.json)\n- [nanopublication.schema.json](nanopublication.schema.json)\n- [ro-crate-metadata.schema.json](ro-crate-metadata.schema.json)\n\r\nThe versioned registry files define the canonical core node, relationship, property, and substrate layout conventions. The schema files describe the required structure of each registry plus related substrate and compatibility documents.\n\nSchemas and schema registries are licensed under `Apache-2.0` so implementations can adopt them freely while preserving attribution and provenance.\n",
      "html": "<p># Schemas</p>\n<p>This directory contains the machine-readable registry and validation artifacts for XanaNode.</p>\n<p>The current layout is versioned and split between canonical type registries and JSON Schemas that validate substrate metadata and reports.</p>\n<p>Core files:</p>\n<ul><li><a href=\"xananode-node-types.v0.3.0.json\">xananode-node-types.v0.3.0.json</a></li><li><a href=\"xananode-node-types.schema.v0.3.0.json\">xananode-node-types.schema.v0.3.0.json</a></li><li><a href=\"xananode-relationship-types.v0.5.0.json\">xananode-relationship-types.v0.5.0.json</a></li><li><a href=\"xananode-relationship-types.schema.v0.5.0.json\">xananode-relationship-types.schema.v0.5.0.json</a></li><li><a href=\"substrate-manifest.schema.json\">substrate-manifest.schema.json</a></li><li><a href=\"substrate-node.schema.json\">substrate-node.schema.json</a></li><li><a href=\"substrate-relationships.schema.json\">substrate-relationships.schema.json</a></li><li><a href=\"property-registry.schema.json\">property-registry.schema.json</a></li><li><a href=\"xananode-property-registry.v0.1.0.json\">xananode-property-registry.v0.1.0.json</a></li><li><a href=\"substrate-layout.schema.json\">substrate-layout.schema.json</a></li><li><a href=\"xananode-substrate-layout.v0.1.0.json\">xananode-substrate-layout.v0.1.0.json</a></li><li><a href=\"namespace.schema.json\">namespace.schema.json</a></li><li><a href=\"merge-report.schema.json\">merge-report.schema.json</a></li><li><a href=\"compatibility-report.schema.json\">compatibility-report.schema.json</a></li><li><a href=\"substrate-diff.schema.json\">substrate-diff.schema.json</a></li><li><a href=\"author-profile.schema.json\">author-profile.schema.json</a></li><li><a href=\"nanopublication.schema.json\">nanopublication.schema.json</a></li><li><a href=\"ro-crate-metadata.schema.json\">ro-crate-metadata.schema.json</a></li></ul>\n<p>The versioned registry files define the canonical core node, relationship, property, and substrate layout conventions. The schema files describe the required structure of each registry plus related substrate and compatibility documents.</p>\n<p>Schemas and schema registries are licensed under <code>Apache-2.0</code> so implementations can adopt them freely while preserving attribution and provenance.</p>",
      "url": "/source/protocol-artifact-schemas-readme.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/schemas/README.md",
      "license": "",
      "license_url": "",
      "rights_status": "Apache-2.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-schemas-readme.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-specs-compatibility-levels.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-specs-compatibility-levels.md",
      "title": "Specs / Compatibility Levels",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A protocol specification covering Compatibility Levels.",
      "content": "# Compatibility Levels\n\nCompatibility levels describe how safely one implementation can ingest or federate another substrate.\n\n## Level 0: Opaque\n\nThe substrate can be stored as raw data, but its schema is unknown.\n\n## Level 1: Manifest Recognized\n\nThe substrate declares a manifest and namespace.\n\n## Level 2: Core Valid\n\nThe substrate validates against XanaNode Core.\n\n## Level 3: Extensions Declared\n\nThe substrate uses custom types, but those types are declared in namespaced extension schemas.\n\n## Level 4: Merge Candidate\n\nThe substrate can participate in identity matching, schema mapping, and merge reporting.\n\n## Level 5: Federation Ready\n\nThe substrate supports stable IDs, provenance, declared schemas, merge reports, and compatibility reports.\n\nCompatibility is not a moral ranking. It is a practical statement about how much automated interoperation is safe.\n",
      "html": "<p># Compatibility Levels</p>\n<p>Compatibility levels describe how safely one implementation can ingest or federate another substrate.</p>\n<h2>Level 0: Opaque</h2>\n<p>The substrate can be stored as raw data, but its schema is unknown.</p>\n<h2>Level 1: Manifest Recognized</h2>\n<p>The substrate declares a manifest and namespace.</p>\n<h2>Level 2: Core Valid</h2>\n<p>The substrate validates against XanaNode Core.</p>\n<h2>Level 3: Extensions Declared</h2>\n<p>The substrate uses custom types, but those types are declared in namespaced extension schemas.</p>\n<h2>Level 4: Merge Candidate</h2>\n<p>The substrate can participate in identity matching, schema mapping, and merge reporting.</p>\n<h2>Level 5: Federation Ready</h2>\n<p>The substrate supports stable IDs, provenance, declared schemas, merge reports, and compatibility reports.</p>\n<p>Compatibility is not a moral ranking. It is a practical statement about how much automated interoperation is safe.</p>",
      "url": "/source/protocol-artifact-specs-compatibility-levels.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/specs/compatibility-levels.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-specs-compatibility-levels.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-specs-federation.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-specs-federation.md",
      "title": "Specs / Federation",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A protocol specification covering Federation.",
      "content": "# Federation\n\nFederation is the process of connecting independently authored XanaNode substrates.\n\nFederation does not require one canonical truth source.\n\nInstead, it preserves local substrates and creates mappings among them.\n\n## Federation Inputs\n\n- substrate manifests\n- node registries\n- relationship registries\n- custom extension schemas\n- provenance metadata\n- merge reports\n\n## Federation Outputs\n\n- compatibility reports\n- identity mappings\n- schema mappings\n- conflict reports\n- combined analysis views\n\n## Core Rule\n\nNever merge by destroying context.\n\nMerge by adding structure.\n\n## Pack Composition\n\nFederation, local pack ingress, and substrate merging share one protocol model. A pack is a bounded substrate or substrate fragment that can be composed with another substrate in one of three modes:\n\n- `mounted`: keep the external governance boundary. The receiving substrate may render, traverse, cite, and analyze the pack without copying it into canonical local authorship.\n- `imported`: copy pack records into generated local artifacts while preserving provenance and pack metadata. Import does not imply duplicate collapse or identity reconciliation.\n- `merged`: reconcile the incoming pack with local records through explicit identity mappings, merge candidates, conflict reports, and review policy.\n\nMounting is reversible and is the default for optional packs. Importing is an auditable intake step. Merging is a stronger federation operation and must preserve disagreement, provenance, and local context instead of overwriting them.\n",
      "html": "<p># Federation</p>\n<p>Federation is the process of connecting independently authored XanaNode substrates.</p>\n<p>Federation does not require one canonical truth source.</p>\n<p>Instead, it preserves local substrates and creates mappings among them.</p>\n<h2>Federation Inputs</h2>\n<ul><li>substrate manifests</li><li>node registries</li><li>relationship registries</li><li>custom extension schemas</li><li>provenance metadata</li><li>merge reports</li></ul>\n<h2>Federation Outputs</h2>\n<ul><li>compatibility reports</li><li>identity mappings</li><li>schema mappings</li><li>conflict reports</li><li>combined analysis views</li></ul>\n<h2>Core Rule</h2>\n<p>Never merge by destroying context.</p>\n<p>Merge by adding structure.</p>\n<h2>Pack Composition</h2>\n<p>Federation, local pack ingress, and substrate merging share one protocol model. A pack is a bounded substrate or substrate fragment that can be composed with another substrate in one of three modes:</p>\n<ul><li><code>mounted</code>: keep the external governance boundary. The receiving substrate may render, traverse, cite, and analyze the pack without copying it into canonical local authorship.</li><li><code>imported</code>: copy pack records into generated local artifacts while preserving provenance and pack metadata. Import does not imply duplicate collapse or identity reconciliation.</li><li><code>merged</code>: reconcile the incoming pack with local records through explicit identity mappings, merge candidates, conflict reports, and review policy.</li></ul>\n<p>Mounting is reversible and is the default for optional packs. Importing is an auditable intake step. Merging is a stronger federation operation and must preserve disagreement, provenance, and local context instead of overwriting them.</p>",
      "url": "/source/protocol-artifact-specs-federation.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/specs/federation.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-specs-federation.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-specs-implementation-compatibility.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-specs-implementation-compatibility.md",
      "title": "Specs / Implementation Compatibility",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A protocol specification covering Implementation Compatibility.",
      "content": "# Implementation Compatibility\n\nAn implementation may describe itself as XanaNode-compatible when it validates, emits, imports, or projects XanaNode protocol artifacts according to the canonical specification and registries.\n\nImplementations should identify themselves clearly and reference the canonical specification:\n\n```text\nThis project is a XanaNode-compatible implementation.\nCanonical specification: https://github.com/kingc95/XanaNode\n```\n\nIf the implementation supports only part of the protocol, it should say so:\n\n```text\nThis project is a partial XanaNode-compatible renderer for mounted substrate packs.\n```\n\nImplementations should not imply they are the canonical XanaNode project unless they are maintained as part of the canonical project. Compatibility means interoperability, not ownership.\n\nRecommended metadata:\n\n```json\n{\n  \"implements\": \"xananode-protocol\",\n  \"compatibility\": \"xananode-compatible\",\n  \"specification\": \"https://github.com/kingc95/XanaNode\",\n  \"supported_artifacts\": [\"substrate.json\", \"nodes.json\", \"relationships.json\"]\n}\n```\n\nThis convention supports legal attribution, community attribution, brand recognition, and independent federation.\n\n",
      "html": "<p># Implementation Compatibility</p>\n<p>An implementation may describe itself as XanaNode-compatible when it validates, emits, imports, or projects XanaNode protocol artifacts according to the canonical specification and registries.</p>\n<p>Implementations should identify themselves clearly and reference the canonical specification:</p>\n<p>``<code>text This project is a XanaNode-compatible implementation. Canonical specification: https://github.com/kingc95/XanaNode </code>``</p>\n<p>If the implementation supports only part of the protocol, it should say so:</p>\n<p>``<code>text This project is a partial XanaNode-compatible renderer for mounted substrate packs. </code>``</p>\n<p>Implementations should not imply they are the canonical XanaNode project unless they are maintained as part of the canonical project. Compatibility means interoperability, not ownership.</p>\n<p>Recommended metadata:</p>\n<p>``<code>json { &quot;implements&quot;: &quot;xananode-protocol&quot;, &quot;compatibility&quot;: &quot;xananode-compatible&quot;, &quot;specification&quot;: &quot;https://github.com/kingc95/XanaNode&quot;, &quot;supported_artifacts&quot;: [&quot;substrate.json&quot;, &quot;nodes.json&quot;, &quot;relationships.json&quot;] } </code>``</p>\n<p>This convention supports legal attribution, community attribution, brand recognition, and independent federation.</p>",
      "url": "/source/protocol-artifact-specs-implementation-compatibility.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/specs/implementation-compatibility.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-specs-implementation-compatibility.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-specs-interoperability.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-specs-interoperability.md",
      "title": "Specs / Interoperability",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A protocol specification covering Interoperability.",
      "content": "# Interoperability Profiles\n\nXanaNode keeps its author-facing JSON simple, but it should map cleanly to established standards.\n\n## JSON-LD\n\nThe canonical JSON-LD context lives at [../contexts/xananode.context.jsonld](../contexts/xananode.context.jsonld).\n\nImplementations should use the context when exporting nodes, relationships, fragments, and substrate packages into Linked Data environments.\n\n## Web Annotation Selectors\n\nFragment selectors should use Web Annotation selector names where possible:\n\n- `TextQuoteSelector`\n- `TextPositionSelector`\n- `FragmentSelector`\n- `CssSelector`\n- `XPathSelector`\n- `RangeSelector`\n\nThe older `semantic-anchor` selector remains acceptable for human-authored stable anchors.\n\n## PROV-O\n\nXanaNode provenance fields map to PROV-O concepts:\n\n- nodes and relationship assertions are `prov:Entity`\n- people, organizations, projects, and external actors are `prov:Agent`\n- creation, assertion, review, import, and publication are `prov:Activity`\n- `created_by` maps to `prov:wasAttributedTo`\n- `created_at` maps to `prov:generatedAtTime`\n- `derived_from` maps to derivation provenance\n\n## Content IDs\n\nHuman-readable protocol IDs remain the stable author-facing identifiers. Implementations may add immutable content identifiers:\n\n- `protocol_id`: stable XanaNode ID\n- `content_id`: immutable hash or CID-like identity for the content\n- `version_id`: version identity such as a Git commit/path reference\n\nContent IDs should not replace protocol IDs. They support verification, fixity, and preservation.\n\n## Preservation Packages\n\nSubstrates may include RO-Crate-compatible companion metadata named `ro-crate-metadata.json`. This metadata should describe the substrate package, schema references, rights, authorship, fixity, and dependencies.\n\n## Nanopublication Profile\n\nHigh-value claim nodes may be exported in a nanopublication-like package separating:\n\n- assertion\n- provenance\n- publication information\n\nThis is optional but useful for scholarly, legal, scientific, and archival substrates.\n",
      "html": "<p># Interoperability Profiles</p>\n<p>XanaNode keeps its author-facing JSON simple, but it should map cleanly to established standards.</p>\n<h2>JSON-LD</h2>\n<p>The canonical JSON-LD context lives at <a href=\"../contexts/xananode.context.jsonld\">../contexts/xananode.context.jsonld</a>.</p>\n<p>Implementations should use the context when exporting nodes, relationships, fragments, and substrate packages into Linked Data environments.</p>\n<h2>Web Annotation Selectors</h2>\n<p>Fragment selectors should use Web Annotation selector names where possible:</p>\n<ul><li><code>TextQuoteSelector</code></li><li><code>TextPositionSelector</code></li><li><code>FragmentSelector</code></li><li><code>CssSelector</code></li><li><code>XPathSelector</code></li><li><code>RangeSelector</code></li></ul>\n<p>The older <code>semantic-anchor</code> selector remains acceptable for human-authored stable anchors.</p>\n<h2>PROV-O</h2>\n<p>XanaNode provenance fields map to PROV-O concepts:</p>\n<ul><li>nodes and relationship assertions are <code>prov:Entity</code></li><li>people, organizations, projects, and external actors are <code>prov:Agent</code></li><li>creation, assertion, review, import, and publication are <code>prov:Activity</code></li><li><code>created_by</code> maps to <code>prov:wasAttributedTo</code></li><li><code>created_at</code> maps to <code>prov:generatedAtTime</code></li><li><code>derived_from</code> maps to derivation provenance</li></ul>\n<h2>Content IDs</h2>\n<p>Human-readable protocol IDs remain the stable author-facing identifiers. Implementations may add immutable content identifiers:</p>\n<ul><li><code>protocol_id</code>: stable XanaNode ID</li><li><code>content_id</code>: immutable hash or CID-like identity for the content</li><li><code>version_id</code>: version identity such as a Git commit/path reference</li></ul>\n<p>Content IDs should not replace protocol IDs. They support verification, fixity, and preservation.</p>\n<h2>Preservation Packages</h2>\n<p>Substrates may include RO-Crate-compatible companion metadata named <code>ro-crate-metadata.json</code>. This metadata should describe the substrate package, schema references, rights, authorship, fixity, and dependencies.</p>\n<h2>Nanopublication Profile</h2>\n<p>High-value claim nodes may be exported in a nanopublication-like package separating:</p>\n<ul><li>assertion</li><li>provenance</li><li>publication information</li></ul>\n<p>This is optional but useful for scholarly, legal, scientific, and archival substrates.</p>",
      "url": "/source/protocol-artifact-specs-interoperability.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/specs/interoperability.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-specs-interoperability.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-specs-merge-validation.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-specs-merge-validation.md",
      "title": "Specs / Merge Validation",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A protocol specification covering Merge Validation.",
      "content": "# Merge Validation\n\nMerge validation checks whether multiple substrates can be analyzed together.\n\nIt should verify:\n\n- each substrate has a namespace\n- each node has a stable ID\n- relationship types are declared\n- custom types are declared\n- required fields exist\n- target nodes can be resolved or marked external\n- conflicts are reported rather than silently overwritten\n\nA merge report is not a final truth statement. It is a record of what the merge process found.\n",
      "html": "<p># Merge Validation</p>\n<p>Merge validation checks whether multiple substrates can be analyzed together.</p>\n<p>It should verify:</p>\n<ul><li>each substrate has a namespace</li><li>each node has a stable ID</li><li>relationship types are declared</li><li>custom types are declared</li><li>required fields exist</li><li>target nodes can be resolved or marked external</li><li>conflicts are reported rather than silently overwritten</li></ul>\n<p>A merge report is not a final truth statement. It is a record of what the merge process found.</p>",
      "url": "/source/protocol-artifact-specs-merge-validation.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/specs/merge-validation.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-specs-merge-validation.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-specs-namespaces.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-specs-namespaces.md",
      "title": "Specs / Namespaces",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A protocol specification covering Namespaces.",
      "content": "# Namespaces\n\nNamespaces prevent independently authored substrates from colliding.\n\nA namespace identifies who owns a local vocabulary or substrate.\n\nExamples:\n\n```text\nxananode:claim\nexample.merge:report/federation-example-001\nexample.researcher_a:concept/knowledge-substrate\n```\n\nThe core namespace is `xananode`.\n\nCustom substrates should use their own namespace.\n\nA namespace should be declared in a substrate manifest and in any extension schema files.\n",
      "html": "<p># Namespaces</p>\n<p>Namespaces prevent independently authored substrates from colliding.</p>\n<p>A namespace identifies who owns a local vocabulary or substrate.</p>\n<p>Examples:</p>\n<p>``<code>text xananode:claim example.merge:report/federation-example-001 example.researcher_a:concept/knowledge-substrate </code>``</p>\n<p>The core namespace is <code>xananode</code>.</p>\n<p>Custom substrates should use their own namespace.</p>\n<p>A namespace should be declared in a substrate manifest and in any extension schema files.</p>",
      "url": "/source/protocol-artifact-specs-namespaces.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/specs/namespaces.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-specs-namespaces.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-specs-nodes.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-specs-nodes.md",
      "title": "Specs / Nodes",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A protocol specification covering Nodes.",
      "content": "# Nodes\r\n\r\nNodes are addressable knowledge objects.\r\n\r\nA node may represent a person, concept, claim, question, hypothesis, problem, knowledge gap, communication, response, source, observation, essay, media item, event, place, organization, project, technology, publication, community, relationship, revision, trail, schema, or fragment.\n\r\nNodes should have stable IDs and human-readable summaries.\r\n\r\nNodes should carry provenance metadata when it is known. Common provenance fields include `created_by`, `created_at`, `updated_at`, `source_url`, `rights_status`, and `confidence`.\r\n\r\n`created_by` should point to a person, organization, project, or external actor identifier when possible. If the actor is local to the substrate, it should be represented as a node.\r\n\r\nA node is not automatically true. It is an object in the substrate that can be connected to evidence, claims, sources, disputes, and revisions.\n\n## Inquiry And Knowledge States\n\nKnowledge work is not only a collection of asserted facts. It also contains questions, provisional explanations, missing evidence, and unresolved problems. XanaNode models these as first-class nodes so a substrate can show what it knows, what it does not know, and what it is actively trying to find out.\n\nUse `question` for an explicit inquiry or prompt. A question may be answered, partially answered, raised by a source, asked in a communication, or connected to a knowledge gap.\n\nUse `hypothesis` for a provisional explanation or prediction. A hypothesis should be connected to tests, evidence, counterevidence, validation, falsification, and revision history.\n\nUse `problem` for a difficulty, risk, design challenge, or research problem that organizes work.\n\nUse `knowledge_gap` for a known absence: missing citation, unknown author, lost document, incomplete context, unresolved identity, or evidence that has not been found yet.\n\nCommon epistemic workflow properties include `uncertainty_level`, `review_status`, `research_priority`, and `evidence_strength`. These fields are also listed in the property registry so tools can parse them consistently.\n\nExample:\n\n```json\n{\n  \"id\": \"example.minimal:question/why-relationships-matter\",\n  \"title\": \"Why do relationships matter?\",\n  \"type\": \"question\",\n  \"status\": \"open\",\n  \"importance\": 5,\n  \"summary\": \"An inquiry into why preserving relationship structure changes what a knowledge system can do.\",\n  \"uncertainty_level\": \"medium\",\n  \"review_status\": \"needs_review\",\n  \"research_priority\": 4,\n  \"relationships\": []\n}\n```\n\n## Communication Nodes\n\nCommunication should not always be flattened into a simple edge such as `authored` or `discusses`. A communication can have topology, participants, directionality, feedback, medium, audience, and consequences. When those properties matter, model the communication itself as a `communication` node.\n\nUse `communication_model` to describe participant topology:\n\n- `one_to_one`\n- `one_to_many`\n- `many_to_one`\n- `many_to_many`\n\nUse `communication_pattern` to describe the semantic pattern:\n\n- `dialogue`\n- `broadcast`\n- `collection`\n- `coordination`\n- `negotiation`\n- `debate`\n- `consensus`\n- `instruction`\n- `query_response`\n- `publication`\n\nUse `response` for an answer, reply, rebuttal, clarification, or follow-up. Responses can `answers` a question, `replied_to` another response or communication, or be `answered_in` a communication context.\n\n## Primary Type And Facets\n\nEach node has one primary `type`. The primary type controls the node's stable route, required fields, default rendering, and validation behavior.\n\nNodes may also carry a narrower `subtype`. The subtype does not replace the primary type. It describes a more specific kind inside that route and validation category. For example, a node can remain a `source` while declaring `subtype: \"git_repository\"`, `subtype: \"official_site\"`, `subtype: \"documentation\"`, `subtype: \"support_page\"`, or `subtype: \"web_snapshot\"`.\n\nUse `subtypes` when one node needs multiple narrow labels. Subtypes should use lower-case slugs. Namespaced subtypes are allowed for extension vocabularies.\n\nSome real knowledge objects naturally play several roles. A quotation can be a `fragment` of a source, evidence used like a `source`, and an assertion that functions like a `claim`. Do not duplicate the quotation into separate nodes just to satisfy those categories. Model one canonical node and add secondary `facets` when the object should participate in more than one role.\n\nExample:\n\n```json\n{\n  \"id\": \"example.minimal:fragment/as-we-may-think-0004\",\n  \"title\": \"Associative Trails Quote\",\n  \"type\": \"fragment\",\n  \"facets\": [\"source\", \"claim\"],\n  \"summary\": \"A stable quotation fragment that can be cited as evidence and interpreted as an assertion.\"\n}\n```\n\nUse relationships to explain why a facet matters in context. For example, a quote can `supports` a claim, `derived_from` a source, or `defines` a concept. Facets describe secondary behavior; relationships describe meaning.\n\nProjection layers should show those secondary roles instead of hiding them. The primary `type` keeps authority over routing, validation, and default presentation, but a graph projection should visually mix the primary type color with any facet colors it recognizes. In other words, a quote that is primarily a `fragment` and also has `source` and `claim` facets should not look like only a fragment. Its visual mark should intertwingle the fragment, source, and claim colors by slices, bands, rings, or another accessible mixed-color treatment.\n\nIf a projection cannot use color, it should preserve the distinction with labels, texture, stroke patterns, badges, or another cue. A renderer may simplify the treatment at tiny sizes, but it should not erase the fact that the node carries multiple roles while claiming full projection compliance.\n\n## Media Assets\n\nMedia should be represented as `media` nodes, then connected to other nodes with `has_primary_media`, `depicts`, `represents`, `transcribes`, or another appropriate relationship. A node that wants a representative image should use `primary_media` to reference a media node rather than embedding a renderer-specific image path.\n\nPortable media nodes should use a relative `asset_path` when the file is part of the substrate or pack:\n\n```json\n{\n  \"id\": \"example.minimal:media/hugo-site-snapshot\",\n  \"title\": \"Hugo Site Snapshot\",\n  \"type\": \"media\",\n  \"subtype\": \"web_snapshot\",\n  \"media_type\": \"screenshot\",\n  \"mime_type\": \"image/png\",\n  \"asset_path\": \"assets/sources/hugo-official-site/snapshot.png\",\n  \"asset_role\": \"source_snapshot\",\n  \"source_url\": \"https://gohugo.io/\",\n  \"source_snapshot\": {\n    \"captured_at\": \"2026-06-19T00:00:00Z\",\n    \"source_url\": \"https://gohugo.io/\",\n    \"method\": \"screenshot\",\n    \"tool\": \"xananode-core\"\n  },\n  \"rights_status\": \"external\",\n  \"importance\": 3,\n  \"summary\": \"A captured visual representation of the Hugo official site.\",\n  \"relationships\": []\n}\n```\n\n`asset_path` is always relative to the substrate or pack root. It must not escape that root. Implementations that build packs must copy referenced assets into the pack and preserve the relative path, or rewrite the path and record that rewrite in pack metadata.\n\nMedia nodes should include stable content identifiers, usually `content_id: \"sha256:...\"`, whenever a tool can compute them. Content identifiers let federation tools detect duplicate files, distinguish duplicate bytes from duplicate titles, and explain how a file moved through different substrates.\n\nRecommended asset layout:\n\n```text\nassets/\n  media/\n  projection/\n    node-types/\n      <type>.svg\n    node-subtypes/\n      <type>/\n        <subtype>.svg\n  sources/\n    <source-node-local-id>/\n      snapshot.png\n      thumbnail.png\n      metadata.json\n```\n\nSource page previews, Open Graph images, screenshots, transcripts, and archived copies must preserve provenance, but they do not always require a second node. Use these rules:\n\n- if the captured file is itself the cited knowledge object, model it as one `source` node that may also carry the `media` facet, `media_type`, `mime_type`, `asset_path`, and related provenance fields\n- if the captured file is a distinct representation of another source object, use a separate `media` node and relate it back to the source with the appropriate relationship and provenance\n- if a renderer only needs the file as a projection aid and the file has no independent semantic role, keep it as an attached asset instead of elevating it to a new node\n\n## Type And Subtype Projection Media\n\nNode type registries may define projection media metadata under each node type's `projection` object. This lets projection layers draw a stable visual mark for a type without inventing renderer-local mappings.\n\nThe canonical fields are:\n\n```json\n{\n  \"type\": \"concept\",\n  \"projection\": {\n    \"icon\": \"concept\",\n    \"icon_label\": \"C\",\n    \"asset_path\": \"assets/projection/node-types/concept.svg\",\n    \"subtype_asset_path_template\": \"assets/projection/node-subtypes/concept/{subtype}.svg\"\n  }\n}\n```\n\nWhen a substrate or pack includes the actual icon file, the icon file must be preserved as an asset. It only needs its own `media` node when the icon is being discussed, governed, versioned, cited, or otherwise treated as a knowledge object in its own right. Otherwise the schema/type node may simply reference the asset through its projection metadata.\n\nOfficial XanaNode projections use this order for a node's center mark:\n\n1. primary media when the node has an explicit `primary_media` or resolved visual media\n2. subtype projection media when a subtype-specific asset is available\n3. node type projection media\n4. registry `icon` or `icon_label` fallback\n\nThe node title remains the title and should be shown outside the center mark. Type and subtype labels may be shown as subtle chips, legends, tooltips, or inspector metadata. They should not replace the title.\n\n## Branding As Knowledge\n\nBranding is part of substrate identity and provenance. A logo, icon, color palette, tagline, or author mark should not live only inside renderer configuration. If a project, organization, author, or substrate changes its branding, that change has context and should be traceable.\n\nRepresent brand assets as `media` nodes, usually with `subtype: \"logo\"` or `subtype: \"image\"`. Reference those media nodes from substrate manifests or author profiles through their `branding` blocks:\n\n```json\n{\n  \"branding\": {\n    \"brand_name\": \"XanaNode\",\n    \"tagline\": \"Relationships preserve knowledge\",\n    \"icon_media\": \"example.minimal:media/xananode-icon\",\n    \"primary_color\": \"#55D6BE\",\n    \"accent_color\": \"#FF8C00\",\n    \"reason\": \"Protocol branding is modeled as substrate metadata and media.\"\n  }\n}\n```\n\nRenderers should treat branding metadata as a projection input, not as the canonical source. The canonical source is the profile or manifest plus the referenced media node and its asset/provenance fields.\n\n## Software And Build Metadata\n\nSoftware projects, SDKs, renderers, workspace layers, desktop applications, and generated packs should carry version and build provenance when known.\n\nUse `software_version` for the package or release version. Use `build_metadata` for the exact build context:\n\n```json\n{\n  \"software_version\": \"0.1.0\",\n  \"build_metadata\": {\n    \"git_commit\": \"abc123\",\n    \"git_branch\": \"main\",\n    \"built_at\": \"2026-06-19T00:00:00Z\",\n    \"built_by\": \"@xananode/core\",\n    \"runtime\": \"node\",\n    \"dependencies\": [\n      {\n        \"name\": \"@xananode/core\",\n        \"version\": \"0.1.0\",\n        \"relationship\": \"uses\"\n      }\n    ]\n  }\n}\n```\n\nCompiled applications should record the version and compile/build date in their own metadata and, when represented in a substrate, on the project or technology node that describes that application. Generated canonical packs should include enough build metadata to identify which protocol, core, renderer, and workspace versions produced them.\n\n## Open Properties\n\nSubstrate nodes may carry extra root-level properties so authors can describe domain-specific facts without waiting for a protocol release. Common extra properties should use the canonical property registry when possible.\n\nThe core property registry standardizes fields such as `birth_date`, `geo_coordinates`, `currency_value`, `measurement_si`, and `external_identifier`. Implementations can use `schemas/xananode-property-registry.v0.1.0.json` to parse these values consistently while still accepting custom extension properties.\n",
      "html": "<p># Nodes</p>\n<p>Nodes are addressable knowledge objects.</p>\n<p>A node may represent a person, concept, claim, question, hypothesis, problem, knowledge gap, communication, response, source, observation, essay, media item, event, place, organization, project, technology, publication, community, relationship, revision, trail, schema, or fragment.</p>\n<p>Nodes should have stable IDs and human-readable summaries.</p>\n<p>Nodes should carry provenance metadata when it is known. Common provenance fields include <code>created_by</code>, <code>created_at</code>, <code>updated_at</code>, <code>source_url</code>, <code>rights_status</code>, and <code>confidence</code>.</p>\n<p><code>created_by</code> should point to a person, organization, project, or external actor identifier when possible. If the actor is local to the substrate, it should be represented as a node.</p>\n<p>A node is not automatically true. It is an object in the substrate that can be connected to evidence, claims, sources, disputes, and revisions.</p>\n<h2>Inquiry And Knowledge States</h2>\n<p>Knowledge work is not only a collection of asserted facts. It also contains questions, provisional explanations, missing evidence, and unresolved problems. XanaNode models these as first-class nodes so a substrate can show what it knows, what it does not know, and what it is actively trying to find out.</p>\n<p>Use <code>question</code> for an explicit inquiry or prompt. A question may be answered, partially answered, raised by a source, asked in a communication, or connected to a knowledge gap.</p>\n<p>Use <code>hypothesis</code> for a provisional explanation or prediction. A hypothesis should be connected to tests, evidence, counterevidence, validation, falsification, and revision history.</p>\n<p>Use <code>problem</code> for a difficulty, risk, design challenge, or research problem that organizes work.</p>\n<p>Use <code>knowledge_gap</code> for a known absence: missing citation, unknown author, lost document, incomplete context, unresolved identity, or evidence that has not been found yet.</p>\n<p>Common epistemic workflow properties include <code>uncertainty_level</code>, <code>review_status</code>, <code>research_priority</code>, and <code>evidence_strength</code>. These fields are also listed in the property registry so tools can parse them consistently.</p>\n<p>Example:</p>\n<p>``<code>json { &quot;id&quot;: &quot;example.minimal:question/why-relationships-matter&quot;, &quot;title&quot;: &quot;Why do relationships matter?&quot;, &quot;type&quot;: &quot;question&quot;, &quot;status&quot;: &quot;open&quot;, &quot;importance&quot;: 5, &quot;summary&quot;: &quot;An inquiry into why preserving relationship structure changes what a knowledge system can do.&quot;, &quot;uncertainty_level&quot;: &quot;medium&quot;, &quot;review_status&quot;: &quot;needs_review&quot;, &quot;research_priority&quot;: 4, &quot;relationships&quot;: [] } </code>``</p>\n<h2>Communication Nodes</h2>\n<p>Communication should not always be flattened into a simple edge such as <code>authored</code> or <code>discusses</code>. A communication can have topology, participants, directionality, feedback, medium, audience, and consequences. When those properties matter, model the communication itself as a <code>communication</code> node.</p>\n<p>Use <code>communication_model</code> to describe participant topology:</p>\n<ul><li><code>one_to_one</code></li><li><code>one_to_many</code></li><li><code>many_to_one</code></li><li><code>many_to_many</code></li></ul>\n<p>Use <code>communication_pattern</code> to describe the semantic pattern:</p>\n<ul><li><code>dialogue</code></li><li><code>broadcast</code></li><li><code>collection</code></li><li><code>coordination</code></li><li><code>negotiation</code></li><li><code>debate</code></li><li><code>consensus</code></li><li><code>instruction</code></li><li><code>query_response</code></li><li><code>publication</code></li></ul>\n<p>Use <code>response</code> for an answer, reply, rebuttal, clarification, or follow-up. Responses can <code>answers</code> a question, <code>replied_to</code> another response or communication, or be <code>answered_in</code> a communication context.</p>\n<h2>Primary Type And Facets</h2>\n<p>Each node has one primary <code>type</code>. The primary type controls the node&#39;s stable route, required fields, default rendering, and validation behavior.</p>\n<p>Nodes may also carry a narrower <code>subtype</code>. The subtype does not replace the primary type. It describes a more specific kind inside that route and validation category. For example, a node can remain a <code>source</code> while declaring <code>subtype: &quot;git_repository&quot;</code>, <code>subtype: &quot;official_site&quot;</code>, <code>subtype: &quot;documentation&quot;</code>, <code>subtype: &quot;support_page&quot;</code>, or <code>subtype: &quot;web_snapshot&quot;</code>.</p>\n<p>Use <code>subtypes</code> when one node needs multiple narrow labels. Subtypes should use lower-case slugs. Namespaced subtypes are allowed for extension vocabularies.</p>\n<p>Some real knowledge objects naturally play several roles. A quotation can be a <code>fragment</code> of a source, evidence used like a <code>source</code>, and an assertion that functions like a <code>claim</code>. Do not duplicate the quotation into separate nodes just to satisfy those categories. Model one canonical node and add secondary <code>facets</code> when the object should participate in more than one role.</p>\n<p>Example:</p>\n<p>``<code>json { &quot;id&quot;: &quot;example.minimal:fragment/as-we-may-think-0004&quot;, &quot;title&quot;: &quot;Associative Trails Quote&quot;, &quot;type&quot;: &quot;fragment&quot;, &quot;facets&quot;: [&quot;source&quot;, &quot;claim&quot;], &quot;summary&quot;: &quot;A stable quotation fragment that can be cited as evidence and interpreted as an assertion.&quot; } </code>``</p>\n<p>Use relationships to explain why a facet matters in context. For example, a quote can <code>supports</code> a claim, <code>derived_from</code> a source, or <code>defines</code> a concept. Facets describe secondary behavior; relationships describe meaning.</p>\n<p>Projection layers should show those secondary roles instead of hiding them. The primary <code>type</code> keeps authority over routing, validation, and default presentation, but a graph projection should visually mix the primary type color with any facet colors it recognizes. In other words, a quote that is primarily a <code>fragment</code> and also has <code>source</code> and <code>claim</code> facets should not look like only a fragment. Its visual mark should intertwingle the fragment, source, and claim colors by slices, bands, rings, or another accessible mixed-color treatment.</p>\n<p>If a projection cannot use color, it should preserve the distinction with labels, texture, stroke patterns, badges, or another cue. A renderer may simplify the treatment at tiny sizes, but it should not erase the fact that the node carries multiple roles while claiming full projection compliance.</p>\n<h2>Media Assets</h2>\n<p>Media should be represented as <code>media</code> nodes, then connected to other nodes with <code>has_primary_media</code>, <code>depicts</code>, <code>represents</code>, <code>transcribes</code>, or another appropriate relationship. A node that wants a representative image should use <code>primary_media</code> to reference a media node rather than embedding a renderer-specific image path.</p>\n<p>Portable media nodes should use a relative <code>asset_path</code> when the file is part of the substrate or pack:</p>\n<p>``<code>json { &quot;id&quot;: &quot;example.minimal:media/hugo-site-snapshot&quot;, &quot;title&quot;: &quot;Hugo Site Snapshot&quot;, &quot;type&quot;: &quot;media&quot;, &quot;subtype&quot;: &quot;web_snapshot&quot;, &quot;media_type&quot;: &quot;screenshot&quot;, &quot;mime_type&quot;: &quot;image/png&quot;, &quot;asset_path&quot;: &quot;assets/sources/hugo-official-site/snapshot.png&quot;, &quot;asset_role&quot;: &quot;source_snapshot&quot;, &quot;source_url&quot;: &quot;https://gohugo.io/&quot;, &quot;source_snapshot&quot;: { &quot;captured_at&quot;: &quot;2026-06-19T00:00:00Z&quot;, &quot;source_url&quot;: &quot;https://gohugo.io/&quot;, &quot;method&quot;: &quot;screenshot&quot;, &quot;tool&quot;: &quot;xananode-core&quot; }, &quot;rights_status&quot;: &quot;external&quot;, &quot;importance&quot;: 3, &quot;summary&quot;: &quot;A captured visual representation of the Hugo official site.&quot;, &quot;relationships&quot;: [] } </code>``</p>\n<p><code>asset_path</code> is always relative to the substrate or pack root. It must not escape that root. Implementations that build packs must copy referenced assets into the pack and preserve the relative path, or rewrite the path and record that rewrite in pack metadata.</p>\n<p>Media nodes should include stable content identifiers, usually <code>content_id: &quot;sha256:...&quot;</code>, whenever a tool can compute them. Content identifiers let federation tools detect duplicate files, distinguish duplicate bytes from duplicate titles, and explain how a file moved through different substrates.</p>\n<p>Recommended asset layout:</p>\n<p>``<code>text assets/ media/ projection/ node-types/ &lt;type&gt;.svg node-subtypes/ &lt;type&gt;/ &lt;subtype&gt;.svg sources/ &lt;source-node-local-id&gt;/ snapshot.png thumbnail.png metadata.json </code>``</p>\n<p>Source page previews, Open Graph images, screenshots, transcripts, and archived copies must preserve provenance, but they do not always require a second node. Use these rules:</p>\n<ul><li>if the captured file is itself the cited knowledge object, model it as one <code>source</code> node that may also carry the <code>media</code> facet, <code>media_type</code>, <code>mime_type</code>, <code>asset_path</code>, and related provenance fields</li><li>if the captured file is a distinct representation of another source object, use a separate <code>media</code> node and relate it back to the source with the appropriate relationship and provenance</li><li>if a renderer only needs the file as a projection aid and the file has no independent semantic role, keep it as an attached asset instead of elevating it to a new node</li></ul>\n<h2>Type And Subtype Projection Media</h2>\n<p>Node type registries may define projection media metadata under each node type&#39;s <code>projection</code> object. This lets projection layers draw a stable visual mark for a type without inventing renderer-local mappings.</p>\n<p>The canonical fields are:</p>\n<p>``<code>json { &quot;type&quot;: &quot;concept&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;concept&quot;, &quot;icon_label&quot;: &quot;C&quot;, &quot;asset_path&quot;: &quot;assets/projection/node-types/concept.svg&quot;, &quot;subtype_asset_path_template&quot;: &quot;assets/projection/node-subtypes/concept/{subtype}.svg&quot; } } </code>``</p>\n<p>When a substrate or pack includes the actual icon file, the icon file must be preserved as an asset. It only needs its own <code>media</code> node when the icon is being discussed, governed, versioned, cited, or otherwise treated as a knowledge object in its own right. Otherwise the schema/type node may simply reference the asset through its projection metadata.</p>\n<p>Official XanaNode projections use this order for a node&#39;s center mark:</p>\n<p>1. primary media when the node has an explicit <code>primary_media</code> or resolved visual media 2. subtype projection media when a subtype-specific asset is available 3. node type projection media 4. registry <code>icon</code> or <code>icon_label</code> fallback</p>\n<p>The node title remains the title and should be shown outside the center mark. Type and subtype labels may be shown as subtle chips, legends, tooltips, or inspector metadata. They should not replace the title.</p>\n<h2>Branding As Knowledge</h2>\n<p>Branding is part of substrate identity and provenance. A logo, icon, color palette, tagline, or author mark should not live only inside renderer configuration. If a project, organization, author, or substrate changes its branding, that change has context and should be traceable.</p>\n<p>Represent brand assets as <code>media</code> nodes, usually with <code>subtype: &quot;logo&quot;</code> or <code>subtype: &quot;image&quot;</code>. Reference those media nodes from substrate manifests or author profiles through their <code>branding</code> blocks:</p>\n<p>``<code>json { &quot;branding&quot;: { &quot;brand_name&quot;: &quot;XanaNode&quot;, &quot;tagline&quot;: &quot;Relationships preserve knowledge&quot;, &quot;icon_media&quot;: &quot;example.minimal:media/xananode-icon&quot;, &quot;primary_color&quot;: &quot;#55D6BE&quot;, &quot;accent_color&quot;: &quot;#FF8C00&quot;, &quot;reason&quot;: &quot;Protocol branding is modeled as substrate metadata and media.&quot; } } </code>``</p>\n<p>Renderers should treat branding metadata as a projection input, not as the canonical source. The canonical source is the profile or manifest plus the referenced media node and its asset/provenance fields.</p>\n<h2>Software And Build Metadata</h2>\n<p>Software projects, SDKs, renderers, workspace layers, desktop applications, and generated packs should carry version and build provenance when known.</p>\n<p>Use <code>software_version</code> for the package or release version. Use <code>build_metadata</code> for the exact build context:</p>\n<p>``<code>json { &quot;software_version&quot;: &quot;0.1.0&quot;, &quot;build_metadata&quot;: { &quot;git_commit&quot;: &quot;abc123&quot;, &quot;git_branch&quot;: &quot;main&quot;, &quot;built_at&quot;: &quot;2026-06-19T00:00:00Z&quot;, &quot;built_by&quot;: &quot;@xananode/core&quot;, &quot;runtime&quot;: &quot;node&quot;, &quot;dependencies&quot;: [ { &quot;name&quot;: &quot;@xananode/core&quot;, &quot;version&quot;: &quot;0.1.0&quot;, &quot;relationship&quot;: &quot;uses&quot; } ] } } </code>``</p>\n<p>Compiled applications should record the version and compile/build date in their own metadata and, when represented in a substrate, on the project or technology node that describes that application. Generated canonical packs should include enough build metadata to identify which protocol, core, renderer, and workspace versions produced them.</p>\n<h2>Open Properties</h2>\n<p>Substrate nodes may carry extra root-level properties so authors can describe domain-specific facts without waiting for a protocol release. Common extra properties should use the canonical property registry when possible.</p>\n<p>The core property registry standardizes fields such as <code>birth_date</code>, <code>geo_coordinates</code>, <code>currency_value</code>, <code>measurement_si</code>, and <code>external_identifier</code>. Implementations can use <code>schemas/xananode-property-registry.v0.1.0.json</code> to parse these values consistently while still accepting custom extension properties.</p>",
      "url": "/source/protocol-artifact-specs-nodes.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/specs/nodes.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-specs-nodes.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-specs-readme.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-specs-readme.md",
      "title": "Specs / README",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A protocol specification covering README.",
      "content": "# Specs\r\n\r\nThis directory contains the normative protocol definitions for XanaNode.\r\n\r\nThe spec set should be read alongside the versioned registries in [schemas/](../schemas), especially the core node and relationship registries.\r\n\r\nKey documents:\r\n\r\n- [xananode-core.md](xananode-core.md)\r\n- [substrates.md](substrates.md)\r\n- [nodes.md](nodes.md)\r\n- [relationships.md](relationships.md)\r\n- [namespaces.md](namespaces.md)\r\n- [federation.md](federation.md)\r\n- [merge-validation.md](merge-validation.md)\r\n- [transclusion.md](transclusion.md)\r\n- [tumbler-addressing.md](tumbler-addressing.md)\n- [compatibility-levels.md](compatibility-levels.md)\n- [interoperability.md](interoperability.md)\n- [studio.md](studio.md)\n- [implementation-compatibility.md](implementation-compatibility.md)\n\nThe current core registry files are versioned and define the protocol vocabulary used throughout the repository.\n",
      "html": "<p># Specs</p>\n<p>This directory contains the normative protocol definitions for XanaNode.</p>\n<p>The spec set should be read alongside the versioned registries in <a href=\"../schemas\">schemas/</a>, especially the core node and relationship registries.</p>\n<p>Key documents:</p>\n<ul><li><a href=\"xananode-core.md\">xananode-core.md</a></li><li><a href=\"substrates.md\">substrates.md</a></li><li><a href=\"nodes.md\">nodes.md</a></li><li><a href=\"relationships.md\">relationships.md</a></li><li><a href=\"namespaces.md\">namespaces.md</a></li><li><a href=\"federation.md\">federation.md</a></li><li><a href=\"merge-validation.md\">merge-validation.md</a></li><li><a href=\"transclusion.md\">transclusion.md</a></li><li><a href=\"tumbler-addressing.md\">tumbler-addressing.md</a></li><li><a href=\"compatibility-levels.md\">compatibility-levels.md</a></li><li><a href=\"interoperability.md\">interoperability.md</a></li><li><a href=\"studio.md\">studio.md</a></li><li><a href=\"implementation-compatibility.md\">implementation-compatibility.md</a></li></ul>\n<p>The current core registry files are versioned and define the protocol vocabulary used throughout the repository.</p>",
      "url": "/source/protocol-artifact-specs-readme.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/specs/README.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-specs-readme.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-specs-relationships.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-specs-relationships.md",
      "title": "Specs / Relationships",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A protocol specification covering Relationships.",
      "content": "# Relationships\r\n\r\nRelationships connect nodes with explicit meaning.\r\n\r\nXanaNode relationships are typed.\r\n\r\nExamples:\n\n- `supports`\n- `contradicts`\n- `explains`\n- `answers`\n- `investigates`\n- `requires_source`\n- `possibly_related_to`\n- `created`\n- `derived_from`\n- `communicated_to`\n- `transcludes`\n- `deep_links_to`\n\r\nRelationships may be simple edges or first-class nodes when the relationship itself needs evidence, provenance, dispute, or revision history.\r\n\r\nRelationship records should preserve assertion provenance when available. Common fields include `asserted_by`, `asserted_at`, `confidence`, `evidence`, and `tumbler`.\n\n`asserted_by` should point to a person, organization, project, or external actor identifier when possible. If the actor is local to the substrate, it should be represented as a node.\n\nRelationships may also carry temporal validity when the relationship was true during a specific historical interval. Use `valid_from` for the beginning of the interval and `valid_to` for the end. These fields describe the modeled reality, while `asserted_at` describes when the substrate recorded the assertion.\n\n## Projection Style\n\nRelationship type registries define canonical projection style metadata:\n\n- `color`\n- `inverse_color`\n- `line_style`\n- `inverse_line_style`\n- optional `projection` media metadata\n\nProjection layers use these values for connective lines, arrows, trails, legends, and other relationship marks. This is not decoration only: visual stratification helps readers distinguish evidence, lineage, authorship, governance, uncertainty, communication, and other relationship families before reading every label.\n\nA protocol-compliant projection may adapt contrast for accessibility, theme, or media constraints, but it must preserve the registry-level distinction between relationship types and their inverse readings. If a renderer cannot display color, it should use line style, labels, or another accessible cue instead of flattening every relationship into the same visual treatment.\n\nRelationship type registries may also declare projection media:\n\n```json\n{\n  \"type\": \"supports\",\n  \"category\": \"evidence\",\n  \"projection\": {\n    \"icon\": \"supports\",\n    \"icon_label\": \"->\",\n    \"asset_path\": \"assets/projection/relationship-types/supports.svg\",\n    \"category_asset_path\": \"assets/projection/relationship-categories/evidence.svg\"\n  }\n}\n```\n\nRelationship projection assets should be carried as `media` nodes when bundled in a substrate or pack. Use `asset_role: \"relationship_type_projection_icon\"` for a specific relationship type and `asset_role: \"relationship_category_projection_icon\"` for category-level assets. Projection layers may use these assets in legends, path explainers, relationship catalogs, tooltips, and edge adornments, while edge color and line style still come from the relationship registry.\n\n## Inquiry, Uncertainty, And Workflow\n\nXanaNode relationships should preserve knowledge states, not only settled assertions.\n\nUse inquiry relationships when a node participates in research or explanation:\n\n- `answers`\n- `partially_answers`\n- `fails_to_answer`\n- `raises`\n- `investigates`\n- `motivates_inquiry`\n- `tests`\n- `falsifies`\n- `validates`\n\nUse workflow and uncertainty relationships when a node needs additional work:\n\n- `requires_information`\n- `requires_source`\n- `requires_review`\n- `requires_validation`\n- `requires_context`\n- `insufficient_evidence`\n- `unresolved`\n- `under_review`\n- `speculative`\n\nThese relationships make gaps explicit. A substrate should be able to say \"this claim needs a source\" or \"this question remains unresolved\" without pretending the missing knowledge is already known.\n\n## Discovery And Cognitive Relationships\n\nNot every useful connection is strong enough to be evidence, influence, or identity. Early research often begins with low-commitment associations.\n\nUse discovery and cognitive relationships for provisional connective tissue:\n\n- `possibly_related_to`\n- `shares_pattern_with`\n- `analogous_to`\n- `resonates_with`\n- `generalizes`\n- `specializes`\n- `abstraction_of`\n- `example_of`\n\nAuthors should prefer more specific high-commitment relationships when the evidence supports them. Low-commitment relationships are still valuable because they preserve the path by which a stronger interpretation may later be discovered.\n\n## Communication Relationships\n\nCommunication has structure. When the communication itself matters, represent it as a `communication` node and connect participants, questions, responses, audiences, and consequences with typed relationships.\n\nCanonical communication relationships include:\n\n- `asked`\n- `asked_in`\n- `answers`\n- `answered_in`\n- `replied_to`\n- `broadcast_to`\n- `communicated_to`\n- `presented_to`\n- `discussed_with`\n- `debated_with`\n- `negotiated_with`\n- `announced`\n- `reported_to`\n\nThis lets a substrate model knowledge flow: who asked, who answered, where the exchange happened, how it reached an audience, and what claims, projects, or gaps emerged from it.\n\n## Inverse Views\n\nCanonical relationship types are authored in one direction only. A type may name an `inverse` label for display or query purposes, but that inverse does not need to be registered as a second canonical type.\n\nFor example, an implementation can display `created_by` when viewing the target of a `created` relationship, but the stored relationship type remains `created`. This avoids bloating the canonical registry and avoids dangling inverse-type pairs.\n",
      "html": "<p># Relationships</p>\n<p>Relationships connect nodes with explicit meaning.</p>\n<p>XanaNode relationships are typed.</p>\n<p>Examples:</p>\n<ul><li><code>supports</code></li><li><code>contradicts</code></li><li><code>explains</code></li><li><code>answers</code></li><li><code>investigates</code></li><li><code>requires_source</code></li><li><code>possibly_related_to</code></li><li><code>created</code></li><li><code>derived_from</code></li><li><code>communicated_to</code></li><li><code>transcludes</code></li><li><code>deep_links_to</code></li></ul>\n<p>Relationships may be simple edges or first-class nodes when the relationship itself needs evidence, provenance, dispute, or revision history.</p>\n<p>Relationship records should preserve assertion provenance when available. Common fields include <code>asserted_by</code>, <code>asserted_at</code>, <code>confidence</code>, <code>evidence</code>, and <code>tumbler</code>.</p>\n<p><code>asserted_by</code> should point to a person, organization, project, or external actor identifier when possible. If the actor is local to the substrate, it should be represented as a node.</p>\n<p>Relationships may also carry temporal validity when the relationship was true during a specific historical interval. Use <code>valid_from</code> for the beginning of the interval and <code>valid_to</code> for the end. These fields describe the modeled reality, while <code>asserted_at</code> describes when the substrate recorded the assertion.</p>\n<h2>Projection Style</h2>\n<p>Relationship type registries define canonical projection style metadata:</p>\n<ul><li><code>color</code></li><li><code>inverse_color</code></li><li><code>line_style</code></li><li><code>inverse_line_style</code></li><li>optional <code>projection</code> media metadata</li></ul>\n<p>Projection layers use these values for connective lines, arrows, trails, legends, and other relationship marks. This is not decoration only: visual stratification helps readers distinguish evidence, lineage, authorship, governance, uncertainty, communication, and other relationship families before reading every label.</p>\n<p>A protocol-compliant projection may adapt contrast for accessibility, theme, or media constraints, but it must preserve the registry-level distinction between relationship types and their inverse readings. If a renderer cannot display color, it should use line style, labels, or another accessible cue instead of flattening every relationship into the same visual treatment.</p>\n<p>Relationship type registries may also declare projection media:</p>\n<p>``<code>json { &quot;type&quot;: &quot;supports&quot;, &quot;category&quot;: &quot;evidence&quot;, &quot;projection&quot;: { &quot;icon&quot;: &quot;supports&quot;, &quot;icon_label&quot;: &quot;-&gt;&quot;, &quot;asset_path&quot;: &quot;assets/projection/relationship-types/supports.svg&quot;, &quot;category_asset_path&quot;: &quot;assets/projection/relationship-categories/evidence.svg&quot; } } </code>``</p>\n<p>Relationship projection assets should be carried as <code>media</code> nodes when bundled in a substrate or pack. Use <code>asset_role: &quot;relationship_type_projection_icon&quot;</code> for a specific relationship type and <code>asset_role: &quot;relationship_category_projection_icon&quot;</code> for category-level assets. Projection layers may use these assets in legends, path explainers, relationship catalogs, tooltips, and edge adornments, while edge color and line style still come from the relationship registry.</p>\n<h2>Inquiry, Uncertainty, And Workflow</h2>\n<p>XanaNode relationships should preserve knowledge states, not only settled assertions.</p>\n<p>Use inquiry relationships when a node participates in research or explanation:</p>\n<ul><li><code>answers</code></li><li><code>partially_answers</code></li><li><code>fails_to_answer</code></li><li><code>raises</code></li><li><code>investigates</code></li><li><code>motivates_inquiry</code></li><li><code>tests</code></li><li><code>falsifies</code></li><li><code>validates</code></li></ul>\n<p>Use workflow and uncertainty relationships when a node needs additional work:</p>\n<ul><li><code>requires_information</code></li><li><code>requires_source</code></li><li><code>requires_review</code></li><li><code>requires_validation</code></li><li><code>requires_context</code></li><li><code>insufficient_evidence</code></li><li><code>unresolved</code></li><li><code>under_review</code></li><li><code>speculative</code></li></ul>\n<p>These relationships make gaps explicit. A substrate should be able to say &quot;this claim needs a source&quot; or &quot;this question remains unresolved&quot; without pretending the missing knowledge is already known.</p>\n<h2>Discovery And Cognitive Relationships</h2>\n<p>Not every useful connection is strong enough to be evidence, influence, or identity. Early research often begins with low-commitment associations.</p>\n<p>Use discovery and cognitive relationships for provisional connective tissue:</p>\n<ul><li><code>possibly_related_to</code></li><li><code>shares_pattern_with</code></li><li><code>analogous_to</code></li><li><code>resonates_with</code></li><li><code>generalizes</code></li><li><code>specializes</code></li><li><code>abstraction_of</code></li><li><code>example_of</code></li></ul>\n<p>Authors should prefer more specific high-commitment relationships when the evidence supports them. Low-commitment relationships are still valuable because they preserve the path by which a stronger interpretation may later be discovered.</p>\n<h2>Communication Relationships</h2>\n<p>Communication has structure. When the communication itself matters, represent it as a <code>communication</code> node and connect participants, questions, responses, audiences, and consequences with typed relationships.</p>\n<p>Canonical communication relationships include:</p>\n<ul><li><code>asked</code></li><li><code>asked_in</code></li><li><code>answers</code></li><li><code>answered_in</code></li><li><code>replied_to</code></li><li><code>broadcast_to</code></li><li><code>communicated_to</code></li><li><code>presented_to</code></li><li><code>discussed_with</code></li><li><code>debated_with</code></li><li><code>negotiated_with</code></li><li><code>announced</code></li><li><code>reported_to</code></li></ul>\n<p>This lets a substrate model knowledge flow: who asked, who answered, where the exchange happened, how it reached an audience, and what claims, projects, or gaps emerged from it.</p>\n<h2>Inverse Views</h2>\n<p>Canonical relationship types are authored in one direction only. A type may name an <code>inverse</code> label for display or query purposes, but that inverse does not need to be registered as a second canonical type.</p>\n<p>For example, an implementation can display <code>created_by</code> when viewing the target of a <code>created</code> relationship, but the stored relationship type remains <code>created</code>. This avoids bloating the canonical registry and avoids dangling inverse-type pairs.</p>",
      "url": "/source/protocol-artifact-specs-relationships.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/specs/relationships.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-specs-relationships.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-specs-studio.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-specs-studio.md",
      "title": "Specs / Studio",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A protocol specification covering Studio.",
      "content": "# XanaNode Studio Guidance\n\nXanaNode Studio is an editor concept for local-first knowledge substrate authoring.\n\nIt should be understood as:\n\n> VS Code for knowledge substrates, hiding Git until the user is ready.\n\n## Principles\n\n- Do not reinvent Git.\n- Use Git as the substrate versioning layer.\n- Present Git concepts in human language first.\n- Keep the published substrate preview close to the real Hugo/static output.\n- Make validation actionable rather than cryptic.\n\n## Git UX Translation\n\n| Git concept | Studio language |\n|---|---|\n| commit | save snapshot |\n| branch | draft path |\n| merge | bring changes together |\n| pull request | propose changes |\n| diff | what changed |\n| log | history |\n\nPower users may reveal the Git layer directly.\n\n## Core Workspace\n\nStudio should use a three-panel model:\n\n- catalog and tools\n- live substrate view\n- node editor\n\nThe catalog is not a file tree. It should provide views by node type, trail, source, author, status, confidence, relationship cluster, recent edits, validation issues, unlinked nodes, and contradicted claims.\n\n## MVP\n\nThe first useful Studio should support:\n\n- create or open a substrate repo\n- show a node catalog\n- edit node content and metadata\n- add relationships with autocomplete\n- run validation\n- preview the Hugo implementation\n- save snapshots using Git\n- publish to GitHub Pages\n\n## Assistants\n\nFuture Studio assistants may include:\n\n- friendly validation repair\n- relationship suggestion\n- fragment maker\n- trail builder\n- source importer\n- media importer\n- review workflow\n- conflict UI\n- extension marketplace\n",
      "html": "<p># XanaNode Studio Guidance</p>\n<p>XanaNode Studio is an editor concept for local-first knowledge substrate authoring.</p>\n<p>It should be understood as:</p>\n<blockquote><p>VS Code for knowledge substrates, hiding Git until the user is ready.</p></blockquote>\n<h2>Principles</h2>\n<ul><li>Do not reinvent Git.</li><li>Use Git as the substrate versioning layer.</li><li>Present Git concepts in human language first.</li><li>Keep the published substrate preview close to the real Hugo/static output.</li><li>Make validation actionable rather than cryptic.</li></ul>\n<h2>Git UX Translation</h2>\n<p>| Git concept | Studio language | |---|---| | commit | save snapshot | | branch | draft path | | merge | bring changes together | | pull request | propose changes | | diff | what changed | | log | history |</p>\n<p>Power users may reveal the Git layer directly.</p>\n<h2>Core Workspace</h2>\n<p>Studio should use a three-panel model:</p>\n<ul><li>catalog and tools</li><li>live substrate view</li><li>node editor</li></ul>\n<p>The catalog is not a file tree. It should provide views by node type, trail, source, author, status, confidence, relationship cluster, recent edits, validation issues, unlinked nodes, and contradicted claims.</p>\n<h2>MVP</h2>\n<p>The first useful Studio should support:</p>\n<ul><li>create or open a substrate repo</li><li>show a node catalog</li><li>edit node content and metadata</li><li>add relationships with autocomplete</li><li>run validation</li><li>preview the Hugo implementation</li><li>save snapshots using Git</li><li>publish to GitHub Pages</li></ul>\n<h2>Assistants</h2>\n<p>Future Studio assistants may include:</p>\n<ul><li>friendly validation repair</li><li>relationship suggestion</li><li>fragment maker</li><li>trail builder</li><li>source importer</li><li>media importer</li><li>review workflow</li><li>conflict UI</li><li>extension marketplace</li></ul>",
      "url": "/source/protocol-artifact-specs-studio.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/specs/studio.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-specs-studio.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-specs-substrates.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-specs-substrates.md",
      "title": "Specs / Substrates",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A protocol specification covering Substrates.",
      "content": "# Substrates\n\nA substrate is an independently authored XanaNode-compatible knowledge graph.\n\nA substrate includes:\n\n- a manifest\n- a declared namespace\n- a Git repository backing the substrate history\n- nodes\n- relationships\n- schema declarations\n- optional custom extensions\n- optional merge reports\n- optional mounted or imported substrate layers\n\n## Standard Layout\n\nA substrate root is the directory containing `substrate.json`. A hand-built substrate should be usable from that root without private tool state.\n\nThe machine-readable layout registry is:\n\n- `schemas/substrate-layout.schema.json`\n- `schemas/xananode-substrate-layout.v0.1.0.json`\n\nThe minimal required file is:\n\n```text\nsubstrate.json\n```\n\nThe standard production layout is:\n\n```text\nsubstrate.json\nauthor-profile.json\nrelationships.json\nnodes/\n  *.json\nnodes.json\ncontent/\n  nodes/\n    *.md\nassets/\n  media/\n  sources/\n  projection/\nschemas/\n  *.json\nreports/\n  *.json\npacks/\n  <mounted-substrate>/\nimports/\n  <incoming-material>/\nro-crate-metadata.json\n.xananode/\n  workspace.json\n  authors.json\n```\n\nProtocol JSON (`nodes/*.json`, `nodes.json`, and `relationships.json`) is the interchange surface. Markdown under `content/nodes/` is an authoring projection used by current tools. A substrate can be authored directly as protocol JSON and still be valid.\n\nTools should preserve recognized files even when they do not understand every extension. Unknown local files under `assets/`, `schemas/`, `reports/`, `packs/`, or `imports/` are part of the substrate unless sharing or export policy explicitly excludes them.\n\n## Git Backing\n\nEach production substrate is a Git repository. Git provides the substrate's version history, branching, review, merge, and synchronization layer.\n\nXanaNode does not replace Git. It defines knowledge-specific artifacts inside a repository:\n\n- `substrate.json`\n- `nodes-index.json`\n- `relationships.json`\n- `nodes/*.json`\n- optional `schemas/*.json`\n- optional merge and compatibility reports\n\nFor static-host discovery, a substrate should also expose a machine front door such as `/.well-known/xananode`, plus ordinary crawl hints like `robots.txt` and head links that point to the protocol artifacts. The human viewer may live at the root, but the machine handshake should make the substrate obvious without scraping page prose or client-side graph code.\n\nThe substrate manifest must include a `repository` block describing the Git remote and default branch. Example fixtures may live in subdirectories of the protocol repository, but independently maintained substrates should use the repository root as the substrate root.\n\nSubstrates are sovereign. They can be moderated independently while still participating in federation.\n\n## Portable Substrates And Composition\n\nIn current XanaNode language, the substrate is the primary unit. A `.substrate` file is a portable bundled substrate for transmission or release. This specification still uses `pack` in a few field names and compatibility notes because older tools shipped that wording first, but official user-facing tools should teach substrate, `.substrate`, mount, import, merge, and Intertwingle.\nA portable substrate is a set of XanaNode protocol artifacts that can be added to another substrate without losing the ownership boundary of the source substrate.\n\nPortable substrates use the same artifact shapes as a normal substrate:\n\n- optional `substrate.json`\n- `nodes/*.json` or any JSON file containing one node, an array of nodes, or `{ \"nodes\": [...] }`\n- `relationships.json` or any JSON file containing `{ \"relationships\": [...] }`\n- optional `assets/` files referenced by media node `asset_path` fields\n- optional schemas, reports, and companion metadata\n\nPortable substrates may be used in three composition modes:\n\n- `mounted`: the incoming substrate is included at build or analysis time, but remains externally governed. Its records are not copied into the receiving substrate as canonical local content.\n- `imported`: the incoming substrate's records are copied into generated local artifacts with provenance, but identity is not reconciled beyond explicit namespace mappings. Imported records must retain `imported_from`, substrate identity, and composition mode metadata.\n- `merged`: the incoming substrate is reconciled with the receiving substrate through identity mapping, duplicate detection, conflict handling, and review policy. Merged substrates should produce a merge or intake report.\n\nMounted substrates are the right model for optional example layers, lineage overlays, alternate interpretations, and domain extensions. Imported substrates are the right model when a substrate owner wants local generated artifacts for an external substrate without claiming authorship. Merged substrates are the right model when a substrate owner decides that incoming records should be reconciled with local canonical authorship.\n\n`absorbed` is a legacy alias for `imported`. New manifests should prefer `imported` or `merged` so tools can distinguish copying from identity reconciliation.\n\nThe substrate manifest may declare substrate references in `imports`:\n\n```json\n{\n  \"imports\": [\n    \"xananode:core\",\n    {\n      \"id\": \"example.minimal\",\n      \"source\": \"vendor/xananode-core/vendor/xananode-protocol/examples/minimal-substrate\",\n      \"mode\": \"mounted\",\n      \"version\": \"0.2.0\",\n      \"required\": true\n    }\n  ]\n}\n```\n\nString imports remain valid for simple vocabulary or schema dependencies. Object imports are used when the import is a concrete substrate source.\n\nThe field name is `imports` for manifest compatibility, but user interfaces may describe these records as mounted substrates, federation sources, or substrate mounts. The important distinction is governance: a mounted substrate remains someone else's authored source unless an explicit import or merge step changes that status.\n\nSubstrate ingress may declare namespace mappings:\n\n```json\n{\n  \"id\": \"xananode.lineage\",\n  \"source\": \"imports/lineage\",\n  \"mode\": \"mounted\",\n  \"namespace_mappings\": [\n    {\n      \"from\": \"xananode.example\",\n      \"to\": \"xananode.com\",\n      \"scope\": \"relationships\",\n      \"reason\": \"Bind example-authored relationship endpoints to the receiving canonical substrate namespace.\"\n    }\n  ]\n}\n```\n\nNamespace mappings are local federation rules. They do not rename the imported substrate's own nodes unless `scope` is `all`; with `scope: \"relationships\"` they only rebase relationship endpoints so mounted records can connect to equivalent local substrate nodes. Implementations should report mappings in review or merge/intake output so authors can audit how a mounted substrate is being interpreted.\n\nImplementations must not silently treat a mounted substrate as imported or merged. If a tool copies mounted records into local artifacts, it should record that as an explicit import step with review metadata. If a tool reconciles identity, de-duplicates nodes, or resolves conflicting claims, it should record that as a merge step. This prevents two repositories from accidentally claiming canonical ownership of the same governed records.\n\nWhen a substrate is cloned from an online federation target, the mounted name must include the Git branch and commit that were actually used, such as `Example Substrate (main@1a2b3c4d5e6f)`. Branch plus commit is the concrete version. A branch name alone is not enough provenance because the branch can move.\n\n## Substrate Media Portability\n\nPortable substrates that include local media must include the media files alongside the node records. Media files belong under the substrate root, normally in `assets/`. Media nodes reference those files with relative `asset_path` values.\n\nSubstrate builders must:\n\n- copy every file referenced by a media node `asset_path`\n- copy authored local substrate files that the substrate carries as evidence or media, including images, PDFs, audio, video, diagrams, source snapshots, and other digital files unless sharing policy excludes them\n- reject or warn on paths that escape the substrate root\n- preserve `source_url`, `rights_status`, `license`, `source_snapshot`, and content identifiers when known\n- keep `primary_media` references pointing at media node ids, not raw file paths\n- include projection media assets referenced by node type, subtype, relationship type, and relationship category registries when the substrate claims to carry those registries\n- report duplicate local files by content hash so authors can see when the same literal file has propagated through multiple substrates\n- report path conflicts when two different files claim the same relative `asset_path`\n\nSubstrate consumers must resolve `asset_path` relative to the source substrate root for mounted substrates and relative to the receiving substrate root for imported or merged assets after an explicit copy step.\n\n## Artifact Promotion Governance\n\nPortable substrates should preserve important local files, but tools must distinguish between preserving a file and promoting that file into its own node.\n\nA raw repository or workspace file should be promoted to its own node when it has independent semantic weight inside the substrate, for example when it is:\n\n- a protocol, schema, registry, compatibility, or governance artifact\n- a citable spec, proposal, policy, source document, or canonical example\n- a report, bundle, manifest, or machine-facing artifact that other tools may need to inspect directly\n- a file whose contents are meaningfully discussed, reviewed, disputed, transcluded, or traversed as part of the graph\n\nA raw file should usually remain an attached asset instead of becoming its own node when it mainly serves as:\n\n- implementation support\n- build or packaging glue\n- test scaffolding\n- projection inventory such as icons, thumbnails, sprites, static screenshots, or generated output\n- provenance attached to a higher-level source, media, schema, project, or substrate node\n\nLive source URLs and captured media are often related, but not always separate objects. A `source` node may point to `https://example.com` and also carry a local captured file when the captured file is the actual evidentiary object being cited in the substrate. Use a separate `media` node only when the capture is a distinct representation, derivative, preview, depiction, or auxiliary asset rather than the source object itself.\n\nWhen two mounted substrates carry the same literal file, tools should preserve provenance from both substrates instead of blindly copying both files forever. Permanent federation or merge may keep one canonical media node, record duplicate-file evidence in the merge report, and use transclusion or media relationships from the other substrate back to the retained file. That keeps the file lineage visible without multiplying identical bytes.\n\nLinking to an online file is allowed, but a portable substrate should prefer a local captured asset or a reference to a media node in another mounted substrate when the file matters to the knowledge claim. Online links rot; substrate-carried media preserves the evidence path.\n\n## Substrate Archives\n\nA portable substrate may be transmitted as a single `.substrate` archive. The archive is the whole substrate unit: manifest, nodes, relationships, media, registry extensions, source snapshots, and workspace metadata needed to keep the files together.\n\nThe recommended media type is `application/vnd.xananode.substrate+json+gzip`. The archive should contain a JSON envelope compressed with gzip. Tools may support other containers later, but official XanaNode tooling should read and write this format.\n\nMounted substrate records should preserve:\n\n- repository URL\n- branch\n- commit hash\n- archive file name when exported\n- namespace\n- mounted/imported/merged/absorbed mode\n\n## Executable Tool Contract\n\nThe protocol does not require Node.js, Python, or any other language runtime. Those are implementation choices, not protocol rules.\n\nOfficial XanaNode tooling should converge on two boring machine entry points that other applications can call regardless of stack:\n\n- `xananode-core`\n- `xananode-workspace`\n\nThese may be delivered as native executables, self-contained packaged binaries, platform launchers, or language-specific wrappers, but the command contract should remain stable across forms.\n\nThe intent is simple:\n\n- Core handles protocol reading, validation, analysis, fragment generation, bundle writing, and projection-ready graph derivation.\n- Workspace handles substrate folder lifecycle, authoring roots, imports, working copies, federation intake, archive packaging, and build orchestration.\n\nApplications such as Studio, Mobile, Hugo helpers, AI agents, browser services, and third-party integrations should be able to call those tools without embedding the implementation language directly.\n\n### Required executable behavior\n\nOfficial executable implementations should:\n\n- accept ordinary filesystem paths to substrate folders, `.substrate` archives, `substrate-bundle.json`, and `substrate-bundle.jsonl`\n- return structured machine-readable output through JSON on stdout, JSON files on disk, or both\n- return non-zero exit codes on validation, parse, or runtime failure\n- preserve protocol semantics regardless of host language\n- expose build metadata such as version, commit, build date, and implementation identity\n- keep command names and output envelopes stable enough that one tool can replace another implementation without rewriting the whole caller\n\n### Recommended Core commands\n\nThe stable Core surface should include commands equivalent to:\n\n- `xananode-core validate`\n- `xananode-core inspect`\n- `xananode-core build`\n- `xananode-core bundle`\n- `xananode-core analyze-intake`\n- `xananode-core projection`\n\nExpected responsibilities:\n\n- `validate`: schema and integrity validation without mutating source records\n- `inspect`: summarize a substrate or portable substrate source\n- `build`: emit split protocol artifacts and optional bundle variants\n- `bundle`: emit a portable `.substrate` archive plus optional JSON and JSONL companions\n- `analyze-intake`: evaluate an incoming substrate against a receiving substrate for merge candidates, conflicts, suggested links, suggested transclusions, duplicate files, and health signals\n- `projection`: derive renderer-neutral graph/projection data from protocol artifacts\n\n### Recommended Workspace commands\n\nThe stable Workspace surface should include commands equivalent to:\n\n- `xananode-workspace init`\n- `xananode-workspace open`\n- `xananode-workspace build`\n- `xananode-workspace export`\n- `xananode-workspace intertwingle`\n- `xananode-workspace deintertwingle`\n- `xananode-workspace health`\n- `xananode-workspace snapshot`\n\nExpected responsibilities:\n\n- `init`: create a compliant substrate folder with declared authorship and repository metadata\n- `open`: open an existing local substrate folder or working copy\n- `build`: orchestrate Core builds for the active workspace\n- `export`: write `.substrate`, `substrate-bundle.json`, `substrate-bundle.jsonl`, and split artifact outputs from the same source substrate\n- `intertwingle`: mount or clone another substrate into a local workspace without silently claiming ownership\n- `deintertwingle`: remove mounted material that has not been explicitly merged, while warning about broken chains or lost references\n- `health`: compute substrate health, intake reports, chain break warnings, summary/body duplication warnings, and other authoring signals\n- `snapshot`: create a versioned workspace snapshot through the substrate's backing VCS\n\n### JSON-first machine I/O\n\nFor interoperability, executable implementations should support JSON-first invocation patterns.\n\nExamples:\n\n- pass arguments by filesystem path and flags\n- optionally accept JSON request files or stdin envelopes\n- write JSON result envelopes to stdout when `--json` is requested\n\nThe exact envelope format may evolve, but official tools should preserve these principles:\n\n- callers should not scrape prose output\n- success and failure should be obvious without reading human narration\n- structured warnings should be distinguishable from fatal errors\n- file outputs should be declared in the response\n\n### Relationship to language-specific packages\n\nJavaScript, Python, Rust, Go, Java, Kotlin, or other language packages may still exist as implementation surfaces. That is fine.\n\nBut the protocol-facing contract should be the executable behavior and the artifact formats, not a requirement that every downstream caller embed Node.js APIs directly.\n\nIn other words: the substrate is the protocol object, and the executable contract is the boring transport layer that lets many tools participate without sharing one language runtime.\n\nThe current reference stack now supports Windows launcher packaging for `xananode-core` and `xananode-workspace` as self-contained executables with sibling runtime trees. That packaging shape is still an implementation detail, but it proves the protocol boundary can be used without a separate Node install on the calling machine.\n\n## Federation Targets\n\nThe protocol registry may list known online federation targets. A federation target is a Git-backed substrate source that tools can discover, clone, validate, and mount into a local workspace.\n\nThe registry is a discovery aid, not a central authority. A substrate can federate with targets outside the registry as long as their manifests, schemas, and sharing rules validate.\n\nWorkspace-level tools are responsible for cloning, naming, caching, mounting, and exporting mixed substrates. Studio may expose those actions, but the substrate management behavior belongs below the projection layer.\n\n## Sharing Policy\n\nNodes are shareable by default. This matches the federation model: an authored substrate is expected to be portable unless an author marks specific records as private, restricted, or needing review.\n\nA substrate may declare a top-level `sharing` policy:\n\n```json\n{\n  \"sharing\": {\n    \"default_shareable\": true,\n    \"excluded_nodes\": [\"personal:person/private-contact\"],\n    \"excluded_trails\": [\"personal:trail/private-family-history\"],\n    \"rules\": [\n      {\n        \"selector\": { \"tag\": \"medical\" },\n        \"shareable\": false,\n        \"scope\": \"private\",\n        \"reason\": \"Contains sensitive personal context.\"\n      }\n    ]\n  }\n}\n```\n\nIndividual nodes may override that default:\n\n```json\n{\n  \"id\": \"personal:claim/something-i-can-share\",\n  \"sharing\": {\n    \"shareable\": true,\n    \"scope\": \"public\"\n  }\n}\n```\n\nWhen a trail is excluded, tools should treat the trail node and the trail's listed members as excluded unless an individual node explicitly opts back in. When a relationship touches a non-shareable node, pack exporters must omit that relationship or replace it with an explicit redaction record if the export profile supports redactions.\n\nCore, Workspace, Studio, and official projection layers must respect `sharing` during export, publication, federation, mounted-pack preparation, and generated review reports. A renderer may show private records inside a local authoring session, but it must not publish them into static public artifacts.\n\n## Projection Governance\n\nProjection layers are lenses over a substrate. They may choose layout, typography, motion, interaction, and density, but official XanaNode projections must preserve protocol semantics:\n\n- relationship direction must be visible when edges are shown\n- relationship colors and line styles should come from the relationship type registry, with accessible alternatives when color alone is insufficient\n- node titles should remain titles; official graph projections should use node type/subtype projection media or primary media as the node center mark\n- node type, subtype, and multi-type/facet signals should remain distinguishable through projection media, color mixing, subtle chips, legends, tooltips, or inspector metadata\n- hop-depth controls should actually filter by graph distance from the focused node\n- when a reader travels along visible connected nodes, the projection should animate the walked route rather than dragging a decorative line\n- when a reader jumps to an unconnected or hidden node, the projection should make that leap legible with staged reveal by hop depth\n\nCustom renderers can be compatible without copying the official look, but they should not flatten away direction, authorship, provenance, or sharing policy.\n",
      "html": "<p># Substrates</p>\n<p>A substrate is an independently authored XanaNode-compatible knowledge graph.</p>\n<p>A substrate includes:</p>\n<ul><li>a manifest</li><li>a declared namespace</li><li>a Git repository backing the substrate history</li><li>nodes</li><li>relationships</li><li>schema declarations</li><li>optional custom extensions</li><li>optional merge reports</li><li>optional mounted or imported substrate layers</li></ul>\n<h2>Standard Layout</h2>\n<p>A substrate root is the directory containing <code>substrate.json</code>. A hand-built substrate should be usable from that root without private tool state.</p>\n<p>The machine-readable layout registry is:</p>\n<ul><li><code>schemas/substrate-layout.schema.json</code></li><li><code>schemas/xananode-substrate-layout.v0.1.0.json</code></li></ul>\n<p>The minimal required file is:</p>\n<p>``<code>text substrate.json </code>``</p>\n<p>The standard production layout is:</p>\n<p>``<code>text substrate.json author-profile.json relationships.json nodes/ *.json nodes.json content/ nodes/ *.md assets/ media/ sources/ projection/ schemas/ *.json reports/ *.json packs/ &lt;mounted-substrate&gt;/ imports/ &lt;incoming-material&gt;/ ro-crate-metadata.json .xananode/ workspace.json authors.json </code>``</p>\n<p>Protocol JSON (<code>nodes/*.json</code>, <code>nodes.json</code>, and <code>relationships.json</code>) is the interchange surface. Markdown under <code>content/nodes/</code> is an authoring projection used by current tools. A substrate can be authored directly as protocol JSON and still be valid.</p>\n<p>Tools should preserve recognized files even when they do not understand every extension. Unknown local files under <code>assets/</code>, <code>schemas/</code>, <code>reports/</code>, <code>packs/</code>, or <code>imports/</code> are part of the substrate unless sharing or export policy explicitly excludes them.</p>\n<h2>Git Backing</h2>\n<p>Each production substrate is a Git repository. Git provides the substrate&#39;s version history, branching, review, merge, and synchronization layer.</p>\n<p>XanaNode does not replace Git. It defines knowledge-specific artifacts inside a repository:</p>\n<ul><li><code>substrate.json</code></li><li><code>nodes-index.json</code></li><li><code>relationships.json</code></li><li><code>nodes/*.json</code></li><li>optional <code>schemas/*.json</code></li><li>optional merge and compatibility reports</li></ul>\n<p>For static-host discovery, a substrate should also expose a machine front door such as <code>/.well-known/xananode</code>, plus ordinary crawl hints like <code>robots.txt</code> and head links that point to the protocol artifacts. The human viewer may live at the root, but the machine handshake should make the substrate obvious without scraping page prose or client-side graph code.</p>\n<p>The substrate manifest must include a <code>repository</code> block describing the Git remote and default branch. Example fixtures may live in subdirectories of the protocol repository, but independently maintained substrates should use the repository root as the substrate root.</p>\n<p>Substrates are sovereign. They can be moderated independently while still participating in federation.</p>\n<h2>Portable Substrates And Composition</h2>\n<p>In current XanaNode language, the substrate is the primary unit. A <code>.substrate</code> file is a portable bundled substrate for transmission or release. This specification still uses <code>pack</code> in a few field names and compatibility notes because older tools shipped that wording first, but official user-facing tools should teach substrate, <code>.substrate</code>, mount, import, merge, and Intertwingle. A portable substrate is a set of XanaNode protocol artifacts that can be added to another substrate without losing the ownership boundary of the source substrate.</p>\n<p>Portable substrates use the same artifact shapes as a normal substrate:</p>\n<ul><li>optional <code>substrate.json</code></li><li><code>nodes/*.json</code> or any JSON file containing one node, an array of nodes, or <code>{ &quot;nodes&quot;: [...] }</code></li><li><code>relationships.json</code> or any JSON file containing <code>{ &quot;relationships&quot;: [...] }</code></li><li>optional <code>assets/</code> files referenced by media node <code>asset_path</code> fields</li><li>optional schemas, reports, and companion metadata</li></ul>\n<p>Portable substrates may be used in three composition modes:</p>\n<ul><li><code>mounted</code>: the incoming substrate is included at build or analysis time, but remains externally governed. Its records are not copied into the receiving substrate as canonical local content.</li><li><code>imported</code>: the incoming substrate&#39;s records are copied into generated local artifacts with provenance, but identity is not reconciled beyond explicit namespace mappings. Imported records must retain <code>imported_from</code>, substrate identity, and composition mode metadata.</li><li><code>merged</code>: the incoming substrate is reconciled with the receiving substrate through identity mapping, duplicate detection, conflict handling, and review policy. Merged substrates should produce a merge or intake report.</li></ul>\n<p>Mounted substrates are the right model for optional example layers, lineage overlays, alternate interpretations, and domain extensions. Imported substrates are the right model when a substrate owner wants local generated artifacts for an external substrate without claiming authorship. Merged substrates are the right model when a substrate owner decides that incoming records should be reconciled with local canonical authorship.</p>\n<p><code>absorbed</code> is a legacy alias for <code>imported</code>. New manifests should prefer <code>imported</code> or <code>merged</code> so tools can distinguish copying from identity reconciliation.</p>\n<p>The substrate manifest may declare substrate references in <code>imports</code>:</p>\n<p>``<code>json { &quot;imports&quot;: [ &quot;xananode:core&quot;, { &quot;id&quot;: &quot;example.minimal&quot;, &quot;source&quot;: &quot;vendor/xananode-core/vendor/xananode-protocol/examples/minimal-substrate&quot;, &quot;mode&quot;: &quot;mounted&quot;, &quot;version&quot;: &quot;0.2.0&quot;, &quot;required&quot;: true } ] } </code>``</p>\n<p>String imports remain valid for simple vocabulary or schema dependencies. Object imports are used when the import is a concrete substrate source.</p>\n<p>The field name is <code>imports</code> for manifest compatibility, but user interfaces may describe these records as mounted substrates, federation sources, or substrate mounts. The important distinction is governance: a mounted substrate remains someone else&#39;s authored source unless an explicit import or merge step changes that status.</p>\n<p>Substrate ingress may declare namespace mappings:</p>\n<p>``<code>json { &quot;id&quot;: &quot;xananode.lineage&quot;, &quot;source&quot;: &quot;imports/lineage&quot;, &quot;mode&quot;: &quot;mounted&quot;, &quot;namespace_mappings&quot;: [ { &quot;from&quot;: &quot;xananode.example&quot;, &quot;to&quot;: &quot;xananode.com&quot;, &quot;scope&quot;: &quot;relationships&quot;, &quot;reason&quot;: &quot;Bind example-authored relationship endpoints to the receiving canonical substrate namespace.&quot; } ] } </code>``</p>\n<p>Namespace mappings are local federation rules. They do not rename the imported substrate&#39;s own nodes unless <code>scope</code> is <code>all</code>; with <code>scope: &quot;relationships&quot;</code> they only rebase relationship endpoints so mounted records can connect to equivalent local substrate nodes. Implementations should report mappings in review or merge/intake output so authors can audit how a mounted substrate is being interpreted.</p>\n<p>Implementations must not silently treat a mounted substrate as imported or merged. If a tool copies mounted records into local artifacts, it should record that as an explicit import step with review metadata. If a tool reconciles identity, de-duplicates nodes, or resolves conflicting claims, it should record that as a merge step. This prevents two repositories from accidentally claiming canonical ownership of the same governed records.</p>\n<p>When a substrate is cloned from an online federation target, the mounted name must include the Git branch and commit that were actually used, such as <code>Example Substrate (main@1a2b3c4d5e6f)</code>. Branch plus commit is the concrete version. A branch name alone is not enough provenance because the branch can move.</p>\n<h2>Substrate Media Portability</h2>\n<p>Portable substrates that include local media must include the media files alongside the node records. Media files belong under the substrate root, normally in <code>assets/</code>. Media nodes reference those files with relative <code>asset_path</code> values.</p>\n<p>Substrate builders must:</p>\n<ul><li>copy every file referenced by a media node <code>asset_path</code></li><li>copy authored local substrate files that the substrate carries as evidence or media, including images, PDFs, audio, video, diagrams, source snapshots, and other digital files unless sharing policy excludes them</li><li>reject or warn on paths that escape the substrate root</li><li>preserve <code>source_url</code>, <code>rights_status</code>, <code>license</code>, <code>source_snapshot</code>, and content identifiers when known</li><li>keep <code>primary_media</code> references pointing at media node ids, not raw file paths</li><li>include projection media assets referenced by node type, subtype, relationship type, and relationship category registries when the substrate claims to carry those registries</li><li>report duplicate local files by content hash so authors can see when the same literal file has propagated through multiple substrates</li><li>report path conflicts when two different files claim the same relative <code>asset_path</code></li></ul>\n<p>Substrate consumers must resolve <code>asset_path</code> relative to the source substrate root for mounted substrates and relative to the receiving substrate root for imported or merged assets after an explicit copy step.</p>\n<h2>Artifact Promotion Governance</h2>\n<p>Portable substrates should preserve important local files, but tools must distinguish between preserving a file and promoting that file into its own node.</p>\n<p>A raw repository or workspace file should be promoted to its own node when it has independent semantic weight inside the substrate, for example when it is:</p>\n<ul><li>a protocol, schema, registry, compatibility, or governance artifact</li><li>a citable spec, proposal, policy, source document, or canonical example</li><li>a report, bundle, manifest, or machine-facing artifact that other tools may need to inspect directly</li><li>a file whose contents are meaningfully discussed, reviewed, disputed, transcluded, or traversed as part of the graph</li></ul>\n<p>A raw file should usually remain an attached asset instead of becoming its own node when it mainly serves as:</p>\n<ul><li>implementation support</li><li>build or packaging glue</li><li>test scaffolding</li><li>projection inventory such as icons, thumbnails, sprites, static screenshots, or generated output</li><li>provenance attached to a higher-level source, media, schema, project, or substrate node</li></ul>\n<p>Live source URLs and captured media are often related, but not always separate objects. A <code>source</code> node may point to <code>https://example.com</code> and also carry a local captured file when the captured file is the actual evidentiary object being cited in the substrate. Use a separate <code>media</code> node only when the capture is a distinct representation, derivative, preview, depiction, or auxiliary asset rather than the source object itself.</p>\n<p>When two mounted substrates carry the same literal file, tools should preserve provenance from both substrates instead of blindly copying both files forever. Permanent federation or merge may keep one canonical media node, record duplicate-file evidence in the merge report, and use transclusion or media relationships from the other substrate back to the retained file. That keeps the file lineage visible without multiplying identical bytes.</p>\n<p>Linking to an online file is allowed, but a portable substrate should prefer a local captured asset or a reference to a media node in another mounted substrate when the file matters to the knowledge claim. Online links rot; substrate-carried media preserves the evidence path.</p>\n<h2>Substrate Archives</h2>\n<p>A portable substrate may be transmitted as a single <code>.substrate</code> archive. The archive is the whole substrate unit: manifest, nodes, relationships, media, registry extensions, source snapshots, and workspace metadata needed to keep the files together.</p>\n<p>The recommended media type is <code>application/vnd.xananode.substrate+json+gzip</code>. The archive should contain a JSON envelope compressed with gzip. Tools may support other containers later, but official XanaNode tooling should read and write this format.</p>\n<p>Mounted substrate records should preserve:</p>\n<ul><li>repository URL</li><li>branch</li><li>commit hash</li><li>archive file name when exported</li><li>namespace</li><li>mounted/imported/merged/absorbed mode</li></ul>\n<h2>Executable Tool Contract</h2>\n<p>The protocol does not require Node.js, Python, or any other language runtime. Those are implementation choices, not protocol rules.</p>\n<p>Official XanaNode tooling should converge on two boring machine entry points that other applications can call regardless of stack:</p>\n<ul><li><code>xananode-core</code></li><li><code>xananode-workspace</code></li></ul>\n<p>These may be delivered as native executables, self-contained packaged binaries, platform launchers, or language-specific wrappers, but the command contract should remain stable across forms.</p>\n<p>The intent is simple:</p>\n<ul><li>Core handles protocol reading, validation, analysis, fragment generation, bundle writing, and projection-ready graph derivation.</li><li>Workspace handles substrate folder lifecycle, authoring roots, imports, working copies, federation intake, archive packaging, and build orchestration.</li></ul>\n<p>Applications such as Studio, Mobile, Hugo helpers, AI agents, browser services, and third-party integrations should be able to call those tools without embedding the implementation language directly.</p>\n<h3>Required executable behavior</h3>\n<p>Official executable implementations should:</p>\n<ul><li>accept ordinary filesystem paths to substrate folders, <code>.substrate</code> archives, <code>substrate-bundle.json</code>, and <code>substrate-bundle.jsonl</code></li><li>return structured machine-readable output through JSON on stdout, JSON files on disk, or both</li><li>return non-zero exit codes on validation, parse, or runtime failure</li><li>preserve protocol semantics regardless of host language</li><li>expose build metadata such as version, commit, build date, and implementation identity</li><li>keep command names and output envelopes stable enough that one tool can replace another implementation without rewriting the whole caller</li></ul>\n<h3>Recommended Core commands</h3>\n<p>The stable Core surface should include commands equivalent to:</p>\n<ul><li><code>xananode-core validate</code></li><li><code>xananode-core inspect</code></li><li><code>xananode-core build</code></li><li><code>xananode-core bundle</code></li><li><code>xananode-core analyze-intake</code></li><li><code>xananode-core projection</code></li></ul>\n<p>Expected responsibilities:</p>\n<ul><li><code>validate</code>: schema and integrity validation without mutating source records</li><li><code>inspect</code>: summarize a substrate or portable substrate source</li><li><code>build</code>: emit split protocol artifacts and optional bundle variants</li><li><code>bundle</code>: emit a portable <code>.substrate</code> archive plus optional JSON and JSONL companions</li><li><code>analyze-intake</code>: evaluate an incoming substrate against a receiving substrate for merge candidates, conflicts, suggested links, suggested transclusions, duplicate files, and health signals</li><li><code>projection</code>: derive renderer-neutral graph/projection data from protocol artifacts</li></ul>\n<h3>Recommended Workspace commands</h3>\n<p>The stable Workspace surface should include commands equivalent to:</p>\n<ul><li><code>xananode-workspace init</code></li><li><code>xananode-workspace open</code></li><li><code>xananode-workspace build</code></li><li><code>xananode-workspace export</code></li><li><code>xananode-workspace intertwingle</code></li><li><code>xananode-workspace deintertwingle</code></li><li><code>xananode-workspace health</code></li><li><code>xananode-workspace snapshot</code></li></ul>\n<p>Expected responsibilities:</p>\n<ul><li><code>init</code>: create a compliant substrate folder with declared authorship and repository metadata</li><li><code>open</code>: open an existing local substrate folder or working copy</li><li><code>build</code>: orchestrate Core builds for the active workspace</li><li><code>export</code>: write <code>.substrate</code>, <code>substrate-bundle.json</code>, <code>substrate-bundle.jsonl</code>, and split artifact outputs from the same source substrate</li><li><code>intertwingle</code>: mount or clone another substrate into a local workspace without silently claiming ownership</li><li><code>deintertwingle</code>: remove mounted material that has not been explicitly merged, while warning about broken chains or lost references</li><li><code>health</code>: compute substrate health, intake reports, chain break warnings, summary/body duplication warnings, and other authoring signals</li><li><code>snapshot</code>: create a versioned workspace snapshot through the substrate&#39;s backing VCS</li></ul>\n<h3>JSON-first machine I/O</h3>\n<p>For interoperability, executable implementations should support JSON-first invocation patterns.</p>\n<p>Examples:</p>\n<ul><li>pass arguments by filesystem path and flags</li><li>optionally accept JSON request files or stdin envelopes</li><li>write JSON result envelopes to stdout when <code>--json</code> is requested</li></ul>\n<p>The exact envelope format may evolve, but official tools should preserve these principles:</p>\n<ul><li>callers should not scrape prose output</li><li>success and failure should be obvious without reading human narration</li><li>structured warnings should be distinguishable from fatal errors</li><li>file outputs should be declared in the response</li></ul>\n<h3>Relationship to language-specific packages</h3>\n<p>JavaScript, Python, Rust, Go, Java, Kotlin, or other language packages may still exist as implementation surfaces. That is fine.</p>\n<p>But the protocol-facing contract should be the executable behavior and the artifact formats, not a requirement that every downstream caller embed Node.js APIs directly.</p>\n<p>In other words: the substrate is the protocol object, and the executable contract is the boring transport layer that lets many tools participate without sharing one language runtime.</p>\n<p>The current reference stack now supports Windows launcher packaging for <code>xananode-core</code> and <code>xananode-workspace</code> as self-contained executables with sibling runtime trees. That packaging shape is still an implementation detail, but it proves the protocol boundary can be used without a separate Node install on the calling machine.</p>\n<h2>Federation Targets</h2>\n<p>The protocol registry may list known online federation targets. A federation target is a Git-backed substrate source that tools can discover, clone, validate, and mount into a local workspace.</p>\n<p>The registry is a discovery aid, not a central authority. A substrate can federate with targets outside the registry as long as their manifests, schemas, and sharing rules validate.</p>\n<p>Workspace-level tools are responsible for cloning, naming, caching, mounting, and exporting mixed substrates. Studio may expose those actions, but the substrate management behavior belongs below the projection layer.</p>\n<h2>Sharing Policy</h2>\n<p>Nodes are shareable by default. This matches the federation model: an authored substrate is expected to be portable unless an author marks specific records as private, restricted, or needing review.</p>\n<p>A substrate may declare a top-level <code>sharing</code> policy:</p>\n<p>``<code>json { &quot;sharing&quot;: { &quot;default_shareable&quot;: true, &quot;excluded_nodes&quot;: [&quot;personal:person/private-contact&quot;], &quot;excluded_trails&quot;: [&quot;personal:trail/private-family-history&quot;], &quot;rules&quot;: [ { &quot;selector&quot;: { &quot;tag&quot;: &quot;medical&quot; }, &quot;shareable&quot;: false, &quot;scope&quot;: &quot;private&quot;, &quot;reason&quot;: &quot;Contains sensitive personal context.&quot; } ] } } </code>``</p>\n<p>Individual nodes may override that default:</p>\n<p>``<code>json { &quot;id&quot;: &quot;personal:claim/something-i-can-share&quot;, &quot;sharing&quot;: { &quot;shareable&quot;: true, &quot;scope&quot;: &quot;public&quot; } } </code>``</p>\n<p>When a trail is excluded, tools should treat the trail node and the trail&#39;s listed members as excluded unless an individual node explicitly opts back in. When a relationship touches a non-shareable node, pack exporters must omit that relationship or replace it with an explicit redaction record if the export profile supports redactions.</p>\n<p>Core, Workspace, Studio, and official projection layers must respect <code>sharing</code> during export, publication, federation, mounted-pack preparation, and generated review reports. A renderer may show private records inside a local authoring session, but it must not publish them into static public artifacts.</p>\n<h2>Projection Governance</h2>\n<p>Projection layers are lenses over a substrate. They may choose layout, typography, motion, interaction, and density, but official XanaNode projections must preserve protocol semantics:</p>\n<ul><li>relationship direction must be visible when edges are shown</li><li>relationship colors and line styles should come from the relationship type registry, with accessible alternatives when color alone is insufficient</li><li>node titles should remain titles; official graph projections should use node type/subtype projection media or primary media as the node center mark</li><li>node type, subtype, and multi-type/facet signals should remain distinguishable through projection media, color mixing, subtle chips, legends, tooltips, or inspector metadata</li><li>hop-depth controls should actually filter by graph distance from the focused node</li><li>when a reader travels along visible connected nodes, the projection should animate the walked route rather than dragging a decorative line</li><li>when a reader jumps to an unconnected or hidden node, the projection should make that leap legible with staged reveal by hop depth</li></ul>\n<p>Custom renderers can be compatible without copying the official look, but they should not flatten away direction, authorship, provenance, or sharing policy.</p>",
      "url": "/source/protocol-artifact-specs-substrates.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/specs/substrates.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-specs-substrates.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-specs-transclusion.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-specs-transclusion.md",
      "title": "Specs / Transclusion",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A protocol specification covering Transclusion.",
      "content": "# Transclusion\r\n\r\nTransclusion is inclusion by reference rather than duplication.\r\n\r\nIn XanaNode, transclusion should preserve:\r\n\r\n- source identity\r\n- attribution\r\n- version lineage\r\n- fragment address\r\n- rights metadata\r\n\r\nThe relationship type `transcludes` describes transclusion at the graph level. A viewer may derive the inverse view `transcluded_by` when looking from the fragment back to the consuming node.\n\r\nThe minimal interoperable form is:\r\n\r\n- a source node, such as `source/as-we-may-think`\r\n- a fragment node with `source_node`, `source_version_id`, `source_content_id`, `fragment_id`, `content_id`, `version_id`, `tumbler`, and `selector`\n- a consuming node, such as an essay or trail\r\n- a `transcludes` relationship from the consuming node to the fragment node\r\n\r\nThe `transcludes` relationship should carry the same versioned fragment `tumbler` used by the fragment node. This makes the transclusion point to a specific source version and fragment version rather than to a floating latest passage.\n\nSelectors may point to more than paragraph-like text. A transcluded fragment can identify:\n\n- an exact text quote\n- a word or character range\n- a page or region selection in a document\n- an audio or video time span\n- an image region or other media-native chunk\n\nThe durable rule is the same in every case:\n\n1. the consuming node points to a fragment node\n2. the fragment node preserves the versioned tumbler\n3. the selector carries the chunking detail for that source version\n\nThis is how XanaNode gets closer to the Nelson-style goal of reusing a precise span rather than only whole files or whole paragraphs.\n\nWhen a person pastes quoted material into an official XanaNode tool, the best-case authoring flow is not \"paste now, maybe relink later.\" The tool should prefer to create or reuse a fragment, record the `transcludes` relationship immediately, and preserve the source directionality at the moment of reuse.\n\nImplementations may begin with practical fragment references before attempting full Project Xanadu-style transclusion.\n",
      "html": "<p># Transclusion</p>\n<p>Transclusion is inclusion by reference rather than duplication.</p>\n<p>In XanaNode, transclusion should preserve:</p>\n<ul><li>source identity</li><li>attribution</li><li>version lineage</li><li>fragment address</li><li>rights metadata</li></ul>\n<p>The relationship type <code>transcludes</code> describes transclusion at the graph level. A viewer may derive the inverse view <code>transcluded_by</code> when looking from the fragment back to the consuming node.</p>\n<p>The minimal interoperable form is:</p>\n<ul><li>a source node, such as <code>source/as-we-may-think</code></li><li>a fragment node with <code>source_node</code>, <code>source_version_id</code>, <code>source_content_id</code>, <code>fragment_id</code>, <code>content_id</code>, <code>version_id</code>, <code>tumbler</code>, and <code>selector</code></li><li>a consuming node, such as an essay or trail</li><li>a <code>transcludes</code> relationship from the consuming node to the fragment node</li></ul>\n<p>The <code>transcludes</code> relationship should carry the same versioned fragment <code>tumbler</code> used by the fragment node. This makes the transclusion point to a specific source version and fragment version rather than to a floating latest passage.</p>\n<p>Selectors may point to more than paragraph-like text. A transcluded fragment can identify:</p>\n<ul><li>an exact text quote</li><li>a word or character range</li><li>a page or region selection in a document</li><li>an audio or video time span</li><li>an image region or other media-native chunk</li></ul>\n<p>The durable rule is the same in every case:</p>\n<p>1. the consuming node points to a fragment node 2. the fragment node preserves the versioned tumbler 3. the selector carries the chunking detail for that source version</p>\n<p>This is how XanaNode gets closer to the Nelson-style goal of reusing a precise span rather than only whole files or whole paragraphs.</p>\n<p>When a person pastes quoted material into an official XanaNode tool, the best-case authoring flow is not &quot;paste now, maybe relink later.&quot; The tool should prefer to create or reuse a fragment, record the <code>transcludes</code> relationship immediately, and preserve the source directionality at the moment of reuse.</p>\n<p>Implementations may begin with practical fragment references before attempting full Project Xanadu-style transclusion.</p>",
      "url": "/source/protocol-artifact-specs-transclusion.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/specs/transclusion.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-specs-transclusion.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-specs-tumbler-addressing.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-specs-tumbler-addressing.md",
      "title": "Specs / Tumbler Addressing",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A protocol specification covering Tumbler Addressing.",
      "content": "# Tumbler Addressing\r\n\r\nTumbler addressing refers to persistent, location-independent addressing of knowledge objects and fragments.\r\n\r\nThe goal is to address a thing even if:\r\n\r\n- files move\r\n- folders change\r\n- URLs change\r\n- renderers change\r\n- the substrate is mirrored or federated\r\n\r\nXanaNode begins with stable node IDs and a minimal fragment addressing profile.\r\n\r\n## Address Profile\r\n\r\nNode addresses use:\r\n\r\n```text\r\n<namespace>:<node-kind>/<local-id>\r\n```\r\n\r\nVersioned node addresses add an immutable version identity:\n\n```text\n<namespace>:<node-kind>/<local-id>@<version-id>\n```\n\nFragment addresses append a fragment selector and must preserve both the source node version and the fragment version:\n\n```text\n<namespace>:<node-kind>/<local-id>@<source-version-id>#fragment/<fragment-id>@<fragment-version-id>\n```\n\r\nRules:\r\n\r\n- `namespace` is a registered namespace such as `xananode` or `example.minimal`.\r\n- `node-kind` is the node type family used in the substrate path, such as `source`, `claim`, `concept`, `essay`, or `fragment`.\r\n- `local-id` is stable within the namespace.\n- `source-version-id` identifies the exact source node version being addressed, such as a Git commit/path identity or immutable content ID.\n- `fragment-id` is stable within the addressed node.\n- `fragment-version-id` identifies the exact fragment extraction/version, usually a content hash or generated fragment revision ID.\n- Fragment nodes must store `source_node`, `source_version_id`, `source_content_id`, `fragment_id`, `content_id`, `version_id`, and `tumbler`.\n- A `tumbler` field must preserve the full versioned node or fragment address when a record depends on persistent addressing.\n\r\nExamples:\r\n\r\n```text\r\nexample.minimal:concept/knowledge-substrate\nexample.minimal:source/as-we-may-think@git:8e47e70:examples/minimal-substrate/nodes/source-as-we-may-think.json#fragment/0004@sha256:example-as-we-may-think-fragment-0004\n```\n\nUnversioned node addresses are stable identities. Versioned node and fragment tumblers are fixed references to an exact historical chunk. A transclusion should use the versioned fragment tumbler, not the floating node identity.\n\n## Selector Granularity\n\nThe tumbler gives the durable address. The selector explains how the chunk was found inside the source.\n\nAcross the protocol, selectors are allowed to be more granular than a paragraph block:\n\n- `TextQuoteSelector` for an exact quoted span with optional prefix/suffix context\n- `TextPositionSelector` for character offsets inside a source version\n- `RangeSelector` for generic start/end ranges\n- `FragmentSelector` for a stable local fragment id\n- `MediaFragmentSelector` or `TimecodeRangeSelector` for audio/video segments, image regions, or other media-native chunking\n\nFor time-based media, the current interoperable shape is:\n\n```json\n{\n  \"type\": \"TimecodeRangeSelector\",\n  \"unit\": \"ms\",\n  \"start_ms\": 12340,\n  \"end_ms\": 18750,\n  \"start_timecode\": \"00:00:12.340\",\n  \"end_timecode\": \"00:00:18.750\"\n}\n```\n\nFor text or structured documents, the selector may instead use:\n\n```json\n{\n  \"type\": \"RangeSelector\",\n  \"unit\": \"word\",\n  \"start\": 120,\n  \"end\": 135\n}\n```\n\nThat means XanaNode's equivalent of \"start at this exact word\" is not a different address family. It is the same fragment tumbler plus a selector precise enough to identify the span within that specific source version.\n\nThis profile is intentionally small. Future versions may add richer selectors, byte ranges, media regions, and additional revision systems without invalidating these base addresses.\n",
      "html": "<p># Tumbler Addressing</p>\n<p>Tumbler addressing refers to persistent, location-independent addressing of knowledge objects and fragments.</p>\n<p>The goal is to address a thing even if:</p>\n<ul><li>files move</li><li>folders change</li><li>URLs change</li><li>renderers change</li><li>the substrate is mirrored or federated</li></ul>\n<p>XanaNode begins with stable node IDs and a minimal fragment addressing profile.</p>\n<h2>Address Profile</h2>\n<p>Node addresses use:</p>\n<p>``<code>text &lt;namespace&gt;:&lt;node-kind&gt;/&lt;local-id&gt; </code>``</p>\n<p>Versioned node addresses add an immutable version identity:</p>\n<p>``<code>text &lt;namespace&gt;:&lt;node-kind&gt;/&lt;local-id&gt;@&lt;version-id&gt; </code>``</p>\n<p>Fragment addresses append a fragment selector and must preserve both the source node version and the fragment version:</p>\n<p>``<code>text &lt;namespace&gt;:&lt;node-kind&gt;/&lt;local-id&gt;@&lt;source-version-id&gt;#fragment/&lt;fragment-id&gt;@&lt;fragment-version-id&gt; </code>``</p>\n<p>Rules:</p>\n<ul><li><code>namespace</code> is a registered namespace such as <code>xananode</code> or <code>example.minimal</code>.</li><li><code>node-kind</code> is the node type family used in the substrate path, such as <code>source</code>, <code>claim</code>, <code>concept</code>, <code>essay</code>, or <code>fragment</code>.</li><li><code>local-id</code> is stable within the namespace.</li><li><code>source-version-id</code> identifies the exact source node version being addressed, such as a Git commit/path identity or immutable content ID.</li><li><code>fragment-id</code> is stable within the addressed node.</li><li><code>fragment-version-id</code> identifies the exact fragment extraction/version, usually a content hash or generated fragment revision ID.</li><li>Fragment nodes must store <code>source_node</code>, <code>source_version_id</code>, <code>source_content_id</code>, <code>fragment_id</code>, <code>content_id</code>, <code>version_id</code>, and <code>tumbler</code>.</li><li>A <code>tumbler</code> field must preserve the full versioned node or fragment address when a record depends on persistent addressing.</li></ul>\n<p>Examples:</p>\n<p>``<code>text example.minimal:concept/knowledge-substrate example.minimal:source/as-we-may-think@git:8e47e70:examples/minimal-substrate/nodes/source-as-we-may-think.json#fragment/0004@sha256:example-as-we-may-think-fragment-0004 </code>``</p>\n<p>Unversioned node addresses are stable identities. Versioned node and fragment tumblers are fixed references to an exact historical chunk. A transclusion should use the versioned fragment tumbler, not the floating node identity.</p>\n<h2>Selector Granularity</h2>\n<p>The tumbler gives the durable address. The selector explains how the chunk was found inside the source.</p>\n<p>Across the protocol, selectors are allowed to be more granular than a paragraph block:</p>\n<ul><li><code>TextQuoteSelector</code> for an exact quoted span with optional prefix/suffix context</li><li><code>TextPositionSelector</code> for character offsets inside a source version</li><li><code>RangeSelector</code> for generic start/end ranges</li><li><code>FragmentSelector</code> for a stable local fragment id</li><li><code>MediaFragmentSelector</code> or <code>TimecodeRangeSelector</code> for audio/video segments, image regions, or other media-native chunking</li></ul>\n<p>For time-based media, the current interoperable shape is:</p>\n<p>``<code>json { &quot;type&quot;: &quot;TimecodeRangeSelector&quot;, &quot;unit&quot;: &quot;ms&quot;, &quot;start_ms&quot;: 12340, &quot;end_ms&quot;: 18750, &quot;start_timecode&quot;: &quot;00:00:12.340&quot;, &quot;end_timecode&quot;: &quot;00:00:18.750&quot; } </code>``</p>\n<p>For text or structured documents, the selector may instead use:</p>\n<p>``<code>json { &quot;type&quot;: &quot;RangeSelector&quot;, &quot;unit&quot;: &quot;word&quot;, &quot;start&quot;: 120, &quot;end&quot;: 135 } </code>``</p>\n<p>That means XanaNode&#39;s equivalent of &quot;start at this exact word&quot; is not a different address family. It is the same fragment tumbler plus a selector precise enough to identify the span within that specific source version.</p>\n<p>This profile is intentionally small. Future versions may add richer selectors, byte ranges, media regions, and additional revision systems without invalidating these base addresses.</p>",
      "url": "/source/protocol-artifact-specs-tumbler-addressing.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/specs/tumbler-addressing.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-specs-tumbler-addressing.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-specs-xananode-core.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-specs-xananode-core.md",
      "title": "Specs / XanaNode Core",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A protocol specification covering XanaNode Core.",
      "content": "# XanaNode Core\r\n\r\nXanaNode is an open protocol for interoperable knowledge substrates.\r\n\r\nThe core specification defines the shared vocabulary, object model, and protocol-level assumptions used across the rest of the repository.\r\n\r\n## Scope\r\n\r\n- the canonical node registry in [schemas/xananode-node-types.v0.3.0.json](../schemas/xananode-node-types.v0.3.0.json)\r\n- the canonical relationship registry in [schemas/xananode-relationship-types.v0.5.0.json](../schemas/xananode-relationship-types.v0.5.0.json)\n- the versioned JSON Schemas that validate those registries\r\n\r\n## Core Model\r\n\r\nThe current node registry centers on person, concept, claim, source, essay, and observation.\r\n\r\nThe current relationship registry centers on definitions, evidence, claim structure, lineage, identity, creation, participation, location, revision, and related semantic links.\r\n\r\nThe core model is designed to preserve provenance and disagreement rather than flattening distinct knowledge states into one asserted fact.\r\n",
      "html": "<p># XanaNode Core</p>\n<p>XanaNode is an open protocol for interoperable knowledge substrates.</p>\n<p>The core specification defines the shared vocabulary, object model, and protocol-level assumptions used across the rest of the repository.</p>\n<h2>Scope</h2>\n<ul><li>the canonical node registry in <a href=\"../schemas/xananode-node-types.v0.3.0.json\">schemas/xananode-node-types.v0.3.0.json</a></li><li>the canonical relationship registry in <a href=\"../schemas/xananode-relationship-types.v0.5.0.json\">schemas/xananode-relationship-types.v0.5.0.json</a></li><li>the versioned JSON Schemas that validate those registries</li></ul>\n<h2>Core Model</h2>\n<p>The current node registry centers on person, concept, claim, source, essay, and observation.</p>\n<p>The current relationship registry centers on definitions, evidence, claim structure, lineage, identity, creation, participation, location, revision, and related semantic links.</p>\n<p>The core model is designed to preserve provenance and disagreement rather than flattening distinct knowledge states into one asserted fact.</p>",
      "url": "/source/protocol-artifact-specs-xananode-core.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/specs/xananode-core.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-specs-xananode-core.md.json"
    },
    {
      "id": "xananode.canonical:source/protocol-artifact-trademark.md",
      "protocol_id": "xananode.canonical:source/protocol-artifact-trademark.md",
      "title": "XanaNode Trademark Policy",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 3,
      "summary": "The trademark policy describing how the XanaNode name and logo may be referenced.",
      "content": "# XanaNode Trademark Policy\n\nThe XanaNode name, XanaNode logo, and related brand assets identify the canonical XanaNode protocol and project.\n\nYou may use the name XanaNode to make accurate factual statements, such as:\n\n- \"implements the XanaNode protocol\"\n- \"XanaNode-compatible\"\n- \"built with XanaNode schemas\"\n- \"uses XanaNode Core\"\n\nYou may not use the XanaNode name or logo in a way that implies endorsement, official status, or control by the XanaNode project unless that relationship is true.\n\nImplementations should identify themselves as independently authored unless they are maintained by the XanaNode project. For example:\n\n> ExampleApp is an independent XanaNode-compatible implementation.\n\nModified logos, confusingly similar marks, and product names that imply ownership of XanaNode itself are not permitted without permission.\n\n",
      "html": "<p># XanaNode Trademark Policy</p>\n<p>The XanaNode name, XanaNode logo, and related brand assets identify the canonical XanaNode protocol and project.</p>\n<p>You may use the name XanaNode to make accurate factual statements, such as:</p>\n<ul><li>&quot;implements the XanaNode protocol&quot;</li><li>&quot;XanaNode-compatible&quot;</li><li>&quot;built with XanaNode schemas&quot;</li><li>&quot;uses XanaNode Core&quot;</li></ul>\n<p>You may not use the XanaNode name or logo in a way that implies endorsement, official status, or control by the XanaNode project unless that relationship is true.</p>\n<p>Implementations should identify themselves as independently authored unless they are maintained by the XanaNode project. For example:</p>\n<blockquote><p>ExampleApp is an independent XanaNode-compatible implementation.</p></blockquote>\n<p>Modified logos, confusingly similar marks, and product names that imply ownership of XanaNode itself are not permitted without permission.</p>",
      "url": "/source/protocol-artifact-trademark.md/",
      "primary_media": "",
      "media_type": "document",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/TRADEMARK.md",
      "license": "",
      "license_url": "",
      "rights_status": "CC-BY-4.0",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_protocol-artifact-trademark.md.json"
    },
    {
      "id": "xananode.canonical:source/repository-kingc95-xananode",
      "protocol_id": "xananode.canonical:source/repository-kingc95-xananode",
      "title": "XanaNode Protocol Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "Public Git repository for XanaNode Protocol.",
      "content": "Public Git repository for XanaNode Protocol.",
      "html": "<p>Public Git repository for XanaNode Protocol.</p>",
      "url": "/source/repository-kingc95-xananode/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_repository-kingc95-xananode.json"
    },
    {
      "id": "xananode.canonical:source/repository-kingc95-xananode-core-sdk",
      "protocol_id": "xananode.canonical:source/repository-kingc95-xananode-core-sdk",
      "title": "XanaNode Core SDK Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "Public Git repository for XanaNode Core SDK.",
      "content": "Public Git repository for XanaNode Core SDK.",
      "html": "<p>Public Git repository for XanaNode Core SDK.</p>",
      "url": "/source/repository-kingc95-xananode-core-sdk/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Core-SDK",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_repository-kingc95-xananode-core-sdk.json"
    },
    {
      "id": "xananode.canonical:source/repository-kingc95-xananode-hugo",
      "protocol_id": "xananode.canonical:source/repository-kingc95-xananode-hugo",
      "title": "XanaNode Hugo Theme Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "Public Git repository for XanaNode Hugo Theme.",
      "content": "Public Git repository for XanaNode Hugo Theme.",
      "html": "<p>Public Git repository for XanaNode Hugo Theme.</p>",
      "url": "/source/repository-kingc95-xananode-hugo/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/xananode-hugo",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_repository-kingc95-xananode-hugo.json"
    },
    {
      "id": "xananode.canonical:source/repository-kingc95-xananode-mobile",
      "protocol_id": "xananode.canonical:source/repository-kingc95-xananode-mobile",
      "title": "XanaNode Mobile Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "Public Git repository for XanaNode Mobile.",
      "content": "Public Git repository for XanaNode Mobile.",
      "html": "<p>Public Git repository for XanaNode Mobile.</p>",
      "url": "/source/repository-kingc95-xananode-mobile/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Mobile",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_repository-kingc95-xananode-mobile.json"
    },
    {
      "id": "xananode.canonical:source/repository-kingc95-xananode-studio",
      "protocol_id": "xananode.canonical:source/repository-kingc95-xananode-studio",
      "title": "XanaNode Studio Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "Public Git repository for XanaNode Studio.",
      "content": "Public Git repository for XanaNode Studio.",
      "html": "<p>Public Git repository for XanaNode Studio.</p>",
      "url": "/source/repository-kingc95-xananode-studio/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Studio",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_repository-kingc95-xananode-studio.json"
    },
    {
      "id": "xananode.canonical:source/repository-kingc95-xananode-workspace",
      "protocol_id": "xananode.canonical:source/repository-kingc95-xananode-workspace",
      "title": "XanaNode Workspace Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "Public Git repository for XanaNode Workspace.",
      "content": "Public Git repository for XanaNode Workspace.",
      "html": "<p>Public Git repository for XanaNode Workspace.</p>",
      "url": "/source/repository-kingc95-xananode-workspace/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Workspace",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_repository-kingc95-xananode-workspace.json"
    },
    {
      "id": "xananode.canonical:source/support-xananode",
      "protocol_id": "xananode.canonical:source/support-xananode",
      "title": "Support XanaNode",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A support link for people who want to help sustain authored knowledge substrate creation.",
      "content": "A support link for people who want to help sustain authored knowledge substrate creation.",
      "html": "<p>A support link for people who want to help sustain authored knowledge substrate creation.</p>",
      "url": "/source/support-xananode/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/sponsors/kingc95",
      "license": "",
      "license_url": "",
      "rights_status": "external",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_support-xananode.json"
    },
    {
      "id": "xananode.canonical:source/xananode-com-domain",
      "protocol_id": "xananode.canonical:source/xananode-com-domain",
      "title": "XanaNode.com",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 5,
      "summary": "The stable long-term public home of the canonical XanaNode projection. XanaNode.org and XanaNode.net are project-owned aliases that resolve here to avoid fragmentation and SEO conflict.",
      "content": "The stable long-term public home of the canonical XanaNode projection. XanaNode.org and XanaNode.net are project-owned aliases that resolve here to avoid fragmentation and SEO conflict.",
      "html": "<p>The stable long-term public home of the canonical XanaNode projection. XanaNode.org and XanaNode.net are project-owned aliases that resolve here to avoid fragmentation and SEO conflict.</p>",
      "url": "/source/xananode-com-domain/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://xananode.com/",
      "license": "",
      "license_url": "",
      "rights_status": "canonical-public",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_xananode-com-domain.json"
    },
    {
      "id": "xananode.canonical:source/xananode-hugo-repository",
      "protocol_id": "xananode.canonical:source/xananode-hugo-repository",
      "title": "XanaNode Hugo Repository",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 5,
      "summary": "The public Hugo projection repository that renders XanaNode substrates as static readable pages and an interactive graph.",
      "content": "The public Hugo projection repository that renders XanaNode substrates as static readable pages and an interactive graph.",
      "html": "<p>The public Hugo projection repository that renders XanaNode substrates as static readable pages and an interactive graph.</p>",
      "url": "/source/xananode-hugo-repository/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Hugo",
      "license": "",
      "license_url": "",
      "rights_status": "open-source",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_xananode-hugo-repository.json"
    },
    {
      "id": "xananode.canonical:source/xananode-kernel-for-human-thought-draft",
      "protocol_id": "xananode.canonical:source/xananode-kernel-for-human-thought-draft",
      "title": "XanaNode As A Kernel For Human Thought Draft",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A raw authored comparison that frames XanaNode as an open foundational substrate layer for knowledge in the way Linux became an open foundational kernel for computing.",
      "content": "When Linus Torvalds created Linux, he did not build a flashy consumer application. He built an open foundational kernel, a plumbing layer that handles how a computer operates, manages memory, and talks to hardware. Because that plumbing was open, standard, and free, it became the invisible engine underneath Android phones, enterprise cloud servers, smart TVs, and supercomputers.\n\nXanaNode is trying to do the same thing for knowledge. It is not a notes app trying to trap attention inside one interface. It is a substrate protocol and stack layer meant to let knowledge move between tools without losing its structure.\n\nThe Core SDK plays the role of shared plumbing. It is renderer-independent and handles the baseline rules of structure, relationship typing, fragment tracking, validation, and export so every projection does not have to reinvent them.\n\nThe substrate and the projection are intentionally separated. In Linux, people interact through distributions such as Ubuntu, Fedora, or Red Hat while the kernel remains the underlying contract. In XanaNode, the same substrate can be viewed through Studio, Mobile, Hugo, or a future projection that does not exist yet. The tool is a lens over the data, not the data itself.\n\nThat separation matters because it prevents knowledge from being held hostage by one product. If a proprietary notes tool collapses, changes pricing, or drifts away from its users, the knowledge goes with it. XanaNode keeps the substrate local, protocol-shaped, and portable, so another compatible projection can pick it up and keep going.\n\nFederation is the ecosystem layer. Linux did not become important because one company owned all computation. It mattered because many independent actors could build on a common base. XanaNode aims for the same pattern with independently authored substrates that can mount, compare, and merge without surrendering provenance, lineage, disagreement, or ownership.\n\nThe point is not another app. The point is an open substrate ecosystem for durable human-to-machine knowledge transfer.",
      "html": "<p>When Linus Torvalds created Linux, he did not build a flashy consumer application. He built an open foundational kernel, a plumbing layer that handles how a computer operates, manages memory, and talks to hardware. Because that plumbing was open, standard, and free, it became the invisible engine underneath Android phones, enterprise cloud servers, smart TVs, and supercomputers.</p>\n<p>XanaNode is trying to do the same thing for knowledge. It is not a notes app trying to trap attention inside one interface. It is a substrate protocol and stack layer meant to let knowledge move between tools without losing its structure.</p>\n<p>The Core SDK plays the role of shared plumbing. It is renderer-independent and handles the baseline rules of structure, relationship typing, fragment tracking, validation, and export so every projection does not have to reinvent them.</p>\n<p>The substrate and the projection are intentionally separated. In Linux, people interact through distributions such as Ubuntu, Fedora, or Red Hat while the kernel remains the underlying contract. In XanaNode, the same substrate can be viewed through Studio, Mobile, Hugo, or a future projection that does not exist yet. The tool is a lens over the data, not the data itself.</p>\n<p>That separation matters because it prevents knowledge from being held hostage by one product. If a proprietary notes tool collapses, changes pricing, or drifts away from its users, the knowledge goes with it. XanaNode keeps the substrate local, protocol-shaped, and portable, so another compatible projection can pick it up and keep going.</p>\n<p>Federation is the ecosystem layer. Linux did not become important because one company owned all computation. It mattered because many independent actors could build on a common base. XanaNode aims for the same pattern with independently authored substrates that can mount, compare, and merge without surrendering provenance, lineage, disagreement, or ownership.</p>\n<p>The point is not another app. The point is an open substrate ecosystem for durable human-to-machine knowledge transfer.</p>",
      "url": "/source/xananode-kernel-for-human-thought-draft/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "canonical-public",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_xananode-kernel-for-human-thought-draft.json"
    },
    {
      "id": "xananode.canonical:source/xananode-license-policy",
      "protocol_id": "xananode.canonical:source/xananode-license-policy",
      "title": "XanaNode License Policy",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 5,
      "summary": "The protocol-level policy splitting XanaNode documentation, schemas, validators, reference code, and trademarks into their proper legal categories.",
      "content": "The protocol-level policy splitting XanaNode documentation, schemas, validators, reference code, and trademarks into their proper legal categories.",
      "html": "<p>The protocol-level policy splitting XanaNode documentation, schemas, validators, reference code, and trademarks into their proper legal categories.</p>",
      "url": "/source/xananode-license-policy/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/LICENSE.md",
      "license": "CC-BY-4.0",
      "license_url": "",
      "rights_status": "canonical-public",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_xananode-license-policy.json"
    },
    {
      "id": "xananode.canonical:source/xananode-net-domain",
      "protocol_id": "xananode.canonical:source/xananode-net-domain",
      "title": "XanaNode.net",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A project-owned alias domain that resolves to the same canonical XanaNode projection as XanaNode.com so the XanaNode project does not compete with itself in search, linking, or naming.",
      "content": "A project-owned alias domain that resolves to the same canonical XanaNode projection as XanaNode.com so the XanaNode project does not compete with itself in search, linking, or naming.",
      "html": "<p>A project-owned alias domain that resolves to the same canonical XanaNode projection as XanaNode.com so the XanaNode project does not compete with itself in search, linking, or naming.</p>",
      "url": "/source/xananode-net-domain/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://xananode.net/",
      "license": "",
      "license_url": "",
      "rights_status": "canonical-public",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_xananode-net-domain.json"
    },
    {
      "id": "xananode.canonical:source/xananode-notice",
      "protocol_id": "xananode.canonical:source/xananode-notice",
      "title": "XanaNode NOTICE",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "The attribution notice summarizing XanaNode protocol copyright, licensing, and trademark status.",
      "content": "The attribution notice summarizing XanaNode protocol copyright, licensing, and trademark status.",
      "html": "<p>The attribution notice summarizing XanaNode protocol copyright, licensing, and trademark status.</p>",
      "url": "/source/xananode-notice/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/NOTICE",
      "license": "CC-BY-4.0",
      "license_url": "",
      "rights_status": "canonical-public",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_xananode-notice.json"
    },
    {
      "id": "xananode.canonical:source/xananode-org-domain",
      "protocol_id": "xananode.canonical:source/xananode-org-domain",
      "title": "XanaNode.org",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 4,
      "summary": "A project-owned alias domain that resolves to the same canonical XanaNode projection as XanaNode.com so the XanaNode project does not compete with itself in search, linking, or naming.",
      "content": "A project-owned alias domain that resolves to the same canonical XanaNode projection as XanaNode.com so the XanaNode project does not compete with itself in search, linking, or naming.",
      "html": "<p>A project-owned alias domain that resolves to the same canonical XanaNode projection as XanaNode.com so the XanaNode project does not compete with itself in search, linking, or naming.</p>",
      "url": "/source/xananode-org-domain/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://xananode.org/",
      "license": "",
      "license_url": "",
      "rights_status": "canonical-public",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_xananode-org-domain.json"
    },
    {
      "id": "xananode.canonical:source/xananode-trademark-policy",
      "protocol_id": "xananode.canonical:source/xananode-trademark-policy",
      "title": "XanaNode Trademark Policy",
      "type": "source",
      "facets": [],
      "section": "sources",
      "importance": 5,
      "summary": "The policy that governs use of the XanaNode name, logo, and related brand assets.",
      "content": "The policy that governs use of the XanaNode name, logo, and related brand assets.",
      "html": "<p>The policy that governs use of the XanaNode name, logo, and related brand assets.</p>",
      "url": "/source/xananode-trademark-policy/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://github.com/kingc95/XanaNode-Protocol/blob/main/TRADEMARK.md",
      "license": "CC-BY-4.0",
      "license_url": "",
      "rights_status": "canonical-public",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_source_xananode-trademark-policy.json"
    },
    {
      "id": "xananode.canonical:technology/cytoscape-js",
      "protocol_id": "xananode.canonical:technology/cytoscape-js",
      "title": "Cytoscape.js",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 4,
      "summary": "A graph visualization library used by the XanaNode Hugo projection to render interactive substrate graphs.",
      "content": "A graph visualization library used by the XanaNode Hugo projection to render interactive substrate graphs.",
      "html": "<p>A graph visualization library used by the XanaNode Hugo projection to render interactive substrate graphs.</p>",
      "url": "/technology/cytoscape-js/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://js.cytoscape.org/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_cytoscape-js.json"
    },
    {
      "id": "xananode.canonical:technology/git",
      "protocol_id": "xananode.canonical:technology/git",
      "title": "Git",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 4,
      "summary": "The distributed version control system used to preserve substrate history, protocol revisions, repositories, and deployment workflows.",
      "content": "The distributed version control system used to preserve substrate history, protocol revisions, repositories, and deployment workflows.",
      "html": "<p>The distributed version control system used to preserve substrate history, protocol revisions, repositories, and deployment workflows.</p>",
      "url": "/technology/git/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://git-scm.com/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_git.json"
    },
    {
      "id": "xananode.canonical:technology/hugo",
      "protocol_id": "xananode.canonical:technology/hugo",
      "title": "Hugo",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 4,
      "summary": "A static site generator used by the XanaNode Hugo projection to publish substrates as static websites.",
      "content": "A static site generator used by the XanaNode Hugo projection to publish substrates as static websites.",
      "html": "<p>A static site generator used by the XanaNode Hugo projection to publish substrates as static websites.</p>",
      "url": "/technology/hugo/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://gohugo.io/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_hugo.json"
    },
    {
      "id": "xananode.canonical:technology/nodejs",
      "protocol_id": "xananode.canonical:technology/nodejs",
      "title": "Node.js",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 4,
      "summary": "The JavaScript runtime used by XanaNode Core, Hugo preparation scripts, and build tooling.",
      "content": "The JavaScript runtime used by XanaNode Core, Hugo preparation scripts, and build tooling.",
      "html": "<p>The JavaScript runtime used by XanaNode Core, Hugo preparation scripts, and build tooling.</p>",
      "url": "/technology/nodejs/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://nodejs.org/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_nodejs.json"
    },
    {
      "id": "xananode.canonical:technology/python",
      "protocol_id": "xananode.canonical:technology/python",
      "title": "Python",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "A language used by the protocol repository validation tooling and supported as a future validation/runtime target.",
      "content": "A language used by the protocol repository validation tooling and supported as a future validation/runtime target.",
      "html": "<p>A language used by the protocol repository validation tooling and supported as a future validation/runtime target.</p>",
      "url": "/technology/python/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "https://www.python.org/",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_python.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-core-sdk-component-node-files",
      "protocol_id": "xananode.canonical:technology/xananode-core-sdk-component-node-files",
      "title": "XanaNode Core SDK: node files",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Core SDK consumes or depends on node files.",
      "content": "XanaNode Core SDK consumes or depends on node files.",
      "html": "<p>XanaNode Core SDK consumes or depends on node files.</p>",
      "url": "/technology/xananode-core-sdk-component-node-files/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-core-sdk-component-node-files.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-core-sdk-component-protocol-schemas",
      "protocol_id": "xananode.canonical:technology/xananode-core-sdk-component-protocol-schemas",
      "title": "XanaNode Core SDK: protocol schemas",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Core SDK consumes or depends on protocol schemas.",
      "content": "XanaNode Core SDK consumes or depends on protocol schemas.",
      "html": "<p>XanaNode Core SDK consumes or depends on protocol schemas.</p>",
      "url": "/technology/xananode-core-sdk-component-protocol-schemas/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-core-sdk-component-protocol-schemas.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-core-sdk-component-relationship-files",
      "protocol_id": "xananode.canonical:technology/xananode-core-sdk-component-relationship-files",
      "title": "XanaNode Core SDK: relationship files",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Core SDK consumes or depends on relationship files.",
      "content": "XanaNode Core SDK consumes or depends on relationship files.",
      "html": "<p>XanaNode Core SDK consumes or depends on relationship files.</p>",
      "url": "/technology/xananode-core-sdk-component-relationship-files/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-core-sdk-component-relationship-files.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-core-sdk-component-substrate-manifests",
      "protocol_id": "xananode.canonical:technology/xananode-core-sdk-component-substrate-manifests",
      "title": "XanaNode Core SDK: substrate manifests",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Core SDK consumes or depends on substrate manifests.",
      "content": "XanaNode Core SDK consumes or depends on substrate manifests.",
      "html": "<p>XanaNode Core SDK consumes or depends on substrate manifests.</p>",
      "url": "/technology/xananode-core-sdk-component-substrate-manifests/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-core-sdk-component-substrate-manifests.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-core-sdk-component-substrate-packs",
      "protocol_id": "xananode.canonical:technology/xananode-core-sdk-component-substrate-packs",
      "title": "XanaNode Core SDK: substrate packs",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Core SDK consumes or depends on substrate packs.",
      "content": "XanaNode Core SDK consumes or depends on substrate packs.",
      "html": "<p>XanaNode Core SDK consumes or depends on substrate packs.</p>",
      "url": "/technology/xananode-core-sdk-component-substrate-packs/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-core-sdk-component-substrate-packs.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-hugo-theme-component-node-files",
      "protocol_id": "xananode.canonical:technology/xananode-hugo-theme-component-node-files",
      "title": "XanaNode Hugo Theme: node files",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Hugo Theme consumes or depends on node files.",
      "content": "XanaNode Hugo Theme consumes or depends on node files.",
      "html": "<p>XanaNode Hugo Theme consumes or depends on node files.</p>",
      "url": "/technology/xananode-hugo-theme-component-node-files/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-hugo-theme-component-node-files.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-hugo-theme-component-relationship-files",
      "protocol_id": "xananode.canonical:technology/xananode-hugo-theme-component-relationship-files",
      "title": "XanaNode Hugo Theme: relationship files",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Hugo Theme consumes or depends on relationship files.",
      "content": "XanaNode Hugo Theme consumes or depends on relationship files.",
      "html": "<p>XanaNode Hugo Theme consumes or depends on relationship files.</p>",
      "url": "/technology/xananode-hugo-theme-component-relationship-files/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-hugo-theme-component-relationship-files.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-hugo-theme-component-schema-registries",
      "protocol_id": "xananode.canonical:technology/xananode-hugo-theme-component-schema-registries",
      "title": "XanaNode Hugo Theme: schema registries",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Hugo Theme consumes or depends on schema registries.",
      "content": "XanaNode Hugo Theme consumes or depends on schema registries.",
      "html": "<p>XanaNode Hugo Theme consumes or depends on schema registries.</p>",
      "url": "/technology/xananode-hugo-theme-component-schema-registries/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-hugo-theme-component-schema-registries.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-hugo-theme-component-substrate-manifests",
      "protocol_id": "xananode.canonical:technology/xananode-hugo-theme-component-substrate-manifests",
      "title": "XanaNode Hugo Theme: substrate manifests",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Hugo Theme consumes or depends on substrate manifests.",
      "content": "XanaNode Hugo Theme consumes or depends on substrate manifests.",
      "html": "<p>XanaNode Hugo Theme consumes or depends on substrate manifests.</p>",
      "url": "/technology/xananode-hugo-theme-component-substrate-manifests/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-hugo-theme-component-substrate-manifests.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-mobile-component-.substrate-bundles",
      "protocol_id": "xananode.canonical:technology/xananode-mobile-component-.substrate-bundles",
      "title": "XanaNode Mobile: .substrate bundles",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Mobile consumes or depends on .substrate bundles.",
      "content": "XanaNode Mobile consumes or depends on .substrate bundles.",
      "html": "<p>XanaNode Mobile consumes or depends on .substrate bundles.</p>",
      "url": "/technology/xananode-mobile-component-.substrate-bundles/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-mobile-component-.substrate-bundles.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-mobile-component-core-sdk-apis",
      "protocol_id": "xananode.canonical:technology/xananode-mobile-component-core-sdk-apis",
      "title": "XanaNode Mobile: Core SDK APIs",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Mobile consumes or depends on Core SDK APIs.",
      "content": "XanaNode Mobile consumes or depends on Core SDK APIs.",
      "html": "<p>XanaNode Mobile consumes or depends on Core SDK APIs.</p>",
      "url": "/technology/xananode-mobile-component-core-sdk-apis/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-mobile-component-core-sdk-apis.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-mobile-component-protocol-branding",
      "protocol_id": "xananode.canonical:technology/xananode-mobile-component-protocol-branding",
      "title": "XanaNode Mobile: protocol branding",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Mobile consumes or depends on protocol branding.",
      "content": "XanaNode Mobile consumes or depends on protocol branding.",
      "html": "<p>XanaNode Mobile consumes or depends on protocol branding.</p>",
      "url": "/technology/xananode-mobile-component-protocol-branding/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-mobile-component-protocol-branding.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-mobile-component-protocol-registries",
      "protocol_id": "xananode.canonical:technology/xananode-mobile-component-protocol-registries",
      "title": "XanaNode Mobile: protocol registries",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Mobile consumes or depends on protocol registries.",
      "content": "XanaNode Mobile consumes or depends on protocol registries.",
      "html": "<p>XanaNode Mobile consumes or depends on protocol registries.</p>",
      "url": "/technology/xananode-mobile-component-protocol-registries/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-mobile-component-protocol-registries.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-mobile-component-workspace-apis",
      "protocol_id": "xananode.canonical:technology/xananode-mobile-component-workspace-apis",
      "title": "XanaNode Mobile: Workspace APIs",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Mobile consumes or depends on Workspace APIs.",
      "content": "XanaNode Mobile consumes or depends on Workspace APIs.",
      "html": "<p>XanaNode Mobile consumes or depends on Workspace APIs.</p>",
      "url": "/technology/xananode-mobile-component-workspace-apis/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-mobile-component-workspace-apis.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-studio-component-core-sdk-apis",
      "protocol_id": "xananode.canonical:technology/xananode-studio-component-core-sdk-apis",
      "title": "XanaNode Studio: Core SDK APIs",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Studio consumes or depends on Core SDK APIs.",
      "content": "XanaNode Studio consumes or depends on Core SDK APIs.",
      "html": "<p>XanaNode Studio consumes or depends on Core SDK APIs.</p>",
      "url": "/technology/xananode-studio-component-core-sdk-apis/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-studio-component-core-sdk-apis.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-studio-component-protocol-branding",
      "protocol_id": "xananode.canonical:technology/xananode-studio-component-protocol-branding",
      "title": "XanaNode Studio: protocol branding",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Studio consumes or depends on protocol branding.",
      "content": "XanaNode Studio consumes or depends on protocol branding.",
      "html": "<p>XanaNode Studio consumes or depends on protocol branding.</p>",
      "url": "/technology/xananode-studio-component-protocol-branding/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-studio-component-protocol-branding.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-studio-component-protocol-registries",
      "protocol_id": "xananode.canonical:technology/xananode-studio-component-protocol-registries",
      "title": "XanaNode Studio: protocol registries",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Studio consumes or depends on protocol registries.",
      "content": "XanaNode Studio consumes or depends on protocol registries.",
      "html": "<p>XanaNode Studio consumes or depends on protocol registries.</p>",
      "url": "/technology/xananode-studio-component-protocol-registries/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-studio-component-protocol-registries.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-studio-component-workspace-apis",
      "protocol_id": "xananode.canonical:technology/xananode-studio-component-workspace-apis",
      "title": "XanaNode Studio: Workspace APIs",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Studio consumes or depends on Workspace APIs.",
      "content": "XanaNode Studio consumes or depends on Workspace APIs.",
      "html": "<p>XanaNode Studio consumes or depends on Workspace APIs.</p>",
      "url": "/technology/xananode-studio-component-workspace-apis/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-studio-component-workspace-apis.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-workspace-component-author-profiles",
      "protocol_id": "xananode.canonical:technology/xananode-workspace-component-author-profiles",
      "title": "XanaNode Workspace: author profiles",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Workspace consumes or depends on author profiles.",
      "content": "XanaNode Workspace consumes or depends on author profiles.",
      "html": "<p>XanaNode Workspace consumes or depends on author profiles.</p>",
      "url": "/technology/xananode-workspace-component-author-profiles/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-workspace-component-author-profiles.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-workspace-component-core-sdk-apis",
      "protocol_id": "xananode.canonical:technology/xananode-workspace-component-core-sdk-apis",
      "title": "XanaNode Workspace: Core SDK APIs",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Workspace consumes or depends on Core SDK APIs.",
      "content": "XanaNode Workspace consumes or depends on Core SDK APIs.",
      "html": "<p>XanaNode Workspace consumes or depends on Core SDK APIs.</p>",
      "url": "/technology/xananode-workspace-component-core-sdk-apis/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-workspace-component-core-sdk-apis.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-workspace-component-node-files",
      "protocol_id": "xananode.canonical:technology/xananode-workspace-component-node-files",
      "title": "XanaNode Workspace: node files",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Workspace consumes or depends on node files.",
      "content": "XanaNode Workspace consumes or depends on node files.",
      "html": "<p>XanaNode Workspace consumes or depends on node files.</p>",
      "url": "/technology/xananode-workspace-component-node-files/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-workspace-component-node-files.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-workspace-component-relationship-files",
      "protocol_id": "xananode.canonical:technology/xananode-workspace-component-relationship-files",
      "title": "XanaNode Workspace: relationship files",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Workspace consumes or depends on relationship files.",
      "content": "XanaNode Workspace consumes or depends on relationship files.",
      "html": "<p>XanaNode Workspace consumes or depends on relationship files.</p>",
      "url": "/technology/xananode-workspace-component-relationship-files/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-workspace-component-relationship-files.json"
    },
    {
      "id": "xananode.canonical:technology/xananode-workspace-component-substrate-manifests",
      "protocol_id": "xananode.canonical:technology/xananode-workspace-component-substrate-manifests",
      "title": "XanaNode Workspace: substrate manifests",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "XanaNode Workspace consumes or depends on substrate manifests.",
      "content": "XanaNode Workspace consumes or depends on substrate manifests.",
      "html": "<p>XanaNode Workspace consumes or depends on substrate manifests.</p>",
      "url": "/technology/xananode-workspace-component-substrate-manifests/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_technology_xananode-workspace-component-substrate-manifests.json"
    },
    {
      "id": "xananode.canonical:trail/federated-stack-proof",
      "protocol_id": "xananode.canonical:trail/federated-stack-proof",
      "title": "Federated Stack Proof",
      "type": "trail",
      "facets": [],
      "section": "trails",
      "importance": 5,
      "summary": "A short trail showing that the XanaNode stack proves federation by publishing its own layers as interoperable substrates.",
      "content": "Follow the stack from the protocol substrate into Core, then outward into Workspace, Studio, Mobile, and Hugo. The canonical substrate points to each real layer as a federated substrate source, while also carrying embedded example namespaces that teach the same federation patterns in a portable local bundle. Together these show that the stack is not one giant opaque application. It is a federation of layers that remain interoperable without surrendering identity.",
      "html": "<p>Follow the stack from the protocol substrate into Core, then outward into Workspace, Studio, Mobile, and Hugo. The canonical substrate points to each real layer as a federated substrate source, while also carrying embedded example namespaces that teach the same federation patterns in a portable local bundle. Together these show that the stack is not one giant opaque application. It is a federation of layers that remain interoperable without surrendering identity.</p>",
      "url": "/trail/federated-stack-proof/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_trail_federated-stack-proof.json"
    },
    {
      "id": "xananode.canonical:trail/federation-merge-proof",
      "protocol_id": "xananode.canonical:trail/federation-merge-proof",
      "title": "Federation Merge Proof",
      "type": "trail",
      "facets": [],
      "section": "trails",
      "importance": 5,
      "summary": "A short trail showing how XanaNode records overlap between two substrates without flattening their differences.",
      "content": "This trail walks through the federation example itself. Start with the two local concepts, follow the possible-match overlap, then inspect the merge report, compatibility report, and diff. The important point is that the protocol does not force one concept to replace the other. It makes the overlap explicit, reviewable, and preservable.",
      "html": "<p>This trail walks through the federation example itself. Start with the two local concepts, follow the possible-match overlap, then inspect the merge report, compatibility report, and diff. The important point is that the protocol does not force one concept to replace the other. It makes the overlap explicit, reviewable, and preservable.</p>",
      "url": "/trail/federation-merge-proof/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_trail_federation-merge-proof.json"
    },
    {
      "id": "xananode.canonical:trail/xananode-stack-trail",
      "protocol_id": "xananode.canonical:trail/xananode-stack-trail",
      "title": "XanaNode Stack Trail",
      "type": "trail",
      "facets": [],
      "section": "trails",
      "importance": 5,
      "summary": "A curated route from the XanaNode concept through protocol, Core, workspace, Studio, Mobile, projection layers, Hugo, sources, and support.",
      "content": "A curated route from the XanaNode concept through protocol, Core, workspace, Studio, Mobile, projection layers, Hugo, sources, and support.",
      "html": "<p>A curated route from the XanaNode concept through protocol, Core, workspace, Studio, Mobile, projection layers, Hugo, sources, and support.</p>",
      "url": "/trail/xananode-stack-trail/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes/xananode.canonical_trail_xananode-stack-trail.json"
    },
    {
      "id": "xananode.lineage:person/gottfried-wilhelm-leibniz",
      "protocol_id": "xananode.lineage:person/gottfried-wilhelm-leibniz",
      "title": "Gottfried Wilhelm Leibniz",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 4,
      "summary": "Philosopher and mathematician associated with universal symbolic reasoning and the calculus of thought.",
      "content": "Philosopher and mathematician associated with universal symbolic reasoning and the calculus of thought.",
      "html": "<p>Philosopher and mathematician associated with universal symbolic reasoning and the calculus of thought.</p>",
      "url": "/person/gottfried-wilhelm-leibniz/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/wilhelm-ostwald",
      "protocol_id": "xananode.lineage:person/wilhelm-ostwald",
      "title": "Wilhelm Ostwald",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 3,
      "summary": "Organizer of Die Bruecke, an effort to standardize and organize world knowledge.",
      "content": "Organizer of Die Bruecke, an effort to standardize and organize world knowledge.",
      "html": "<p>Organizer of Die Bruecke, an effort to standardize and organize world knowledge.</p>",
      "url": "/person/wilhelm-ostwald/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/jorge-luis-borges",
      "protocol_id": "xananode.lineage:person/jorge-luis-borges",
      "title": "Jorge Luis Borges",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 4,
      "summary": "Writer whose nonlinear literary structures are often treated as hypertext-adjacent ancestry.",
      "content": "Writer whose nonlinear literary structures are often treated as hypertext-adjacent ancestry.",
      "html": "<p>Writer whose nonlinear literary structures are often treated as hypertext-adjacent ancestry.</p>",
      "url": "/person/jorge-luis-borges/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:publication/the-garden-of-forking-paths",
      "protocol_id": "xananode.lineage:publication/the-garden-of-forking-paths",
      "title": "The Garden of Forking Paths",
      "type": "publication",
      "facets": [],
      "section": "publications",
      "importance": 4,
      "summary": "A Borges story frequently read as a literary ancestor of nonlinear textual structures.",
      "content": "A Borges story frequently read as a literary ancestor of nonlinear textual structures.",
      "html": "<p>A Borges story frequently read as a literary ancestor of nonlinear textual structures.</p>",
      "url": "/publication/the-garden-of-forking-paths/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/andries-van-dam",
      "protocol_id": "xananode.lineage:person/andries-van-dam",
      "title": "Andries van Dam",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 4,
      "summary": "Computer scientist associated with HES, FRESS, and the Brown hypertext lineage.",
      "content": "Computer scientist associated with HES, FRESS, and the Brown hypertext lineage.",
      "html": "<p>Computer scientist associated with HES, FRESS, and the Brown hypertext lineage.</p>",
      "url": "/person/andries-van-dam/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:place/brown-university",
      "protocol_id": "xananode.lineage:place/brown-university",
      "title": "Brown University",
      "type": "place",
      "facets": [],
      "section": "places",
      "importance": 4,
      "summary": "Early hypertext research center associated with HES, FRESS, and Intermedia.",
      "content": "Early hypertext research center associated with HES, FRESS, and Intermedia.",
      "html": "<p>Early hypertext research center associated with HES, FRESS, and Intermedia.</p>",
      "url": "/place/brown-university/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:project/hypertext-editing-system",
      "protocol_id": "xananode.lineage:project/hypertext-editing-system",
      "title": "Hypertext Editing System",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 4,
      "summary": "An early usable hypertext system developed at Brown University.",
      "content": "An early usable hypertext system developed at Brown University.",
      "html": "<p>An early usable hypertext system developed at Brown University.</p>",
      "url": "/project/hypertext-editing-system/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:project/fress",
      "protocol_id": "xananode.lineage:project/fress",
      "title": "FRESS",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 4,
      "summary": "A Brown University hypertext system in the early scholarly hypertext lineage.",
      "content": "A Brown University hypertext system in the early scholarly hypertext lineage.",
      "html": "<p>A Brown University hypertext system in the early scholarly hypertext lineage.</p>",
      "url": "/project/fress/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:project/intermedia",
      "protocol_id": "xananode.lineage:project/intermedia",
      "title": "Intermedia",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 4,
      "summary": "A scholarly hypermedia system associated with Brown University.",
      "content": "A scholarly hypermedia system associated with Brown University.",
      "html": "<p>A scholarly hypermedia system associated with Brown University.</p>",
      "url": "/project/intermedia/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/nicholas-negroponte",
      "protocol_id": "xananode.lineage:person/nicholas-negroponte",
      "title": "Nicholas Negroponte",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 4,
      "summary": "Media Lab figure associated with intelligent media and interactive information spaces.",
      "content": "Media Lab figure associated with intelligent media and interactive information spaces.",
      "html": "<p>Media Lab figure associated with intelligent media and interactive information spaces.</p>",
      "url": "/person/nicholas-negroponte/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/seymour-papert",
      "protocol_id": "xananode.lineage:person/seymour-papert",
      "title": "Seymour Papert",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 4,
      "summary": "Constructionism and Logo pioneer who shaped computers as learning media.",
      "content": "Constructionism and Logo pioneer who shaped computers as learning media.",
      "html": "<p>Constructionism and Logo pioneer who shaped computers as learning media.</p>",
      "url": "/person/seymour-papert/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/marvin-minsky",
      "protocol_id": "xananode.lineage:person/marvin-minsky",
      "title": "Marvin Minsky",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 4,
      "summary": "AI researcher whose work contextualizes intelligent agents and cognitive modeling.",
      "content": "AI researcher whose work contextualizes intelligent agents and cognitive modeling.",
      "html": "<p>AI researcher whose work contextualizes intelligent agents and cognitive modeling.</p>",
      "url": "/person/marvin-minsky/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:organization/mit-media-lab",
      "protocol_id": "xananode.lineage:organization/mit-media-lab",
      "title": "MIT Media Lab",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 5,
      "summary": "Research institution associated with media, agents, interactivity, and knowledge presentation.",
      "content": "Research institution associated with media, agents, interactivity, and knowledge presentation.",
      "html": "<p>Research institution associated with media, agents, interactivity, and knowledge presentation.</p>",
      "url": "/organization/mit-media-lab/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/hans-peter-brondmo",
      "protocol_id": "xananode.lineage:person/hans-peter-brondmo",
      "title": "Hans Peter Brondmo",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 3,
      "summary": "MIT figure associated with micons, or motion icons, as animated conceptual representations.",
      "content": "MIT figure associated with micons, or motion icons, as animated conceptual representations.",
      "html": "<p>MIT figure associated with micons, or motion icons, as animated conceptual representations.</p>",
      "url": "/person/hans-peter-brondmo/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:technology/micons",
      "protocol_id": "xananode.lineage:technology/micons",
      "title": "Micons",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "Motion icons presented in Hyperland as animated conceptual representations.",
      "content": "Motion icons presented in Hyperland as animated conceptual representations.",
      "html": "<p>Motion icons presented in Hyperland as animated conceptual representations.</p>",
      "url": "/technology/micons/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/robert-winter",
      "protocol_id": "xananode.lineage:person/robert-winter",
      "title": "Robert Winter",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 3,
      "summary": "Music scholar associated with interactive exploration of Beethoven's Ninth.",
      "content": "Music scholar associated with interactive exploration of Beethoven's Ninth.",
      "html": "<p>Music scholar associated with interactive exploration of Beethoven&#39;s Ninth.</p>",
      "url": "/person/robert-winter/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:project/interactive-beethoven-ninth",
      "protocol_id": "xananode.lineage:project/interactive-beethoven-ninth",
      "title": "Interactive Beethoven's Ninth",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 3,
      "summary": "Interactive music system showing musical structure as explorable knowledge.",
      "content": "Interactive music system showing musical structure as explorable knowledge.",
      "html": "<p>Interactive music system showing musical structure as explorable knowledge.</p>",
      "url": "/project/interactive-beethoven-ninth/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/robert-abel",
      "protocol_id": "xananode.lineage:person/robert-abel",
      "title": "Robert Abel",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 3,
      "summary": "Interactive media artist associated with navigable multimedia art such as Guernica.",
      "content": "Interactive media artist associated with navigable multimedia art such as Guernica.",
      "html": "<p>Interactive media artist associated with navigable multimedia art such as Guernica.</p>",
      "url": "/person/robert-abel/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:project/interactive-guernica",
      "protocol_id": "xananode.lineage:project/interactive-guernica",
      "title": "Interactive Guernica",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 3,
      "summary": "Interactive visual-art navigation work in the multimedia lineage.",
      "content": "Interactive visual-art navigation work in the multimedia lineage.",
      "html": "<p>Interactive visual-art navigation work in the multimedia lineage.</p>",
      "url": "/project/interactive-guernica/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/ivan-sutherland",
      "protocol_id": "xananode.lineage:person/ivan-sutherland",
      "title": "Ivan Sutherland",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 5,
      "summary": "Sketchpad and head-mounted display pioneer who anticipated visual and spatial computing.",
      "content": "Sketchpad and head-mounted display pioneer who anticipated visual and spatial computing.",
      "html": "<p>Sketchpad and head-mounted display pioneer who anticipated visual and spatial computing.</p>",
      "url": "/person/ivan-sutherland/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/jaron-lanier",
      "protocol_id": "xananode.lineage:person/jaron-lanier",
      "title": "Jaron Lanier",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 4,
      "summary": "VPL Research founder who popularized virtual reality.",
      "content": "VPL Research founder who popularized virtual reality.",
      "html": "<p>VPL Research founder who popularized virtual reality.</p>",
      "url": "/person/jaron-lanier/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:organization/vpl-research",
      "protocol_id": "xananode.lineage:organization/vpl-research",
      "title": "VPL Research",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 3,
      "summary": "Virtual reality company associated with Jaron Lanier.",
      "content": "Virtual reality company associated with Jaron Lanier.",
      "html": "<p>Virtual reality company associated with Jaron Lanier.</p>",
      "url": "/organization/vpl-research/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/scott-fisher",
      "protocol_id": "xananode.lineage:person/scott-fisher",
      "title": "Scott Fisher",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 3,
      "summary": "Virtual environment researcher associated with NASA VR demonstrations.",
      "content": "Virtual environment researcher associated with NASA VR demonstrations.",
      "html": "<p>Virtual environment researcher associated with NASA VR demonstrations.</p>",
      "url": "/person/scott-fisher/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:organization/nasa",
      "protocol_id": "xananode.lineage:organization/nasa",
      "title": "NASA",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 3,
      "summary": "Agency associated with virtual environment workstation demonstrations in the spatial knowledge branch.",
      "content": "Agency associated with virtual environment workstation demonstrations in the spatial knowledge branch.",
      "html": "<p>Agency associated with virtual environment workstation demonstrations in the spatial knowledge branch.</p>",
      "url": "/organization/nasa/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:publication/dirk-gentlys-holistic-detective-agency",
      "protocol_id": "xananode.lineage:publication/dirk-gentlys-holistic-detective-agency",
      "title": "Dirk Gently's Holistic Detective Agency",
      "type": "publication",
      "facets": [],
      "section": "publications",
      "importance": 4,
      "summary": "Douglas Adams novel foregrounding the fundamental interconnectedness of all things before the public Web.",
      "content": "Douglas Adams novel foregrounding the fundamental interconnectedness of all things before the public Web.",
      "html": "<p>Douglas Adams novel foregrounding the fundamental interconnectedness of all things before the public Web.</p>",
      "url": "/publication/dirk-gentlys-holistic-detective-agency/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:organization/bbc-two",
      "protocol_id": "xananode.lineage:organization/bbc-two",
      "title": "BBC Two",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 3,
      "summary": "Broadcaster of Hyperland.",
      "content": "Broadcaster of Hyperland.",
      "html": "<p>Broadcaster of Hyperland.</p>",
      "url": "/organization/bbc-two/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/richard-saul-wurman",
      "protocol_id": "xananode.lineage:person/richard-saul-wurman",
      "title": "Richard Saul Wurman",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 4,
      "summary": "TED founder and information architecture figure.",
      "content": "TED founder and information architecture figure.",
      "html": "<p>TED founder and information architecture figure.</p>",
      "url": "/person/richard-saul-wurman/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/harry-marks",
      "protocol_id": "xananode.lineage:person/harry-marks",
      "title": "Harry Marks",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 3,
      "summary": "TED visual and media origin figure who participated in TED2.",
      "content": "TED visual and media origin figure who participated in TED2.",
      "html": "<p>TED visual and media origin figure who participated in TED2.</p>",
      "url": "/person/harry-marks/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/john-sculley",
      "protocol_id": "xananode.lineage:person/john-sculley",
      "title": "John Sculley",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 4,
      "summary": "Apple executive who presented From Multimedia to Interactive Media and the Knowledge Navigator future.",
      "content": "Apple executive who presented From Multimedia to Interactive Media and the Knowledge Navigator future.",
      "html": "<p>Apple executive who presented From Multimedia to Interactive Media and the Knowledge Navigator future.</p>",
      "url": "/person/john-sculley/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:technology/apple-knowledge-navigator",
      "protocol_id": "xananode.lineage:technology/apple-knowledge-navigator",
      "title": "Apple Knowledge Navigator",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 4,
      "summary": "Concept video imagining agent-mediated interactive knowledge navigation.",
      "content": "Concept video imagining agent-mediated interactive knowledge navigation.",
      "html": "<p>Concept video imagining agent-mediated interactive knowledge navigation.</p>",
      "url": "/technology/apple-knowledge-navigator/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/bill-atkinson",
      "protocol_id": "xananode.lineage:person/bill-atkinson",
      "title": "Bill Atkinson",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 4,
      "summary": "Creator associated with HyperCard and MacPaint, bringing accessible hypermedia authoring to personal computers.",
      "content": "Creator associated with HyperCard and MacPaint, bringing accessible hypermedia authoring to personal computers.",
      "html": "<p>Creator associated with HyperCard and MacPaint, bringing accessible hypermedia authoring to personal computers.</p>",
      "url": "/person/bill-atkinson/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/herbie-hancock",
      "protocol_id": "xananode.lineage:person/herbie-hancock",
      "title": "Herbie Hancock",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 3,
      "summary": "Musician whose technology-inflected performance branch demonstrates creative digital media.",
      "content": "Musician whose technology-inflected performance branch demonstrates creative digital media.",
      "html": "<p>Musician whose technology-inflected performance branch demonstrates creative digital media.</p>",
      "url": "/person/herbie-hancock/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/nigel-holmes",
      "protocol_id": "xananode.lineage:person/nigel-holmes",
      "title": "Nigel Holmes",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 3,
      "summary": "Information designer associated with visual explanation and data visualization.",
      "content": "Information designer associated with visual explanation and data visualization.",
      "html": "<p>Information designer associated with visual explanation and data visualization.</p>",
      "url": "/person/nigel-holmes/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/laurie-anderson",
      "protocol_id": "xananode.lineage:person/laurie-anderson",
      "title": "Laurie Anderson",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 3,
      "summary": "Performance and media artist demonstrating narrative plus technology.",
      "content": "Performance and media artist demonstrating narrative plus technology.",
      "html": "<p>Performance and media artist demonstrating narrative plus technology.</p>",
      "url": "/person/laurie-anderson/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/bran-ferren",
      "protocol_id": "xananode.lineage:person/bran-ferren",
      "title": "Bran Ferren",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 3,
      "summary": "Designer and technologist bridging entertainment, design, and technology.",
      "content": "Designer and technologist bridging entertainment, design, and technology.",
      "html": "<p>Designer and technologist bridging entertainment, design, and technology.</p>",
      "url": "/person/bran-ferren/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/robert-cailliau",
      "protocol_id": "xananode.lineage:person/robert-cailliau",
      "title": "Robert Cailliau",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 4,
      "summary": "Collaborator and promoter of the World Wide Web proposal.",
      "content": "Collaborator and promoter of the World Wide Web proposal.",
      "html": "<p>Collaborator and promoter of the World Wide Web proposal.</p>",
      "url": "/person/robert-cailliau/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:place/cern",
      "protocol_id": "xananode.lineage:place/cern",
      "title": "CERN",
      "type": "place",
      "facets": [],
      "section": "places",
      "importance": 4,
      "summary": "Birthplace of the Web proposal and early Web implementation.",
      "content": "Birthplace of the Web proposal and early Web implementation.",
      "html": "<p>Birthplace of the Web proposal and early Web implementation.</p>",
      "url": "/place/cern/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:technology/html",
      "protocol_id": "xananode.lineage:technology/html",
      "title": "HTML",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 4,
      "summary": "Document markup language that enabled simple Web publishing without rich semantic provenance.",
      "content": "Document markup language that enabled simple Web publishing without rich semantic provenance.",
      "html": "<p>Document markup language that enabled simple Web publishing without rich semantic provenance.</p>",
      "url": "/technology/html/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:technology/url-uri",
      "protocol_id": "xananode.lineage:technology/url-uri",
      "title": "URL/URI",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 4,
      "summary": "Addressing technology for distributed retrieval and identification on the Web.",
      "content": "Addressing technology for distributed retrieval and identification on the Web.",
      "html": "<p>Addressing technology for distributed retrieval and identification on the Web.</p>",
      "url": "/technology/url-uri/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:technology/http",
      "protocol_id": "xananode.lineage:technology/http",
      "title": "HTTP",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 4,
      "summary": "Retrieval protocol that enabled the distributed Web.",
      "content": "Retrieval protocol that enabled the distributed Web.",
      "html": "<p>Retrieval protocol that enabled the distributed Web.</p>",
      "url": "/technology/http/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:organization/ncsa",
      "protocol_id": "xananode.lineage:organization/ncsa",
      "title": "NCSA",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 4,
      "summary": "Organization associated with Mosaic and the popularization of Web browsing.",
      "content": "Organization associated with Mosaic and the popularization of Web browsing.",
      "html": "<p>Organization associated with Mosaic and the popularization of Web browsing.</p>",
      "url": "/organization/ncsa/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:person/marc-andreessen",
      "protocol_id": "xananode.lineage:person/marc-andreessen",
      "title": "Marc Andreessen",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 4,
      "summary": "Mosaic and Netscape figure who helped popularize the Web branch.",
      "content": "Mosaic and Netscape figure who helped popularize the Web branch.",
      "html": "<p>Mosaic and Netscape figure who helped popularize the Web branch.</p>",
      "url": "/person/marc-andreessen/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:technology/mosaic",
      "protocol_id": "xananode.lineage:technology/mosaic",
      "title": "Mosaic",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 4,
      "summary": "Early Web browser that helped popularize Web browsing.",
      "content": "Early Web browser that helped popularize Web browsing.",
      "html": "<p>Early Web browser that helped popularize Web browsing.</p>",
      "url": "/technology/mosaic/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:concept/web-as-incomplete-hypertext",
      "protocol_id": "xananode.lineage:concept/web-as-incomplete-hypertext",
      "title": "The Web as Incomplete Hypertext",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "The Web solved publishing and linking, but not transclusion, authorship, semantic identity, provenance, or relationship governance.",
      "content": "The Web solved publishing and linking, but not transclusion, authorship, semantic identity, provenance, or relationship governance.",
      "html": "<p>The Web solved publishing and linking, but not transclusion, authorship, semantic identity, provenance, or relationship governance.</p>",
      "url": "/concept/web-as-incomplete-hypertext/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:technology/guide",
      "protocol_id": "xananode.lineage:technology/guide",
      "title": "Guide",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "Personal-computer hypertext system associated with Peter J. Brown.",
      "content": "Personal-computer hypertext system associated with Peter J. Brown.",
      "html": "<p>Personal-computer hypertext system associated with Peter J. Brown.</p>",
      "url": "/technology/guide/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:project/storyspace",
      "protocol_id": "xananode.lineage:project/storyspace",
      "title": "Storyspace",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 3,
      "summary": "Hypertext literature authoring system.",
      "content": "Hypertext literature authoring system.",
      "html": "<p>Hypertext literature authoring system.</p>",
      "url": "/project/storyspace/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:project/zog-kms",
      "protocol_id": "xananode.lineage:project/zog-kms",
      "title": "ZOG/KMS",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 3,
      "summary": "Frame and card based knowledge management and navigation lineage from Carnegie Mellon University.",
      "content": "Frame and card based knowledge management and navigation lineage from Carnegie Mellon University.",
      "html": "<p>Frame and card based knowledge management and navigation lineage from Carnegie Mellon University.</p>",
      "url": "/project/zog-kms/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:project/xanadu-at-autodesk",
      "protocol_id": "xananode.lineage:project/xanadu-at-autodesk",
      "title": "Xanadu at Autodesk",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 4,
      "summary": "Commercial implementation attempt for Nelson's Xanadu vision during Autodesk investment.",
      "content": "Commercial implementation attempt for Nelson's Xanadu vision during Autodesk investment.",
      "html": "<p>Commercial implementation attempt for Nelson&#39;s Xanadu vision during Autodesk investment.</p>",
      "url": "/project/xanadu-at-autodesk/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:concept/conflict-disputed-identity",
      "protocol_id": "xananode.lineage:concept/conflict-disputed-identity",
      "title": "Conflict and Disputed Identity",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 4,
      "summary": "The protocol pattern of preserving disagreement and possible identity matches rather than flattening them.",
      "content": "The protocol pattern of preserving disagreement and possible identity matches rather than flattening them.",
      "html": "<p>The protocol pattern of preserving disagreement and possible identity matches rather than flattening them.</p>",
      "url": "/concept/conflict-disputed-identity/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:technology/git-backed-substrate",
      "protocol_id": "xananode.lineage:technology/git-backed-substrate",
      "title": "Git-backed Substrate",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 4,
      "summary": "Using Git history, branching, merging, authorship, and preservation as substrate mechanics.",
      "content": "Using Git history, branching, merging, authorship, and preservation as substrate mechanics.",
      "html": "<p>Using Git history, branching, merging, authorship, and preservation as substrate mechanics.</p>",
      "url": "/technology/git-backed-substrate/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:tool/babel",
      "protocol_id": "xananode.lineage:tool/babel",
      "title": "Babel",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "A future mapping and translation layer for machine-readable formats, languages, and ontologies.",
      "content": "A future mapping and translation layer for machine-readable formats, languages, and ontologies.",
      "html": "<p>A future mapping and translation layer for machine-readable formats, languages, and ontologies.</p>",
      "url": "/technology/babel/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:tool/hyperland-vr",
      "protocol_id": "xananode.lineage:tool/hyperland-vr",
      "title": "Hyperland VR",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 3,
      "summary": "A future interface idea for spatial navigation of federated substrates.",
      "content": "A future interface idea for spatial navigation of federated substrates.",
      "html": "<p>A future interface idea for spatial navigation of federated substrates.</p>",
      "url": "/technology/hyperland-vr/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:concept/authored-substrate-overlap",
      "protocol_id": "xananode.lineage:concept/authored-substrate-overlap",
      "title": "Authored Substrate Overlap",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "Independently authored substrates will naturally describe some of the same entities, claims, works, and sources without meaning one substrate should erase the other.",
      "content": "Overlap is expected when people, organizations, and projects author their own substrates. Two packs may both mention XanaNode, Douglas Adams, Hyperland, the Web, or transclusion because those things matter from more than one point of view. XanaNode treats that overlap as a federation signal: keep the authored records, preserve their provenance, compare their identifiers and claims, and only merge when the substrate can explain why the records refer to the same thing.",
      "html": "<p>Overlap is expected when people, organizations, and projects author their own substrates. Two packs may both mention XanaNode, Douglas Adams, Hyperland, the Web, or transclusion because those things matter from more than one point of view. XanaNode treats that overlap as a federation signal: keep the authored records, preserve their provenance, compare their identifiers and claims, and only merge when the substrate can explain why the records refer to the same thing.</p>",
      "url": "/concept/authored-substrate-overlap/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:claim/overlap-is-federation-signal",
      "protocol_id": "xananode.lineage:claim/overlap-is-federation-signal",
      "title": "Overlap is a Federation Signal",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "When independently authored substrates overlap, the overlap should trigger comparison, provenance review, and possible merge rather than automatic deletion.",
      "content": "When independently authored substrates overlap, the overlap should trigger comparison, provenance review, and possible merge rather than automatic deletion.",
      "html": "<p>When independently authored substrates overlap, the overlap should trigger comparison, provenance review, and possible merge rather than automatic deletion.</p>",
      "url": "/claim/overlap-is-federation-signal/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:claim/merge-is-authored-interpretation",
      "protocol_id": "xananode.lineage:claim/merge-is-authored-interpretation",
      "title": "Merge is Authored Interpretation",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 5,
      "summary": "A merge decision is itself a claim about identity and should remain inspectable, reversible, and attributable.",
      "content": "A merge decision is itself a claim about identity and should remain inspectable, reversible, and attributable.",
      "html": "<p>A merge decision is itself a claim about identity and should remain inspectable, reversible, and attributable.</p>",
      "url": "/claim/merge-is-authored-interpretation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:claim/lineage-pack-can-overlap-canonical-pack",
      "protocol_id": "xananode.lineage:claim/lineage-pack-can-overlap-canonical-pack",
      "title": "Lineage Packs Can Overlap Canonical Packs",
      "type": "claim",
      "facets": [],
      "section": "claims",
      "importance": 4,
      "summary": "The XanaNode lineage pack may overlap the canonical XanaNode pack because one explains origin and influence while the other defines protocol vocabulary and project structure.",
      "content": "The XanaNode lineage pack may overlap the canonical XanaNode pack because one explains origin and influence while the other defines protocol vocabulary and project structure.",
      "html": "<p>The XanaNode lineage pack may overlap the canonical XanaNode pack because one explains origin and influence while the other defines protocol vocabulary and project structure.</p>",
      "url": "/claim/lineage-pack-can-overlap-canonical-pack/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes-extended.json"
    },
    {
      "id": "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
      "protocol_id": "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
      "title": "Lost Lineage of Human Knowledge Augmentation",
      "type": "concept",
      "facets": [],
      "section": "concepts",
      "importance": 5,
      "summary": "A parallel history of computing tried to preserve human understanding as connected, navigable, attributable knowledge.",
      "content": "A parallel history of computing tried to preserve human understanding as connected, navigable, attributable knowledge.",
      "html": "<p>A parallel history of computing tried to preserve human understanding as connected, navigable, attributable knowledge.</p>",
      "url": "/concept/lost-lineage-human-knowledge-augmentation/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:person/paul-otlet",
      "protocol_id": "xananode.lineage:person/paul-otlet",
      "title": "Paul Otlet",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 4,
      "summary": "Documentalist associated with the Mundaneum, universal bibliography, and early visions of networked document access.",
      "content": "Documentalist associated with the Mundaneum, universal bibliography, and early visions of networked document access.",
      "html": "<p>Documentalist associated with the Mundaneum, universal bibliography, and early visions of networked document access.</p>",
      "url": "/person/paul-otlet/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:person/h-g-wells",
      "protocol_id": "xananode.lineage:person/h-g-wells",
      "title": "H. G. Wells",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 4,
      "summary": "Writer and futurist who proposed a World Brain as a planetary knowledge memory.",
      "content": "Writer and futurist who proposed a World Brain as a planetary knowledge memory.",
      "html": "<p>Writer and futurist who proposed a World Brain as a planetary knowledge memory.</p>",
      "url": "/person/h-g-wells/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:person/douglas-adams",
      "protocol_id": "xananode.lineage:person/douglas-adams",
      "title": "Douglas Adams",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 5,
      "summary": "Writer and technologist who popularized the fundamental interconnectedness of things and introduced Hyperland to a broad audience.",
      "content": "Writer and technologist who popularized the fundamental interconnectedness of things and introduced Hyperland to a broad audience.",
      "html": "<p>Writer and technologist who popularized the fundamental interconnectedness of things and introduced Hyperland to a broad audience.</p>",
      "url": "/person/douglas-adams/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:publication/hyperland",
      "protocol_id": "xananode.lineage:publication/hyperland",
      "title": "Hyperland",
      "type": "publication",
      "facets": [],
      "section": "publications",
      "importance": 5,
      "summary": "A 1990 BBC hypermedia documentary by Douglas Adams that dramatized software agents, hypertext, Xanadu, micons, and associative browsing.",
      "content": "A 1990 BBC hypermedia documentary by Douglas Adams that dramatized software agents, hypertext, Xanadu, micons, and associative browsing.",
      "html": "<p>A 1990 BBC hypermedia documentary by Douglas Adams that dramatized software agents, hypertext, Xanadu, micons, and associative browsing.</p>",
      "url": "/publication/hyperland/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:person/tom-baker",
      "protocol_id": "xananode.lineage:person/tom-baker",
      "title": "Tom Baker",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 3,
      "summary": "Actor who appears in Hyperland as a software-agent persona guiding knowledge navigation.",
      "content": "Actor who appears in Hyperland as a software-agent persona guiding knowledge navigation.",
      "html": "<p>Actor who appears in Hyperland as a software-agent persona guiding knowledge navigation.</p>",
      "url": "/person/tom-baker/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:person/max-whitby",
      "protocol_id": "xananode.lineage:person/max-whitby",
      "title": "Max Whitby",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 3,
      "summary": "Producer and director associated with Hyperland.",
      "content": "Producer and director associated with Hyperland.",
      "html": "<p>Producer and director associated with Hyperland.</p>",
      "url": "/person/max-whitby/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:event/ted2-1990",
      "protocol_id": "xananode.lineage:event/ted2-1990",
      "title": "TED2",
      "type": "event",
      "facets": [],
      "section": "events",
      "importance": 5,
      "summary": "The February 1990 TED conference in Monterey where hypertext, interactive media, virtual reality, design, and knowledge-navigation ideas converged.",
      "content": "The February 1990 TED conference in Monterey where hypertext, interactive media, virtual reality, design, and knowledge-navigation ideas converged.",
      "html": "<p>The February 1990 TED conference in Monterey where hypertext, interactive media, virtual reality, design, and knowledge-navigation ideas converged.</p>",
      "url": "/event/ted2-1990/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:place/monterey-california",
      "protocol_id": "xananode.lineage:place/monterey-california",
      "title": "Monterey, California",
      "type": "place",
      "facets": [],
      "section": "places",
      "importance": 3,
      "summary": "The site of TED2 in February 1990.",
      "content": "The site of TED2 in February 1990.",
      "html": "<p>The site of TED2 in February 1990.</p>",
      "url": "/place/monterey-california/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:person/bob-stein",
      "protocol_id": "xananode.lineage:person/bob-stein",
      "title": "Bob Stein",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 4,
      "summary": "Interactive publishing pioneer associated with Criterion, Voyager, and early electronic books.",
      "content": "Interactive publishing pioneer associated with Criterion, Voyager, and early electronic books.",
      "html": "<p>Interactive publishing pioneer associated with Criterion, Voyager, and early electronic books.</p>",
      "url": "/person/bob-stein/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:organization/voyager-company",
      "protocol_id": "xananode.lineage:organization/voyager-company",
      "title": "Voyager Company",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 4,
      "summary": "Interactive publishing company in the laserdisc and CD-ROM lineage.",
      "content": "Interactive publishing company in the laserdisc and CD-ROM lineage.",
      "html": "<p>Interactive publishing company in the laserdisc and CD-ROM lineage.</p>",
      "url": "/organization/voyager-company/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:person/alan-kay",
      "protocol_id": "xananode.lineage:person/alan-kay",
      "title": "Alan Kay",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 5,
      "summary": "Computing pioneer associated with Dynabook, Smalltalk, personal dynamic media, and computers as tools for improving thought.",
      "content": "Computing pioneer associated with Dynabook, Smalltalk, personal dynamic media, and computers as tools for improving thought.",
      "html": "<p>Computing pioneer associated with Dynabook, Smalltalk, personal dynamic media, and computers as tools for improving thought.</p>",
      "url": "/person/alan-kay/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:organization/xerox-parc",
      "protocol_id": "xananode.lineage:organization/xerox-parc",
      "title": "Xerox PARC",
      "type": "organization",
      "facets": [],
      "section": "organizations",
      "importance": 4,
      "summary": "Research center associated with GUI, Smalltalk, personal computing, and dynamic media.",
      "content": "Research center associated with GUI, Smalltalk, personal computing, and dynamic media.",
      "html": "<p>Research center associated with GUI, Smalltalk, personal computing, and dynamic media.</p>",
      "url": "/organization/xerox-parc/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:technology/hypercard",
      "protocol_id": "xananode.lineage:technology/hypercard",
      "title": "HyperCard",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 4,
      "summary": "Apple hypermedia authoring system that popularized personal card-based linking and scripting.",
      "content": "Apple hypermedia authoring system that popularized personal card-based linking and scripting.",
      "html": "<p>Apple hypermedia authoring system that popularized personal card-based linking and scripting.</p>",
      "url": "/technology/hypercard/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:person/tim-berners-lee",
      "protocol_id": "xananode.lineage:person/tim-berners-lee",
      "title": "Tim Berners-Lee",
      "type": "person",
      "facets": [],
      "section": "persons",
      "importance": 5,
      "summary": "Inventor of the World Wide Web, a simpler distributed hypertext branch that solved broad publishing and retrieval.",
      "content": "Inventor of the World Wide Web, a simpler distributed hypertext branch that solved broad publishing and retrieval.",
      "html": "<p>Inventor of the World Wide Web, a simpler distributed hypertext branch that solved broad publishing and retrieval.</p>",
      "url": "/person/tim-berners-lee/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:technology/world-wide-web",
      "protocol_id": "xananode.lineage:technology/world-wide-web",
      "title": "World Wide Web",
      "type": "technology",
      "facets": [],
      "section": "technologys",
      "importance": 5,
      "summary": "A distributed hypertext system that made publishing easy while leaving many provenance, transclusion, and semantic relationship problems unsolved.",
      "content": "A distributed hypertext system that made publishing easy while leaving many provenance, transclusion, and semantic relationship problems unsolved.",
      "html": "<p>A distributed hypertext system that made publishing easy while leaving many provenance, transclusion, and semantic relationship problems unsolved.</p>",
      "url": "/technology/world-wide-web/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:project/aspen-movie-map",
      "protocol_id": "xananode.lineage:project/aspen-movie-map",
      "title": "Aspen Movie Map",
      "type": "project",
      "facets": [],
      "section": "projects",
      "importance": 4,
      "summary": "An early navigable spatial media project often treated as part of the hypermedia and virtual environment lineage.",
      "content": "An early navigable spatial media project often treated as part of the hypermedia and virtual environment lineage.",
      "html": "<p>An early navigable spatial media project often treated as part of the hypermedia and virtual environment lineage.</p>",
      "url": "/project/aspen-movie-map/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.lineage:trail/lost-lineage-intertwingled-trail",
      "protocol_id": "xananode.lineage:trail/lost-lineage-intertwingled-trail",
      "title": "Lost Lineage Intertwingled Trail",
      "type": "trail",
      "facets": [],
      "section": "trails",
      "importance": 5,
      "summary": "A JSON-imported trail showing that the lineage is an interwoven graph, not a single heroic family tree.",
      "content": "A JSON-imported trail showing that the lineage is an interwoven graph, not a single heroic family tree.",
      "html": "<p>A JSON-imported trail showing that the lineage is an interwoven graph, not a single heroic family tree.</p>",
      "url": "/trail/lost-lineage-intertwingled-trail/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "",
      "trail_nodes": [
        "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
        "xananode.lineage:person/paul-otlet",
        "xananode.example:person/vannevar-bush",
        "xananode.example:person/douglas-engelbart",
        "xananode.example:person/ted-nelson",
        "xananode.lineage:person/douglas-adams",
        "xananode.lineage:publication/hyperland",
        "xananode.lineage:event/ted2-1990",
        "xananode.lineage:technology/world-wide-web",
        "xananode.example:concept/xananode"
      ],
      "generated": false,
      "imported": true,
      "imported_from": "nodes.json"
    },
    {
      "id": "xananode.com:fragment/xanadu-document-interconnection-0001",
      "protocol_id": "xananode.com:fragment/xanadu-document-interconnection-0001",
      "title": "Reusable Media Fragment",
      "type": "fragment",
      "facets": [],
      "section": "fragments",
      "importance": 4,
      "summary": "Nelson's work as a source layer for transclusion, reusable media, and visible interconnection.",
      "content": "Nelson's work as a source layer for transclusion, reusable media, and visible interconnection.",
      "html": "<p>Nelson&#39;s work as a source layer for transclusion, reusable media, and visible interconnection.</p>",
      "url": "/fragment/xanadu-document-interconnection-0001/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "copyrighted",
      "tumbler": "xananode.com:source/xanadu-document-interconnection@sha256:e63ab643d2b2ec111ba91046496777e0effdbca153ed4f46f253efa67294e520#fragment/0001@sha256:48d3c63d7645b547a9d41b7f6f39d2f07a885f4a479353dd3ae8742c4225cbfe",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode.com:fragment/mother-of-all-demos-0001",
      "protocol_id": "xananode.com:fragment/mother-of-all-demos-0001",
      "title": "Augmenting Human Intelligence Fragment",
      "type": "fragment",
      "facets": [],
      "section": "fragments",
      "importance": 4,
      "summary": "Engelbart's demonstration as an example of computers augmenting structured knowledge work.",
      "content": "Engelbart's demonstration as an example of computers augmenting structured knowledge work.",
      "html": "<p>Engelbart&#39;s demonstration as an example of computers augmenting structured knowledge work.</p>",
      "url": "/fragment/mother-of-all-demos-0001/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "",
      "tumbler": "xananode.com:source/mother-of-all-demos@sha256:88a43c06a3135ff5a982ca8efe948753f1d6e839561dcf664bd873719025e210#fragment/0001@sha256:217a3bcf5fb3c571fd4661497b6bdde97bba61576045ca253f21b9c0d2987ce4",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    },
    {
      "id": "xananode.com:fragment/as-we-may-think-0004",
      "protocol_id": "xananode.com:fragment/as-we-may-think-0004",
      "title": "Associative Trails Fragment",
      "type": "fragment",
      "facets": [],
      "section": "fragments",
      "importance": 4,
      "summary": "Bush's argument that knowledge systems need associative navigation and recall.",
      "content": "Bush's argument that knowledge systems need associative navigation and recall.",
      "html": "<p>Bush&#39;s argument that knowledge systems need associative navigation and recall.</p>",
      "url": "/fragment/as-we-may-think-0004/",
      "primary_media": "",
      "media_type": "",
      "file": "",
      "alt": "",
      "caption": "",
      "creator": "",
      "created_date": "",
      "source_name": "",
      "source_url": "",
      "license": "",
      "license_url": "",
      "rights_status": "copyrighted",
      "tumbler": "xananode.com:source/as-we-may-think@sha256:5e8e3a3bbe2278db54e5ea7b8e6a2677b620f67d2095e37409bc7c42451e1705#fragment/0004@sha256:f712416ac32e6b8771dcbe4315d4d9ff61635e6407265b20301ec3e3a79afc0e",
      "trail_nodes": [],
      "generated": false,
      "imported": false,
      "imported_from": ""
    }
  ],
  "edges": [
    {
      "source": "xananode-implementation-stack-trail",
      "target": "xananode-protocol-repo",
      "type": "starts_with",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-implementation-stack-trail-starts_with-xananode-protocol-repo-1",
      "summary": "XanaNode Implementation Stack Trail starts with XanaNode Protocol Repository.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-implementation-stack-trail",
      "target": "xananode-core-sdk-repo",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-implementation-stack-trail-continues_to-xananode-core-sdk-repo-2",
      "summary": "XanaNode Implementation Stack Trail continues to XanaNode Core SDK Repository.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-implementation-stack-trail",
      "target": "xananode-hugo-repo",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-implementation-stack-trail-continues_to-xananode-hugo-repo-3",
      "summary": "XanaNode Implementation Stack Trail continues to XanaNode Hugo Repository.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-implementation-stack-trail",
      "target": "xananode-workspace-repo",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-implementation-stack-trail-continues_to-xananode-workspace-repo-4",
      "summary": "XanaNode Implementation Stack Trail continues to XanaNode Workspace Repository.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-implementation-stack-trail",
      "target": "xananode-studio-repo",
      "type": "arrives_at",
      "color": "#818cf8",
      "inverse_color": "#c7d2fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-implementation-stack-trail-arrives_at-xananode-studio-repo-5",
      "summary": "XanaNode Implementation Stack Trail arrives at XanaNode Studio Repository.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-trail",
      "target": "start-here",
      "type": "starts_with",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-trail-starts_with-start-here-6",
      "summary": "XanaNode Core Trail starts with Start Here.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-trail",
      "target": "xananode",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-trail-continues_to-xananode-7",
      "summary": "XanaNode Core Trail continues to XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-trail",
      "target": "knowledge-substrate",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-trail-continues_to-knowledge-substrate-8",
      "summary": "XanaNode Core Trail continues to Knowledge Substrate.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-trail",
      "target": "protocol-artifacts",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-trail-continues_to-protocol-artifacts-9",
      "summary": "XanaNode Core Trail continues to Protocol Artifacts.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-trail",
      "target": "semantic-route-health",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-trail-continues_to-semantic-route-health-10",
      "summary": "XanaNode Core Trail continues to Semantic Route Health.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-trail",
      "target": "civilizational-memory",
      "type": "arrives_at",
      "color": "#818cf8",
      "inverse_color": "#c7d2fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-trail-arrives_at-civilizational-memory-11",
      "summary": "XanaNode Core Trail arrives at Civilizational Memory.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-health-lineage-trail",
      "target": "xananode.lineage:person/douglas-adams",
      "type": "starts_with",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-health-lineage-trail-starts_with-douglas-adams-12",
      "summary": "Semantic Health Lineage Trail starts with Douglas Adams.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-health-lineage-trail",
      "target": "xananode.lineage:publication/hyperland",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-health-lineage-trail-continues_to-hyperland-13",
      "summary": "Semantic Health Lineage Trail continues to Hyperland.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-health-lineage-trail",
      "target": "project-xanadu",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-health-lineage-trail-continues_to-project-xanadu-14",
      "summary": "Semantic Health Lineage Trail continues to Project Xanadu.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-health-lineage-trail",
      "target": "transclusion",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-health-lineage-trail-continues_to-transclusion-15",
      "summary": "Semantic Health Lineage Trail continues to Transclusion.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-health-lineage-trail",
      "target": "douglas-engelbart",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-health-lineage-trail-continues_to-douglas-engelbart-16",
      "summary": "Semantic Health Lineage Trail continues to Douglas Engelbart.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-health-lineage-trail",
      "target": "xananode",
      "type": "arrives_at",
      "color": "#818cf8",
      "inverse_color": "#c7d2fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-health-lineage-trail-arrives_at-xananode-17",
      "summary": "Semantic Health Lineage Trail arrives at XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-health-lineage-trail",
      "target": "semantic-route-health",
      "type": "demonstrates",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-health-lineage-trail-demonstrates-semantic-route-health-18",
      "summary": "Semantic Health Lineage Trail demonstrates Semantic Route Health.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "protocol-artifacts-trail",
      "target": "protocol-artifacts",
      "type": "starts_with",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/protocol-artifacts-trail-starts_with-protocol-artifacts-19",
      "summary": "Protocol Artifacts Trail starts with Protocol Artifacts.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "protocol-artifacts-trail",
      "target": "substrate-manifest",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/protocol-artifacts-trail-continues_to-substrate-manifest-20",
      "summary": "Protocol Artifacts Trail continues to Substrate Manifest.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "protocol-artifacts-trail",
      "target": "substrate-node-record",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/protocol-artifacts-trail-continues_to-substrate-node-record-21",
      "summary": "Protocol Artifacts Trail continues to Substrate Node Record.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "protocol-artifacts-trail",
      "target": "substrate-relationship-list",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/protocol-artifacts-trail-continues_to-substrate-relationship-list-22",
      "summary": "Protocol Artifacts Trail continues to Substrate Relationship List.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "protocol-artifacts-trail",
      "target": "compatibility-levels",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/protocol-artifacts-trail-continues_to-compatibility-levels-23",
      "summary": "Protocol Artifacts Trail continues to Compatibility Levels.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "protocol-artifacts-trail",
      "target": "federation-example",
      "type": "arrives_at",
      "color": "#818cf8",
      "inverse_color": "#c7d2fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/protocol-artifacts-trail-arrives_at-federation-example-24",
      "summary": "Protocol Artifacts Trail arrives at Federation Example.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "historical-lineage-trail",
      "target": "vannevar-bush",
      "type": "starts_with",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/historical-lineage-trail-starts_with-vannevar-bush-25",
      "summary": "Historical Lineage Trail starts with Vannevar Bush.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "historical-lineage-trail",
      "target": "douglas-engelbart",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/historical-lineage-trail-continues_to-douglas-engelbart-26",
      "summary": "Historical Lineage Trail continues to Douglas Engelbart.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "historical-lineage-trail",
      "target": "ted-nelson",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/historical-lineage-trail-continues_to-ted-nelson-27",
      "summary": "Historical Lineage Trail continues to Ted Nelson.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "historical-lineage-trail",
      "target": "xananode",
      "type": "arrives_at",
      "color": "#818cf8",
      "inverse_color": "#c7d2fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/historical-lineage-trail-arrives_at-xananode-28",
      "summary": "Historical Lineage Trail arrives at XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-disagreement-health-trail",
      "target": "semantic-route-health",
      "type": "starts_with",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-disagreement-health-trail-starts_with-semantic-route-health-29",
      "summary": "Federated Disagreement Health Trail starts with Semantic Route Health.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-disagreement-health-trail",
      "target": "claim-graph-connectivity-is-not-semantic-health",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-disagreement-health-trail-continues_to-claim-graph-connectivity-is-not-semantic-health-30",
      "summary": "Federated Disagreement Health Trail continues to Graph connectivity is not semantic health.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-disagreement-health-trail",
      "target": "claim-shortest-paths-are-enough",
      "type": "contrasts_with",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-disagreement-health-trail-contrasts_with-claim-shortest-paths-are-enough-31",
      "summary": "Federated Disagreement Health Trail contrasts with Shortest paths are enough.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-disagreement-health-trail",
      "target": "federated-knowledge-substrates",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-disagreement-health-trail-continues_to-federated-knowledge-substrates-32",
      "summary": "Federated Disagreement Health Trail continues to Federated Knowledge Substrates.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-disagreement-health-trail",
      "target": "merge-validation",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-disagreement-health-trail-uses-merge-validation-33",
      "summary": "Federated Disagreement Health Trail uses Merge Validation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-disagreement-health-trail",
      "target": "xananode.lineage:concept/conflict-disputed-identity",
      "type": "context_for",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-disagreement-health-trail-context_for-conflict-disputed-identity-34",
      "summary": "Federated Disagreement Health Trail context for Conflict and Disputed Identity.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "branching-orientation-trail",
      "target": "start-here",
      "type": "starts_with",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/branching-orientation-trail-starts_with-start-here-35",
      "summary": "Branching Orientation Trail starts with Start Here.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "branching-orientation-trail",
      "target": "xananode",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/branching-orientation-trail-continues_to-xananode-36",
      "summary": "Branching Orientation Trail continues to XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "branching-orientation-trail",
      "target": "vannevar-bush",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/branching-orientation-trail-continues_to-vannevar-bush-37",
      "summary": "Branching Orientation Trail continues to Vannevar Bush.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "branching-orientation-trail",
      "target": "xananode-protocol-repo",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/branching-orientation-trail-continues_to-xananode-protocol-repo-38",
      "summary": "Branching Orientation Trail continues to XanaNode Protocol Repository.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-theme",
      "target": "static-publishing",
      "type": "enables",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-theme-enables-static-publishing-39",
      "summary": "XanaNode Hugo Theme enables Static Publishing.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-schema",
      "target": "python",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-schema-requires-python-40",
      "summary": "XanaNode Core Schema requires Python.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-theme",
      "target": "nodejs",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-theme-requires-nodejs-41",
      "summary": "XanaNode Hugo Theme requires Node.js.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-schema",
      "target": "nodejs",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-schema-requires-nodejs-42",
      "summary": "XanaNode Core Schema requires Node.js.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "hugo",
      "target": "static-publishing",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/hugo-implements-static-publishing-43",
      "summary": "Hugo implements Static Publishing.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "github",
      "target": "git",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/github-uses-git-44",
      "summary": "GitHub uses Git.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-theme",
      "target": "github",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-theme-requires-github-45",
      "summary": "XanaNode Hugo Theme requires GitHub.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-knowledge-substrates",
      "target": "git",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-knowledge-substrates-requires-git-46",
      "summary": "Federated Knowledge Substrates requires Git.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "cytoscape-js",
      "target": "knowledge-substrate",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/cytoscape-js-represents-knowledge-substrate-47",
      "summary": "Cytoscape.js represents Knowledge Substrate.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-workspace-repo",
      "target": "xananode",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-workspace-repo-implements-xananode-48",
      "summary": "XanaNode Workspace Repository implements XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-workspace-repo",
      "target": "nodejs",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-workspace-repo-uses-nodejs-49",
      "summary": "XanaNode Workspace Repository uses Node.js.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-workspace-repo",
      "target": "git",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-workspace-repo-uses-git-50",
      "summary": "XanaNode Workspace Repository uses Git.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-workspace-repo",
      "target": "github",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-workspace-repo-uses-github-51",
      "summary": "XanaNode Workspace Repository uses GitHub.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-workspace-repo",
      "target": "xananode-core-schema",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-workspace-repo-uses-xananode-core-schema-52",
      "summary": "XanaNode Workspace Repository uses XanaNode Core Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-knowledge-substrates",
      "target": "xananode-workspace-repo",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-knowledge-substrates-requires-xananode-workspace-repo-53",
      "summary": "Federated Knowledge Substrates requires XanaNode Workspace Repository.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-studio-repo",
      "target": "xananode",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-studio-repo-implements-xananode-54",
      "summary": "XanaNode Studio Repository implements XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-studio-repo",
      "target": "xananode-core-schema",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-studio-repo-uses-xananode-core-schema-55",
      "summary": "XanaNode Studio Repository uses XanaNode Core Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-studio-repo",
      "target": "xananode-hugo-theme",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-studio-repo-uses-xananode-hugo-theme-56",
      "summary": "XanaNode Studio Repository uses XanaNode Hugo Theme.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-studio-repo",
      "target": "nodejs",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-studio-repo-uses-nodejs-57",
      "summary": "XanaNode Studio Repository uses Node.js.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-studio-repo",
      "target": "git",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-studio-repo-uses-git-58",
      "summary": "XanaNode Studio Repository uses Git.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-studio-repo",
      "target": "github",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-studio-repo-uses-github-59",
      "summary": "XanaNode Studio Repository uses GitHub.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-studio-repo",
      "target": "knowledge-substrate",
      "type": "demonstrates",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-studio-repo-demonstrates-knowledge-substrate-60",
      "summary": "XanaNode Studio Repository demonstrates Knowledge Substrate.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-protocol-repo",
      "target": "xananode",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-protocol-repo-defines-xananode-61",
      "summary": "XanaNode Protocol Repository defines XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-protocol-repo",
      "target": "xananode-core-schema",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-protocol-repo-defines-xananode-core-schema-62",
      "summary": "XanaNode Protocol Repository defines XanaNode Core Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-protocol-repo",
      "target": "python",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-protocol-repo-uses-python-63",
      "summary": "XanaNode Protocol Repository uses Python.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-protocol-repo",
      "target": "git",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-protocol-repo-uses-git-64",
      "summary": "XanaNode Protocol Repository uses Git.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-protocol-repo",
      "target": "github",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-protocol-repo-uses-github-65",
      "summary": "XanaNode Protocol Repository uses GitHub.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-protocol-repo",
      "target": "protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-protocol-repo-documents-protocol-artifacts-66",
      "summary": "XanaNode Protocol Repository documents Protocol Artifacts.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-org-domain",
      "target": "xananode",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-org-domain-represents-xananode-67",
      "summary": "XanaNode.org represents XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-org-domain",
      "target": "xananode",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-org-domain-documents-xananode-68",
      "summary": "XanaNode.org documents XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-org-domain",
      "target": "xananode-com-domain",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-org-domain-supports-xananode-com-domain-69",
      "summary": "XanaNode.org supports XanaNode.com.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-net-domain",
      "target": "xananode",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-net-domain-represents-xananode-70",
      "summary": "XanaNode.net represents XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-net-domain",
      "target": "xananode",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-net-domain-documents-xananode-71",
      "summary": "XanaNode.net documents XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-net-domain",
      "target": "xananode-com-domain",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-net-domain-supports-xananode-com-domain-72",
      "summary": "XanaNode.net supports XanaNode.com.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-repo",
      "target": "xananode",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-repo-implements-xananode-73",
      "summary": "XanaNode Hugo Repository implements XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-repo",
      "target": "xananode-hugo-theme",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-repo-implements-xananode-hugo-theme-74",
      "summary": "XanaNode Hugo Repository implements XanaNode Hugo Theme.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-repo",
      "target": "hugo",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-repo-uses-hugo-75",
      "summary": "XanaNode Hugo Repository uses Hugo.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-repo",
      "target": "cytoscape-js",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-repo-uses-cytoscape-js-76",
      "summary": "XanaNode Hugo Repository uses Cytoscape.js.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-repo",
      "target": "nodejs",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-repo-uses-nodejs-77",
      "summary": "XanaNode Hugo Repository uses Node.js.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-repo",
      "target": "git",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-repo-uses-git-78",
      "summary": "XanaNode Hugo Repository uses Git.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-repo",
      "target": "github",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-repo-uses-github-79",
      "summary": "XanaNode Hugo Repository uses GitHub.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-repo",
      "target": "xananode-core-schema",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-repo-uses-xananode-core-schema-80",
      "summary": "XanaNode Hugo Repository uses XanaNode Core Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-sdk-repo",
      "target": "xananode",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-sdk-repo-implements-xananode-81",
      "summary": "XanaNode Core SDK Repository implements XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-sdk-repo",
      "target": "xananode-core-schema",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-sdk-repo-implements-xananode-core-schema-82",
      "summary": "XanaNode Core SDK Repository implements XanaNode Core Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-sdk-repo",
      "target": "nodejs",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-sdk-repo-uses-nodejs-83",
      "summary": "XanaNode Core SDK Repository uses Node.js.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-sdk-repo",
      "target": "git",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-sdk-repo-uses-git-84",
      "summary": "XanaNode Core SDK Repository uses Git.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-sdk-repo",
      "target": "github",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-sdk-repo-uses-github-85",
      "summary": "XanaNode Core SDK Repository uses GitHub.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-sdk-repo",
      "target": "substrate-node-record",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-sdk-repo-uses-substrate-node-record-86",
      "summary": "XanaNode Core SDK Repository uses Substrate Node Record.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-sdk-repo",
      "target": "substrate-relationship-list",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-sdk-repo-uses-substrate-relationship-list-87",
      "summary": "XanaNode Core SDK Repository uses Substrate Relationship List.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-com-domain",
      "target": "xananode",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-com-domain-represents-xananode-88",
      "summary": "XanaNode.com represents XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-com-domain",
      "target": "xananode",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-com-domain-documents-xananode-89",
      "summary": "XanaNode.com documents XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-com-domain",
      "target": "xananode-hugo-theme",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-com-domain-uses-xananode-hugo-theme-90",
      "summary": "XanaNode.com uses XanaNode Hugo Theme.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xanadu-document-interconnection",
      "target": "project-xanadu",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xanadu-document-interconnection-documents-project-xanadu-91",
      "summary": "Xanadu: Document Interconnection Enabling Re-use documents Project Xanadu.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xanadu-document-interconnection",
      "target": "transclusion",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xanadu-document-interconnection-defines-transclusion-92",
      "summary": "Xanadu: Document Interconnection Enabling Re-use defines Transclusion.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xanadu-document-interconnection",
      "target": "claim-relationships-preserve-context",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xanadu-document-interconnection-supports-claim-relationships-preserve-context-93",
      "summary": "Xanadu: Document Interconnection Enabling Re-use supports Typed relationships preserve context that hyperlinks lose.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "source-code-link-decay-study",
      "target": "link-rot",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/source-code-link-decay-study-documents-link-rot-94",
      "summary": "9.6 Million Links in Source Code Comments documents Link Rot.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "source-code-link-decay-study",
      "target": "claim-relationships-preserve-context",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/source-code-link-decay-study-supports-claim-relationships-preserve-context-95",
      "summary": "9.6 Million Links in Source Code Comments supports Typed relationships preserve context that hyperlinks lose.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "software-freedom-conservancy-site",
      "target": "software-freedom-conservancy",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/software-freedom-conservancy-site-documents-software-freedom-conservancy-96",
      "summary": "Software Freedom Conservancy Site documents Software Freedom Conservancy.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "software-freedom-conservancy-site",
      "target": "git",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/software-freedom-conservancy-site-documents-git-97",
      "summary": "Software Freedom Conservancy Site documents Git.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "python-official-site",
      "target": "python",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/python-official-site-documents-python-98",
      "summary": "Python Official Site documents Python.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "python-official-site",
      "target": "python-software-foundation",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/python-official-site-documents-python-software-foundation-99",
      "summary": "Python Official Site documents Python Software Foundation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "openjs-foundation-site",
      "target": "openjs-foundation",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/openjs-foundation-site-documents-openjs-foundation-100",
      "summary": "OpenJS Foundation Site documents OpenJS Foundation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "nodejs-repository",
      "target": "nodejs",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/nodejs-repository-documents-nodejs-101",
      "summary": "Node.js Repository documents Node.js.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "nodejs-official-site",
      "target": "nodejs",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/nodejs-official-site-documents-nodejs-102",
      "summary": "Node.js Official Site documents Node.js.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "nodejs-official-site",
      "target": "openjs-foundation",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/nodejs-official-site-documents-openjs-foundation-103",
      "summary": "Node.js Official Site documents OpenJS Foundation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "mother-of-all-demos",
      "target": "nls",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/mother-of-all-demos-documents-nls-104",
      "summary": "Mother of All Demos documents NLS.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "mother-of-all-demos",
      "target": "knowledge-substrate",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/mother-of-all-demos-supports-knowledge-substrate-105",
      "summary": "Mother of All Demos supports Knowledge Substrate.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "hugo-repository",
      "target": "hugo",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/hugo-repository-documents-hugo-106",
      "summary": "Hugo Repository documents Hugo.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "hugo-repository",
      "target": "hugo-project",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/hugo-repository-documents-hugo-project-107",
      "summary": "Hugo Repository documents Hugo Project.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "hugo-official-site",
      "target": "hugo",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/hugo-official-site-documents-hugo-108",
      "summary": "Hugo Official Site documents Hugo.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "hugo-official-site",
      "target": "hugo-project",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/hugo-official-site-documents-hugo-project-109",
      "summary": "Hugo Official Site documents Hugo Project.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "github-official-site",
      "target": "github",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/github-official-site-documents-github-110",
      "summary": "GitHub Official Site documents GitHub.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "github-official-site",
      "target": "github-organization",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/github-official-site-documents-github-organization-111",
      "summary": "GitHub Official Site documents GitHub.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "github-docs",
      "target": "github",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/github-docs-documents-github-112",
      "summary": "GitHub Docs documents GitHub.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "github-docs",
      "target": "github-organization",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/github-docs-documents-github-organization-113",
      "summary": "GitHub Docs documents GitHub.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "git-repository",
      "target": "git",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/git-repository-documents-git-114",
      "summary": "Git Repository documents Git.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "git-official-site",
      "target": "git",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/git-official-site-documents-git-115",
      "summary": "Git Official Site documents Git.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "cytoscape-js-repository",
      "target": "cytoscape-js",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/cytoscape-js-repository-documents-cytoscape-js-116",
      "summary": "Cytoscape.js Repository documents Cytoscape.js.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "cytoscape-js-repository",
      "target": "cytoscape-consortium",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/cytoscape-js-repository-documents-cytoscape-consortium-117",
      "summary": "Cytoscape.js Repository documents Cytoscape Consortium.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "cytoscape-js-official-site",
      "target": "cytoscape-js",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/cytoscape-js-official-site-documents-cytoscape-js-118",
      "summary": "Cytoscape.js Official Site documents Cytoscape.js.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "cytoscape-js-official-site",
      "target": "cytoscape-consortium",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/cytoscape-js-official-site-documents-cytoscape-consortium-119",
      "summary": "Cytoscape.js Official Site documents Cytoscape Consortium.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "cpython-repository",
      "target": "python",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/cpython-repository-documents-python-120",
      "summary": "CPython Repository documents Python.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "cpython-repository",
      "target": "python-software-foundation",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/cpython-repository-documents-python-software-foundation-121",
      "summary": "CPython Repository documents Python Software Foundation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "as-we-may-think",
      "target": "memex",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/as-we-may-think-documents-memex-122",
      "summary": "As We May Think documents Memex.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "as-we-may-think",
      "target": "claim-substrate-is-structure",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/as-we-may-think-supports-claim-substrate-is-structure-123",
      "summary": "As We May Think supports A knowledge substrate is structure, not information.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-relationship-types",
      "target": "typed-relationships",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-relationship-types-defines-typed-relationships-124",
      "summary": "XanaNode Relationship Types defines Typed Relationships.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-node-types",
      "target": "xananode",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-node-types-defines-xananode-125",
      "summary": "XanaNode Node Types defines XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-schema",
      "target": "xananode-node-types",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-schema-defines-xananode-node-types-126",
      "summary": "XanaNode Core Schema defines XanaNode Node Types.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-schema",
      "target": "xananode-relationship-types",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-schema-defines-xananode-relationship-types-127",
      "summary": "XanaNode Core Schema defines XanaNode Relationship Types.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-schema",
      "target": "substrate-manifest-schema",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-schema-defines-substrate-manifest-schema-128",
      "summary": "XanaNode Core Schema defines Substrate Manifest Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-schema",
      "target": "substrate-node-schema",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-schema-defines-substrate-node-schema-129",
      "summary": "XanaNode Core Schema defines Substrate Node Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-schema",
      "target": "substrate-relationships-schema",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-schema-defines-substrate-relationships-schema-130",
      "summary": "XanaNode Core Schema defines Substrate Relationships Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-knowledge-substrates",
      "target": "xananode-core-schema",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-knowledge-substrates-requires-xananode-core-schema-131",
      "summary": "Federated Knowledge Substrates requires XanaNode Core Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-schema",
      "target": "schema-extension",
      "type": "enables",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-schema-enables-schema-extension-132",
      "summary": "XanaNode Core Schema enables Schema Extension.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "substrate-relationships-schema",
      "target": "substrate-relationship-list",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/substrate-relationships-schema-defines-substrate-relationship-list-133",
      "summary": "Substrate Relationships Schema defines Substrate Relationship List.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "substrate-relationships-schema",
      "target": "xananode-relationship-types",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/substrate-relationships-schema-uses-xananode-relationship-types-134",
      "summary": "Substrate Relationships Schema uses XanaNode Relationship Types.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-schema",
      "target": "substrate-relationships-schema",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-schema-contains-substrate-relationships-schema-135",
      "summary": "XanaNode Core Schema contains Substrate Relationships Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "substrate-node-schema",
      "target": "substrate-node-record",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/substrate-node-schema-defines-substrate-node-record-136",
      "summary": "Substrate Node Schema defines Substrate Node Record.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "substrate-node-schema",
      "target": "xananode-node-types",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/substrate-node-schema-uses-xananode-node-types-137",
      "summary": "Substrate Node Schema uses XanaNode Node Types.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-schema",
      "target": "substrate-node-schema",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-schema-contains-substrate-node-schema-138",
      "summary": "XanaNode Core Schema contains Substrate Node Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "substrate-manifest-schema",
      "target": "substrate-manifest",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/substrate-manifest-schema-defines-substrate-manifest-139",
      "summary": "Substrate Manifest Schema defines Substrate Manifest.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-schema",
      "target": "substrate-manifest-schema",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-schema-contains-substrate-manifest-schema-140",
      "summary": "XanaNode Core Schema contains Substrate Manifest Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "compatibility-report",
      "target": "substrate-manifest-schema",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/compatibility-report-requires-substrate-manifest-schema-141",
      "summary": "Compatibility Report requires Substrate Manifest Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "namespace-schema",
      "target": "namespace-registry",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/namespace-schema-defines-namespace-registry-142",
      "summary": "Namespace Schema defines Namespace Registry.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "namespace-schema",
      "target": "namespacing",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/namespace-schema-supports-namespacing-143",
      "summary": "Namespace Schema supports Namespacing.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "schema-extension",
      "target": "namespace-schema",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/schema-extension-requires-namespace-schema-144",
      "summary": "Schema Extension requires Namespace Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "merge-report-schema",
      "target": "merge-report",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/merge-report-schema-defines-merge-report-145",
      "summary": "Merge Report Schema defines Merge Report.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "merge-report-schema",
      "target": "merge-validation",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/merge-report-schema-documents-merge-validation-146",
      "summary": "Merge Report Schema documents Merge Validation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federation-example",
      "target": "merge-report-schema",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federation-example-requires-merge-report-schema-147",
      "summary": "Federation Example requires Merge Report Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "compatibility-report-schema",
      "target": "compatibility-report",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/compatibility-report-schema-defines-compatibility-report-148",
      "summary": "Compatibility Report Schema defines Compatibility Report.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "compatibility-report-schema",
      "target": "compatibility-levels",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/compatibility-report-schema-documents-compatibility-levels-149",
      "summary": "Compatibility Report Schema documents Compatibility Levels.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federation-example",
      "target": "compatibility-report-schema",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federation-example-requires-compatibility-report-schema-150",
      "summary": "Federation Example requires Compatibility Report Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-theme",
      "target": "xananode",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-theme-implements-xananode-151",
      "summary": "XanaNode Hugo Theme implements XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-theme",
      "target": "hugo",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-theme-uses-hugo-152",
      "summary": "XanaNode Hugo Theme uses Hugo.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-theme",
      "target": "cytoscape-js",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-theme-uses-cytoscape-js-153",
      "summary": "XanaNode Hugo Theme uses Cytoscape.js.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-theme",
      "target": "nodejs",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-theme-uses-nodejs-154",
      "summary": "XanaNode Hugo Theme uses Node.js.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-theme",
      "target": "git",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-theme-uses-git-155",
      "summary": "XanaNode Hugo Theme uses Git.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-theme",
      "target": "github",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-theme-uses-github-156",
      "summary": "XanaNode Hugo Theme uses GitHub.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-theme",
      "target": "knowledge-substrate",
      "type": "demonstrates",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-theme-demonstrates-knowledge-substrate-157",
      "summary": "XanaNode Hugo Theme demonstrates Knowledge Substrate.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "project-xanadu",
      "target": "transclusion",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/project-xanadu-defines-transclusion-158",
      "summary": "Project Xanadu defines Transclusion.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "project-xanadu",
      "target": "xananode",
      "type": "influenced",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/project-xanadu-influenced-xananode-159",
      "summary": "Project Xanadu influenced XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "mother-of-all-demos",
      "target": "nls",
      "type": "demonstrates",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/mother-of-all-demos-demonstrates-nls-160",
      "summary": "Mother of All Demos demonstrates NLS.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "nls",
      "target": "xananode",
      "type": "anticipated",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/nls-anticipated-xananode-161",
      "summary": "NLS anticipated XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "memex",
      "target": "as-we-may-think",
      "type": "introduced_in",
      "color": "#ec4899",
      "inverse_color": "#f9a8d4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/memex-introduced_in-as-we-may-think-162",
      "summary": "Memex introduced in As We May Think.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "memex",
      "target": "xananode",
      "type": "anticipated",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/memex-anticipated-xananode-163",
      "summary": "Memex anticipated XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "vannevar-bush",
      "target": "as-we-may-think",
      "type": "authored",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/vannevar-bush-authored-as-we-may-think-164",
      "summary": "Vannevar Bush authored As We May Think.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "vannevar-bush",
      "target": "memex",
      "type": "proposed",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/vannevar-bush-proposed-memex-165",
      "summary": "Vannevar Bush proposed Memex.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "vannevar-bush",
      "target": "knowledge-substrate",
      "type": "anticipated",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/vannevar-bush-anticipated-knowledge-substrate-166",
      "summary": "Vannevar Bush anticipated Knowledge Substrate.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "ted-nelson",
      "target": "project-xanadu",
      "type": "created",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/ted-nelson-created-project-xanadu-167",
      "summary": "Ted Nelson created Project Xanadu.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "ted-nelson",
      "target": "transclusion",
      "type": "introduced",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/ted-nelson-introduced-transclusion-168",
      "summary": "Ted Nelson introduced Transclusion.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "ted-nelson",
      "target": "xanadu-document-interconnection",
      "type": "authored",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/ted-nelson-authored-xanadu-document-interconnection-169",
      "summary": "Ted Nelson authored Xanadu: Document Interconnection Enabling Re-use.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "ted-nelson",
      "target": "xananode",
      "type": "influenced",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/ted-nelson-influenced-xananode-170",
      "summary": "Ted Nelson influenced XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "douglas-engelbart",
      "target": "nls",
      "type": "created",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/douglas-engelbart-created-nls-171",
      "summary": "Douglas Engelbart created NLS.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "douglas-engelbart",
      "target": "mother-of-all-demos",
      "type": "presented",
      "color": "#ec4899",
      "inverse_color": "#f9a8d4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/douglas-engelbart-presented-mother-of-all-demos-172",
      "summary": "Douglas Engelbart presented Mother of All Demos.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode",
      "target": "douglas-engelbart",
      "type": "extends",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-extends-douglas-engelbart-173",
      "summary": "XanaNode extends Douglas Engelbart.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "software-freedom-conservancy",
      "target": "git",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/software-freedom-conservancy-supports-git-174",
      "summary": "Software Freedom Conservancy supports Git.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "python-software-foundation",
      "target": "python",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/python-software-foundation-supports-python-175",
      "summary": "Python Software Foundation supports Python.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "openjs-foundation",
      "target": "nodejs",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/openjs-foundation-supports-nodejs-176",
      "summary": "OpenJS Foundation supports Node.js.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "hugo-project",
      "target": "hugo",
      "type": "created",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/hugo-project-created-hugo-177",
      "summary": "Hugo Project created Hugo.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "github-organization",
      "target": "github",
      "type": "created",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/github-organization-created-github-178",
      "summary": "GitHub created GitHub.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "cytoscape-consortium",
      "target": "cytoscape-js",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/cytoscape-consortium-supports-cytoscape-js-179",
      "summary": "Cytoscape Consortium supports Cytoscape.js.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "link-rot",
      "target": "unlabeled-hyperlink",
      "type": "demonstrates",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/link-rot-demonstrates-unlabeled-hyperlink-180",
      "summary": "Link Rot demonstrates Unlabeled Hyperlink.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "link-rot",
      "target": "provenance",
      "type": "threatens",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/link-rot-threatens-provenance-181",
      "summary": "Link Rot threatens Provenance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "source-code-link-decay-study",
      "target": "link-rot",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/source-code-link-decay-study-supports-link-rot-182",
      "summary": "9.6 Million Links in Source Code Comments supports Link Rot.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "knowledge-substrate",
      "target": "link-rot",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/knowledge-substrate-explains-link-rot-183",
      "summary": "Knowledge Substrate explains Link Rot.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-theme",
      "target": "xananode-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-theme-has_primary_media-xananode-icon-184",
      "summary": "XanaNode Hugo Theme has primary media XanaNode Icon.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-icon",
      "target": "xananode-hugo-theme",
      "type": "depicts",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-icon-depicts-xananode-hugo-theme-185",
      "summary": "XanaNode Icon depicts XanaNode Hugo Theme.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-icon",
      "target": "xananode",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-icon-represents-xananode-186",
      "summary": "XanaNode Icon represents XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "what-is-xananode",
      "target": "xananode",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/what-is-xananode-defines-xananode-187",
      "summary": "What Is XanaNode? defines XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "what-is-xananode",
      "target": "xananode-hugo-theme",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/what-is-xananode-explains-xananode-hugo-theme-188",
      "summary": "What Is XanaNode? explains XanaNode Hugo Theme.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "what-is-xananode",
      "target": "claim-merge-without-collapse",
      "type": "arrives_at",
      "color": "#818cf8",
      "inverse_color": "#c7d2fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/what-is-xananode-arrives_at-claim-merge-without-collapse-189",
      "summary": "What Is XanaNode? arrives at Substrates should merge without collapsing disagreement.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "what-is-xananode",
      "target": "federated-knowledge-substrates",
      "type": "context_for",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/what-is-xananode-context_for-federated-knowledge-substrates-190",
      "summary": "What Is XanaNode? context for Federated Knowledge Substrates.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "what-is-xananode",
      "target": "protocol-artifacts",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/what-is-xananode-explains-protocol-artifacts-191",
      "summary": "What Is XanaNode? explains Protocol Artifacts.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "start-here",
      "target": "xananode",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/start-here-explains-xananode-192",
      "summary": "Start Here explains XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "start-here",
      "target": "knowledge-substrate",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/start-here-explains-knowledge-substrate-193",
      "summary": "Start Here explains Knowledge Substrate.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "start-here",
      "target": "federated-knowledge-substrates",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/start-here-explains-federated-knowledge-substrates-194",
      "summary": "Start Here explains Federated Knowledge Substrates.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "start-here",
      "target": "single-source-of-truth",
      "type": "contrasts_with",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/start-here-contrasts_with-single-source-of-truth-195",
      "summary": "Start Here contrasts with Single Source of Truth.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "start-here",
      "target": "xananode-core-trail",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/start-here-continues_to-xananode-core-trail-196",
      "summary": "Start Here continues to XanaNode Core Trail.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "start-here",
      "target": "protocol-artifacts-trail",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/start-here-continues_to-protocol-artifacts-trail-197",
      "summary": "Start Here continues to Protocol Artifacts Trail.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode",
      "target": "knowledge-substrate",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-defines-knowledge-substrate-198",
      "summary": "XanaNode defines Knowledge Substrate.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode",
      "target": "federated-knowledge-substrates",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-explains-federated-knowledge-substrates-199",
      "summary": "XanaNode explains Federated Knowledge Substrates.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode",
      "target": "xananode-core-schema",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-requires-xananode-core-schema-200",
      "summary": "XanaNode requires XanaNode Core Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode",
      "target": "provenance",
      "type": "preserves",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-preserves-provenance-201",
      "summary": "XanaNode preserves Provenance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode",
      "target": "project-xanadu",
      "type": "extends",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-extends-project-xanadu-202",
      "summary": "XanaNode extends Project Xanadu.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode",
      "target": "memex",
      "type": "extends",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-extends-memex-203",
      "summary": "XanaNode extends Memex.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "unlabeled-hyperlink",
      "target": "provenance",
      "type": "threatens",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/unlabeled-hyperlink-threatens-provenance-204",
      "summary": "Unlabeled Hyperlink threatens Provenance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "typed-relationships",
      "target": "unlabeled-hyperlink",
      "type": "contrasts_with",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/typed-relationships-contrasts_with-unlabeled-hyperlink-205",
      "summary": "Typed Relationships contrasts with Unlabeled Hyperlink.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "typed-relationships",
      "target": "claim-relationships-preserve-context",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/typed-relationships-supports-claim-relationships-preserve-context-206",
      "summary": "Typed Relationships supports Typed relationships preserve context that hyperlinks lose.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "tumbler-addressing",
      "target": "transclusion",
      "type": "enables",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/tumbler-addressing-enables-transclusion-207",
      "summary": "Tumbler Addressing enables Transclusion.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "tumbler-addressing",
      "target": "deep-linking",
      "type": "enables",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/tumbler-addressing-enables-deep-linking-208",
      "summary": "Tumbler Addressing enables Deep Linking.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "tumbler-addressing",
      "target": "provenance",
      "type": "preserves",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/tumbler-addressing-preserves-provenance-209",
      "summary": "Tumbler Addressing preserves Provenance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "tumbler-addressing",
      "target": "fragment-node",
      "type": "enables",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/tumbler-addressing-enables-fragment-node-210",
      "summary": "Tumbler Addressing enables Fragment Node.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode",
      "target": "tumbler-addressing",
      "type": "extends",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-extends-tumbler-addressing-211",
      "summary": "XanaNode extends Tumbler Addressing.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "tumbler-addressing",
      "target": "as-we-may-think",
      "type": "deep_links_to",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/tumbler-addressing-deep_links_to-as-we-may-think-212",
      "summary": "Tumbler Addressing deep links to As We May Think.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "transclusion",
      "target": "provenance",
      "type": "preserves",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/transclusion-preserves-provenance-213",
      "summary": "Transclusion preserves Provenance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "transclusion",
      "target": "fragment-node",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/transclusion-uses-fragment-node-214",
      "summary": "Transclusion uses Fragment Node.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "substrate-relationship-list",
      "target": "xananode-relationship-types",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/substrate-relationship-list-uses-xananode-relationship-types-215",
      "summary": "Substrate Relationship List uses XanaNode Relationship Types.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "substrate-relationship-list",
      "target": "provenance",
      "type": "preserves",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/substrate-relationship-list-preserves-provenance-216",
      "summary": "Substrate Relationship List preserves Provenance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "substrate-node-record",
      "target": "xananode-node-types",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/substrate-node-record-uses-xananode-node-types-217",
      "summary": "Substrate Node Record uses XanaNode Node Types.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "substrate-node-record",
      "target": "fragment-node",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/substrate-node-record-contains-fragment-node-218",
      "summary": "Substrate Node Record contains Fragment Node.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "substrate-manifest",
      "target": "namespacing",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/substrate-manifest-requires-namespacing-219",
      "summary": "Substrate Manifest requires Namespacing.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "single-source-of-truth",
      "target": "federated-knowledge-substrates",
      "type": "contrasts_with",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/single-source-of-truth-contrasts_with-federated-knowledge-substrates-220",
      "summary": "Single Source of Truth contrasts with Federated Knowledge Substrates.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "single-source-of-truth",
      "target": "independent-moderation",
      "type": "threatens",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/single-source-of-truth-threatens-independent-moderation-221",
      "summary": "Single Source of Truth threatens Independent Moderation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "single-source-of-truth",
      "target": "knowledge-substrate",
      "type": "alternative_to",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/single-source-of-truth-alternative_to-knowledge-substrate-222",
      "summary": "Single Source of Truth alternative to Knowledge Substrate.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-route-health",
      "target": "typed-relationships",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-route-health-requires-typed-relationships-223",
      "summary": "Semantic Route Health requires Typed Relationships.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-route-health",
      "target": "provenance",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-route-health-requires-provenance-224",
      "summary": "Semantic Route Health requires Provenance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-route-health",
      "target": "federated-knowledge-substrates",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-route-health-requires-federated-knowledge-substrates-225",
      "summary": "Semantic Route Health requires Federated Knowledge Substrates.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-route-health",
      "target": "merge-validation",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-route-health-uses-merge-validation-226",
      "summary": "Semantic Route Health uses Merge Validation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-route-health",
      "target": "semantic-health-lineage-trail",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-route-health-uses-semantic-health-lineage-trail-227",
      "summary": "Semantic Route Health uses Semantic Health Lineage Trail.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-route-health",
      "target": "claim-graph-connectivity-is-not-semantic-health",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-route-health-has_claim-claim-graph-connectivity-is-not-semantic-health-228",
      "summary": "Semantic Route Health has claim Graph connectivity is not semantic health.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-route-health",
      "target": "claim-healthy-paths-tell-coherent-stories",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-route-health-has_claim-claim-healthy-paths-tell-coherent-stories-229",
      "summary": "Semantic Route Health has claim Healthy paths tell coherent semantic stories.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-route-health",
      "target": "claim-federation-preserves-disagreement-as-health-signal",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-route-health-has_claim-claim-federation-preserves-disagreement-as-health-signal-230",
      "summary": "Semantic Route Health has claim Federation preserves disagreement as a health signal.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-route-health",
      "target": "claim-shortest-paths-are-enough",
      "type": "contrasts_with",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-route-health-contrasts_with-claim-shortest-paths-are-enough-231",
      "summary": "Semantic Route Health contrasts with Shortest paths are enough.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "namespacing",
      "target": "schema-extension",
      "type": "enables",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/namespacing-enables-schema-extension-232",
      "summary": "Namespacing enables Schema Extension.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "schema-extension",
      "target": "xananode-core-schema",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/schema-extension-requires-xananode-core-schema-233",
      "summary": "Schema Extension requires XanaNode Core Schema.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-knowledge-substrates",
      "target": "schema-extension",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-knowledge-substrates-requires-schema-extension-234",
      "summary": "Federated Knowledge Substrates requires Schema Extension.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "review-suggestions",
      "target": "typed-relationships",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/review-suggestions-uses-typed-relationships-235",
      "summary": "Review Suggestions uses Typed Relationships.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "review-suggestions",
      "target": "transclusion",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/review-suggestions-uses-transclusion-236",
      "summary": "Review Suggestions uses Transclusion.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "claim-relationships-preserve-context",
      "target": "provenance",
      "type": "evidence_for",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/claim-relationships-preserve-context-evidence_for-provenance-237",
      "summary": "Typed relationships preserve context that hyperlinks lose evidence for Provenance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-schema",
      "target": "protocol-artifacts",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-schema-defines-protocol-artifacts-238",
      "summary": "XanaNode Core Schema defines Protocol Artifacts.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "protocol-artifacts",
      "target": "substrate-manifest",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/protocol-artifacts-contains-substrate-manifest-239",
      "summary": "Protocol Artifacts contains Substrate Manifest.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "protocol-artifacts",
      "target": "substrate-node-record",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/protocol-artifacts-contains-substrate-node-record-240",
      "summary": "Protocol Artifacts contains Substrate Node Record.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "protocol-artifacts",
      "target": "substrate-relationship-list",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/protocol-artifacts-contains-substrate-relationship-list-241",
      "summary": "Protocol Artifacts contains Substrate Relationship List.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "protocol-artifacts",
      "target": "review-suggestions",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/protocol-artifacts-contains-review-suggestions-242",
      "summary": "Protocol Artifacts contains Review Suggestions.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-knowledge-substrates",
      "target": "protocol-artifacts",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-knowledge-substrates-requires-protocol-artifacts-243",
      "summary": "Federated Knowledge Substrates requires Protocol Artifacts.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "namespacing",
      "target": "schema-extension",
      "type": "clarifies",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/namespacing-clarifies-schema-extension-244",
      "summary": "Namespacing clarifies Schema Extension.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "namespace-registry",
      "target": "namespacing",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/namespace-registry-implements-namespacing-245",
      "summary": "Namespace Registry implements Namespacing.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "schema-extension",
      "target": "namespace-registry",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/schema-extension-requires-namespace-registry-246",
      "summary": "Schema Extension requires Namespace Registry.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "moderation-model",
      "target": "independent-moderation",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/moderation-model-defines-independent-moderation-247",
      "summary": "Moderation Model defines Independent Moderation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federation-rules",
      "target": "moderation-model",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federation-rules-requires-moderation-model-248",
      "summary": "Federation Rules requires Moderation Model.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "moderation-model",
      "target": "dispute-resolution",
      "type": "context_for",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/moderation-model-context_for-dispute-resolution-249",
      "summary": "Moderation Model context for Dispute Resolution.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "merge-validation",
      "target": "namespacing",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/merge-validation-requires-namespacing-250",
      "summary": "Merge Validation requires Namespacing.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "merge-validation",
      "target": "provenance",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/merge-validation-requires-provenance-251",
      "summary": "Merge Validation requires Provenance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "merge-validation",
      "target": "schema-extension",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/merge-validation-requires-schema-extension-252",
      "summary": "Merge Validation requires Schema Extension.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "merge-validation",
      "target": "merge-report",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/merge-validation-uses-merge-report-253",
      "summary": "Merge Validation uses Merge Report.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "merge-validation",
      "target": "compatibility-report",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/merge-validation-uses-compatibility-report-254",
      "summary": "Merge Validation uses Compatibility Report.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "merge-validation",
      "target": "claim-merge-without-collapse",
      "type": "arrives_at",
      "color": "#818cf8",
      "inverse_color": "#c7d2fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/merge-validation-arrives_at-claim-merge-without-collapse-255",
      "summary": "Merge Validation arrives at Substrates should merge without collapsing disagreement.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "merge-report",
      "target": "merge-validation",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/merge-report-documents-merge-validation-256",
      "summary": "Merge Report documents Merge Validation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "merge-report",
      "target": "provenance",
      "type": "preserves",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/merge-report-preserves-provenance-257",
      "summary": "Merge Report preserves Provenance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "merge-report",
      "target": "claim-merge-without-collapse",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/merge-report-supports-claim-merge-without-collapse-258",
      "summary": "Merge Report supports Substrates should merge without collapsing disagreement.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "known-implementations-registry",
      "target": "xananode-hugo-theme",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/known-implementations-registry-documents-xananode-hugo-theme-259",
      "summary": "Known Implementations Registry documents XanaNode Hugo Theme.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "known-implementations-registry",
      "target": "compatibility-levels",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/known-implementations-registry-supports-compatibility-levels-260",
      "summary": "Known Implementations Registry supports Compatibility Levels.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "knowledge-substrate",
      "target": "claim-substrate-is-structure",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/knowledge-substrate-has_claim-claim-substrate-is-structure-261",
      "summary": "Knowledge Substrate has claim A knowledge substrate is structure, not information.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "knowledge-substrate",
      "target": "provenance",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/knowledge-substrate-requires-provenance-262",
      "summary": "Knowledge Substrate requires Provenance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "knowledge-substrate",
      "target": "typed-relationships",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/knowledge-substrate-requires-typed-relationships-263",
      "summary": "Knowledge Substrate requires Typed Relationships.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-schema",
      "target": "knowledge-substrate",
      "type": "enables",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-schema-enables-knowledge-substrate-264",
      "summary": "XanaNode Core Schema enables Knowledge Substrate.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "independent-moderation",
      "target": "single-source-of-truth",
      "type": "contrasts_with",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/independent-moderation-contrasts_with-single-source-of-truth-265",
      "summary": "Independent Moderation contrasts with Single Source of Truth.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "independent-moderation",
      "target": "provenance",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/independent-moderation-requires-provenance-266",
      "summary": "Independent Moderation requires Provenance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "transclusion",
      "target": "fragment-node",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/transclusion-requires-fragment-node-267",
      "summary": "Transclusion requires Fragment Node.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "fragment-node",
      "target": "provenance",
      "type": "preserves",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/fragment-node-preserves-provenance-268",
      "summary": "Fragment Node preserves Provenance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "fragment-node",
      "target": "mother-of-all-demos",
      "type": "deep_links_to",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/fragment-node-deep_links_to-mother-of-all-demos-269",
      "summary": "Fragment Node deep links to Mother of All Demos.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federation-rules",
      "target": "federated-knowledge-substrates",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federation-rules-defines-federated-knowledge-substrates-270",
      "summary": "Federation Rules defines Federated Knowledge Substrates.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federation-rules",
      "target": "independent-moderation",
      "type": "preserves",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federation-rules-preserves-independent-moderation-271",
      "summary": "Federation Rules preserves Independent Moderation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federation-rules",
      "target": "compatibility-report",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federation-rules-requires-compatibility-report-272",
      "summary": "Federation Rules requires Compatibility Report.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federation-rules",
      "target": "merge-report",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federation-rules-requires-merge-report-273",
      "summary": "Federation Rules requires Merge Report.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federation-example",
      "target": "federated-knowledge-substrates",
      "type": "demonstrates",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federation-example-demonstrates-federated-knowledge-substrates-274",
      "summary": "Federation Example demonstrates Federated Knowledge Substrates.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federation-example",
      "target": "compatibility-report",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federation-example-uses-compatibility-report-275",
      "summary": "Federation Example uses Compatibility Report.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federation-example",
      "target": "merge-report",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federation-example-uses-merge-report-276",
      "summary": "Federation Example uses Merge Report.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federation-example",
      "target": "independent-moderation",
      "type": "preserves",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federation-example-preserves-independent-moderation-277",
      "summary": "Federation Example preserves Independent Moderation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-knowledge-substrates",
      "target": "namespacing",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-knowledge-substrates-requires-namespacing-278",
      "summary": "Federated Knowledge Substrates requires Namespacing.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-knowledge-substrates",
      "target": "merge-validation",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-knowledge-substrates-requires-merge-validation-279",
      "summary": "Federated Knowledge Substrates requires Merge Validation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-knowledge-substrates",
      "target": "federation-rules",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-knowledge-substrates-requires-federation-rules-280",
      "summary": "Federated Knowledge Substrates requires Federation Rules.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-knowledge-substrates",
      "target": "independent-moderation",
      "type": "preserves",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-knowledge-substrates-preserves-independent-moderation-281",
      "summary": "Federated Knowledge Substrates preserves Independent Moderation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-knowledge-substrates",
      "target": "single-source-of-truth",
      "type": "alternative_to",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-knowledge-substrates-alternative_to-single-source-of-truth-282",
      "summary": "Federated Knowledge Substrates alternative to Single Source of Truth.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-knowledge-substrates",
      "target": "semantic-route-health",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-knowledge-substrates-supports-semantic-route-health-283",
      "summary": "Federated Knowledge Substrates supports Semantic Route Health.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "dispute-resolution",
      "target": "provenance",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/dispute-resolution-requires-provenance-284",
      "summary": "Dispute Resolution requires Provenance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "dispute-resolution",
      "target": "claim-merge-without-collapse",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/dispute-resolution-supports-claim-merge-without-collapse-285",
      "summary": "Dispute Resolution supports Substrates should merge without collapsing disagreement.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "dispute-resolution",
      "target": "merge-report",
      "type": "context_for",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/dispute-resolution-context_for-merge-report-286",
      "summary": "Dispute Resolution context for Merge Report.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federation-rules",
      "target": "dispute-resolution",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federation-rules-requires-dispute-resolution-287",
      "summary": "Federation Rules requires Dispute Resolution.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "deep-linking",
      "target": "transclusion",
      "type": "enables",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/deep-linking-enables-transclusion-288",
      "summary": "Deep Linking enables Transclusion.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "deep-linking",
      "target": "unlabeled-hyperlink",
      "type": "contrasts_with",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/deep-linking-contrasts_with-unlabeled-hyperlink-289",
      "summary": "Deep Linking contrasts with Unlabeled Hyperlink.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "custom-extension-substrate",
      "target": "schema-extension",
      "type": "demonstrates",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/custom-extension-substrate-demonstrates-schema-extension-290",
      "summary": "Custom Extension Substrate demonstrates Schema Extension.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "custom-extension-substrate",
      "target": "namespace-registry",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/custom-extension-substrate-requires-namespace-registry-291",
      "summary": "Custom Extension Substrate requires Namespace Registry.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "custom-extension-substrate",
      "target": "substrate-manifest",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/custom-extension-substrate-uses-substrate-manifest-292",
      "summary": "Custom Extension Substrate uses Substrate Manifest.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "custom-extension-substrate",
      "target": "canonical-type-policy",
      "type": "features",
      "color": "#ec4899",
      "inverse_color": "#f9a8d4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/custom-extension-substrate-features-canonical-type-policy-293",
      "summary": "Custom Extension Substrate features Canonical Type Policy.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "compatibility-report",
      "target": "compatibility-levels",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/compatibility-report-documents-compatibility-levels-294",
      "summary": "Compatibility Report documents Compatibility Levels.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "merge-validation",
      "target": "compatibility-report",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/merge-validation-requires-compatibility-report-295",
      "summary": "Merge Validation requires Compatibility Report.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "compatibility-levels",
      "target": "compatibility-report",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/compatibility-levels-uses-compatibility-report-296",
      "summary": "Compatibility Levels uses Compatibility Report.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "compatibility-levels",
      "target": "substrate-manifest",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/compatibility-levels-requires-substrate-manifest-297",
      "summary": "Compatibility Levels requires Substrate Manifest.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-knowledge-substrates",
      "target": "compatibility-levels",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-knowledge-substrates-requires-compatibility-levels-298",
      "summary": "Federated Knowledge Substrates requires Compatibility Levels.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "federated-knowledge-substrates",
      "target": "civilizational-memory",
      "type": "enables",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/federated-knowledge-substrates-enables-civilizational-memory-299",
      "summary": "Federated Knowledge Substrates enables Civilizational Memory.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "civilizational-memory",
      "target": "knowledge-substrate",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/civilizational-memory-requires-knowledge-substrate-300",
      "summary": "Civilizational Memory requires Knowledge Substrate.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "civilizational-memory",
      "target": "provenance",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/civilizational-memory-requires-provenance-301",
      "summary": "Civilizational Memory requires Provenance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "civilizational-memory",
      "target": "merge-validation",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/civilizational-memory-requires-merge-validation-302",
      "summary": "Civilizational Memory requires Merge Validation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "canonical-type-policy",
      "target": "schema-extension",
      "type": "context_for",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/canonical-type-policy-context_for-schema-extension-303",
      "summary": "Canonical Type Policy context for Schema Extension.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "canonical-type-policy",
      "target": "namespacing",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/canonical-type-policy-requires-namespacing-304",
      "summary": "Canonical Type Policy requires Namespacing.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xanadu-document-interconnection",
      "target": "claim-substrate-is-structure",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xanadu-document-interconnection-supports-claim-substrate-is-structure-305",
      "summary": "Xanadu: Document Interconnection Enabling Re-use supports A knowledge substrate is structure, not information.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-route-health",
      "target": "claim-shortest-paths-are-enough",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-route-health-has_claim-claim-shortest-paths-are-enough-306",
      "summary": "Semantic Route Health has claim Shortest paths are enough.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "claim-shortest-paths-are-enough",
      "target": "claim-graph-connectivity-is-not-semantic-health",
      "type": "contradicts",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/claim-shortest-paths-are-enough-contradicts-claim-graph-connectivity-is-not-semantic-health-307",
      "summary": "Shortest paths are enough contradicts Graph connectivity is not semantic health.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "claim-shortest-paths-are-enough",
      "target": "claim-healthy-paths-tell-coherent-stories",
      "type": "contradicts",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/claim-shortest-paths-are-enough-contradicts-claim-healthy-paths-tell-coherent-stories-308",
      "summary": "Shortest paths are enough contradicts Healthy paths tell coherent semantic stories.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "claim-federation-preserves-disagreement-as-health-signal",
      "target": "claim-shortest-paths-are-enough",
      "type": "contradicts",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/claim-federation-preserves-disagreement-as-health-signal-contradicts-claim-shortest-paths-are-enough-309",
      "summary": "Federation preserves disagreement as a health signal contradicts Shortest paths are enough.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "typed-relationships",
      "target": "claim-relationships-preserve-context",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/typed-relationships-has_claim-claim-relationships-preserve-context-310",
      "summary": "Typed Relationships has claim Typed relationships preserve context that hyperlinks lose.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "claim-relationships-preserve-context",
      "target": "unlabeled-hyperlink",
      "type": "contrasts_with",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/claim-relationships-preserve-context-contrasts_with-unlabeled-hyperlink-311",
      "summary": "Typed relationships preserve context that hyperlinks lose contrasts with Unlabeled Hyperlink.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "merge-validation",
      "target": "claim-merge-without-collapse",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/merge-validation-has_claim-claim-merge-without-collapse-312",
      "summary": "Merge Validation has claim Substrates should merge without collapsing disagreement.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-core-schema",
      "target": "claim-merge-without-collapse",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-core-schema-supports-claim-merge-without-collapse-313",
      "summary": "XanaNode Core Schema supports Substrates should merge without collapsing disagreement.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "claim-merge-without-collapse",
      "target": "single-source-of-truth",
      "type": "contradicts",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/claim-merge-without-collapse-contradicts-single-source-of-truth-314",
      "summary": "Substrates should merge without collapsing disagreement contradicts Single Source of Truth.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-route-health",
      "target": "claim-healthy-paths-tell-coherent-stories",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-route-health-has_claim-claim-healthy-paths-tell-coherent-stories-315",
      "summary": "Semantic Route Health has claim Healthy paths tell coherent semantic stories.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "claim-healthy-paths-tell-coherent-stories",
      "target": "typed-relationships",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/claim-healthy-paths-tell-coherent-stories-supports-typed-relationships-316",
      "summary": "Healthy paths tell coherent semantic stories supports Typed Relationships.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "claim-healthy-paths-tell-coherent-stories",
      "target": "claim-relationships-preserve-context",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/claim-healthy-paths-tell-coherent-stories-supports-claim-relationships-preserve-context-317",
      "summary": "Healthy paths tell coherent semantic stories supports Typed relationships preserve context that hyperlinks lose.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "claim-healthy-paths-tell-coherent-stories",
      "target": "semantic-health-lineage-trail",
      "type": "demonstrates",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/claim-healthy-paths-tell-coherent-stories-demonstrates-semantic-health-lineage-trail-318",
      "summary": "Healthy paths tell coherent semantic stories demonstrates Semantic Health Lineage Trail.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-route-health",
      "target": "claim-graph-connectivity-is-not-semantic-health",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-route-health-has_claim-claim-graph-connectivity-is-not-semantic-health-319",
      "summary": "Semantic Route Health has claim Graph connectivity is not semantic health.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "claim-graph-connectivity-is-not-semantic-health",
      "target": "semantic-route-health",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/claim-graph-connectivity-is-not-semantic-health-supports-semantic-route-health-320",
      "summary": "Graph connectivity is not semantic health supports Semantic Route Health.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "claim-graph-connectivity-is-not-semantic-health",
      "target": "claim-shortest-paths-are-enough",
      "type": "contrasts_with",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/claim-graph-connectivity-is-not-semantic-health-contrasts_with-claim-shortest-paths-are-enough-321",
      "summary": "Graph connectivity is not semantic health contrasts with Shortest paths are enough.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "semantic-route-health",
      "target": "claim-federation-preserves-disagreement-as-health-signal",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/semantic-route-health-has_claim-claim-federation-preserves-disagreement-as-health-signal-322",
      "summary": "Semantic Route Health has claim Federation preserves disagreement as a health signal.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "claim-federation-preserves-disagreement-as-health-signal",
      "target": "federated-knowledge-substrates",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/claim-federation-preserves-disagreement-as-health-signal-supports-federated-knowledge-substrates-323",
      "summary": "Federation preserves disagreement as a health signal supports Federated Knowledge Substrates.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "claim-federation-preserves-disagreement-as-health-signal",
      "target": "merge-validation",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/claim-federation-preserves-disagreement-as-health-signal-supports-merge-validation-324",
      "summary": "Federation preserves disagreement as a health signal supports Merge Validation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "claim-federation-preserves-disagreement-as-health-signal",
      "target": "claim-merge-without-collapse",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/claim-federation-preserves-disagreement-as-health-signal-supports-claim-merge-without-collapse-325",
      "summary": "Federation preserves disagreement as a health signal supports Substrates should merge without collapsing disagreement.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "claim-federation-preserves-disagreement-as-health-signal",
      "target": "claim-shortest-paths-are-enough",
      "type": "contradicts",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/claim-federation-preserves-disagreement-as-health-signal-contradicts-claim-shortest-paths-are-enough-326",
      "summary": "Federation preserves disagreement as a health signal contradicts Shortest paths are enough.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "source-creator",
      "target": "xananode",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/source-creator-documents-xananode-327",
      "summary": "The canonical website credits the creator and anchors the public XanaNode home.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "source-github",
      "target": "xananode",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/source-github-documents-xananode-328",
      "summary": "The public GitHub profile collects XanaNode repositories and development activity.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "source-support",
      "target": "xananode",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/source-support-supports-xananode-329",
      "summary": "The support page helps sustain authored XanaNode substrate creation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.com:fragment/xanadu-document-interconnection-0001",
      "target": "xanadu-document-interconnection",
      "type": "derived_from",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xanadu-document-interconnection-fragment-0001-derived-from-source",
      "summary": "Reusable Media Fragment is derived from a stable addressable portion of its source node.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.com:fragment/mother-of-all-demos-0001",
      "target": "mother-of-all-demos",
      "type": "derived_from",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/mother-of-all-demos-fragment-0001-derived-from-source",
      "summary": "Augmenting Human Intelligence Fragment is derived from a stable addressable portion of its source node.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.com:fragment/as-we-may-think-0004",
      "target": "as-we-may-think",
      "type": "derived_from",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/as-we-may-think-fragment-0004-derived-from-source",
      "summary": "Associative Trails Fragment is derived from a stable addressable portion of its source node.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode-hugo-theme",
      "target": "xananode-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-hugo-theme-represented-by-xananode-icon",
      "summary": "XanaNode Hugo Theme uses XanaNode Icon as its primary media.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode",
      "target": "xananode-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/xananode-represented-by-xananode-icon",
      "summary": "XanaNode uses XanaNode Icon as its primary media.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "tumbler-addressing",
      "target": "xananode.com:fragment/as-we-may-think-0004",
      "type": "transcludes",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/tumbler-addressing-transcludes-0004",
      "summary": "Tumbler Addressing transcludes Associative Trails Fragment by stable reference.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "transclusion",
      "target": "xananode.com:fragment/xanadu-document-interconnection-0001",
      "type": "transcludes",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/transclusion-transcludes-0001",
      "summary": "Transclusion transcludes Reusable Media Fragment by stable reference.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "fragment-node",
      "target": "xananode.com:fragment/mother-of-all-demos-0001",
      "type": "transcludes",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.com:rel/fragment-node-transcludes-0001",
      "summary": "Fragment Node transcludes Augmenting Human Intelligence Fragment by stable reference.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.merge:trail/federation-review-proof",
      "target": "example.researcher_a:concept/knowledge-substrate",
      "type": "starts_with",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "example.merge:rel/federation-review-proof-starts-with-knowledge-substrate",
      "summary": "The review trail begins with Researcher A's local concept.",
      "asserted_by": "",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.researcher_a:concept/knowledge-substrate",
      "target": "example.researcher_b:concept/memory-substrate",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "example.merge:rel/knowledge-substrate-continues-to-memory-substrate",
      "summary": "The review path moves from the first local concept to the second without erasing either one.",
      "asserted_by": "",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.researcher_b:concept/memory-substrate",
      "target": "example.merge:concept/non-destructive-merge-review",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "example.merge:rel/memory-substrate-continues-to-non-destructive-merge-review",
      "summary": "The review path ends at the rule that both nodes stay distinct until an author approves a deeper merge.",
      "asserted_by": "",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.merge:concept/non-destructive-merge-review",
      "target": "example.researcher_a:concept/knowledge-substrate",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 2,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "example.merge:rel/non-destructive-merge-review-explains-knowledge-substrate",
      "summary": "The merge-review rule explains why Researcher A's local concept remains intact.",
      "asserted_by": "",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.merge:concept/non-destructive-merge-review",
      "target": "example.researcher_b:concept/memory-substrate",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 2,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "example.merge:rel/non-destructive-merge-review-explains-memory-substrate",
      "summary": "The merge-review rule explains why Researcher B's local concept remains intact.",
      "asserted_by": "",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:concept/associative-trails",
      "target": "example.minimal:concept/knowledge-substrate",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/associative-trails-context-for-substrate",
      "summary": "Associative trails provide historical and conceptual context for the knowledge substrate concept.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "interpretive",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:claim/substrate-is-structure",
      "target": "example.minimal:concept/knowledge-substrate",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/claim-defines-concept",
      "summary": "The claim gives the defining explanation of what a knowledge substrate is.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "interpretive",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:concept/knowledge-substrate",
      "target": "example.minimal:claim/substrate-is-structure",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/concept-has-claim",
      "summary": "The concept is built from the claim rather than floating as an unsupported idea.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "high",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:essay/relationship-navigation-intro",
      "target": "example.minimal:fragment/as-we-may-think-0004",
      "type": "transcludes",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/essay-transcludes-fragment",
      "summary": "The essay includes the source fragment by stable reference instead of duplicating it.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "high",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:fragment/as-we-may-think-0004",
      "target": "example.minimal:source/as-we-may-think",
      "type": "derived_from",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/fragment-derived-from-source",
      "summary": "The fragment node is derived from a stable addressable portion of the source node.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "high",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:knowledge_gap/missing-relationship-evidence",
      "target": "example.minimal:source/as-we-may-think",
      "type": "requires_source",
      "color": "#06b6d4",
      "inverse_color": "#a5f3fc",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/gap-requires-source",
      "summary": "The knowledge gap points to source evidence that may help resolve it.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "curatorial",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:person/example-maintainer",
      "target": "example.minimal:essay/relationship-navigation-intro",
      "type": "created",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/maintainer-created-intro-essay",
      "summary": "The example maintainer created the short introductory essay used to demonstrate transclusion.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "high",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:question/why-relationships-matter",
      "target": "example.minimal:communication/minimal-substrate-discussion",
      "type": "asked_in",
      "color": "#38bdf8",
      "inverse_color": "#bae6fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/question-asked-in-communication",
      "summary": "The question is modeled as being asked inside a communication context.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "high",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:question/why-relationships-matter",
      "target": "example.minimal:knowledge_gap/missing-relationship-evidence",
      "type": "raises",
      "color": "#2dd4bf",
      "inverse_color": "#99f6e4",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/question-raises-gap",
      "summary": "The question makes a missing-evidence gap explicit instead of leaving it implicit.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "curatorial",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:response/relationships-preserve-context",
      "target": "example.minimal:communication/minimal-substrate-discussion",
      "type": "answered_in",
      "color": "#38bdf8",
      "inverse_color": "#bae6fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/response-answered-in-communication",
      "summary": "The response belongs to the same communication context as the question.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "high",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:response/relationships-preserve-context",
      "target": "example.minimal:question/why-relationships-matter",
      "type": "answers",
      "color": "#2dd4bf",
      "inverse_color": "#99f6e4",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/response-answers-question",
      "summary": "The response answers the question by connecting relationship structure to preserved context.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "interpretive",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:response/relationships-preserve-context",
      "target": "example.minimal:claim/substrate-is-structure",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/response-supports-claim",
      "summary": "The response supports the existing claim that substrate structure changes epistemic capability.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "interpretive",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:source/as-we-may-think",
      "target": "example.minimal:concept/associative-trails",
      "type": "discusses",
      "color": "#38bdf8",
      "inverse_color": "#bae6fd",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/source-discusses-associative-trails",
      "summary": "The source discusses associative trails as a way to navigate knowledge by meaningful connections.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "high",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:source/as-we-may-think",
      "target": "example.minimal:claim/substrate-is-structure",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/source-supports-claim",
      "summary": "Bush's essay is used as source evidence for the claim that substrate structure matters.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "interpretive",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:concept/knowledge-substrate",
      "target": "example.minimal:media/xananode-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/substrate-has-primary-media",
      "summary": "The minimal substrate uses the canonical XanaNode icon as its primary branding media.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-06-19T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "high",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:source/as-we-may-think",
      "target": "example.minimal:claim/substrate-is-structure",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/trail-continues-to-claim",
      "summary": "The trail continues from source evidence to the claim derived from it.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "curatorial",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:claim/substrate-is-structure",
      "target": "example.minimal:concept/knowledge-substrate",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/trail-continues-to-concept",
      "summary": "The trail continues from the defining claim to the concept it helps construct.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "curatorial",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:trail/start-here",
      "target": "example.minimal:concept/associative-trails",
      "type": "features",
      "color": "#ec4899",
      "inverse_color": "#f9a8d4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/trail-includes-associative-trails",
      "summary": "The trail features the background concept that explains why relationship-based navigation matters.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "curatorial",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:trail/start-here",
      "target": "example.minimal:source/as-we-may-think",
      "type": "starts_with",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "example.minimal:rel/trail-starts-with-source",
      "summary": "The reading trail starts with the source.",
      "asserted_by": "example.minimal:person/example-maintainer",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "curatorial",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.researcher_a:concept/knowledge-substrate",
      "target": "example.researcher_b:concept/memory-substrate",
      "type": "possible_match",
      "color": "#f472b6",
      "inverse_color": "#fbcfe8",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "example.researcher_a:rel/knowledge-substrate-possible-match-memory-substrate",
      "summary": "Researcher A marks Researcher B's memory-substrate concept as a possible match without collapsing identity.",
      "asserted_by": "example.researcher_a:person/researcher-a",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "0.78",
      "external": true,
      "target_substrate": "example.researcher_b"
    },
    {
      "source": "example.researcher_b:concept/memory-substrate",
      "target": "example.researcher_a:concept/knowledge-substrate",
      "type": "possible_match",
      "color": "#f472b6",
      "inverse_color": "#fbcfe8",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "example.researcher_b:rel/memory-substrate-possible-match-knowledge-substrate",
      "summary": "Researcher B returns the possible-match mapping instead of declaring a final identity merge.",
      "asserted_by": "example.researcher_b:person/researcher-b",
      "asserted_at": "2026-01-01T00:00:00Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "0.78",
      "external": true,
      "target_substrate": "example.researcher_a"
    },
    {
      "source": "xananode.canonical:source/apache-2-0-license",
      "target": "xananode.canonical:concept/permissive-open-source-license",
      "type": "example_of",
      "color": "#7c3aed",
      "inverse_color": "#ddd6fe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/apache-2-0-example-of-permissive-license",
      "summary": "Apache-2.0 is an example of a permissive open source license.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/xananode-license-policy",
      "target": "xananode.canonical:claim/schemas-validators-reference-code-apache-2-0",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/apache-claim-supported-by-policy",
      "summary": "The license policy supports the Apache-2.0 implementation artifact claim.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:event/xananode-canonical-pack-bootstrap",
      "target": "xananode.canonical:revision/canonical-pack-v0-1-0",
      "type": "created",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/bootstrap-created-revision",
      "summary": "The canonical pack bootstrap created the first bundled pack revision.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "2026-06-19T00:00:00.000Z",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:person/christian-siefen",
      "target": "xananode.canonical:media/xananode-icon",
      "type": "created",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/built-by-bots-created-icon",
      "summary": "Christian Siefen created the XanaNode icon asset.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/cc-by-4-0-license",
      "target": "xananode.canonical:concept/attribution-license",
      "type": "example_of",
      "color": "#7c3aed",
      "inverse_color": "#ddd6fe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/cc-by-example-of-attribution-license",
      "summary": "CC-BY 4.0 is an attribution license.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/cc-by-4-0-license",
      "target": "xananode.canonical:community/xananode-contributors",
      "type": "requires_attribution",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/cc-by-requires-attribution-to-contributors",
      "summary": "CC-BY 4.0 requires attribution to the XanaNode contributors for protocol documentation reuse.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/cc0-1-0-public-domain-dedication",
      "target": "xananode.canonical:concept/open-license",
      "type": "example_of",
      "color": "#7c3aed",
      "inverse_color": "#ddd6fe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/cc0-example-of-open-license",
      "summary": "CC0 is an open public-domain dedication pattern.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:person/christian-siefen",
      "target": "xananode.canonical:concept/xananode",
      "type": "authored",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/christian-authored-xananode",
      "summary": "Christian Siefen authored the canonical XanaNode substrate identity.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:person/christian-siefen",
      "target": "xananode.canonical:essay/xananode-compared-to-networked-notes-tools",
      "type": "created",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/christian-created-comparison-essay",
      "summary": "Christian Siefen authored the comparison essay that places XanaNode alongside networked notes tools and traces the deeper path back through Hyperland.",
      "asserted_by": "",
      "asserted_at": "2026-06-27T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:person/christian-siefen",
      "target": "xananode.canonical:source/xananode-kernel-for-human-thought-draft",
      "type": "created",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/christian-created-kernel-thought-draft",
      "summary": "Christian Siefen authored the raw Linux-kernel comparison draft preserved in the canonical substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:person/christian-siefen",
      "target": "xananode.canonical:essay/xananode-as-a-kernel-for-human-thought",
      "type": "created",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/christian-created-kernel-thought-essay",
      "summary": "Christian Siefen authored the canonical essay that reframes XanaNode as a kernel for knowledge.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/canonical-assembles-federated-stack-layer-substrates",
      "target": "xananode.canonical:concept/self-federating-stack",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/claim-canonical-assembles-federated-stack-layer-substrates-supports-concept-self-federating-stack",
      "summary": "This claim supports the self-federating stack concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/canonical-assembles-federated-stack-layer-substrates",
      "target": "xananode.canonical:essay/what-is-xananode",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/claim-canonical-assembles-federated-stack-layer-substrates-supports-essay-what-is-xananode",
      "summary": "This claim supports the main explanatory essay about XanaNode.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/canonical-distinguishes-embedded-examples-from-federated-sources",
      "target": "xananode.canonical:concept/embedded-example-namespaces",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/claim-canonical-distinguishes-embedded-examples-from-federated-sources-supports-concept-embedded-example-namespaces",
      "summary": "This claim supports the concept of embedded example namespaces.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/canonical-distinguishes-embedded-examples-from-federated-sources",
      "target": "xananode.canonical:concept/self-federating-stack",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/claim-canonical-distinguishes-embedded-examples-from-federated-sources-supports-concept-self-federating-stack",
      "summary": "This claim also supports the self-federating stack concept by clarifying what is embedded versus externally federated.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/canonical-distinguishes-embedded-examples-from-federated-sources",
      "target": "xananode.canonical:essay/what-is-xananode",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/claim-canonical-distinguishes-embedded-examples-from-federated-sources-supports-essay-what-is-xananode",
      "summary": "This claim helps the main explanatory essay distinguish bundled examples from real federated layer sources.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/copy-paste-breaks-lineage",
      "target": "xananode.canonical:concept/trifecta-of-computing-failure",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/claim-copy-paste-defines-trifecta",
      "summary": "Broken lineage through duplication defines one part of the computing failure XanaNode is meant to address.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/documents-collapse-knowledge-structure",
      "target": "xananode.canonical:concept/trifecta-of-computing-failure",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/claim-document-boundaries-defines-trifecta",
      "summary": "Document-centric knowledge boundaries define one part of the computing failure XanaNode is meant to address.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/fragments-can-address-ranges-timecodes-and-media-regions",
      "target": "xananode.canonical:claim/copy-paste-breaks-lineage",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/claim-fragments-can-address-ranges-timecodes-and-media-regions-explains-claim-copy-paste-breaks-lineage",
      "summary": "Fine-grained fragment addressing helps explain one answer to the copy-paste lineage problem.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/fragments-can-address-ranges-timecodes-and-media-regions",
      "target": "xananode.canonical:concept/addressable-fragment-selectors",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/claim-fragments-can-address-ranges-timecodes-and-media-regions-supports-concept-addressable-fragment-selectors",
      "summary": "This claim supports the fragment selector concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/local-first-without-federation-is-not-enough",
      "target": "xananode.canonical:concept/trifecta-of-computing-failure",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/claim-local-first-defines-trifecta",
      "summary": "The lack of a federation protocol defines one part of the computing failure XanaNode is meant to address.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/possible-match-preserves-local-identity-until-review",
      "target": "xananode.canonical:concept/non-destructive-merge-review",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/claim-possible-match-preserves-local-identity-until-review-supports-concept-non-destructive-merge-review",
      "summary": "This claim supports the concept of non-destructive merge review.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/possible-match-preserves-local-identity-until-review",
      "target": "xananode.canonical:concept/self-federating-stack",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/claim-possible-match-preserves-local-identity-until-review-supports-concept-self-federating-stack",
      "summary": "This claim supports the broader self-federating stack concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/stack-demonstrates-federation-through-layer-substrates",
      "target": "xananode.canonical:source/federated-substrate-xananode.protocol",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/claim-stack-demonstrates-federation-through-layer-substrates-requires-source-federated-substrate-xananode.protocol",
      "summary": "The proof begins with the protocol substrate as the shared contract.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/stack-demonstrates-federation-through-layer-substrates",
      "target": "xananode.canonical:concept/self-federating-stack",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/claim-stack-demonstrates-federation-through-layer-substrates-supports-concept-self-federating-stack",
      "summary": "This claim supports the self-federating stack concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/stack-demonstrates-federation-through-layer-substrates",
      "target": "xananode.canonical:concept/xananode",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/claim-stack-demonstrates-federation-through-layer-substrates-supports-concept-xananode",
      "summary": "This claim says the stack itself is a live example of XanaNode's federation model.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/schemas-validators-reference-code-apache-2-0",
      "target": "xananode.canonical:source/apache-2-0-license",
      "type": "licensed_under",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/code-schemas-licensed-under-apache",
      "summary": "XanaNode schemas, validators, and reference code are licensed under Apache-2.0.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:essay/xananode-compared-to-networked-notes-tools",
      "target": "xananode.canonical:concept/trifecta-of-computing-failure",
      "type": "investigates",
      "color": "#2dd4bf",
      "inverse_color": "#99f6e4",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/comparison-essay-investigates-trifecta",
      "summary": "The comparison essay investigates the same computing failure pattern through contemporary note-linking tools.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:essay/xananode-compared-to-networked-notes-tools",
      "target": "xananode.canonical:concept/xananode",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/comparison-essay-related-to-xananode",
      "summary": "The comparison essay explains XanaNode by contrasting it with current networked notes tools.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-implementation-compatibility.md",
      "target": "xananode.canonical:claim/implementations-identify-compatibility",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/compatibility-claim-supported-by-spec",
      "summary": "The implementation compatibility spec supports the compatibility identification claim.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-implementation-compatibility.md",
      "target": "xananode.canonical:concept/compatibility-attribution",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/compatibility-spec-defines-compatibility-attribution",
      "summary": "The implementation compatibility spec defines compatibility attribution.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/addressable-fragment-selectors",
      "target": "xananode.canonical:concept/xananode",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-addressable-fragment-selectors-explains-concept-xananode",
      "summary": "Addressable fragment selectors explain how XanaNode supports fine-grained reuse across many media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/embedded-example-namespaces",
      "target": "xananode.canonical:concept/self-federating-stack",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-embedded-example-namespaces-supports-concept-self-federating-stack",
      "summary": "Embedded example namespaces support the self-federating stack concept by showing bundled teaching-scale federation.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.researcher_a:concept/knowledge-substrate",
      "target": "xananode.canonical:concept/embedded-example-namespaces",
      "type": "demonstrates",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-knowledge-substrate-demonstrates-concept-embedded-example-namespaces",
      "summary": "Researcher A demonstrates an embedded example namespace used for federation patterns.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.researcher_a:concept/knowledge-substrate",
      "target": "example.researcher_b:concept/memory-substrate",
      "type": "possible_match",
      "color": "#f472b6",
      "inverse_color": "#fbcfe8",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-knowledge-substrate-possible_match-concept-memory-substrate",
      "summary": "The federation example records a possible match between the two local concepts without collapsing them.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.researcher_b:concept/memory-substrate",
      "target": "xananode.canonical:concept/embedded-example-namespaces",
      "type": "demonstrates",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-memory-substrate-demonstrates-concept-embedded-example-namespaces",
      "summary": "Researcher B demonstrates an embedded example namespace used for federation patterns.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.researcher_b:concept/memory-substrate",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-merge-report.json",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-memory-substrate-documents-schema-protocol-artifact-examples-federation-example-merge-report.json",
      "summary": "The merge report records the reviewable mapping between the two local concepts.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/non-destructive-merge-review",
      "target": "xananode.canonical:concept/self-federating-stack",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-non-destructive-merge-review-explains-concept-self-federating-stack",
      "summary": "Non-destructive merge review explains how a self-federating stack can compare and combine substrates without forced collapse.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/protocol-artifacts",
      "target": "xananode.canonical:schema/protocol-artifact-contexts",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-protocol-artifacts-contains-schema-protocol-artifact-contexts-raw-group-contexts",
      "summary": "Protocol Artifacts includes the contexts artifact group.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/protocol-artifacts",
      "target": "xananode.canonical:schema/protocol-artifact-examples",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-protocol-artifacts-contains-schema-protocol-artifact-examples-raw-group-examples",
      "summary": "Protocol Artifacts includes the examples artifact group.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/protocol-artifacts",
      "target": "xananode.canonical:schema/protocol-artifact-governance",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-protocol-artifacts-contains-schema-protocol-artifact-governance-raw-group-governance",
      "summary": "Protocol Artifacts includes the governance artifact group.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/protocol-artifacts",
      "target": "xananode.canonical:schema/protocol-artifact-proposals",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-protocol-artifacts-contains-schema-protocol-artifact-proposals-raw-group-proposals",
      "summary": "Protocol Artifacts includes the proposals artifact group.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/protocol-artifacts",
      "target": "xananode.canonical:schema/protocol-artifact-registry",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-protocol-artifacts-contains-schema-protocol-artifact-registry-raw-group-registry",
      "summary": "Protocol Artifacts includes the registry artifact group.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/protocol-artifacts",
      "target": "xananode.canonical:schema/protocol-artifact-root",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-protocol-artifacts-contains-schema-protocol-artifact-root-raw-group-root",
      "summary": "Protocol Artifacts includes the root protocol files group.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/protocol-artifacts",
      "target": "xananode.canonical:schema/protocol-artifact-schemas",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-protocol-artifacts-contains-schema-protocol-artifact-schemas-raw-group-schemas",
      "summary": "Protocol Artifacts includes the schemas artifact group.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/protocol-artifacts",
      "target": "xananode.canonical:schema/protocol-artifact-specs",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-protocol-artifacts-contains-schema-protocol-artifact-specs-raw-group-specs",
      "summary": "Protocol Artifacts includes the specs artifact group.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/self-federating-stack",
      "target": "xananode.canonical:concept/xananode",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-self-federating-stack-explains-concept-xananode",
      "summary": "The self-federating stack concept explains XanaNode at the architectural level.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/self-federating-stack",
      "target": "xananode.canonical:schema/federation-targets-registry",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-self-federating-stack-requires-schema-federation-targets-registry",
      "summary": "The self-federating stack depends on explicit federation target records.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/self-federating-stack",
      "target": "xananode.canonical:schema/known-implementations-registry",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-self-federating-stack-requires-schema-known-implementations-registry",
      "summary": "The self-federating stack also depends on implementation registry records.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/self-federating-stack",
      "target": "xananode.canonical:concept/substrate-projection-layer",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/concept-self-federating-stack-supports-concept-substrate-projection-layer",
      "summary": "The self-federating stack concept supports the idea that projection layers are only one part of a wider substrate ecosystem.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "enables",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/core-builds-protocol-artifacts",
      "summary": "Core builds and validates the protocol artifacts consumed by projections and workspaces.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/repository-kingc95-xananode-core-sdk",
      "target": "xananode.canonical:project/xananode-core-sdk",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/core-documented-by-repository",
      "summary": "The public Core SDK repository documents the Core SDK project.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:project/xananode-protocol",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/core-implements-protocol",
      "summary": "Core is a renderer-independent implementation of the XanaNode protocol.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:technology/nodejs",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/core-uses-nodejs",
      "summary": "Core currently uses Node.js for the JavaScript SDK and CLI.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/xananode-license-policy",
      "target": "xananode.canonical:claim/protocol-docs-licensed-cc-by-4-0",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/docs-claim-supported-by-policy",
      "summary": "The license policy supports the documentation license claim.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:essay/xananode-as-a-kernel-for-human-thought",
      "target": "xananode.canonical:concept/xananode",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/essay-kernel-thought-explains-xananode",
      "summary": "The essay explains XanaNode through the Linux kernel analogy.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:essay/xananode-as-a-kernel-for-human-thought",
      "target": "xananode.canonical:concept/trifecta-of-computing-failure",
      "type": "investigates",
      "color": "#2dd4bf",
      "inverse_color": "#99f6e4",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/essay-kernel-thought-investigates-trifecta",
      "summary": "The essay investigates the same three-part failure from the angle of open infrastructure.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:essay/xananode-as-a-kernel-for-human-thought",
      "target": "xananode.canonical:concept/substrate-projection-layer",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/essay-kernel-thought-related-to-projection-layer",
      "summary": "The essay links the Linux distribution model to XanaNode projection layers.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:essay/xananode-as-a-kernel-for-human-thought",
      "target": "xananode.canonical:fragment/xananode-kernel-thought-0001",
      "type": "transcludes",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/essay-kernel-thought-transcludes-fragment-0001",
      "summary": "The essay transcludes the shared-plumbing fragment by stable reference.",
      "asserted_by": "xananode.canonical:person/christian-siefen",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "high",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:essay/xananode-as-a-kernel-for-human-thought",
      "target": "xananode.canonical:fragment/xananode-kernel-thought-0002",
      "type": "transcludes",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/essay-kernel-thought-transcludes-fragment-0002",
      "summary": "The essay transcludes the distributions-versus-projections fragment by stable reference.",
      "asserted_by": "xananode.canonical:person/christian-siefen",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "high",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:essay/xananode-as-a-kernel-for-human-thought",
      "target": "xananode.canonical:fragment/xananode-kernel-thought-0003",
      "type": "transcludes",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/essay-kernel-thought-transcludes-fragment-0003",
      "summary": "The essay transcludes the tool-hostage fragment by stable reference.",
      "asserted_by": "xananode.canonical:person/christian-siefen",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "high",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:essay/xananode-as-a-kernel-for-human-thought",
      "target": "xananode.canonical:fragment/xananode-kernel-thought-0004",
      "type": "transcludes",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/essay-kernel-thought-transcludes-fragment-0004",
      "summary": "The essay transcludes the federation fragment by stable reference.",
      "asserted_by": "xananode.canonical:person/christian-siefen",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "high",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/github-profile",
      "target": "xananode.canonical:person/christian-siefen",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/github-profile-documents-christian-siefen",
      "summary": "The kingc95 GitHub profile is the public development surface connected to Christian Siefen's XanaNode work.",
      "asserted_by": "",
      "asserted_at": "2026-06-27T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/github-profile",
      "target": "xananode.canonical:source/repository-kingc95-xananode-core-sdk",
      "type": "includes",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/github-profile-includes-core-repo",
      "summary": "The GitHub profile includes the public Core SDK repository.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/github-profile",
      "target": "xananode.canonical:source/xananode-hugo-repository",
      "type": "includes",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/github-profile-includes-hugo-repo",
      "summary": "The GitHub profile includes the public Hugo projection repository.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/github-profile",
      "target": "xananode.canonical:source/repository-kingc95-xananode",
      "type": "includes",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/github-profile-includes-protocol-repo",
      "summary": "The GitHub profile includes the public protocol repository.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/gpl-3-0-license",
      "target": "xananode.canonical:concept/software-license",
      "type": "example_of",
      "color": "#7c3aed",
      "inverse_color": "#ddd6fe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/gpl-example-of-copyleft-context",
      "summary": "GPL-3.0 is a software license included for comparison.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/xananode-hugo-repository",
      "target": "xananode.canonical:project/xananode-hugo-theme",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/hugo-documented-by-repository",
      "summary": "The public Hugo repository documents the Hugo projection project.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-hugo-theme",
      "target": "xananode.canonical:concept/substrate-projection-layer",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/hugo-implements-projection-layer",
      "summary": "The XanaNode Hugo theme is one static website implementation of a substrate projection layer.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-hugo-theme",
      "target": "xananode.canonical:project/xananode-core-sdk",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/hugo-uses-core",
      "summary": "The Hugo projection uses Core rather than owning protocol validation logic.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-hugo-theme",
      "target": "xananode.canonical:technology/cytoscape-js",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/hugo-uses-cytoscape",
      "summary": "The XanaNode Hugo projection uses Cytoscape.js for interactive graph rendering.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-hugo-theme",
      "target": "xananode.canonical:technology/hugo",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/hugo-uses-hugo",
      "summary": "The XanaNode Hugo projection uses Hugo as its static site generator.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/xananode-icon",
      "target": "xananode.canonical:concept/xananode",
      "type": "depicts",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/icon-depicts-xananode",
      "summary": "The XanaNode icon depicts the XanaNode concept and project identity.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:fragment/xananode-kernel-thought-0001",
      "target": "xananode.canonical:source/xananode-kernel-for-human-thought-draft",
      "type": "derived_from",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/kernel-fragment-0001-derived-from-source",
      "summary": "Fragment 0001 is derived from the authored kernel comparison draft.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:fragment/xananode-kernel-thought-0001",
      "target": "xananode.canonical:claim/xananode-is-an-open-kernel-for-knowledge",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/kernel-fragment-0001-supports-open-kernel-claim",
      "summary": "The shared-plumbing fragment supports the claim that XanaNode should function as an open kernel for knowledge.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:fragment/xananode-kernel-thought-0002",
      "target": "xananode.canonical:source/xananode-kernel-for-human-thought-draft",
      "type": "derived_from",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/kernel-fragment-0002-derived-from-source",
      "summary": "Fragment 0002 is derived from the authored kernel comparison draft.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:fragment/xananode-kernel-thought-0002",
      "target": "xananode.canonical:claim/projections-are-lenses-over-a-stable-substrate",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/kernel-fragment-0002-supports-projection-lenses-claim",
      "summary": "The distributions-versus-projections fragment supports the claim that projections are lenses over a stable substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:fragment/xananode-kernel-thought-0003",
      "target": "xananode.canonical:source/xananode-kernel-for-human-thought-draft",
      "type": "derived_from",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/kernel-fragment-0003-derived-from-source",
      "summary": "Fragment 0003 is derived from the authored kernel comparison draft.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:fragment/xananode-kernel-thought-0003",
      "target": "xananode.canonical:claim/local-first-without-federation-is-not-enough",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/kernel-fragment-0003-supports-local-first-federation-claim",
      "summary": "The tool-hostage fragment supports the claim that local-first alone is not enough without a federated protocol layer.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:fragment/xananode-kernel-thought-0004",
      "target": "xananode.canonical:source/xananode-kernel-for-human-thought-draft",
      "type": "derived_from",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/kernel-fragment-0004-derived-from-source",
      "summary": "Fragment 0004 is derived from the authored kernel comparison draft.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:fragment/xananode-kernel-thought-0004",
      "target": "xananode.canonical:claim/xananode-is-an-open-kernel-for-knowledge",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/kernel-fragment-0004-supports-open-kernel-claim",
      "summary": "The federation fragment supports the claim that XanaNode should become an open substrate ecosystem rather than a single product.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/xananode-license-policy",
      "target": "xananode.canonical:concept/licensing",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/license-policy-defines-licensing",
      "summary": "The XanaNode license policy defines the project licensing split.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/licensing",
      "target": "xananode.canonical:concept/open-license",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/licensing-defines-open-license",
      "summary": "Licensing defines the open license concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/protocol-artifact-examples-minimal-substrate-assets-branding-xananode-icon.svg",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-protocol-artifact-examples-minimal-substrate-assets-branding-xananode-icon.svg-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-assets-branding-xananode-icon.svg",
      "summary": "Examples / Minimal Substrate / Assets / Branding / XanaNode Icon Svg belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/protocol-artifact-media-images-xananode-icon.svg",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-protocol-artifact-media-images-xananode-icon.svg-documents-concept-protocol-artifacts-raw-file-docs-media-images-xananode-icon.svg",
      "summary": "Media / Images / XanaNode Icon Svg belongs to the published XanaNode protocol media set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-attention-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-attention",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-attention-projection-icon-represents-schema-relationship-category-attention",
      "summary": "This media asset represents the attention relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-causation-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-causation",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-causation-projection-icon-represents-schema-relationship-category-causation",
      "summary": "This media asset represents the causation relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-citation-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-citation",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-citation-projection-icon-represents-schema-relationship-category-citation",
      "summary": "This media asset represents the citation relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-claim_structure-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-claim_structure",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-claim_structure-projection-icon-represents-schema-relationship-category-claim_structure",
      "summary": "This media asset represents the claim_structure relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-cognition-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-cognition",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-cognition-projection-icon-represents-schema-relationship-category-cognition",
      "summary": "This media asset represents the cognition relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-communication-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-communication",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-communication-projection-icon-represents-schema-relationship-category-communication",
      "summary": "This media asset represents the communication relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-comparison-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-comparison",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-comparison-projection-icon-represents-schema-relationship-category-comparison",
      "summary": "This media asset represents the comparison relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-composition-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-composition",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-composition-projection-icon-represents-schema-relationship-category-composition",
      "summary": "This media asset represents the composition relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-creation-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-creation",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-creation-projection-icon-represents-schema-relationship-category-creation",
      "summary": "This media asset represents the creation relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-definition-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-definition",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-definition-projection-icon-represents-schema-relationship-category-definition",
      "summary": "This media asset represents the definition relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-discovery-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-discovery",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-discovery-projection-icon-represents-schema-relationship-category-discovery",
      "summary": "This media asset represents the discovery relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-evidence-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-evidence",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-evidence-projection-icon-represents-schema-relationship-category-evidence",
      "summary": "This media asset represents the evidence relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-evolution-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-evolution",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-evolution-projection-icon-represents-schema-relationship-category-evolution",
      "summary": "This media asset represents the evolution relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-explanation-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-explanation",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-explanation-projection-icon-represents-schema-relationship-category-explanation",
      "summary": "This media asset represents the explanation relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-generic-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-generic",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-generic-projection-icon-represents-schema-relationship-category-generic",
      "summary": "This media asset represents the generic relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-governance-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-governance",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-governance-projection-icon-represents-schema-relationship-category-governance",
      "summary": "This media asset represents the governance relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-historical-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-historical",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-historical-projection-icon-represents-schema-relationship-category-historical",
      "summary": "This media asset represents the historical relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-identity-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-identity",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-identity-projection-icon-represents-schema-relationship-category-identity",
      "summary": "This media asset represents the identity relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-influence-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-influence",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-influence-projection-icon-represents-schema-relationship-category-influence",
      "summary": "This media asset represents the influence relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-inquiry-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-inquiry",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-inquiry-projection-icon-represents-schema-relationship-category-inquiry",
      "summary": "This media asset represents the inquiry relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-knowledge_workflow-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-knowledge_workflow",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-knowledge_workflow-projection-icon-represents-schema-relationship-category-knowledge_workflow",
      "summary": "This media asset represents the knowledge_workflow relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-lineage-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-lineage",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-lineage-projection-icon-represents-schema-relationship-category-lineage",
      "summary": "This media asset represents the lineage relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-location-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-location",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-location-projection-icon-represents-schema-relationship-category-location",
      "summary": "This media asset represents the location relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-participation-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-participation",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-participation-projection-icon-represents-schema-relationship-category-participation",
      "summary": "This media asset represents the participation relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-reasoning-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-reasoning",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-reasoning-projection-icon-represents-schema-relationship-category-reasoning",
      "summary": "This media asset represents the reasoning relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-representation-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-representation",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-representation-projection-icon-represents-schema-relationship-category-representation",
      "summary": "This media asset represents the representation relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-research_workflow-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-research_workflow",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-research_workflow-projection-icon-represents-schema-relationship-category-research_workflow",
      "summary": "This media asset represents the research_workflow relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-revision-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-revision",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-revision-projection-icon-represents-schema-relationship-category-revision",
      "summary": "This media asset represents the revision relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-schema_mapping-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-schema_mapping",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-schema_mapping-projection-icon-represents-schema-relationship-category-schema_mapping",
      "summary": "This media asset represents the schema_mapping relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-social-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-social",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-social-projection-icon-represents-schema-relationship-category-social",
      "summary": "This media asset represents the social relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-temporal-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-temporal",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-temporal-projection-icon-represents-schema-relationship-category-temporal",
      "summary": "This media asset represents the temporal relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/relationship-category-uncertainty-projection-icon",
      "target": "xananode.canonical:schema/relationship-category-uncertainty",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/media-relationship-category-uncertainty-projection-icon-represents-schema-relationship-category-uncertainty",
      "summary": "This media asset represents the uncertainty relationship category in projections.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/mit-license",
      "target": "xananode.canonical:concept/permissive-open-source-license",
      "type": "example_of",
      "color": "#7c3aed",
      "inverse_color": "#ddd6fe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/mit-example-of-permissive-license",
      "summary": "MIT is an example of a permissive open source license.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/xananode-notice",
      "target": "xananode.canonical:concept/licensing",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/notice-documents-licensing",
      "summary": "The NOTICE file documents XanaNode licensing and trademark attribution.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/xananode-is-an-open-kernel-for-knowledge",
      "target": "xananode.canonical:concept/xananode",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/open-kernel-claim-defines-xananode",
      "summary": "The kernel analogy helps define what XanaNode is trying to become in the stack.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/open-license",
      "target": "xananode.canonical:concept/content-license",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/open-license-includes-content-license",
      "summary": "Open licensing includes content license patterns.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/open-license",
      "target": "xananode.canonical:concept/software-license",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/open-license-includes-software-license",
      "summary": "Open licensing includes software license patterns.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:concept/substrate-projection-layer",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-core-sdk-implements-concept-substrate-projection-layer",
      "summary": "XanaNode Core SDK implements a XanaNode projection or tooling role.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-manifest.schema.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-core-sdk-uses-schema-protocol-artifact-schemas-substrate-manifest.schema.json-artifact-0",
      "summary": "XanaNode Core SDK uses schemas/substrate-manifest.schema.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-node.schema.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-core-sdk-uses-schema-protocol-artifact-schemas-substrate-node.schema.json-artifact-1",
      "summary": "XanaNode Core SDK uses schemas/substrate-node.schema.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-relationships.schema.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-core-sdk-uses-schema-protocol-artifact-schemas-substrate-relationships.schema.json-artifact-2",
      "summary": "XanaNode Core SDK uses schemas/substrate-relationships.schema.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-xananode-node-types.v0.3.0.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-core-sdk-uses-schema-protocol-artifact-schemas-xananode-node-types.v0.3.0.json-artifact-3",
      "summary": "XanaNode Core SDK uses schemas/xananode-node-types.v0.3.0.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-xananode-relationship-types.v0.5.0.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-core-sdk-uses-schema-protocol-artifact-schemas-xananode-relationship-types.v0.5.0.json-artifact-4",
      "summary": "XanaNode Core SDK uses schemas/xananode-relationship-types.v0.5.0.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:technology/xananode-core-sdk-component-node-files",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-core-sdk-uses-technology-xananode-core-sdk-component-node-files-component-1",
      "summary": "XanaNode Core SDK uses node files.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:technology/xananode-core-sdk-component-protocol-schemas",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-core-sdk-uses-technology-xananode-core-sdk-component-protocol-schemas-component-0",
      "summary": "XanaNode Core SDK uses protocol schemas.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:technology/xananode-core-sdk-component-relationship-files",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-core-sdk-uses-technology-xananode-core-sdk-component-relationship-files-component-2",
      "summary": "XanaNode Core SDK uses relationship files.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:technology/xananode-core-sdk-component-substrate-manifests",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-core-sdk-uses-technology-xananode-core-sdk-component-substrate-manifests-component-3",
      "summary": "XanaNode Core SDK uses substrate manifests.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:technology/xananode-core-sdk-component-substrate-packs",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-core-sdk-uses-technology-xananode-core-sdk-component-substrate-packs-component-4",
      "summary": "XanaNode Core SDK uses substrate packs.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-hugo-theme",
      "target": "xananode.canonical:concept/substrate-projection-layer",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-hugo-theme-implements-concept-substrate-projection-layer",
      "summary": "XanaNode Hugo Theme implements a XanaNode projection or tooling role.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-hugo-theme",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-hugo-theme-uses-schema-protocol-artifact-examples-minimal-substrate-artifact-3",
      "summary": "XanaNode Hugo Theme uses examples/minimal-substrate/.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-hugo-theme",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-manifest.schema.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-hugo-theme-uses-schema-protocol-artifact-schemas-substrate-manifest.schema.json-artifact-0",
      "summary": "XanaNode Hugo Theme uses schemas/substrate-manifest.schema.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-hugo-theme",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-node.schema.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-hugo-theme-uses-schema-protocol-artifact-schemas-substrate-node.schema.json-artifact-1",
      "summary": "XanaNode Hugo Theme uses schemas/substrate-node.schema.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-hugo-theme",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-relationships.schema.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-hugo-theme-uses-schema-protocol-artifact-schemas-substrate-relationships.schema.json-artifact-2",
      "summary": "XanaNode Hugo Theme uses schemas/substrate-relationships.schema.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-hugo-theme",
      "target": "xananode.canonical:technology/xananode-hugo-theme-component-node-files",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-hugo-theme-uses-technology-xananode-hugo-theme-component-node-files-component-1",
      "summary": "XanaNode Hugo Theme uses node files.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-hugo-theme",
      "target": "xananode.canonical:technology/xananode-hugo-theme-component-relationship-files",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-hugo-theme-uses-technology-xananode-hugo-theme-component-relationship-files-component-2",
      "summary": "XanaNode Hugo Theme uses relationship files.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-hugo-theme",
      "target": "xananode.canonical:technology/xananode-hugo-theme-component-schema-registries",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-hugo-theme-uses-technology-xananode-hugo-theme-component-schema-registries-component-3",
      "summary": "XanaNode Hugo Theme uses schema registries.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-hugo-theme",
      "target": "xananode.canonical:technology/xananode-hugo-theme-component-substrate-manifests",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-hugo-theme-uses-technology-xananode-hugo-theme-component-substrate-manifests-component-0",
      "summary": "XanaNode Hugo Theme uses substrate manifests.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-mobile",
      "target": "xananode.canonical:concept/substrate-projection-layer",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-mobile-implements-concept-substrate-projection-layer",
      "summary": "XanaNode Mobile implements a XanaNode projection or tooling role.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-mobile",
      "target": "xananode.canonical:media/protocol-artifact-media-images-xananode-icon.svg",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-mobile-uses-media-protocol-artifact-media-images-xananode-icon.svg-artifact-4",
      "summary": "XanaNode Mobile uses media/images/xananode-icon.svg.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-mobile",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-author-profile.schema.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-mobile-uses-schema-protocol-artifact-schemas-author-profile.schema.json-artifact-0",
      "summary": "XanaNode Mobile uses schemas/author-profile.schema.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-mobile",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-manifest.schema.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-mobile-uses-schema-protocol-artifact-schemas-substrate-manifest.schema.json-artifact-1",
      "summary": "XanaNode Mobile uses schemas/substrate-manifest.schema.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-mobile",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-node.schema.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-mobile-uses-schema-protocol-artifact-schemas-substrate-node.schema.json-artifact-2",
      "summary": "XanaNode Mobile uses schemas/substrate-node.schema.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-mobile",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-relationships.schema.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-mobile-uses-schema-protocol-artifact-schemas-substrate-relationships.schema.json-artifact-3",
      "summary": "XanaNode Mobile uses schemas/substrate-relationships.schema.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-mobile",
      "target": "xananode.canonical:technology/xananode-mobile-component-.substrate-bundles",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-mobile-uses-technology-xananode-mobile-component-.substrate-bundles-component-4",
      "summary": "XanaNode Mobile uses .substrate bundles.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-mobile",
      "target": "xananode.canonical:technology/xananode-mobile-component-core-sdk-apis",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-mobile-uses-technology-xananode-mobile-component-core-sdk-apis-component-1",
      "summary": "XanaNode Mobile uses Core SDK APIs.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-mobile",
      "target": "xananode.canonical:technology/xananode-mobile-component-protocol-branding",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-mobile-uses-technology-xananode-mobile-component-protocol-branding-component-3",
      "summary": "XanaNode Mobile uses protocol branding.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-mobile",
      "target": "xananode.canonical:technology/xananode-mobile-component-protocol-registries",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-mobile-uses-technology-xananode-mobile-component-protocol-registries-component-2",
      "summary": "XanaNode Mobile uses protocol registries.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-mobile",
      "target": "xananode.canonical:technology/xananode-mobile-component-workspace-apis",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-mobile-uses-technology-xananode-mobile-component-workspace-apis-component-0",
      "summary": "XanaNode Mobile uses Workspace APIs.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:concept/substrate-projection-layer",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-protocol-implements-concept-substrate-projection-layer",
      "summary": "XanaNode Protocol implements a XanaNode projection or tooling role.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-protocol-uses-schema-protocol-artifact-examples-minimal-substrate-artifact-4",
      "summary": "XanaNode Protocol uses examples/minimal-substrate/.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/protocol-artifact-governance",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-protocol-uses-schema-protocol-artifact-governance-artifact-3",
      "summary": "XanaNode Protocol uses governance/.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/protocol-artifact-registry",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-protocol-uses-schema-protocol-artifact-registry-artifact-1",
      "summary": "XanaNode Protocol uses registry/.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/protocol-artifact-schemas",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-protocol-uses-schema-protocol-artifact-schemas-artifact-0",
      "summary": "XanaNode Protocol uses schemas/.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/protocol-artifact-specs",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-protocol-uses-schema-protocol-artifact-specs-artifact-2",
      "summary": "XanaNode Protocol uses specs/.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-studio",
      "target": "xananode.canonical:concept/substrate-projection-layer",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-studio-implements-concept-substrate-projection-layer",
      "summary": "XanaNode Studio implements a XanaNode projection or tooling role.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-studio",
      "target": "xananode.canonical:media/protocol-artifact-media-images-xananode-icon.svg",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-studio-uses-media-protocol-artifact-media-images-xananode-icon.svg-artifact-2",
      "summary": "XanaNode Studio uses media/images/xananode-icon.svg.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-studio",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-xananode-node-types.v0.3.0.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-studio-uses-schema-protocol-artifact-schemas-xananode-node-types.v0.3.0.json-artifact-0",
      "summary": "XanaNode Studio uses schemas/xananode-node-types.v0.3.0.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-studio",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-xananode-relationship-types.v0.5.0.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-studio-uses-schema-protocol-artifact-schemas-xananode-relationship-types.v0.5.0.json-artifact-1",
      "summary": "XanaNode Studio uses schemas/xananode-relationship-types.v0.5.0.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-studio",
      "target": "xananode.canonical:technology/xananode-studio-component-core-sdk-apis",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-studio-uses-technology-xananode-studio-component-core-sdk-apis-component-1",
      "summary": "XanaNode Studio uses Core SDK APIs.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-studio",
      "target": "xananode.canonical:technology/xananode-studio-component-protocol-branding",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-studio-uses-technology-xananode-studio-component-protocol-branding-component-3",
      "summary": "XanaNode Studio uses protocol branding.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-studio",
      "target": "xananode.canonical:technology/xananode-studio-component-protocol-registries",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-studio-uses-technology-xananode-studio-component-protocol-registries-component-2",
      "summary": "XanaNode Studio uses protocol registries.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-studio",
      "target": "xananode.canonical:technology/xananode-studio-component-workspace-apis",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-studio-uses-technology-xananode-studio-component-workspace-apis-component-0",
      "summary": "XanaNode Studio uses Workspace APIs.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-workspace",
      "target": "xananode.canonical:concept/substrate-projection-layer",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-workspace-implements-concept-substrate-projection-layer",
      "summary": "XanaNode Workspace implements a XanaNode projection or tooling role.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-workspace",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-author-profile.schema.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-workspace-uses-schema-protocol-artifact-schemas-author-profile.schema.json-artifact-0",
      "summary": "XanaNode Workspace uses schemas/author-profile.schema.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-workspace",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-manifest.schema.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-workspace-uses-schema-protocol-artifact-schemas-substrate-manifest.schema.json-artifact-1",
      "summary": "XanaNode Workspace uses schemas/substrate-manifest.schema.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-workspace",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-node.schema.json",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-workspace-uses-schema-protocol-artifact-schemas-substrate-node.schema.json-artifact-2",
      "summary": "XanaNode Workspace uses schemas/substrate-node.schema.json.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-workspace",
      "target": "xananode.canonical:technology/xananode-workspace-component-author-profiles",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-workspace-uses-technology-xananode-workspace-component-author-profiles-component-4",
      "summary": "XanaNode Workspace uses author profiles.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-workspace",
      "target": "xananode.canonical:technology/xananode-workspace-component-core-sdk-apis",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-workspace-uses-technology-xananode-workspace-component-core-sdk-apis-component-0",
      "summary": "XanaNode Workspace uses Core SDK APIs.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-workspace",
      "target": "xananode.canonical:technology/xananode-workspace-component-node-files",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-workspace-uses-technology-xananode-workspace-component-node-files-component-2",
      "summary": "XanaNode Workspace uses node files.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-workspace",
      "target": "xananode.canonical:technology/xananode-workspace-component-relationship-files",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-workspace-uses-technology-xananode-workspace-component-relationship-files-component-3",
      "summary": "XanaNode Workspace uses relationship files.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-workspace",
      "target": "xananode.canonical:technology/xananode-workspace-component-substrate-manifests",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/project-xananode-workspace-uses-technology-xananode-workspace-component-substrate-manifests-component-1",
      "summary": "XanaNode Workspace uses substrate manifests.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/projections-are-lenses-over-a-stable-substrate",
      "target": "xananode.canonical:concept/substrate-projection-layer",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/projection-lenses-claim-defines-projection-layer",
      "summary": "The claim defines why a projection layer is a lens rather than the substrate itself.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/protocol-artifacts",
      "target": "xananode.canonical:concept/substrate-projection-layer",
      "type": "enables",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-artifacts-enable-projection-layers",
      "summary": "Protocol artifacts let projection layers render a substrate without owning or rewriting the substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/canonical-schema-author-profile",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-contains-author-profile-schema",
      "summary": "The protocol contains the author profile schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/canonical-schema-compatibility-report",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-contains-compatibility-report-schema",
      "summary": "The protocol contains the compatibility report schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/canonical-schema-substrate-manifest",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-contains-manifest-schema",
      "summary": "The protocol contains the substrate manifest schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/canonical-schema-merge-report",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-contains-merge-report-schema",
      "summary": "The protocol contains the merge report schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/namespace-schema",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-contains-namespace-schema",
      "summary": "The protocol contains the namespace schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/canonical-schema-nanopublication",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-contains-nanopublication-schema",
      "summary": "The protocol contains the nanopublication schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/canonical-schema-substrate-node",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-contains-node-schema",
      "summary": "The protocol contains the substrate node schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/node-type-registry",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-contains-node-type-registry",
      "summary": "The protocol contains the node type registry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/property-registry-schema",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-contains-property-registry-schema",
      "summary": "The protocol contains the property registry schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/canonical-schema-substrate-relationships",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-contains-relationship-schema",
      "summary": "The protocol contains the substrate relationships schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/relationship-type-registry",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-contains-relationship-type-registry",
      "summary": "The protocol contains the relationship type registry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/ro-crate-metadata-schema",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-contains-ro-crate-schema",
      "summary": "The protocol contains the RO-Crate metadata schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:schema/canonical-schema-substrate-diff",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-contains-substrate-diff-schema",
      "summary": "The protocol contains the substrate diff schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:claim/protocol-docs-licensed-cc-by-4-0",
      "target": "xananode.canonical:source/cc-by-4-0-license",
      "type": "licensed_under",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-docs-licensed-under-cc-by",
      "summary": "XanaNode protocol documentation is licensed under CC-BY 4.0.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/repository-kingc95-xananode",
      "target": "xananode.canonical:project/xananode-protocol",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-documented-by-repository",
      "summary": "The public protocol repository documents the protocol project.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:source/xananode-license-policy",
      "type": "governed_by",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "solid",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-governed-by-license-policy",
      "summary": "The XanaNode Protocol project is governed by the XanaNode license policy.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:source/xananode-trademark-policy",
      "type": "governed_by",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "solid",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-governed-by-trademark-policy",
      "summary": "The XanaNode Protocol project is governed by the XanaNode trademark policy.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:technology/python",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-uses-python",
      "summary": "The protocol repository includes Python validation tooling alongside JSON Schema artifacts.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:media/xananode-android-chrome-192",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-uses-xananode-android-chrome-192",
      "summary": "XanaNode Protocol publishes XanaNode Android Chrome Icon 192x192 as a bundled branding asset.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:media/xananode-android-chrome-512",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-uses-xananode-android-chrome-512",
      "summary": "XanaNode Protocol publishes XanaNode Android Chrome Icon 512x512 as a bundled branding asset.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:media/xananode-apple-touch-icon",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-uses-xananode-apple-touch-icon",
      "summary": "XanaNode Protocol publishes XanaNode Apple Touch Icon as a bundled branding asset.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:media/xananode-favicon-16",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-uses-xananode-favicon-16",
      "summary": "XanaNode Protocol publishes XanaNode Favicon 16x16 as a bundled branding asset.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:media/xananode-favicon-32",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-uses-xananode-favicon-32",
      "summary": "XanaNode Protocol publishes XanaNode Favicon 32x32 as a bundled branding asset.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-protocol",
      "target": "xananode.canonical:media/xananode-favicon-ico",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/protocol-uses-xananode-favicon-ico",
      "summary": "XanaNode Protocol publishes XanaNode Favicon ICO as a bundled branding asset.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/how-do-i-use-xananode-myself",
      "target": "xananode.canonical:concept/xananode",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-how-do-i-use-xananode-myself-explains-concept-xananode-faq-0",
      "summary": "The FAQ explains how to begin using XanaNode.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/how-do-i-use-xananode-myself",
      "target": "xananode.canonical:project/xananode-core-sdk",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-how-do-i-use-xananode-myself-requires-project-xananode-core-sdk-faq-1",
      "summary": "Core provides validation and pack creation.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/how-do-i-use-xananode-myself",
      "target": "xananode.canonical:project/xananode-hugo-theme",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-how-do-i-use-xananode-myself-uses-project-xananode-hugo-theme-faq-2",
      "summary": "Hugo is one projection option.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/how-do-i-use-xananode-myself",
      "target": "xananode.canonical:project/xananode-mobile",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-how-do-i-use-xananode-myself-uses-project-xananode-mobile-faq-4",
      "summary": "Mobile is the field capture option.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/how-do-i-use-xananode-myself",
      "target": "xananode.canonical:project/xananode-studio",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-how-do-i-use-xananode-myself-uses-project-xananode-studio-faq-3",
      "summary": "Studio is the desktop authoring option.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/how-do-sharing-rules-work",
      "target": "xananode.canonical:schema/canonical-schema-substrate-manifest",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-how-do-sharing-rules-work-documents-schema-canonical-schema-substrate-manifest-faq-1",
      "summary": "The substrate manifest can carry default and selector-based sharing policy.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/how-do-sharing-rules-work",
      "target": "xananode.canonical:schema/canonical-schema-substrate-node",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-how-do-sharing-rules-work-documents-schema-canonical-schema-substrate-node-faq-0",
      "summary": "Node records can carry node-level sharing rules.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/how-do-sharing-rules-work",
      "target": "xananode.canonical:project/xananode-core-sdk",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-how-do-sharing-rules-work-requires-project-xananode-core-sdk-faq-2",
      "summary": "Core enforces sharing policy during pack building and exports.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/is-xananode-a-real-working-stack",
      "target": "xananode.canonical:concept/xananode",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-is-xananode-a-real-working-stack-explains-concept-xananode-faq-0",
      "summary": "This FAQ explains XanaNode as a working stack.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/is-xananode-a-real-working-stack",
      "target": "xananode.canonical:project/xananode-core-sdk",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-is-xananode-a-real-working-stack-requires-project-xananode-core-sdk-faq-2",
      "summary": "Core validates and builds protocol artifacts.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/is-xananode-a-real-working-stack",
      "target": "xananode.canonical:project/xananode-protocol",
      "type": "requires",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-is-xananode-a-real-working-stack-requires-project-xananode-protocol-faq-1",
      "summary": "The protocol defines the shared rules.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/is-xananode-a-real-working-stack",
      "target": "xananode.canonical:project/xananode-hugo-theme",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-is-xananode-a-real-working-stack-uses-project-xananode-hugo-theme-faq-3",
      "summary": "Hugo renders a public read-only projection.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/is-xananode-a-real-working-stack",
      "target": "xananode.canonical:project/xananode-mobile",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-is-xananode-a-real-working-stack-uses-project-xananode-mobile-faq-5",
      "summary": "Mobile provides capture-first intake and portable substrate handoff.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/is-xananode-a-real-working-stack",
      "target": "xananode.canonical:project/xananode-studio",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-is-xananode-a-real-working-stack-uses-project-xananode-studio-faq-4",
      "summary": "Studio provides local-first authoring.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/who-made-xananode",
      "target": "xananode.canonical:organization/built-by-bots",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-who-made-xananode-documents-organization-built-by-bots-faq-2",
      "summary": "Built By Bots remains in the canonical substrate as historical lineage context, not as the current public identity of XanaNode.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/who-made-xananode",
      "target": "xananode.canonical:person/christian-siefen",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-who-made-xananode-documents-person-christian-siefen-faq-1",
      "summary": "Christian Siefen is the human author of the project substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/who-made-xananode",
      "target": "xananode.canonical:concept/xananode",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-who-made-xananode-explains-concept-xananode-faq-0",
      "summary": "The FAQ question is about XanaNode authorship.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/why-does-xananode-exist",
      "target": "xananode.canonical:concept/xananode",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-why-does-xananode-exist-explains-concept-xananode-faq-0",
      "summary": "The FAQ question explains the purpose of XanaNode.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/why-does-xananode-exist",
      "target": "xananode.canonical:essay/what-is-xananode",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-why-does-xananode-exist-explains-essay-what-is-xananode-faq-1",
      "summary": "The essay gives a longer explanation of the project.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:question/why-does-xananode-exist",
      "target": "xananode.canonical:concept/substrate-projection-layer",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/question-why-does-xananode-exist-supports-concept-substrate-projection-layer-faq-2",
      "summary": "Projection layers are one reason the substrate model exists.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:observation/markdown-recreation-friction",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "motivated_by",
      "color": "#f97316",
      "inverse_color": "#fdba74",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/recreation-friction-motivates-pack-ingress",
      "summary": "The protocol artifact layer addresses the friction of recreating validated nodes as Markdown.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-claim",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-claim",
      "summary": "The node type registry contains the claim node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-communication",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-communication",
      "summary": "The node type registry contains the communication node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-community",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-community",
      "summary": "The node type registry contains the community node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-concept",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-concept",
      "summary": "The node type registry contains the concept node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-essay",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-essay",
      "summary": "The node type registry contains the essay node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-event",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-event",
      "summary": "The node type registry contains the event node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-fragment",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-fragment",
      "summary": "The node type registry contains the fragment node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-hypothesis",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-hypothesis",
      "summary": "The node type registry contains the hypothesis node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-item",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-item",
      "summary": "The node type registry contains the item node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-knowledge_gap",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-knowledge_gap",
      "summary": "The node type registry contains the knowledge_gap node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-media",
      "summary": "The node type registry contains the media node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-observation",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-observation",
      "summary": "The node type registry contains the observation node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-organization",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-organization",
      "summary": "The node type registry contains the organization node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-person",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-person",
      "summary": "The node type registry contains the person node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-place",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-place",
      "summary": "The node type registry contains the place node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-problem",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-problem",
      "summary": "The node type registry contains the problem node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-project",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-project",
      "summary": "The node type registry contains the project node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-publication",
      "summary": "The node type registry contains the publication node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-question",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-question",
      "summary": "The node type registry contains the question node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-relationship",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-relationship",
      "summary": "The node type registry contains the relationship node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-response",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-response",
      "summary": "The node type registry contains the response node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-revision",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-revision",
      "summary": "The node type registry contains the revision node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-schema",
      "summary": "The node type registry contains the schema node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-source",
      "summary": "The node type registry contains the source node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-technology",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-technology",
      "summary": "The node type registry contains the technology node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-registry",
      "target": "xananode.canonical:schema/node-type-trail",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-node-type-trail",
      "summary": "The node type registry contains the trail node type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-abstraction_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-abstraction_of",
      "summary": "The relationship type registry contains the abstraction_of relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-adapted_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-adapted_from",
      "summary": "The relationship type registry contains the adapted_from relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-adapted_into",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-adapted_into",
      "summary": "The relationship type registry contains the adapted_into relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-alias_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-alias_of",
      "summary": "The relationship type registry contains the alias_of relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-alternative_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-alternative_to",
      "summary": "The relationship type registry contains the alternative_to relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-analogous_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-analogous_to",
      "summary": "The relationship type registry contains the analogous_to relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-announced",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-announced",
      "summary": "The relationship type registry contains the announced relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-announced_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-announced_by",
      "summary": "The relationship type registry documents the announced_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-answered_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-answered_by",
      "summary": "The relationship type registry documents the answered_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-answered_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-answered_in",
      "summary": "The relationship type registry contains the answered_in relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-answers",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-answers",
      "summary": "The relationship type registry contains the answers relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-anticipated",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-anticipated",
      "summary": "The relationship type registry contains the anticipated relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-anticipated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-anticipated_by",
      "summary": "The relationship type registry documents the anticipated_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-anticipates",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-anticipates",
      "summary": "The relationship type registry contains the anticipates relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-appears_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-appears_in",
      "summary": "The relationship type registry contains the appears_in relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-approved",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-approved",
      "summary": "The relationship type registry contains the approved relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-approved_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-approved_by",
      "summary": "The relationship type registry documents the approved_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-arrived_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-arrived_from",
      "summary": "The relationship type registry documents the arrived_from inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-arrives_at",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-arrives_at",
      "summary": "The relationship type registry contains the arrives_at relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-asked",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-asked",
      "summary": "The relationship type registry contains the asked relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-asked_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-asked_by",
      "summary": "The relationship type registry documents the asked_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-asked_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-asked_in",
      "summary": "The relationship type registry contains the asked_in relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-assembled_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-assembled_from",
      "summary": "The relationship type registry contains the assembled_from relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-assembled_into",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-assembled_into",
      "summary": "The relationship type registry documents the assembled_into inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-attribution_required_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-attribution_required_by",
      "summary": "The relationship type registry documents the attribution_required_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-authored",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-authored",
      "summary": "The relationship type registry contains the authored relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-authored_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-authored_by",
      "summary": "The relationship type registry documents the authored_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-broadcast_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-broadcast_to",
      "summary": "The relationship type registry contains the broadcast_to relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-broader_than",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-broader_than",
      "summary": "The relationship type registry contains the broader_than relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-cited_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-cited_by",
      "summary": "The relationship type registry documents the cited_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-cites",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-cites",
      "summary": "The relationship type registry contains the cites relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-claim_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-claim_of",
      "summary": "The relationship type registry documents the claim_of inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-clarified_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-clarified_by",
      "summary": "The relationship type registry documents the clarified_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-clarifies",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-clarifies",
      "summary": "The relationship type registry contains the clarifies relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-co_authored_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-co_authored_with",
      "summary": "The relationship type registry contains the co_authored_with relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-coined",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-coined",
      "summary": "The relationship type registry contains the coined relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-coined_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-coined_by",
      "summary": "The relationship type registry documents the coined_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-collaborated_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-collaborated_with",
      "summary": "The relationship type registry contains the collaborated_with relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-communicated_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-communicated_to",
      "summary": "The relationship type registry contains the communicated_to relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-communication_received_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-communication_received_from",
      "summary": "The relationship type registry documents the communication_received_from inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-compatible_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-compatible_with",
      "summary": "The relationship type registry contains the compatible_with relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-concrete_example_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-concrete_example_of",
      "summary": "The relationship type registry documents the concrete_example_of inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-contains",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-contains",
      "summary": "The relationship type registry contains the contains relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-contemporary_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-contemporary_of",
      "summary": "The relationship type registry contains the contemporary_of relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-context_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-context_for",
      "summary": "The relationship type registry contains the context_for relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-context_required_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-context_required_by",
      "summary": "The relationship type registry documents the context_required_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-continued_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-continued_from",
      "summary": "The relationship type registry documents the continued_from inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-continues_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-continues_to",
      "summary": "The relationship type registry contains the continues_to relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-contradicted_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-contradicted_by",
      "summary": "The relationship type registry documents the contradicted_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-contradicts",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-contradicts",
      "summary": "The relationship type registry contains the contradicts relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-contrasts_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-contrasts_with",
      "summary": "The relationship type registry contains the contrasts_with relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-created",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-created",
      "summary": "The relationship type registry contains the created relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-created_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-created_by",
      "summary": "The relationship type registry documents the created_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-critical_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-critical_to",
      "summary": "The relationship type registry contains the critical_to relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-critically_depends_on",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-critically_depends_on",
      "summary": "The relationship type registry documents the critically_depends_on inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-debated_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-debated_with",
      "summary": "The relationship type registry contains the debated_with relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-deep_linked_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-deep_linked_from",
      "summary": "The relationship type registry documents the deep_linked_from inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-deep_links_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-deep_links_to",
      "summary": "The relationship type registry contains the deep_links_to relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-defined_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-defined_by",
      "summary": "The relationship type registry documents the defined_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-defines",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-defines",
      "summary": "The relationship type registry contains the defines relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-demonstrated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-demonstrated_by",
      "summary": "The relationship type registry documents the demonstrated_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-demonstrates",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-demonstrates",
      "summary": "The relationship type registry contains the demonstrates relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-dependency_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-dependency_of",
      "summary": "The relationship type registry documents the dependency_of inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-depends_on",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-depends_on",
      "summary": "The relationship type registry contains the depends_on relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-depicted_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-depicted_by",
      "summary": "The relationship type registry documents the depicted_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-depicts",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-depicts",
      "summary": "The relationship type registry contains the depicts relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-derived_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-derived_from",
      "summary": "The relationship type registry contains the derived_from relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-derived_into",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-derived_into",
      "summary": "The relationship type registry documents the derived_into inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-discussed_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-discussed_in",
      "summary": "The relationship type registry documents the discussed_in inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-discussed_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-discussed_with",
      "summary": "The relationship type registry contains the discussed_with relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-discusses",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-discusses",
      "summary": "The relationship type registry contains the discusses relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-discussion_partner_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-discussion_partner_of",
      "summary": "The relationship type registry documents the discussion_partner_of inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-disputed_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-disputed_by",
      "summary": "The relationship type registry documents the disputed_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-disputed_identity",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-disputed_identity",
      "summary": "The relationship type registry contains the disputed_identity relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-disputes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-disputes",
      "summary": "The relationship type registry contains the disputes relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-documented_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-documented_by",
      "summary": "The relationship type registry documents the documented_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-documents",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-documents",
      "summary": "The relationship type registry contains the documents relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-enabled_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-enabled_by",
      "summary": "The relationship type registry documents the enabled_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-enables",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-enables",
      "summary": "The relationship type registry contains the enables relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-equivalent_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-equivalent_to",
      "summary": "The relationship type registry contains the equivalent_to relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-evidence_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-evidence_for",
      "summary": "The relationship type registry contains the evidence_for relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-evidence_insufficient_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-evidence_insufficient_for",
      "summary": "The relationship type registry documents the evidence_insufficient_for inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-example_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-example_of",
      "summary": "The relationship type registry contains the example_of relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-explained_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-explained_by",
      "summary": "The relationship type registry documents the explained_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-explains",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-explains",
      "summary": "The relationship type registry contains the explains relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-extended_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-extended_by",
      "summary": "The relationship type registry documents the extended_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-extends",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-extends",
      "summary": "The relationship type registry contains the extends relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-extension_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-extension_of",
      "summary": "The relationship type registry contains the extension_of relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-fails_to_answer",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-fails_to_answer",
      "summary": "The relationship type registry contains the fails_to_answer relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-falsified_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-falsified_by",
      "summary": "The relationship type registry documents the falsified_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-falsifies",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-falsifies",
      "summary": "The relationship type registry contains the falsifies relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-featured_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-featured_in",
      "summary": "The relationship type registry documents the featured_in inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-featured_speaker",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-featured_speaker",
      "summary": "The relationship type registry documents the featured_speaker inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-features",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-features",
      "summary": "The relationship type registry contains the features relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-followed",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-followed",
      "summary": "The relationship type registry documents the followed inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-format_translated_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-format_translated_from",
      "summary": "The relationship type registry contains the format_translated_from relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-format_translated_into",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-format_translated_into",
      "summary": "The relationship type registry contains the format_translated_into relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-frequently_misunderstood",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-frequently_misunderstood",
      "summary": "The relationship type registry contains the frequently_misunderstood relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-friend_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-friend_of",
      "summary": "The relationship type registry contains the friend_of relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-generalized_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-generalized_by",
      "summary": "The relationship type registry documents the generalized_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-generalizes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-generalizes",
      "summary": "The relationship type registry contains the generalizes relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-generated",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-generated",
      "summary": "The relationship type registry contains the generated relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-generated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-generated_by",
      "summary": "The relationship type registry documents the generated_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-governed_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-governed_by",
      "summary": "The relationship type registry contains the governed_by relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-governs",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-governs",
      "summary": "The relationship type registry documents the governs inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-had_answer",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-had_answer",
      "summary": "The relationship type registry documents the had_answer inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-had_participant",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-had_participant",
      "summary": "The relationship type registry documents the had_participant inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-had_question",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-had_question",
      "summary": "The relationship type registry documents the had_question inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-has_alias",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-has_alias",
      "summary": "The relationship type registry documents the has_alias inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-has_appearance",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-has_appearance",
      "summary": "The relationship type registry documents the has_appearance inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-has_claim",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-has_claim",
      "summary": "The relationship type registry contains the has_claim relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-has_context",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-has_context",
      "summary": "The relationship type registry documents the has_context inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-has_evidence",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-has_evidence",
      "summary": "The relationship type registry documents the has_evidence inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-has_example",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-has_example",
      "summary": "The relationship type registry documents the has_example inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-has_extension",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-has_extension",
      "summary": "The relationship type registry documents the has_extension inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-has_high_risk",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-has_high_risk",
      "summary": "The relationship type registry documents the has_high_risk inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-has_important_context",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-has_important_context",
      "summary": "The relationship type registry documents the has_important_context inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-has_ingredient",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-has_ingredient",
      "summary": "The relationship type registry documents the has_ingredient inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-has_primary_media",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-has_primary_media",
      "summary": "The relationship type registry contains the has_primary_media relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-high_risk_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-high_risk_for",
      "summary": "The relationship type registry contains the high_risk_for relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-identified",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-identified",
      "summary": "The relationship type registry contains the identified relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-identified_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-identified_by",
      "summary": "The relationship type registry documents the identified_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-implemented_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-implemented_by",
      "summary": "The relationship type registry documents the implemented_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-implements",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-implements",
      "summary": "The relationship type registry contains the implements relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-important_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-important_for",
      "summary": "The relationship type registry contains the important_for relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-included_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-included_in",
      "summary": "The relationship type registry documents the included_in inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-includes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-includes",
      "summary": "The relationship type registry contains the includes relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-influenced",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-influenced",
      "summary": "The relationship type registry contains the influenced relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-influenced_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-influenced_by",
      "summary": "The relationship type registry documents the influenced_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-information_required_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-information_required_by",
      "summary": "The relationship type registry documents the information_required_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-ingredient_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-ingredient_of",
      "summary": "The relationship type registry contains the ingredient_of relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-inquiry_motivated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-inquiry_motivated_by",
      "summary": "The relationship type registry documents the inquiry_motivated_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-insufficient_evidence",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-insufficient_evidence",
      "summary": "The relationship type registry contains the insufficient_evidence relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-interviewed",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-interviewed",
      "summary": "The relationship type registry contains the interviewed relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-interviewed_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-interviewed_by",
      "summary": "The relationship type registry documents the interviewed_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-introduced",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-introduced",
      "summary": "The relationship type registry contains the introduced relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-introduced_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-introduced_by",
      "summary": "The relationship type registry documents the introduced_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-introduced_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-introduced_in",
      "summary": "The relationship type registry contains the introduced_in relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-introduction_venue_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-introduction_venue_of",
      "summary": "The relationship type registry documents the introduction_venue_of inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-investigated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-investigated_by",
      "summary": "The relationship type registry documents the investigated_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-investigates",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-investigates",
      "summary": "The relationship type registry contains the investigates relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-is_start_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-is_start_of",
      "summary": "The relationship type registry documents the is_start_of inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-license_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-license_for",
      "summary": "The relationship type registry documents the license_for inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-licensed_under",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-licensed_under",
      "summary": "The relationship type registry contains the licensed_under relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-made_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-made_of",
      "summary": "The relationship type registry contains the made_of relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-makes_up",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-makes_up",
      "summary": "The relationship type registry documents the makes_up inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-mapped_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-mapped_from",
      "summary": "The relationship type registry documents the mapped_from inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-maps_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-maps_to",
      "summary": "The relationship type registry contains the maps_to relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-medium_transition",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-medium_transition",
      "summary": "The relationship type registry contains the medium_transition relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-medium_transitioned_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-medium_transitioned_from",
      "summary": "The relationship type registry contains the medium_transitioned_from relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-memorialized_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-memorialized_by",
      "summary": "The relationship type registry documents the memorialized_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-memorializes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-memorializes",
      "summary": "The relationship type registry contains the memorializes relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-mentioned_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-mentioned_by",
      "summary": "The relationship type registry documents the mentioned_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-mentions",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-mentions",
      "summary": "The relationship type registry contains the mentions relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-misunderstanding_context_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-misunderstanding_context_for",
      "summary": "The relationship type registry documents the misunderstanding_context_for inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-motivated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-motivated_by",
      "summary": "The relationship type registry contains the motivated_by relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-motivates",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-motivates",
      "summary": "The relationship type registry documents the motivates inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-motivates_inquiry",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-motivates_inquiry",
      "summary": "The relationship type registry contains the motivates_inquiry relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-narrower_than",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-narrower_than",
      "summary": "The relationship type registry documents the narrower_than inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-negotiated_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-negotiated_with",
      "summary": "The relationship type registry contains the negotiated_with relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-not_answered_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-not_answered_by",
      "summary": "The relationship type registry documents the not_answered_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-occurred_at",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-occurred_at",
      "summary": "The relationship type registry contains the occurred_at relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-overlooked_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-overlooked_by",
      "summary": "The relationship type registry contains the overlooked_by relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-overlooks",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-overlooks",
      "summary": "The relationship type registry documents the overlooks inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-parallel_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-parallel_to",
      "summary": "The relationship type registry contains the parallel_to relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-part_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-part_of",
      "summary": "The relationship type registry documents the part_of inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-partially_answered_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-partially_answered_by",
      "summary": "The relationship type registry documents the partially_answered_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-partially_answers",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-partially_answers",
      "summary": "The relationship type registry contains the partially_answers relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-participated_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-participated_in",
      "summary": "The relationship type registry contains the participated_in relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-popularized",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-popularized",
      "summary": "The relationship type registry contains the popularized relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-popularized_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-popularized_by",
      "summary": "The relationship type registry documents the popularized_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-possible_match",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-possible_match",
      "summary": "The relationship type registry contains the possible_match relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-possibly_related_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-possibly_related_to",
      "summary": "The relationship type registry contains the possibly_related_to relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-preceded",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-preceded",
      "summary": "The relationship type registry contains the preceded relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-presentation_received_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-presentation_received_from",
      "summary": "The relationship type registry documents the presentation_received_from inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-presented",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-presented",
      "summary": "The relationship type registry contains the presented relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-presented_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-presented_by",
      "summary": "The relationship type registry documents the presented_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-presented_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-presented_to",
      "summary": "The relationship type registry contains the presented_to relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-preserved_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-preserved_by",
      "summary": "The relationship type registry documents the preserved_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-preserves",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-preserves",
      "summary": "The relationship type registry contains the preserves relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-produces",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-produces",
      "summary": "The relationship type registry documents the produces inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-proposed",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-proposed",
      "summary": "The relationship type registry contains the proposed relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-proposed_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-proposed_by",
      "summary": "The relationship type registry documents the proposed_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-quoted_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-quoted_by",
      "summary": "The relationship type registry documents the quoted_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-quotes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-quotes",
      "summary": "The relationship type registry contains the quotes relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-raised_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-raised_by",
      "summary": "The relationship type registry documents the raised_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-raises",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-raises",
      "summary": "The relationship type registry contains the raises relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-received_broadcast_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-received_broadcast_from",
      "summary": "The relationship type registry documents the received_broadcast_from inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-received_report_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-received_report_from",
      "summary": "The relationship type registry documents the received_report_from inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-refined_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-refined_by",
      "summary": "The relationship type registry documents the refined_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-refines",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-refines",
      "summary": "The relationship type registry contains the refines relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-related_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-related_to",
      "summary": "The relationship type registry contains the related_to relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-replied_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-replied_by",
      "summary": "The relationship type registry documents the replied_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-replied_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-replied_to",
      "summary": "The relationship type registry contains the replied_to relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-reported_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-reported_to",
      "summary": "The relationship type registry contains the reported_to relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-represented_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-represented_by",
      "summary": "The relationship type registry documents the represented_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-represents",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-represents",
      "summary": "The relationship type registry contains the represents relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-required_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-required_for",
      "summary": "The relationship type registry documents the required_for inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-requires",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-requires",
      "summary": "The relationship type registry contains the requires relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-requires_attribution",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-requires_attribution",
      "summary": "The relationship type registry contains the requires_attribution relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-requires_context",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-requires_context",
      "summary": "The relationship type registry contains the requires_context relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-requires_information",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-requires_information",
      "summary": "The relationship type registry contains the requires_information relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-requires_review",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-requires_review",
      "summary": "The relationship type registry contains the requires_review relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-requires_source",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-requires_source",
      "summary": "The relationship type registry contains the requires_source relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-requires_validation",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-requires_validation",
      "summary": "The relationship type registry contains the requires_validation relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-resonates_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-resonates_with",
      "summary": "The relationship type registry contains the resonates_with relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-results_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-results_from",
      "summary": "The relationship type registry contains the results_from relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-review_required_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-review_required_by",
      "summary": "The relationship type registry documents the review_required_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-reviewed_under",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-reviewed_under",
      "summary": "The relationship type registry documents the reviewed_under inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-same_concept",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-same_concept",
      "summary": "The relationship type registry contains the same_concept relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-same_entity",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-same_entity",
      "summary": "The relationship type registry contains the same_entity relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-same_person",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-same_person",
      "summary": "The relationship type registry contains the same_person relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-same_source",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-same_source",
      "summary": "The relationship type registry contains the same_source relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-shaped_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-shaped_by",
      "summary": "The relationship type registry documents the shaped_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-shapes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-shapes",
      "summary": "The relationship type registry contains the shapes relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-shares_pattern_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-shares_pattern_with",
      "summary": "The relationship type registry contains the shares_pattern_with relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-site_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-site_of",
      "summary": "The relationship type registry documents the site_of inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-source_required_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-source_required_by",
      "summary": "The relationship type registry documents the source_required_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-specialized_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-specialized_by",
      "summary": "The relationship type registry documents the specialized_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-specializes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-specializes",
      "summary": "The relationship type registry contains the specializes relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-speculated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-speculated_by",
      "summary": "The relationship type registry documents the speculated_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-speculative",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-speculative",
      "summary": "The relationship type registry contains the speculative relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-spoke_at",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-spoke_at",
      "summary": "The relationship type registry contains the spoke_at relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-starts_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-starts_with",
      "summary": "The relationship type registry contains the starts_with relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-superseded_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-superseded_by",
      "summary": "The relationship type registry documents the superseded_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-supersedes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-supersedes",
      "summary": "The relationship type registry contains the supersedes relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-supported_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-supported_by",
      "summary": "The relationship type registry documents the supported_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-supports",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-supports",
      "summary": "The relationship type registry contains the supports relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-tested_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-tested_by",
      "summary": "The relationship type registry documents the tested_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-tests",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-tests",
      "summary": "The relationship type registry contains the tests relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-threatened_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-threatened_by",
      "summary": "The relationship type registry documents the threatened_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-threatens",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-threatens",
      "summary": "The relationship type registry contains the threatens relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-trademark_holder_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-trademark_holder_for",
      "summary": "The relationship type registry documents the trademark_holder_for inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-trademarked_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-trademarked_by",
      "summary": "The relationship type registry contains the trademarked_by relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-trained_on",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-trained_on",
      "summary": "The relationship type registry contains the trained_on relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-transcluded_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-transcluded_by",
      "summary": "The relationship type registry documents the transcluded_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-transcludes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-transcludes",
      "summary": "The relationship type registry contains the transcludes relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-under_review",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-under_review",
      "summary": "The relationship type registry contains the under_review relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-unresolved",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-unresolved",
      "summary": "The relationship type registry contains the unresolved relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-unresolved_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-unresolved_by",
      "summary": "The relationship type registry documents the unresolved_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-used_as_primary_media_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-used_as_primary_media_for",
      "summary": "The relationship type registry documents the used_as_primary_media_for inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-used_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-used_by",
      "summary": "The relationship type registry documents the used_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-used_to_train",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-used_to_train",
      "summary": "The relationship type registry documents the used_to_train inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-uses",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-uses",
      "summary": "The relationship type registry contains the uses relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-validated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-validated_by",
      "summary": "The relationship type registry documents the validated_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-validates",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-validates",
      "summary": "The relationship type registry contains the validates relationship type.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-type-validation_required_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/registry-contains-relationship-type-validation_required_by",
      "summary": "The relationship type registry documents the validation_required_by inverse relationship term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/canonical-schema-xananode-node-types",
      "target": "xananode.canonical:schema/node-type-registry",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-canonical-schema-xananode-node-types-documents-schema-node-type-registry",
      "summary": "The canonical schema record documents the node type registry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/canonical-schema-xananode-property-registry",
      "target": "xananode.canonical:schema/property-registry",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-canonical-schema-xananode-property-registry-documents-schema-property-registry",
      "summary": "The canonical schema record documents the property registry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/canonical-schema-xananode-relationship-types",
      "target": "xananode.canonical:schema/relationship-type-registry",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-canonical-schema-xananode-relationship-types-documents-schema-relationship-type-registry",
      "summary": "The canonical schema record documents the relationship type registry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/canonical-schemas-registry",
      "target": "xananode.canonical:schema/canonical-schema-author-profile",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-canonical-schemas-registry-contains-schema-canonical-schema-author-profile",
      "summary": "The canonical schemas registry contains the author-profile schema record.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/canonical-schemas-registry",
      "target": "xananode.canonical:schema/canonical-schema-compatibility-report",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-canonical-schemas-registry-contains-schema-canonical-schema-compatibility-report",
      "summary": "The canonical schemas registry contains the compatibility-report schema record.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/canonical-schemas-registry",
      "target": "xananode.canonical:schema/canonical-schema-merge-report",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-canonical-schemas-registry-contains-schema-canonical-schema-merge-report",
      "summary": "The canonical schemas registry contains the merge-report schema record.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/canonical-schemas-registry",
      "target": "xananode.canonical:schema/canonical-schema-nanopublication",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-canonical-schemas-registry-contains-schema-canonical-schema-nanopublication",
      "summary": "The canonical schemas registry contains the nanopublication schema record.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/canonical-schemas-registry",
      "target": "xananode.canonical:schema/canonical-schema-ro-crate-metadata",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-canonical-schemas-registry-contains-schema-canonical-schema-ro-crate-metadata",
      "summary": "The canonical schemas registry contains the ro-crate-metadata schema record.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/canonical-schemas-registry",
      "target": "xananode.canonical:schema/canonical-schema-substrate-diff",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-canonical-schemas-registry-contains-schema-canonical-schema-substrate-diff",
      "summary": "The canonical schemas registry contains the substrate-diff schema record.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/canonical-schemas-registry",
      "target": "xananode.canonical:schema/canonical-schema-substrate-manifest",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-canonical-schemas-registry-contains-schema-canonical-schema-substrate-manifest",
      "summary": "The canonical schemas registry contains the substrate-manifest schema record.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/canonical-schemas-registry",
      "target": "xananode.canonical:schema/canonical-schema-substrate-node",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-canonical-schemas-registry-contains-schema-canonical-schema-substrate-node",
      "summary": "The canonical schemas registry contains the substrate-node schema record.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/canonical-schemas-registry",
      "target": "xananode.canonical:schema/canonical-schema-substrate-relationships",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-canonical-schemas-registry-contains-schema-canonical-schema-substrate-relationships",
      "summary": "The canonical schemas registry contains the substrate-relationships schema record.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/canonical-schemas-registry",
      "target": "xananode.canonical:schema/canonical-schema-xananode-node-types",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-canonical-schemas-registry-contains-schema-canonical-schema-xananode-node-types",
      "summary": "The canonical schemas registry contains the xananode-node-types schema record.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/canonical-schemas-registry",
      "target": "xananode.canonical:schema/canonical-schema-xananode-property-registry",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-canonical-schemas-registry-contains-schema-canonical-schema-xananode-property-registry",
      "summary": "The canonical schemas registry contains the xananode-property-registry schema record.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/canonical-schemas-registry",
      "target": "xananode.canonical:schema/canonical-schema-xananode-relationship-types",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-canonical-schemas-registry-contains-schema-canonical-schema-xananode-relationship-types",
      "summary": "The canonical schemas registry contains the xananode-relationship-types schema record.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/federation-targets-registry",
      "target": "xananode.canonical:source/federated-substrate-xananode.alphabet",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-federation-targets-registry-contains-source-federated-substrate-xananode.alphabet",
      "summary": "The federation targets registry contains the XanaNode Alphabet Substrate substrate entry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/federation-targets-registry",
      "target": "xananode.canonical:source/federated-substrate-xananode.canonical",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-federation-targets-registry-contains-source-federated-substrate-xananode.canonical",
      "summary": "The federation targets registry contains the XanaNode Canonical Substrate substrate entry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/federation-targets-registry",
      "target": "xananode.canonical:source/federated-substrate-xananode.core",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-federation-targets-registry-contains-source-federated-substrate-xananode.core",
      "summary": "The federation targets registry contains the XanaNode Core SDK Substrate substrate entry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/federation-targets-registry",
      "target": "xananode.canonical:source/federated-substrate-xananode.hugo",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-federation-targets-registry-contains-source-federated-substrate-xananode.hugo",
      "summary": "The federation targets registry contains the XanaNode Hugo Theme Substrate substrate entry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/federation-targets-registry",
      "target": "xananode.canonical:source/federated-substrate-xananode.lineage",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-federation-targets-registry-contains-source-federated-substrate-xananode.lineage",
      "summary": "The federation targets registry contains the XanaNode Lost Lineage Substrate substrate entry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/federation-targets-registry",
      "target": "xananode.canonical:source/federated-substrate-xananode.mobile",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-federation-targets-registry-contains-source-federated-substrate-xananode.mobile",
      "summary": "The federation targets registry contains the XanaNode Mobile Substrate substrate entry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/federation-targets-registry",
      "target": "xananode.canonical:source/federated-substrate-xananode.protocol",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-federation-targets-registry-contains-source-federated-substrate-xananode.protocol",
      "summary": "The federation targets registry contains the XanaNode Protocol Substrate substrate entry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/federation-targets-registry",
      "target": "xananode.canonical:source/federated-substrate-xananode.studio",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-federation-targets-registry-contains-source-federated-substrate-xananode.studio",
      "summary": "The federation targets registry contains the XanaNode Studio Substrate substrate entry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/federation-targets-registry",
      "target": "xananode.canonical:source/federated-substrate-xananode.workspace",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-federation-targets-registry-contains-source-federated-substrate-xananode.workspace",
      "summary": "The federation targets registry contains the XanaNode Workspace Substrate substrate entry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/known-implementations-registry",
      "target": "xananode.canonical:project/xananode-core-sdk",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-known-implementations-registry-contains-project-xananode-core-sdk",
      "summary": "The known implementations registry contains XanaNode Core SDK.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/known-implementations-registry",
      "target": "xananode.canonical:project/xananode-hugo-theme",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-known-implementations-registry-contains-project-xananode-hugo-theme",
      "summary": "The known implementations registry contains XanaNode Hugo Theme.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/known-implementations-registry",
      "target": "xananode.canonical:project/xananode-mobile",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-known-implementations-registry-contains-project-xananode-mobile",
      "summary": "The known implementations registry contains XanaNode Mobile.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/known-implementations-registry",
      "target": "xananode.canonical:project/xananode-protocol",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-known-implementations-registry-contains-project-xananode-protocol",
      "summary": "The known implementations registry contains XanaNode Protocol.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/known-implementations-registry",
      "target": "xananode.canonical:project/xananode-studio",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-known-implementations-registry-contains-project-xananode-studio",
      "summary": "The known implementations registry contains XanaNode Studio.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/known-implementations-registry",
      "target": "xananode.canonical:project/xananode-workspace",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-known-implementations-registry-contains-project-xananode-workspace",
      "summary": "The known implementations registry contains XanaNode Workspace.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/namespace-registry",
      "target": "xananode.canonical:schema/namespace-example.merge",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-namespace-registry-contains-schema-namespace-example.merge",
      "summary": "The namespace registry contains the example.merge namespace.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/namespace-registry",
      "target": "xananode.canonical:schema/namespace-example.minimal",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-namespace-registry-contains-schema-namespace-example.minimal",
      "summary": "The namespace registry contains the example.minimal namespace.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/namespace-registry",
      "target": "xananode.canonical:schema/namespace-example.researcher_a",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-namespace-registry-contains-schema-namespace-example.researcher_a",
      "summary": "The namespace registry contains the example.researcher_a namespace.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/namespace-registry",
      "target": "xananode.canonical:schema/namespace-example.researcher_b",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-namespace-registry-contains-schema-namespace-example.researcher_b",
      "summary": "The namespace registry contains the example.researcher_b namespace.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/namespace-registry",
      "target": "xananode.canonical:schema/namespace-xananode",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-namespace-registry-contains-schema-namespace-xananode",
      "summary": "The namespace registry contains the xananode namespace.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/namespace-xananode",
      "target": "xananode.canonical:concept/xananode",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-namespace-xananode-represents-concept-xananode",
      "summary": "The xananode namespace represents XanaNode Core vocabulary.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-claim-causal",
      "target": "xananode.canonical:schema/node-type-claim",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-claim-causal-extension_of-schema-node-type-claim",
      "summary": "causal is a subtype extension of claim.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-claim-comparative",
      "target": "xananode.canonical:schema/node-type-claim",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-claim-comparative-extension_of-schema-node-type-claim",
      "summary": "comparative is a subtype extension of claim.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-claim-definition",
      "target": "xananode.canonical:schema/node-type-claim",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-claim-definition-extension_of-schema-node-type-claim",
      "summary": "definition is a subtype extension of claim.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-claim-historical",
      "target": "xananode.canonical:schema/node-type-claim",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-claim-historical-extension_of-schema-node-type-claim",
      "summary": "historical is a subtype extension of claim.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-claim-interpretive",
      "target": "xananode.canonical:schema/node-type-claim",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-claim-interpretive-extension_of-schema-node-type-claim",
      "summary": "interpretive is a subtype extension of claim.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-claim-normative",
      "target": "xananode.canonical:schema/node-type-claim",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-claim-normative-extension_of-schema-node-type-claim",
      "summary": "normative is a subtype extension of claim.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-claim-predictive",
      "target": "xananode.canonical:schema/node-type-claim",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-claim-predictive-extension_of-schema-node-type-claim",
      "summary": "predictive is a subtype extension of claim.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-communication-announcement",
      "target": "xananode.canonical:schema/node-type-communication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-communication-announcement-extension_of-schema-node-type-communication",
      "summary": "announcement is a subtype extension of communication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-communication-broadcast",
      "target": "xananode.canonical:schema/node-type-communication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-communication-broadcast-extension_of-schema-node-type-communication",
      "summary": "broadcast is a subtype extension of communication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-communication-chat",
      "target": "xananode.canonical:schema/node-type-communication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-communication-chat-extension_of-schema-node-type-communication",
      "summary": "chat is a subtype extension of communication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-communication-conversation",
      "target": "xananode.canonical:schema/node-type-communication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-communication-conversation-extension_of-schema-node-type-communication",
      "summary": "conversation is a subtype extension of communication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-communication-debate",
      "target": "xananode.canonical:schema/node-type-communication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-communication-debate-extension_of-schema-node-type-communication",
      "summary": "debate is a subtype extension of communication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-communication-discussion",
      "target": "xananode.canonical:schema/node-type-communication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-communication-discussion-extension_of-schema-node-type-communication",
      "summary": "discussion is a subtype extension of communication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-communication-forum",
      "target": "xananode.canonical:schema/node-type-communication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-communication-forum-extension_of-schema-node-type-communication",
      "summary": "forum is a subtype extension of communication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-communication-interview",
      "target": "xananode.canonical:schema/node-type-communication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-communication-interview-extension_of-schema-node-type-communication",
      "summary": "interview is a subtype extension of communication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-communication-meeting",
      "target": "xananode.canonical:schema/node-type-communication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-communication-meeting-extension_of-schema-node-type-communication",
      "summary": "meeting is a subtype extension of communication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-communication-message",
      "target": "xananode.canonical:schema/node-type-communication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-communication-message-extension_of-schema-node-type-communication",
      "summary": "message is a subtype extension of communication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-communication-presentation",
      "target": "xananode.canonical:schema/node-type-communication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-communication-presentation-extension_of-schema-node-type-communication",
      "summary": "presentation is a subtype extension of communication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-communication-publication",
      "target": "xananode.canonical:schema/node-type-communication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-communication-publication-extension_of-schema-node-type-communication",
      "summary": "publication is a subtype extension of communication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-communication-thread",
      "target": "xananode.canonical:schema/node-type-communication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-communication-thread-extension_of-schema-node-type-communication",
      "summary": "thread is a subtype extension of communication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-community-fan",
      "target": "xananode.canonical:schema/node-type-community",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-community-fan-extension_of-schema-node-type-community",
      "summary": "fan is a subtype extension of community.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-community-forum",
      "target": "xananode.canonical:schema/node-type-community",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-community-forum-extension_of-schema-node-type-community",
      "summary": "forum is a subtype extension of community.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-community-local",
      "target": "xananode.canonical:schema/node-type-community",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-community-local-extension_of-schema-node-type-community",
      "summary": "local is a subtype extension of community.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-community-online",
      "target": "xananode.canonical:schema/node-type-community",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-community-online-extension_of-schema-node-type-community",
      "summary": "online is a subtype extension of community.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-community-open_source",
      "target": "xananode.canonical:schema/node-type-community",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-community-open_source-extension_of-schema-node-type-community",
      "summary": "open_source is a subtype extension of community.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-community-professional",
      "target": "xananode.canonical:schema/node-type-community",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-community-professional-extension_of-schema-node-type-community",
      "summary": "professional is a subtype extension of community.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-community-research",
      "target": "xananode.canonical:schema/node-type-community",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-community-research-extension_of-schema-node-type-community",
      "summary": "research is a subtype extension of community.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-concept-distinction",
      "target": "xananode.canonical:schema/node-type-concept",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-concept-distinction-extension_of-schema-node-type-concept",
      "summary": "distinction is a subtype extension of concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-concept-failure_mode",
      "target": "xananode.canonical:schema/node-type-concept",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-concept-failure_mode-extension_of-schema-node-type-concept",
      "summary": "failure_mode is a subtype extension of concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-concept-frame",
      "target": "xananode.canonical:schema/node-type-concept",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-concept-frame-extension_of-schema-node-type-concept",
      "summary": "frame is a subtype extension of concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-concept-method",
      "target": "xananode.canonical:schema/node-type-concept",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-concept-method-extension_of-schema-node-type-concept",
      "summary": "method is a subtype extension of concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-concept-pattern",
      "target": "xananode.canonical:schema/node-type-concept",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-concept-pattern-extension_of-schema-node-type-concept",
      "summary": "pattern is a subtype extension of concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-concept-principle",
      "target": "xananode.canonical:schema/node-type-concept",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-concept-principle-extension_of-schema-node-type-concept",
      "summary": "principle is a subtype extension of concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-concept-theory",
      "target": "xananode.canonical:schema/node-type-concept",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-concept-theory-extension_of-schema-node-type-concept",
      "summary": "theory is a subtype extension of concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-essay-analysis",
      "target": "xananode.canonical:schema/node-type-essay",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-essay-analysis-extension_of-schema-node-type-essay",
      "summary": "analysis is a subtype extension of essay.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-essay-argument",
      "target": "xananode.canonical:schema/node-type-essay",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-essay-argument-extension_of-schema-node-type-essay",
      "summary": "argument is a subtype extension of essay.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-essay-critique",
      "target": "xananode.canonical:schema/node-type-essay",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-essay-critique-extension_of-schema-node-type-essay",
      "summary": "critique is a subtype extension of essay.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-essay-explainer",
      "target": "xananode.canonical:schema/node-type-essay",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-essay-explainer-extension_of-schema-node-type-essay",
      "summary": "explainer is a subtype extension of essay.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-essay-manifesto",
      "target": "xananode.canonical:schema/node-type-essay",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-essay-manifesto-extension_of-schema-node-type-essay",
      "summary": "manifesto is a subtype extension of essay.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-essay-reflection",
      "target": "xananode.canonical:schema/node-type-essay",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-essay-reflection-extension_of-schema-node-type-essay",
      "summary": "reflection is a subtype extension of essay.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-event-conference",
      "target": "xananode.canonical:schema/node-type-event",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-event-conference-extension_of-schema-node-type-event",
      "summary": "conference is a subtype extension of event.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-event-historical_event",
      "target": "xananode.canonical:schema/node-type-event",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-event-historical_event-extension_of-schema-node-type-event",
      "summary": "historical_event is a subtype extension of event.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-event-incident",
      "target": "xananode.canonical:schema/node-type-event",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-event-incident-extension_of-schema-node-type-event",
      "summary": "incident is a subtype extension of event.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-event-meeting",
      "target": "xananode.canonical:schema/node-type-event",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-event-meeting-extension_of-schema-node-type-event",
      "summary": "meeting is a subtype extension of event.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-event-publication_event",
      "target": "xananode.canonical:schema/node-type-event",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-event-publication_event-extension_of-schema-node-type-event",
      "summary": "publication_event is a subtype extension of event.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-event-release",
      "target": "xananode.canonical:schema/node-type-event",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-event-release-extension_of-schema-node-type-event",
      "summary": "release is a subtype extension of event.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-event-talk",
      "target": "xananode.canonical:schema/node-type-event",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-event-talk-extension_of-schema-node-type-event",
      "summary": "talk is a subtype extension of event.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-fragment-code_block",
      "target": "xananode.canonical:schema/node-type-fragment",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-fragment-code_block-extension_of-schema-node-type-fragment",
      "summary": "code_block is a subtype extension of fragment.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-fragment-data_range",
      "target": "xananode.canonical:schema/node-type-fragment",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-fragment-data_range-extension_of-schema-node-type-fragment",
      "summary": "data_range is a subtype extension of fragment.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-fragment-image_region",
      "target": "xananode.canonical:schema/node-type-fragment",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-fragment-image_region-extension_of-schema-node-type-fragment",
      "summary": "image_region is a subtype extension of fragment.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-fragment-media_segment",
      "target": "xananode.canonical:schema/node-type-fragment",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-fragment-media_segment-extension_of-schema-node-type-fragment",
      "summary": "media_segment is a subtype extension of fragment.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-fragment-paragraph",
      "target": "xananode.canonical:schema/node-type-fragment",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-fragment-paragraph-extension_of-schema-node-type-fragment",
      "summary": "paragraph is a subtype extension of fragment.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-fragment-quote",
      "target": "xananode.canonical:schema/node-type-fragment",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-fragment-quote-extension_of-schema-node-type-fragment",
      "summary": "quote is a subtype extension of fragment.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-fragment-section",
      "target": "xananode.canonical:schema/node-type-fragment",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-fragment-section-extension_of-schema-node-type-fragment",
      "summary": "section is a subtype extension of fragment.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-fragment-sentence",
      "target": "xananode.canonical:schema/node-type-fragment",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-fragment-sentence-extension_of-schema-node-type-fragment",
      "summary": "sentence is a subtype extension of fragment.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-hypothesis-design",
      "target": "xananode.canonical:schema/node-type-hypothesis",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-hypothesis-design-extension_of-schema-node-type-hypothesis",
      "summary": "design is a subtype extension of hypothesis.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-hypothesis-diagnostic",
      "target": "xananode.canonical:schema/node-type-hypothesis",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-hypothesis-diagnostic-extension_of-schema-node-type-hypothesis",
      "summary": "diagnostic is a subtype extension of hypothesis.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-hypothesis-historical",
      "target": "xananode.canonical:schema/node-type-hypothesis",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-hypothesis-historical-extension_of-schema-node-type-hypothesis",
      "summary": "historical is a subtype extension of hypothesis.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-hypothesis-interpretive",
      "target": "xananode.canonical:schema/node-type-hypothesis",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-hypothesis-interpretive-extension_of-schema-node-type-hypothesis",
      "summary": "interpretive is a subtype extension of hypothesis.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-hypothesis-prediction",
      "target": "xananode.canonical:schema/node-type-hypothesis",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-hypothesis-prediction-extension_of-schema-node-type-hypothesis",
      "summary": "prediction is a subtype extension of hypothesis.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-hypothesis-scientific",
      "target": "xananode.canonical:schema/node-type-hypothesis",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-hypothesis-scientific-extension_of-schema-node-type-hypothesis",
      "summary": "scientific is a subtype extension of hypothesis.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-item-appliance",
      "target": "xananode.canonical:schema/node-type-item",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-item-appliance-extension_of-schema-node-type-item",
      "summary": "appliance is a subtype extension of item.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-item-artifact",
      "target": "xananode.canonical:schema/node-type-item",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-item-artifact-extension_of-schema-node-type-item",
      "summary": "artifact is a subtype extension of item.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-item-component",
      "target": "xananode.canonical:schema/node-type-item",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-item-component-extension_of-schema-node-type-item",
      "summary": "component is a subtype extension of item.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-item-container",
      "target": "xananode.canonical:schema/node-type-item",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-item-container-extension_of-schema-node-type-item",
      "summary": "container is a subtype extension of item.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-item-finished_item",
      "target": "xananode.canonical:schema/node-type-item",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-item-finished_item-extension_of-schema-node-type-item",
      "summary": "finished_item is a subtype extension of item.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-item-ingredient",
      "target": "xananode.canonical:schema/node-type-item",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-item-ingredient-extension_of-schema-node-type-item",
      "summary": "ingredient is a subtype extension of item.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-item-material",
      "target": "xananode.canonical:schema/node-type-item",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-item-material-extension_of-schema-node-type-item",
      "summary": "material is a subtype extension of item.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-item-spare_part",
      "target": "xananode.canonical:schema/node-type-item",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-item-spare_part-extension_of-schema-node-type-item",
      "summary": "spare_part is a subtype extension of item.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-item-tool",
      "target": "xananode.canonical:schema/node-type-item",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-item-tool-extension_of-schema-node-type-item",
      "summary": "tool is a subtype extension of item.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-item-utensil",
      "target": "xananode.canonical:schema/node-type-item",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-item-utensil-extension_of-schema-node-type-item",
      "summary": "utensil is a subtype extension of item.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-knowledge_gap-historical_uncertainty",
      "target": "xananode.canonical:schema/node-type-knowledge_gap",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-knowledge_gap-historical_uncertainty-extension_of-schema-node-type-knowledge_gap",
      "summary": "historical_uncertainty is a subtype extension of knowledge_gap.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-knowledge_gap-incomplete_context",
      "target": "xananode.canonical:schema/node-type-knowledge_gap",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-knowledge_gap-incomplete_context-extension_of-schema-node-type-knowledge_gap",
      "summary": "incomplete_context is a subtype extension of knowledge_gap.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-knowledge_gap-lost_document",
      "target": "xananode.canonical:schema/node-type-knowledge_gap",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-knowledge_gap-lost_document-extension_of-schema-node-type-knowledge_gap",
      "summary": "lost_document is a subtype extension of knowledge_gap.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-knowledge_gap-missing_citation",
      "target": "xananode.canonical:schema/node-type-knowledge_gap",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-knowledge_gap-missing_citation-extension_of-schema-node-type-knowledge_gap",
      "summary": "missing_citation is a subtype extension of knowledge_gap.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-knowledge_gap-missing_source",
      "target": "xananode.canonical:schema/node-type-knowledge_gap",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-knowledge_gap-missing_source-extension_of-schema-node-type-knowledge_gap",
      "summary": "missing_source is a subtype extension of knowledge_gap.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-knowledge_gap-unknown_author",
      "target": "xananode.canonical:schema/node-type-knowledge_gap",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-knowledge_gap-unknown_author-extension_of-schema-node-type-knowledge_gap",
      "summary": "unknown_author is a subtype extension of knowledge_gap.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-app_icon",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-app_icon-extension_of-schema-node-type-media",
      "summary": "app_icon is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-audio",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-audio-extension_of-schema-node-type-media",
      "summary": "audio is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-branding_icon",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-branding_icon-extension_of-schema-node-type-media",
      "summary": "branding_icon is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-clip",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-clip-extension_of-schema-node-type-media",
      "summary": "clip is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-diagram",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-diagram-extension_of-schema-node-type-media",
      "summary": "diagram is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-document",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-document-extension_of-schema-node-type-media",
      "summary": "document is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-favicon",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-favicon-extension_of-schema-node-type-media",
      "summary": "favicon is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-image",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-image-extension_of-schema-node-type-media",
      "summary": "image is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-logo",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-logo-extension_of-schema-node-type-media",
      "summary": "logo is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-scan",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-scan-extension_of-schema-node-type-media",
      "summary": "scan is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-screenshot",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-screenshot-extension_of-schema-node-type-media",
      "summary": "screenshot is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-source_snapshot",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-source_snapshot-extension_of-schema-node-type-media",
      "summary": "source_snapshot is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-thumbnail",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-thumbnail-extension_of-schema-node-type-media",
      "summary": "thumbnail is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-touch_icon",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-touch_icon-extension_of-schema-node-type-media",
      "summary": "touch_icon is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-video",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-video-extension_of-schema-node-type-media",
      "summary": "video is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-media-web_snapshot",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-media-web_snapshot-extension_of-schema-node-type-media",
      "summary": "web_snapshot is a subtype extension of media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-observation-anomaly",
      "target": "xananode.canonical:schema/node-type-observation",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-observation-anomaly-extension_of-schema-node-type-observation",
      "summary": "anomaly is a subtype extension of observation.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-observation-case_study",
      "target": "xananode.canonical:schema/node-type-observation",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-observation-case_study-extension_of-schema-node-type-observation",
      "summary": "case_study is a subtype extension of observation.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-observation-example",
      "target": "xananode.canonical:schema/node-type-observation",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-observation-example-extension_of-schema-node-type-observation",
      "summary": "example is a subtype extension of observation.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-observation-failure",
      "target": "xananode.canonical:schema/node-type-observation",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-observation-failure-extension_of-schema-node-type-observation",
      "summary": "failure is a subtype extension of observation.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-observation-news_event",
      "target": "xananode.canonical:schema/node-type-observation",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-observation-news_event-extension_of-schema-node-type-observation",
      "summary": "news_event is a subtype extension of observation.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-observation-symptom",
      "target": "xananode.canonical:schema/node-type-observation",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-observation-symptom-extension_of-schema-node-type-observation",
      "summary": "symptom is a subtype extension of observation.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-organization-agency",
      "target": "xananode.canonical:schema/node-type-organization",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-organization-agency-extension_of-schema-node-type-organization",
      "summary": "agency is a subtype extension of organization.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-organization-company",
      "target": "xananode.canonical:schema/node-type-organization",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-organization-company-extension_of-schema-node-type-organization",
      "summary": "company is a subtype extension of organization.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-organization-lab",
      "target": "xananode.canonical:schema/node-type-organization",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-organization-lab-extension_of-schema-node-type-organization",
      "summary": "lab is a subtype extension of organization.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-organization-nonprofit",
      "target": "xananode.canonical:schema/node-type-organization",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-organization-nonprofit-extension_of-schema-node-type-organization",
      "summary": "nonprofit is a subtype extension of organization.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-organization-publisher",
      "target": "xananode.canonical:schema/node-type-organization",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-organization-publisher-extension_of-schema-node-type-organization",
      "summary": "publisher is a subtype extension of organization.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-organization-standards_body",
      "target": "xananode.canonical:schema/node-type-organization",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-organization-standards_body-extension_of-schema-node-type-organization",
      "summary": "standards_body is a subtype extension of organization.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-organization-university",
      "target": "xananode.canonical:schema/node-type-organization",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-organization-university-extension_of-schema-node-type-organization",
      "summary": "university is a subtype extension of organization.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-person-artist",
      "target": "xananode.canonical:schema/node-type-person",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-person-artist-extension_of-schema-node-type-person",
      "summary": "artist is a subtype extension of person.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-person-critic",
      "target": "xananode.canonical:schema/node-type-person",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-person-critic-extension_of-schema-node-type-person",
      "summary": "critic is a subtype extension of person.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-person-engineer",
      "target": "xananode.canonical:schema/node-type-person",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-person-engineer-extension_of-schema-node-type-person",
      "summary": "engineer is a subtype extension of person.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-person-founder",
      "target": "xananode.canonical:schema/node-type-person",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-person-founder-extension_of-schema-node-type-person",
      "summary": "founder is a subtype extension of person.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-person-programmer",
      "target": "xananode.canonical:schema/node-type-person",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-person-programmer-extension_of-schema-node-type-person",
      "summary": "programmer is a subtype extension of person.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-person-researcher",
      "target": "xananode.canonical:schema/node-type-person",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-person-researcher-extension_of-schema-node-type-person",
      "summary": "researcher is a subtype extension of person.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-person-scientist",
      "target": "xananode.canonical:schema/node-type-person",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-person-scientist-extension_of-schema-node-type-person",
      "summary": "scientist is a subtype extension of person.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-person-writer",
      "target": "xananode.canonical:schema/node-type-person",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-person-writer-extension_of-schema-node-type-person",
      "summary": "writer is a subtype extension of person.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-place-building",
      "target": "xananode.canonical:schema/node-type-place",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-place-building-extension_of-schema-node-type-place",
      "summary": "building is a subtype extension of place.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-place-city",
      "target": "xananode.canonical:schema/node-type-place",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-place-city-extension_of-schema-node-type-place",
      "summary": "city is a subtype extension of place.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-place-country",
      "target": "xananode.canonical:schema/node-type-place",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-place-country-extension_of-schema-node-type-place",
      "summary": "country is a subtype extension of place.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-place-institution_site",
      "target": "xananode.canonical:schema/node-type-place",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-place-institution_site-extension_of-schema-node-type-place",
      "summary": "institution_site is a subtype extension of place.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-place-lab",
      "target": "xananode.canonical:schema/node-type-place",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-place-lab-extension_of-schema-node-type-place",
      "summary": "lab is a subtype extension of place.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-place-online_space",
      "target": "xananode.canonical:schema/node-type-place",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-place-online_space-extension_of-schema-node-type-place",
      "summary": "online_space is a subtype extension of place.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-place-region",
      "target": "xananode.canonical:schema/node-type-place",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-place-region-extension_of-schema-node-type-place",
      "summary": "region is a subtype extension of place.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-problem-design_problem",
      "target": "xananode.canonical:schema/node-type-problem",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-problem-design_problem-extension_of-schema-node-type-problem",
      "summary": "design_problem is a subtype extension of problem.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-problem-failure_mode",
      "target": "xananode.canonical:schema/node-type-problem",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-problem-failure_mode-extension_of-schema-node-type-problem",
      "summary": "failure_mode is a subtype extension of problem.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-problem-governance_problem",
      "target": "xananode.canonical:schema/node-type-problem",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-problem-governance_problem-extension_of-schema-node-type-problem",
      "summary": "governance_problem is a subtype extension of problem.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-problem-implementation_problem",
      "target": "xananode.canonical:schema/node-type-problem",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-problem-implementation_problem-extension_of-schema-node-type-problem",
      "summary": "implementation_problem is a subtype extension of problem.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-problem-research_problem",
      "target": "xananode.canonical:schema/node-type-problem",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-problem-research_problem-extension_of-schema-node-type-problem",
      "summary": "research_problem is a subtype extension of problem.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-problem-risk",
      "target": "xananode.canonical:schema/node-type-problem",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-problem-risk-extension_of-schema-node-type-problem",
      "summary": "risk is a subtype extension of problem.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-project-fictional_system",
      "target": "xananode.canonical:schema/node-type-project",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-project-fictional_system-extension_of-schema-node-type-project",
      "summary": "fictional_system is a subtype extension of project.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-project-platform",
      "target": "xananode.canonical:schema/node-type-project",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-project-platform-extension_of-schema-node-type-project",
      "summary": "platform is a subtype extension of project.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-project-prototype",
      "target": "xananode.canonical:schema/node-type-project",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-project-prototype-extension_of-schema-node-type-project",
      "summary": "prototype is a subtype extension of project.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-project-research_project",
      "target": "xananode.canonical:schema/node-type-project",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-project-research_project-extension_of-schema-node-type-project",
      "summary": "research_project is a subtype extension of project.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-project-software",
      "target": "xananode.canonical:schema/node-type-project",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-project-software-extension_of-schema-node-type-project",
      "summary": "software is a subtype extension of project.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-project-standard",
      "target": "xananode.canonical:schema/node-type-project",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-project-standard-extension_of-schema-node-type-project",
      "summary": "standard is a subtype extension of project.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-adaptation",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-adaptation-extension_of-schema-node-type-publication",
      "summary": "adaptation is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-article",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-article-extension_of-schema-node-type-publication",
      "summary": "article is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-book",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-book-extension_of-schema-node-type-publication",
      "summary": "book is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-edition",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-edition-extension_of-schema-node-type-publication",
      "summary": "edition is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-episode",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-episode-extension_of-schema-node-type-publication",
      "summary": "episode is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-film",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-film-extension_of-schema-node-type-publication",
      "summary": "film is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-installment",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-installment-extension_of-schema-node-type-publication",
      "summary": "installment is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-omnibus",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-omnibus-extension_of-schema-node-type-publication",
      "summary": "omnibus is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-paper",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-paper-extension_of-schema-node-type-publication",
      "summary": "paper is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-pilot",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-pilot-extension_of-schema-node-type-publication",
      "summary": "pilot is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-podcast",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-podcast-extension_of-schema-node-type-publication",
      "summary": "podcast is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-reissue",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-reissue-extension_of-schema-node-type-publication",
      "summary": "reissue is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-saga",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-saga-extension_of-schema-node-type-publication",
      "summary": "saga is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-season",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-season-extension_of-schema-node-type-publication",
      "summary": "season is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-series",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-series-extension_of-schema-node-type-publication",
      "summary": "series is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-talk",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-talk-extension_of-schema-node-type-publication",
      "summary": "talk is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-trilogy",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-trilogy-extension_of-schema-node-type-publication",
      "summary": "trilogy is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-publication-webpage",
      "target": "xananode.canonical:schema/node-type-publication",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-publication-webpage-extension_of-schema-node-type-publication",
      "summary": "webpage is a subtype extension of publication.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-question-design_question",
      "target": "xananode.canonical:schema/node-type-question",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-question-design_question-extension_of-schema-node-type-question",
      "summary": "design_question is a subtype extension of question.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-question-diagnostic_question",
      "target": "xananode.canonical:schema/node-type-question",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-question-diagnostic_question-extension_of-schema-node-type-question",
      "summary": "diagnostic_question is a subtype extension of question.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-question-historical_question",
      "target": "xananode.canonical:schema/node-type-question",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-question-historical_question-extension_of-schema-node-type-question",
      "summary": "historical_question is a subtype extension of question.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-question-open_question",
      "target": "xananode.canonical:schema/node-type-question",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-question-open_question-extension_of-schema-node-type-question",
      "summary": "open_question is a subtype extension of question.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-question-prediction_question",
      "target": "xananode.canonical:schema/node-type-question",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-question-prediction_question-extension_of-schema-node-type-question",
      "summary": "prediction_question is a subtype extension of question.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-question-research_question",
      "target": "xananode.canonical:schema/node-type-question",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-question-research_question-extension_of-schema-node-type-question",
      "summary": "research_question is a subtype extension of question.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-relationship-citation",
      "target": "xananode.canonical:schema/node-type-relationship",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-relationship-citation-extension_of-schema-node-type-relationship",
      "summary": "citation is a subtype extension of relationship.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-relationship-collaboration",
      "target": "xananode.canonical:schema/node-type-relationship",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-relationship-collaboration-extension_of-schema-node-type-relationship",
      "summary": "collaboration is a subtype extension of relationship.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-relationship-dependency",
      "target": "xananode.canonical:schema/node-type-relationship",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-relationship-dependency-extension_of-schema-node-type-relationship",
      "summary": "dependency is a subtype extension of relationship.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-relationship-dispute",
      "target": "xananode.canonical:schema/node-type-relationship",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-relationship-dispute-extension_of-schema-node-type-relationship",
      "summary": "dispute is a subtype extension of relationship.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-relationship-friendship",
      "target": "xananode.canonical:schema/node-type-relationship",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-relationship-friendship-extension_of-schema-node-type-relationship",
      "summary": "friendship is a subtype extension of relationship.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-relationship-influence",
      "target": "xananode.canonical:schema/node-type-relationship",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-relationship-influence-extension_of-schema-node-type-relationship",
      "summary": "influence is a subtype extension of relationship.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-relationship-lineage",
      "target": "xananode.canonical:schema/node-type-relationship",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-relationship-lineage-extension_of-schema-node-type-relationship",
      "summary": "lineage is a subtype extension of relationship.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-response-answer",
      "target": "xananode.canonical:schema/node-type-response",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-response-answer-extension_of-schema-node-type-response",
      "summary": "answer is a subtype extension of response.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-response-clarification",
      "target": "xananode.canonical:schema/node-type-response",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-response-clarification-extension_of-schema-node-type-response",
      "summary": "clarification is a subtype extension of response.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-response-comment",
      "target": "xananode.canonical:schema/node-type-response",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-response-comment-extension_of-schema-node-type-response",
      "summary": "comment is a subtype extension of response.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-response-follow_up",
      "target": "xananode.canonical:schema/node-type-response",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-response-follow_up-extension_of-schema-node-type-response",
      "summary": "follow_up is a subtype extension of response.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-response-rebuttal",
      "target": "xananode.canonical:schema/node-type-response",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-response-rebuttal-extension_of-schema-node-type-response",
      "summary": "rebuttal is a subtype extension of response.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-response-reply",
      "target": "xananode.canonical:schema/node-type-response",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-response-reply-extension_of-schema-node-type-response",
      "summary": "reply is a subtype extension of response.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-response-review_response",
      "target": "xananode.canonical:schema/node-type-response",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-response-review_response-extension_of-schema-node-type-response",
      "summary": "review_response is a subtype extension of response.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-revision-claim_revision",
      "target": "xananode.canonical:schema/node-type-revision",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-revision-claim_revision-extension_of-schema-node-type-revision",
      "summary": "claim_revision is a subtype extension of revision.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-revision-media_revision",
      "target": "xananode.canonical:schema/node-type-revision",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-revision-media_revision-extension_of-schema-node-type-revision",
      "summary": "media_revision is a subtype extension of revision.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-revision-node_revision",
      "target": "xananode.canonical:schema/node-type-revision",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-revision-node_revision-extension_of-schema-node-type-revision",
      "summary": "node_revision is a subtype extension of revision.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-revision-relationship_revision",
      "target": "xananode.canonical:schema/node-type-revision",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-revision-relationship_revision-extension_of-schema-node-type-revision",
      "summary": "relationship_revision is a subtype extension of revision.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-canonical_schema_record",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-canonical_schema_record-extension_of-schema-node-type-schema",
      "summary": "canonical_schema_record is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-governance_rule",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-governance_rule-extension_of-schema-node-type-schema",
      "summary": "governance_rule is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-namespace_record",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-namespace_record-extension_of-schema-node-type-schema",
      "summary": "namespace_record is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-node_subtype_schema",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-node_subtype_schema-extension_of-schema-node-type-schema",
      "summary": "node_subtype_schema is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-node_type_schema",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-node_type_schema-extension_of-schema-node-type-schema",
      "summary": "node_type_schema is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-projection_style_rule",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-projection_style_rule-extension_of-schema-node-type-schema",
      "summary": "projection_style_rule is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-property_registry_entry",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-property_registry_entry-extension_of-schema-node-type-schema",
      "summary": "property_registry_entry is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-protocol_artifact",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-protocol_artifact-extension_of-schema-node-type-schema",
      "summary": "protocol_artifact is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-relationship_category_schema",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-relationship_category_schema-extension_of-schema-node-type-schema",
      "summary": "relationship_category_schema is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-relationship_type_schema",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-relationship_type_schema-extension_of-schema-node-type-schema",
      "summary": "relationship_type_schema is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-schema_field",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-schema_field-extension_of-schema-node-type-schema",
      "summary": "schema_field is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-schema_term",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-schema_term-extension_of-schema-node-type-schema",
      "summary": "schema_term is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-semantic_rule",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-semantic_rule-extension_of-schema-node-type-schema",
      "summary": "semantic_rule is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-style_rule",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-style_rule-extension_of-schema-node-type-schema",
      "summary": "style_rule is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-term",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-term-extension_of-schema-node-type-schema",
      "summary": "term is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-schema-validation_rule",
      "target": "xananode.canonical:schema/node-type-schema",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-schema-validation_rule-extension_of-schema-node-type-schema",
      "summary": "validation_rule is a subtype extension of schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-archive",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-archive-extension_of-schema-node-type-source",
      "summary": "archive is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-article",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-article-extension_of-schema-node-type-source",
      "summary": "article is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-audio_drama",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-audio_drama-extension_of-schema-node-type-source",
      "summary": "audio_drama is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-book",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-book-extension_of-schema-node-type-source",
      "summary": "book is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-dataset",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-dataset-extension_of-schema-node-type-source",
      "summary": "dataset is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-documentation",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-documentation-extension_of-schema-node-type-source",
      "summary": "documentation is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-git_repository",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-git_repository-extension_of-schema-node-type-source",
      "summary": "git_repository is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-interview",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-interview-extension_of-schema-node-type-source",
      "summary": "interview is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-legal_policy",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-legal_policy-extension_of-schema-node-type-source",
      "summary": "legal_policy is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-license",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-license-extension_of-schema-node-type-source",
      "summary": "license is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-notice",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-notice-extension_of-schema-node-type-source",
      "summary": "notice is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-official_site",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-official_site-extension_of-schema-node-type-source",
      "summary": "official_site is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-paper",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-paper-extension_of-schema-node-type-source",
      "summary": "paper is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-radio_episode",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-radio_episode-extension_of-schema-node-type-source",
      "summary": "radio_episode is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-radio_series",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-radio_series-extension_of-schema-node-type-source",
      "summary": "radio_series is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-social_profile",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-social_profile-extension_of-schema-node-type-source",
      "summary": "social_profile is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-stage_play",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-stage_play-extension_of-schema-node-type-source",
      "summary": "stage_play is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-support_page",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-support_page-extension_of-schema-node-type-source",
      "summary": "support_page is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-talk",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-talk-extension_of-schema-node-type-source",
      "summary": "talk is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-television_episode",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-television_episode-extension_of-schema-node-type-source",
      "summary": "television_episode is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-television_series",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-television_series-extension_of-schema-node-type-source",
      "summary": "television_series is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-trademark_policy",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-trademark_policy-extension_of-schema-node-type-source",
      "summary": "trademark_policy is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-transcript",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-transcript-extension_of-schema-node-type-source",
      "summary": "transcript is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-web_snapshot",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-web_snapshot-extension_of-schema-node-type-source",
      "summary": "web_snapshot is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-source-website",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-source-website-extension_of-schema-node-type-source",
      "summary": "website is a subtype extension of source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-technology-algorithm",
      "target": "xananode.canonical:schema/node-type-technology",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-technology-algorithm-extension_of-schema-node-type-technology",
      "summary": "algorithm is a subtype extension of technology.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-technology-architecture",
      "target": "xananode.canonical:schema/node-type-technology",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-technology-architecture-extension_of-schema-node-type-technology",
      "summary": "architecture is a subtype extension of technology.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-technology-format",
      "target": "xananode.canonical:schema/node-type-technology",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-technology-format-extension_of-schema-node-type-technology",
      "summary": "format is a subtype extension of technology.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-technology-language",
      "target": "xananode.canonical:schema/node-type-technology",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-technology-language-extension_of-schema-node-type-technology",
      "summary": "language is a subtype extension of technology.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-technology-model",
      "target": "xananode.canonical:schema/node-type-technology",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-technology-model-extension_of-schema-node-type-technology",
      "summary": "model is a subtype extension of technology.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-technology-platform",
      "target": "xananode.canonical:schema/node-type-technology",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-technology-platform-extension_of-schema-node-type-technology",
      "summary": "platform is a subtype extension of technology.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-technology-protocol",
      "target": "xananode.canonical:schema/node-type-technology",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-technology-protocol-extension_of-schema-node-type-technology",
      "summary": "protocol is a subtype extension of technology.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-technology-tool",
      "target": "xananode.canonical:schema/node-type-technology",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-technology-tool-extension_of-schema-node-type-technology",
      "summary": "tool is a subtype extension of technology.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-trail-argument",
      "target": "xananode.canonical:schema/node-type-trail",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-trail-argument-extension_of-schema-node-type-trail",
      "summary": "argument is a subtype extension of trail.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-trail-dispute_path",
      "target": "xananode.canonical:schema/node-type-trail",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-trail-dispute_path-extension_of-schema-node-type-trail",
      "summary": "dispute_path is a subtype extension of trail.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-trail-evidence_path",
      "target": "xananode.canonical:schema/node-type-trail",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-trail-evidence_path-extension_of-schema-node-type-trail",
      "summary": "evidence_path is a subtype extension of trail.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-trail-historical",
      "target": "xananode.canonical:schema/node-type-trail",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-trail-historical-extension_of-schema-node-type-trail",
      "summary": "historical is a subtype extension of trail.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-trail-introductory",
      "target": "xananode.canonical:schema/node-type-trail",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-trail-introductory-extension_of-schema-node-type-trail",
      "summary": "introductory is a subtype extension of trail.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-subtype-trail-teaching_path",
      "target": "xananode.canonical:schema/node-type-trail",
      "type": "extension_of",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-subtype-trail-teaching_path-extension_of-schema-node-type-trail",
      "summary": "teaching_path is a subtype extension of trail.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-claim",
      "target": "xananode.canonical:schema/node-subtype-claim-causal",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-claim-contains-schema-node-subtype-claim-causal",
      "summary": "The claim node type contains the causal subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-claim",
      "target": "xananode.canonical:schema/node-subtype-claim-comparative",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-claim-contains-schema-node-subtype-claim-comparative",
      "summary": "The claim node type contains the comparative subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-claim",
      "target": "xananode.canonical:schema/node-subtype-claim-definition",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-claim-contains-schema-node-subtype-claim-definition",
      "summary": "The claim node type contains the definition subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-claim",
      "target": "xananode.canonical:schema/node-subtype-claim-historical",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-claim-contains-schema-node-subtype-claim-historical",
      "summary": "The claim node type contains the historical subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-claim",
      "target": "xananode.canonical:schema/node-subtype-claim-interpretive",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-claim-contains-schema-node-subtype-claim-interpretive",
      "summary": "The claim node type contains the interpretive subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-claim",
      "target": "xananode.canonical:schema/node-subtype-claim-normative",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-claim-contains-schema-node-subtype-claim-normative",
      "summary": "The claim node type contains the normative subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-claim",
      "target": "xananode.canonical:schema/node-subtype-claim-predictive",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-claim-contains-schema-node-subtype-claim-predictive",
      "summary": "The claim node type contains the predictive subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-communication",
      "target": "xananode.canonical:schema/node-subtype-communication-announcement",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-communication-contains-schema-node-subtype-communication-announcement",
      "summary": "The communication node type contains the announcement subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-communication",
      "target": "xananode.canonical:schema/node-subtype-communication-broadcast",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-communication-contains-schema-node-subtype-communication-broadcast",
      "summary": "The communication node type contains the broadcast subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-communication",
      "target": "xananode.canonical:schema/node-subtype-communication-chat",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-communication-contains-schema-node-subtype-communication-chat",
      "summary": "The communication node type contains the chat subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-communication",
      "target": "xananode.canonical:schema/node-subtype-communication-conversation",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-communication-contains-schema-node-subtype-communication-conversation",
      "summary": "The communication node type contains the conversation subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-communication",
      "target": "xananode.canonical:schema/node-subtype-communication-debate",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-communication-contains-schema-node-subtype-communication-debate",
      "summary": "The communication node type contains the debate subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-communication",
      "target": "xananode.canonical:schema/node-subtype-communication-discussion",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-communication-contains-schema-node-subtype-communication-discussion",
      "summary": "The communication node type contains the discussion subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-communication",
      "target": "xananode.canonical:schema/node-subtype-communication-forum",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-communication-contains-schema-node-subtype-communication-forum",
      "summary": "The communication node type contains the forum subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-communication",
      "target": "xananode.canonical:schema/node-subtype-communication-interview",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-communication-contains-schema-node-subtype-communication-interview",
      "summary": "The communication node type contains the interview subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-communication",
      "target": "xananode.canonical:schema/node-subtype-communication-meeting",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-communication-contains-schema-node-subtype-communication-meeting",
      "summary": "The communication node type contains the meeting subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-communication",
      "target": "xananode.canonical:schema/node-subtype-communication-message",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-communication-contains-schema-node-subtype-communication-message",
      "summary": "The communication node type contains the message subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-communication",
      "target": "xananode.canonical:schema/node-subtype-communication-presentation",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-communication-contains-schema-node-subtype-communication-presentation",
      "summary": "The communication node type contains the presentation subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-communication",
      "target": "xananode.canonical:schema/node-subtype-communication-publication",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-communication-contains-schema-node-subtype-communication-publication",
      "summary": "The communication node type contains the publication subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-communication",
      "target": "xananode.canonical:schema/node-subtype-communication-thread",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-communication-contains-schema-node-subtype-communication-thread",
      "summary": "The communication node type contains the thread subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-community",
      "target": "xananode.canonical:schema/node-subtype-community-fan",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-community-contains-schema-node-subtype-community-fan",
      "summary": "The community node type contains the fan subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-community",
      "target": "xananode.canonical:schema/node-subtype-community-forum",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-community-contains-schema-node-subtype-community-forum",
      "summary": "The community node type contains the forum subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-community",
      "target": "xananode.canonical:schema/node-subtype-community-local",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-community-contains-schema-node-subtype-community-local",
      "summary": "The community node type contains the local subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-community",
      "target": "xananode.canonical:schema/node-subtype-community-online",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-community-contains-schema-node-subtype-community-online",
      "summary": "The community node type contains the online subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-community",
      "target": "xananode.canonical:schema/node-subtype-community-open_source",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-community-contains-schema-node-subtype-community-open_source",
      "summary": "The community node type contains the open_source subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-community",
      "target": "xananode.canonical:schema/node-subtype-community-professional",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-community-contains-schema-node-subtype-community-professional",
      "summary": "The community node type contains the professional subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-community",
      "target": "xananode.canonical:schema/node-subtype-community-research",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-community-contains-schema-node-subtype-community-research",
      "summary": "The community node type contains the research subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-concept",
      "target": "xananode.canonical:schema/node-subtype-concept-distinction",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-concept-contains-schema-node-subtype-concept-distinction",
      "summary": "The concept node type contains the distinction subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-concept",
      "target": "xananode.canonical:schema/node-subtype-concept-failure_mode",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-concept-contains-schema-node-subtype-concept-failure_mode",
      "summary": "The concept node type contains the failure_mode subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-concept",
      "target": "xananode.canonical:schema/node-subtype-concept-frame",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-concept-contains-schema-node-subtype-concept-frame",
      "summary": "The concept node type contains the frame subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-concept",
      "target": "xananode.canonical:schema/node-subtype-concept-method",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-concept-contains-schema-node-subtype-concept-method",
      "summary": "The concept node type contains the method subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-concept",
      "target": "xananode.canonical:schema/node-subtype-concept-pattern",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-concept-contains-schema-node-subtype-concept-pattern",
      "summary": "The concept node type contains the pattern subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-concept",
      "target": "xananode.canonical:schema/node-subtype-concept-principle",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-concept-contains-schema-node-subtype-concept-principle",
      "summary": "The concept node type contains the principle subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-concept",
      "target": "xananode.canonical:schema/node-subtype-concept-theory",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-concept-contains-schema-node-subtype-concept-theory",
      "summary": "The concept node type contains the theory subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-essay",
      "target": "xananode.canonical:schema/node-subtype-essay-analysis",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-essay-contains-schema-node-subtype-essay-analysis",
      "summary": "The essay node type contains the analysis subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-essay",
      "target": "xananode.canonical:schema/node-subtype-essay-argument",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-essay-contains-schema-node-subtype-essay-argument",
      "summary": "The essay node type contains the argument subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-essay",
      "target": "xananode.canonical:schema/node-subtype-essay-critique",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-essay-contains-schema-node-subtype-essay-critique",
      "summary": "The essay node type contains the critique subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-essay",
      "target": "xananode.canonical:schema/node-subtype-essay-explainer",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-essay-contains-schema-node-subtype-essay-explainer",
      "summary": "The essay node type contains the explainer subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-essay",
      "target": "xananode.canonical:schema/node-subtype-essay-manifesto",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-essay-contains-schema-node-subtype-essay-manifesto",
      "summary": "The essay node type contains the manifesto subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-essay",
      "target": "xananode.canonical:schema/node-subtype-essay-reflection",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-essay-contains-schema-node-subtype-essay-reflection",
      "summary": "The essay node type contains the reflection subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-event",
      "target": "xananode.canonical:schema/node-subtype-event-conference",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-event-contains-schema-node-subtype-event-conference",
      "summary": "The event node type contains the conference subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-event",
      "target": "xananode.canonical:schema/node-subtype-event-historical_event",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-event-contains-schema-node-subtype-event-historical_event",
      "summary": "The event node type contains the historical_event subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-event",
      "target": "xananode.canonical:schema/node-subtype-event-incident",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-event-contains-schema-node-subtype-event-incident",
      "summary": "The event node type contains the incident subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-event",
      "target": "xananode.canonical:schema/node-subtype-event-meeting",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-event-contains-schema-node-subtype-event-meeting",
      "summary": "The event node type contains the meeting subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-event",
      "target": "xananode.canonical:schema/node-subtype-event-publication_event",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-event-contains-schema-node-subtype-event-publication_event",
      "summary": "The event node type contains the publication_event subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-event",
      "target": "xananode.canonical:schema/node-subtype-event-release",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-event-contains-schema-node-subtype-event-release",
      "summary": "The event node type contains the release subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-event",
      "target": "xananode.canonical:schema/node-subtype-event-talk",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-event-contains-schema-node-subtype-event-talk",
      "summary": "The event node type contains the talk subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-fragment",
      "target": "xananode.canonical:schema/node-subtype-fragment-code_block",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-fragment-contains-schema-node-subtype-fragment-code_block",
      "summary": "The fragment node type contains the code_block subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-fragment",
      "target": "xananode.canonical:schema/node-subtype-fragment-data_range",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-fragment-contains-schema-node-subtype-fragment-data_range",
      "summary": "The fragment node type contains the data_range subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-fragment",
      "target": "xananode.canonical:schema/node-subtype-fragment-image_region",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-fragment-contains-schema-node-subtype-fragment-image_region",
      "summary": "The fragment node type contains the image_region subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-fragment",
      "target": "xananode.canonical:schema/node-subtype-fragment-media_segment",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-fragment-contains-schema-node-subtype-fragment-media_segment",
      "summary": "The fragment node type contains the media_segment subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-fragment",
      "target": "xananode.canonical:schema/node-subtype-fragment-paragraph",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-fragment-contains-schema-node-subtype-fragment-paragraph",
      "summary": "The fragment node type contains the paragraph subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-fragment",
      "target": "xananode.canonical:schema/node-subtype-fragment-quote",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-fragment-contains-schema-node-subtype-fragment-quote",
      "summary": "The fragment node type contains the quote subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-fragment",
      "target": "xananode.canonical:schema/node-subtype-fragment-section",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-fragment-contains-schema-node-subtype-fragment-section",
      "summary": "The fragment node type contains the section subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-fragment",
      "target": "xananode.canonical:schema/node-subtype-fragment-sentence",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-fragment-contains-schema-node-subtype-fragment-sentence",
      "summary": "The fragment node type contains the sentence subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-hypothesis",
      "target": "xananode.canonical:schema/node-subtype-hypothesis-design",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-hypothesis-contains-schema-node-subtype-hypothesis-design",
      "summary": "The hypothesis node type contains the design subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-hypothesis",
      "target": "xananode.canonical:schema/node-subtype-hypothesis-diagnostic",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-hypothesis-contains-schema-node-subtype-hypothesis-diagnostic",
      "summary": "The hypothesis node type contains the diagnostic subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-hypothesis",
      "target": "xananode.canonical:schema/node-subtype-hypothesis-historical",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-hypothesis-contains-schema-node-subtype-hypothesis-historical",
      "summary": "The hypothesis node type contains the historical subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-hypothesis",
      "target": "xananode.canonical:schema/node-subtype-hypothesis-interpretive",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-hypothesis-contains-schema-node-subtype-hypothesis-interpretive",
      "summary": "The hypothesis node type contains the interpretive subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-hypothesis",
      "target": "xananode.canonical:schema/node-subtype-hypothesis-prediction",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-hypothesis-contains-schema-node-subtype-hypothesis-prediction",
      "summary": "The hypothesis node type contains the prediction subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-hypothesis",
      "target": "xananode.canonical:schema/node-subtype-hypothesis-scientific",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-hypothesis-contains-schema-node-subtype-hypothesis-scientific",
      "summary": "The hypothesis node type contains the scientific subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-item",
      "target": "xananode.canonical:schema/node-subtype-item-appliance",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-item-contains-schema-node-subtype-item-appliance",
      "summary": "The item node type contains the appliance subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-item",
      "target": "xananode.canonical:schema/node-subtype-item-artifact",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-item-contains-schema-node-subtype-item-artifact",
      "summary": "The item node type contains the artifact subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-item",
      "target": "xananode.canonical:schema/node-subtype-item-component",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-item-contains-schema-node-subtype-item-component",
      "summary": "The item node type contains the component subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-item",
      "target": "xananode.canonical:schema/node-subtype-item-container",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-item-contains-schema-node-subtype-item-container",
      "summary": "The item node type contains the container subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-item",
      "target": "xananode.canonical:schema/node-subtype-item-finished_item",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-item-contains-schema-node-subtype-item-finished_item",
      "summary": "The item node type contains the finished_item subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-item",
      "target": "xananode.canonical:schema/node-subtype-item-ingredient",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-item-contains-schema-node-subtype-item-ingredient",
      "summary": "The item node type contains the ingredient subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-item",
      "target": "xananode.canonical:schema/node-subtype-item-material",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-item-contains-schema-node-subtype-item-material",
      "summary": "The item node type contains the material subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-item",
      "target": "xananode.canonical:schema/node-subtype-item-spare_part",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-item-contains-schema-node-subtype-item-spare_part",
      "summary": "The item node type contains the spare_part subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-item",
      "target": "xananode.canonical:schema/node-subtype-item-tool",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-item-contains-schema-node-subtype-item-tool",
      "summary": "The item node type contains the tool subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-item",
      "target": "xananode.canonical:schema/node-subtype-item-utensil",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-item-contains-schema-node-subtype-item-utensil",
      "summary": "The item node type contains the utensil subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-knowledge_gap",
      "target": "xananode.canonical:schema/node-subtype-knowledge_gap-historical_uncertainty",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-knowledge_gap-contains-schema-node-subtype-knowledge_gap-historical_uncertainty",
      "summary": "The knowledge_gap node type contains the historical_uncertainty subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-knowledge_gap",
      "target": "xananode.canonical:schema/node-subtype-knowledge_gap-incomplete_context",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-knowledge_gap-contains-schema-node-subtype-knowledge_gap-incomplete_context",
      "summary": "The knowledge_gap node type contains the incomplete_context subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-knowledge_gap",
      "target": "xananode.canonical:schema/node-subtype-knowledge_gap-lost_document",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-knowledge_gap-contains-schema-node-subtype-knowledge_gap-lost_document",
      "summary": "The knowledge_gap node type contains the lost_document subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-knowledge_gap",
      "target": "xananode.canonical:schema/node-subtype-knowledge_gap-missing_citation",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-knowledge_gap-contains-schema-node-subtype-knowledge_gap-missing_citation",
      "summary": "The knowledge_gap node type contains the missing_citation subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-knowledge_gap",
      "target": "xananode.canonical:schema/node-subtype-knowledge_gap-missing_source",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-knowledge_gap-contains-schema-node-subtype-knowledge_gap-missing_source",
      "summary": "The knowledge_gap node type contains the missing_source subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-knowledge_gap",
      "target": "xananode.canonical:schema/node-subtype-knowledge_gap-unknown_author",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-knowledge_gap-contains-schema-node-subtype-knowledge_gap-unknown_author",
      "summary": "The knowledge_gap node type contains the unknown_author subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-app_icon",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-app_icon",
      "summary": "The media node type contains the app_icon subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-audio",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-audio",
      "summary": "The media node type contains the audio subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-branding_icon",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-branding_icon",
      "summary": "The media node type contains the branding_icon subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-clip",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-clip",
      "summary": "The media node type contains the clip subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-diagram",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-diagram",
      "summary": "The media node type contains the diagram subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-document",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-document",
      "summary": "The media node type contains the document subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-favicon",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-favicon",
      "summary": "The media node type contains the favicon subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-image",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-image",
      "summary": "The media node type contains the image subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-logo",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-logo",
      "summary": "The media node type contains the logo subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-scan",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-scan",
      "summary": "The media node type contains the scan subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-screenshot",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-screenshot",
      "summary": "The media node type contains the screenshot subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-source_snapshot",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-source_snapshot",
      "summary": "The media node type contains the source_snapshot subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-thumbnail",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-thumbnail",
      "summary": "The media node type contains the thumbnail subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-touch_icon",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-touch_icon",
      "summary": "The media node type contains the touch_icon subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-video",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-video",
      "summary": "The media node type contains the video subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-media",
      "target": "xananode.canonical:schema/node-subtype-media-web_snapshot",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-media-contains-schema-node-subtype-media-web_snapshot",
      "summary": "The media node type contains the web_snapshot subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-observation",
      "target": "xananode.canonical:schema/node-subtype-observation-anomaly",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-observation-contains-schema-node-subtype-observation-anomaly",
      "summary": "The observation node type contains the anomaly subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-observation",
      "target": "xananode.canonical:schema/node-subtype-observation-case_study",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-observation-contains-schema-node-subtype-observation-case_study",
      "summary": "The observation node type contains the case_study subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-observation",
      "target": "xananode.canonical:schema/node-subtype-observation-example",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-observation-contains-schema-node-subtype-observation-example",
      "summary": "The observation node type contains the example subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-observation",
      "target": "xananode.canonical:schema/node-subtype-observation-failure",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-observation-contains-schema-node-subtype-observation-failure",
      "summary": "The observation node type contains the failure subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-observation",
      "target": "xananode.canonical:schema/node-subtype-observation-news_event",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-observation-contains-schema-node-subtype-observation-news_event",
      "summary": "The observation node type contains the news_event subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-observation",
      "target": "xananode.canonical:schema/node-subtype-observation-symptom",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-observation-contains-schema-node-subtype-observation-symptom",
      "summary": "The observation node type contains the symptom subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-organization",
      "target": "xananode.canonical:schema/node-subtype-organization-agency",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-organization-contains-schema-node-subtype-organization-agency",
      "summary": "The organization node type contains the agency subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-organization",
      "target": "xananode.canonical:schema/node-subtype-organization-company",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-organization-contains-schema-node-subtype-organization-company",
      "summary": "The organization node type contains the company subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-organization",
      "target": "xananode.canonical:schema/node-subtype-organization-lab",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-organization-contains-schema-node-subtype-organization-lab",
      "summary": "The organization node type contains the lab subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-organization",
      "target": "xananode.canonical:schema/node-subtype-organization-nonprofit",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-organization-contains-schema-node-subtype-organization-nonprofit",
      "summary": "The organization node type contains the nonprofit subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-organization",
      "target": "xananode.canonical:schema/node-subtype-organization-publisher",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-organization-contains-schema-node-subtype-organization-publisher",
      "summary": "The organization node type contains the publisher subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-organization",
      "target": "xananode.canonical:schema/node-subtype-organization-standards_body",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-organization-contains-schema-node-subtype-organization-standards_body",
      "summary": "The organization node type contains the standards_body subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-organization",
      "target": "xananode.canonical:schema/node-subtype-organization-university",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-organization-contains-schema-node-subtype-organization-university",
      "summary": "The organization node type contains the university subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-person",
      "target": "xananode.canonical:schema/node-subtype-person-artist",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-person-contains-schema-node-subtype-person-artist",
      "summary": "The person node type contains the artist subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-person",
      "target": "xananode.canonical:schema/node-subtype-person-critic",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-person-contains-schema-node-subtype-person-critic",
      "summary": "The person node type contains the critic subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-person",
      "target": "xananode.canonical:schema/node-subtype-person-engineer",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-person-contains-schema-node-subtype-person-engineer",
      "summary": "The person node type contains the engineer subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-person",
      "target": "xananode.canonical:schema/node-subtype-person-founder",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-person-contains-schema-node-subtype-person-founder",
      "summary": "The person node type contains the founder subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-person",
      "target": "xananode.canonical:schema/node-subtype-person-programmer",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-person-contains-schema-node-subtype-person-programmer",
      "summary": "The person node type contains the programmer subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-person",
      "target": "xananode.canonical:schema/node-subtype-person-researcher",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-person-contains-schema-node-subtype-person-researcher",
      "summary": "The person node type contains the researcher subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-person",
      "target": "xananode.canonical:schema/node-subtype-person-scientist",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-person-contains-schema-node-subtype-person-scientist",
      "summary": "The person node type contains the scientist subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-person",
      "target": "xananode.canonical:schema/node-subtype-person-writer",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-person-contains-schema-node-subtype-person-writer",
      "summary": "The person node type contains the writer subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-place",
      "target": "xananode.canonical:schema/node-subtype-place-building",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-place-contains-schema-node-subtype-place-building",
      "summary": "The place node type contains the building subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-place",
      "target": "xananode.canonical:schema/node-subtype-place-city",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-place-contains-schema-node-subtype-place-city",
      "summary": "The place node type contains the city subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-place",
      "target": "xananode.canonical:schema/node-subtype-place-country",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-place-contains-schema-node-subtype-place-country",
      "summary": "The place node type contains the country subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-place",
      "target": "xananode.canonical:schema/node-subtype-place-institution_site",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-place-contains-schema-node-subtype-place-institution_site",
      "summary": "The place node type contains the institution_site subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-place",
      "target": "xananode.canonical:schema/node-subtype-place-lab",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-place-contains-schema-node-subtype-place-lab",
      "summary": "The place node type contains the lab subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-place",
      "target": "xananode.canonical:schema/node-subtype-place-online_space",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-place-contains-schema-node-subtype-place-online_space",
      "summary": "The place node type contains the online_space subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-place",
      "target": "xananode.canonical:schema/node-subtype-place-region",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-place-contains-schema-node-subtype-place-region",
      "summary": "The place node type contains the region subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-problem",
      "target": "xananode.canonical:schema/node-subtype-problem-design_problem",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-problem-contains-schema-node-subtype-problem-design_problem",
      "summary": "The problem node type contains the design_problem subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-problem",
      "target": "xananode.canonical:schema/node-subtype-problem-failure_mode",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-problem-contains-schema-node-subtype-problem-failure_mode",
      "summary": "The problem node type contains the failure_mode subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-problem",
      "target": "xananode.canonical:schema/node-subtype-problem-governance_problem",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-problem-contains-schema-node-subtype-problem-governance_problem",
      "summary": "The problem node type contains the governance_problem subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-problem",
      "target": "xananode.canonical:schema/node-subtype-problem-implementation_problem",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-problem-contains-schema-node-subtype-problem-implementation_problem",
      "summary": "The problem node type contains the implementation_problem subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-problem",
      "target": "xananode.canonical:schema/node-subtype-problem-research_problem",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-problem-contains-schema-node-subtype-problem-research_problem",
      "summary": "The problem node type contains the research_problem subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-problem",
      "target": "xananode.canonical:schema/node-subtype-problem-risk",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-problem-contains-schema-node-subtype-problem-risk",
      "summary": "The problem node type contains the risk subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-project",
      "target": "xananode.canonical:schema/node-subtype-project-fictional_system",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-project-contains-schema-node-subtype-project-fictional_system",
      "summary": "The project node type contains the fictional_system subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-project",
      "target": "xananode.canonical:schema/node-subtype-project-platform",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-project-contains-schema-node-subtype-project-platform",
      "summary": "The project node type contains the platform subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-project",
      "target": "xananode.canonical:schema/node-subtype-project-prototype",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-project-contains-schema-node-subtype-project-prototype",
      "summary": "The project node type contains the prototype subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-project",
      "target": "xananode.canonical:schema/node-subtype-project-research_project",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-project-contains-schema-node-subtype-project-research_project",
      "summary": "The project node type contains the research_project subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-project",
      "target": "xananode.canonical:schema/node-subtype-project-software",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-project-contains-schema-node-subtype-project-software",
      "summary": "The project node type contains the software subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-project",
      "target": "xananode.canonical:schema/node-subtype-project-standard",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-project-contains-schema-node-subtype-project-standard",
      "summary": "The project node type contains the standard subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-adaptation",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-adaptation",
      "summary": "The publication node type contains the adaptation subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-article",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-article",
      "summary": "The publication node type contains the article subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-book",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-book",
      "summary": "The publication node type contains the book subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-edition",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-edition",
      "summary": "The publication node type contains the edition subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-episode",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-episode",
      "summary": "The publication node type contains the episode subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-film",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-film",
      "summary": "The publication node type contains the film subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-installment",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-installment",
      "summary": "The publication node type contains the installment subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-omnibus",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-omnibus",
      "summary": "The publication node type contains the omnibus subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-paper",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-paper",
      "summary": "The publication node type contains the paper subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-pilot",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-pilot",
      "summary": "The publication node type contains the pilot subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-podcast",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-podcast",
      "summary": "The publication node type contains the podcast subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-reissue",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-reissue",
      "summary": "The publication node type contains the reissue subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-saga",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-saga",
      "summary": "The publication node type contains the saga subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-season",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-season",
      "summary": "The publication node type contains the season subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-series",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-series",
      "summary": "The publication node type contains the series subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-talk",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-talk",
      "summary": "The publication node type contains the talk subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-trilogy",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-trilogy",
      "summary": "The publication node type contains the trilogy subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-publication",
      "target": "xananode.canonical:schema/node-subtype-publication-webpage",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-publication-contains-schema-node-subtype-publication-webpage",
      "summary": "The publication node type contains the webpage subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-question",
      "target": "xananode.canonical:schema/node-subtype-question-design_question",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-question-contains-schema-node-subtype-question-design_question",
      "summary": "The question node type contains the design_question subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-question",
      "target": "xananode.canonical:schema/node-subtype-question-diagnostic_question",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-question-contains-schema-node-subtype-question-diagnostic_question",
      "summary": "The question node type contains the diagnostic_question subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-question",
      "target": "xananode.canonical:schema/node-subtype-question-historical_question",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-question-contains-schema-node-subtype-question-historical_question",
      "summary": "The question node type contains the historical_question subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-question",
      "target": "xananode.canonical:schema/node-subtype-question-open_question",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-question-contains-schema-node-subtype-question-open_question",
      "summary": "The question node type contains the open_question subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-question",
      "target": "xananode.canonical:schema/node-subtype-question-prediction_question",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-question-contains-schema-node-subtype-question-prediction_question",
      "summary": "The question node type contains the prediction_question subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-question",
      "target": "xananode.canonical:schema/node-subtype-question-research_question",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-question-contains-schema-node-subtype-question-research_question",
      "summary": "The question node type contains the research_question subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-relationship",
      "target": "xananode.canonical:schema/node-subtype-relationship-citation",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-relationship-contains-schema-node-subtype-relationship-citation",
      "summary": "The relationship node type contains the citation subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-relationship",
      "target": "xananode.canonical:schema/node-subtype-relationship-collaboration",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-relationship-contains-schema-node-subtype-relationship-collaboration",
      "summary": "The relationship node type contains the collaboration subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-relationship",
      "target": "xananode.canonical:schema/node-subtype-relationship-dependency",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-relationship-contains-schema-node-subtype-relationship-dependency",
      "summary": "The relationship node type contains the dependency subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-relationship",
      "target": "xananode.canonical:schema/node-subtype-relationship-dispute",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-relationship-contains-schema-node-subtype-relationship-dispute",
      "summary": "The relationship node type contains the dispute subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-relationship",
      "target": "xananode.canonical:schema/node-subtype-relationship-friendship",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-relationship-contains-schema-node-subtype-relationship-friendship",
      "summary": "The relationship node type contains the friendship subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-relationship",
      "target": "xananode.canonical:schema/node-subtype-relationship-influence",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-relationship-contains-schema-node-subtype-relationship-influence",
      "summary": "The relationship node type contains the influence subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-relationship",
      "target": "xananode.canonical:schema/node-subtype-relationship-lineage",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-relationship-contains-schema-node-subtype-relationship-lineage",
      "summary": "The relationship node type contains the lineage subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-response",
      "target": "xananode.canonical:schema/node-subtype-response-answer",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-response-contains-schema-node-subtype-response-answer",
      "summary": "The response node type contains the answer subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-response",
      "target": "xananode.canonical:schema/node-subtype-response-clarification",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-response-contains-schema-node-subtype-response-clarification",
      "summary": "The response node type contains the clarification subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-response",
      "target": "xananode.canonical:schema/node-subtype-response-comment",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-response-contains-schema-node-subtype-response-comment",
      "summary": "The response node type contains the comment subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-response",
      "target": "xananode.canonical:schema/node-subtype-response-follow_up",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-response-contains-schema-node-subtype-response-follow_up",
      "summary": "The response node type contains the follow_up subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-response",
      "target": "xananode.canonical:schema/node-subtype-response-rebuttal",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-response-contains-schema-node-subtype-response-rebuttal",
      "summary": "The response node type contains the rebuttal subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-response",
      "target": "xananode.canonical:schema/node-subtype-response-reply",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-response-contains-schema-node-subtype-response-reply",
      "summary": "The response node type contains the reply subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-response",
      "target": "xananode.canonical:schema/node-subtype-response-review_response",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-response-contains-schema-node-subtype-response-review_response",
      "summary": "The response node type contains the review_response subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-revision",
      "target": "xananode.canonical:schema/node-subtype-revision-claim_revision",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-revision-contains-schema-node-subtype-revision-claim_revision",
      "summary": "The revision node type contains the claim_revision subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-revision",
      "target": "xananode.canonical:schema/node-subtype-revision-media_revision",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-revision-contains-schema-node-subtype-revision-media_revision",
      "summary": "The revision node type contains the media_revision subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-revision",
      "target": "xananode.canonical:schema/node-subtype-revision-node_revision",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-revision-contains-schema-node-subtype-revision-node_revision",
      "summary": "The revision node type contains the node_revision subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-revision",
      "target": "xananode.canonical:schema/node-subtype-revision-relationship_revision",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-revision-contains-schema-node-subtype-revision-relationship_revision",
      "summary": "The revision node type contains the relationship_revision subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-canonical_schema_record",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-canonical_schema_record",
      "summary": "The schema node type contains the canonical_schema_record subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-governance_rule",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-governance_rule",
      "summary": "The schema node type contains the governance_rule subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-namespace_record",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-namespace_record",
      "summary": "The schema node type contains the namespace_record subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-node_subtype_schema",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-node_subtype_schema",
      "summary": "The schema node type contains the node_subtype_schema subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-node_type_schema",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-node_type_schema",
      "summary": "The schema node type contains the node_type_schema subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-projection_style_rule",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-projection_style_rule",
      "summary": "The schema node type contains the projection_style_rule subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-property_registry_entry",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-property_registry_entry",
      "summary": "The schema node type contains the property_registry_entry subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-protocol_artifact",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-protocol_artifact",
      "summary": "The schema node type contains the protocol_artifact subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-relationship_category_schema",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-relationship_category_schema",
      "summary": "The schema node type contains the relationship_category_schema subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-relationship_type_schema",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-relationship_type_schema",
      "summary": "The schema node type contains the relationship_type_schema subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-schema_field",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-schema_field",
      "summary": "The schema node type contains the schema_field subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-schema_term",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-schema_term",
      "summary": "The schema node type contains the schema_term subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-semantic_rule",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-semantic_rule",
      "summary": "The schema node type contains the semantic_rule subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-style_rule",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-style_rule",
      "summary": "The schema node type contains the style_rule subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-term",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-term",
      "summary": "The schema node type contains the term subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-schema",
      "target": "xananode.canonical:schema/node-subtype-schema-validation_rule",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-schema-contains-schema-node-subtype-schema-validation_rule",
      "summary": "The schema node type contains the validation_rule subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-archive",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-archive",
      "summary": "The source node type contains the archive subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-article",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-article",
      "summary": "The source node type contains the article subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-audio_drama",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-audio_drama",
      "summary": "The source node type contains the audio_drama subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-book",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-book",
      "summary": "The source node type contains the book subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-dataset",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-dataset",
      "summary": "The source node type contains the dataset subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-documentation",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-documentation",
      "summary": "The source node type contains the documentation subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-git_repository",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-git_repository",
      "summary": "The source node type contains the git_repository subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-interview",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-interview",
      "summary": "The source node type contains the interview subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-legal_policy",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-legal_policy",
      "summary": "The source node type contains the legal_policy subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-license",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-license",
      "summary": "The source node type contains the license subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-notice",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-notice",
      "summary": "The source node type contains the notice subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-official_site",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-official_site",
      "summary": "The source node type contains the official_site subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-paper",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-paper",
      "summary": "The source node type contains the paper subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-radio_episode",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-radio_episode",
      "summary": "The source node type contains the radio_episode subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-radio_series",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-radio_series",
      "summary": "The source node type contains the radio_series subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-social_profile",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-social_profile",
      "summary": "The source node type contains the social_profile subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-stage_play",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-stage_play",
      "summary": "The source node type contains the stage_play subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-support_page",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-support_page",
      "summary": "The source node type contains the support_page subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-talk",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-talk",
      "summary": "The source node type contains the talk subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-television_episode",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-television_episode",
      "summary": "The source node type contains the television_episode subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-television_series",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-television_series",
      "summary": "The source node type contains the television_series subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-trademark_policy",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-trademark_policy",
      "summary": "The source node type contains the trademark_policy subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-transcript",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-transcript",
      "summary": "The source node type contains the transcript subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-web_snapshot",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-web_snapshot",
      "summary": "The source node type contains the web_snapshot subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-source",
      "target": "xananode.canonical:schema/node-subtype-source-website",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-source-contains-schema-node-subtype-source-website",
      "summary": "The source node type contains the website subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-technology",
      "target": "xananode.canonical:schema/node-subtype-technology-algorithm",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-technology-contains-schema-node-subtype-technology-algorithm",
      "summary": "The technology node type contains the algorithm subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-technology",
      "target": "xananode.canonical:schema/node-subtype-technology-architecture",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-technology-contains-schema-node-subtype-technology-architecture",
      "summary": "The technology node type contains the architecture subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-technology",
      "target": "xananode.canonical:schema/node-subtype-technology-format",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-technology-contains-schema-node-subtype-technology-format",
      "summary": "The technology node type contains the format subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-technology",
      "target": "xananode.canonical:schema/node-subtype-technology-language",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-technology-contains-schema-node-subtype-technology-language",
      "summary": "The technology node type contains the language subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-technology",
      "target": "xananode.canonical:schema/node-subtype-technology-model",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-technology-contains-schema-node-subtype-technology-model",
      "summary": "The technology node type contains the model subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-technology",
      "target": "xananode.canonical:schema/node-subtype-technology-platform",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-technology-contains-schema-node-subtype-technology-platform",
      "summary": "The technology node type contains the platform subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-technology",
      "target": "xananode.canonical:schema/node-subtype-technology-protocol",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-technology-contains-schema-node-subtype-technology-protocol",
      "summary": "The technology node type contains the protocol subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-technology",
      "target": "xananode.canonical:schema/node-subtype-technology-tool",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-technology-contains-schema-node-subtype-technology-tool",
      "summary": "The technology node type contains the tool subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-trail",
      "target": "xananode.canonical:schema/node-subtype-trail-argument",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-trail-contains-schema-node-subtype-trail-argument",
      "summary": "The trail node type contains the argument subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-trail",
      "target": "xananode.canonical:schema/node-subtype-trail-dispute_path",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-trail-contains-schema-node-subtype-trail-dispute_path",
      "summary": "The trail node type contains the dispute_path subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-trail",
      "target": "xananode.canonical:schema/node-subtype-trail-evidence_path",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-trail-contains-schema-node-subtype-trail-evidence_path",
      "summary": "The trail node type contains the evidence_path subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-trail",
      "target": "xananode.canonical:schema/node-subtype-trail-historical",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-trail-contains-schema-node-subtype-trail-historical",
      "summary": "The trail node type contains the historical subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-trail",
      "target": "xananode.canonical:schema/node-subtype-trail-introductory",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-trail-contains-schema-node-subtype-trail-introductory",
      "summary": "The trail node type contains the introductory subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/node-type-trail",
      "target": "xananode.canonical:schema/node-subtype-trail-teaching_path",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-node-type-trail-contains-schema-node-subtype-trail-teaching_path",
      "summary": "The trail node type contains the teaching_path subtype.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-birth_date",
      "target": "xananode.canonical:schema/node-type-organization",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-birth_date-uses-schema-node-type-organization",
      "summary": "Birth date applies to organization nodes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-birth_date",
      "target": "xananode.canonical:schema/node-type-person",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-birth_date-uses-schema-node-type-person",
      "summary": "Birth date applies to person nodes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-birth_date",
      "target": "xananode.canonical:schema/node-type-project",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-birth_date-uses-schema-node-type-project",
      "summary": "Birth date applies to project nodes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-currency_value",
      "target": "xananode.canonical:schema/node-type-claim",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-currency_value-uses-schema-node-type-claim",
      "summary": "Currency value applies to claim nodes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-currency_value",
      "target": "xananode.canonical:schema/node-type-observation",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-currency_value-uses-schema-node-type-observation",
      "summary": "Currency value applies to observation nodes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-currency_value",
      "target": "xananode.canonical:schema/node-type-project",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-currency_value-uses-schema-node-type-project",
      "summary": "Currency value applies to project nodes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-currency_value",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-currency_value-uses-schema-node-type-source",
      "summary": "Currency value applies to source nodes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-geo_coordinates",
      "target": "xananode.canonical:schema/node-type-event",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-geo_coordinates-uses-schema-node-type-event",
      "summary": "Geographic coordinates applies to event nodes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-geo_coordinates",
      "target": "xananode.canonical:schema/node-type-media",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-geo_coordinates-uses-schema-node-type-media",
      "summary": "Geographic coordinates applies to media nodes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-geo_coordinates",
      "target": "xananode.canonical:schema/node-type-organization",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-geo_coordinates-uses-schema-node-type-organization",
      "summary": "Geographic coordinates applies to organization nodes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-geo_coordinates",
      "target": "xananode.canonical:schema/node-type-place",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-geo_coordinates-uses-schema-node-type-place",
      "summary": "Geographic coordinates applies to place nodes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-geo_coordinates",
      "target": "xananode.canonical:schema/node-type-source",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-geo_coordinates-uses-schema-node-type-source",
      "summary": "Geographic coordinates applies to source nodes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-registry",
      "target": "xananode.canonical:schema/property-birth_date",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-registry-contains-schema-property-birth_date",
      "summary": "The property registry contains the birth_date property.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-registry",
      "target": "xananode.canonical:schema/property-currency_value",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-registry-contains-schema-property-currency_value",
      "summary": "The property registry contains the currency_value property.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-registry",
      "target": "xananode.canonical:schema/property-external_identifier",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-registry-contains-schema-property-external_identifier",
      "summary": "The property registry contains the external_identifier property.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-registry",
      "target": "xananode.canonical:schema/property-geo_coordinates",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-registry-contains-schema-property-geo_coordinates",
      "summary": "The property registry contains the geo_coordinates property.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/property-registry",
      "target": "xananode.canonical:schema/property-measurement_si",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-property-registry-contains-schema-property-measurement_si",
      "summary": "The property registry contains the measurement_si property.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-contexts",
      "target": "xananode.canonical:schema/protocol-artifact-contexts-xananode.context.jsonld",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-contexts-contains-schema-protocol-artifact-contexts-xananode.context.jsonld-raw-file-contexts-xananode.context.jsonld",
      "summary": "Protocol Contexts includes Contexts / XanaNode Context.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-contexts-xananode.context.jsonld",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-contexts-xananode.context.jsonld-documents-concept-protocol-artifacts-raw-file-docs-contexts-xananode.context.jsonld",
      "summary": "Contexts / XanaNode Context belongs to the published XanaNode linked-data context set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:media/protocol-artifact-examples-minimal-substrate-assets-branding-xananode-icon.svg",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-media-protocol-artifact-examples-minimal-substrate-assets-branding-xananode-icon.svg-raw-file-examples-minimal-substrate-assets-branding-xananode-icon.svg",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Assets / Branding / XanaNode Icon Svg.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-compatibility-report.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-compatibility-report.json-raw-file-examples-federation-example-compatibility-report.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Compatibility Report.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-merge-report.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-merge-report.json-raw-file-examples-federation-example-merge-report.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Merge Report.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-federation-review-proof.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-review-workspace-nodes-federation-review-proof.json-raw-file-examples-federation-example-review-workspace-nodes-federation-review-proof.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Review Workspace / Nodes / Federation Review Proof.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-knowledge-substrate.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-review-workspace-nodes-knowledge-substrate.json-raw-file-examples-federation-example-review-workspace-nodes-knowledge-substrate.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Review Workspace / Nodes / Knowledge Substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-memory-substrate.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-review-workspace-nodes-memory-substrate.json-raw-file-examples-federation-example-review-workspace-nodes-memory-substrate.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Review Workspace / Nodes / Memory Substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-non-destructive-merge-review.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-review-workspace-nodes-non-destructive-merge-review.json-raw-file-examples-federation-example-review-workspace-nodes-non-destructive-merge-review.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Review Workspace / Nodes / Non Destructive Merge Review.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-a.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-a.json-raw-file-examples-federation-example-review-workspace-nodes-person-researcher-a.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Review Workspace / Nodes / Person Researcher A.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-b.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-b.json-raw-file-examples-federation-example-review-workspace-nodes-person-researcher-b.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Review Workspace / Nodes / Person Researcher B.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-relationships.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-review-workspace-relationships.json-raw-file-examples-federation-example-review-workspace-relationships.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Review Workspace / Relationships.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-substrate.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-review-workspace-substrate.json-raw-file-examples-federation-example-review-workspace-substrate.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Review Workspace / Substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-nodes-knowledge-substrate.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-substrate-a-nodes-knowledge-substrate.json-raw-file-examples-federation-example-substrate-a-nodes-knowledge-substrate.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Substrate A / Nodes / Knowledge Substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-nodes-person-researcher-a.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-substrate-a-nodes-person-researcher-a.json-raw-file-examples-federation-example-substrate-a-nodes-person-researcher-a.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Substrate A / Nodes / Person Researcher A.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-relationships.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-substrate-a-relationships.json-raw-file-examples-federation-example-substrate-a-relationships.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Substrate A / Relationships.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-substrate.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-substrate-a-substrate.json-raw-file-examples-federation-example-substrate-a-substrate.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Substrate A / Substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-nodes-memory-substrate.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-substrate-b-nodes-memory-substrate.json-raw-file-examples-federation-example-substrate-b-nodes-memory-substrate.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Substrate B / Nodes / Memory Substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-nodes-person-researcher-b.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-substrate-b-nodes-person-researcher-b.json-raw-file-examples-federation-example-substrate-b-nodes-person-researcher-b.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Substrate B / Nodes / Person Researcher B.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-relationships.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-substrate-b-relationships.json-raw-file-examples-federation-example-substrate-b-relationships.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Substrate B / Relationships.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-substrate.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-substrate-b-substrate.json-raw-file-examples-federation-example-substrate-b-substrate.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Substrate B / Substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-diff.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-federation-example-substrate-diff.json-raw-file-examples-federation-example-substrate-diff.json",
      "summary": "Protocol Examples includes Examples / Federation Example / Substrate Diff.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-author-profile.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-author-profile.json-raw-file-examples-minimal-substrate-author-profile.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Author Profile.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nanopublication-substrate-claim.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-nanopublication-substrate-claim.json-raw-file-examples-minimal-substrate-nanopublication-substrate-claim.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Nanopublication Substrate Claim.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-claim-substrate-structure.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-nodes-claim-substrate-structure.json-raw-file-examples-minimal-substrate-nodes-claim-substrate-structure.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Nodes / Claim Substrate Structure.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-communication-minimal-substrate-discussion.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-nodes-communication-minimal-substrate-discussion.json-raw-file-examples-minimal-substrate-nodes-communication-minimal-substrate-discussion.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Nodes / Communication Minimal Substrate Discussion.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-concept-associative-trails.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-nodes-concept-associative-trails.json-raw-file-examples-minimal-substrate-nodes-concept-associative-trails.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Nodes / Concept Associative Trails.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-essay-relationship-navigation-intro.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-nodes-essay-relationship-navigation-intro.json-raw-file-examples-minimal-substrate-nodes-essay-relationship-navigation-intro.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Nodes / Essay Relationship Navigation Intro.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-fragment-as-we-may-think-0004.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-nodes-fragment-as-we-may-think-0004.json-raw-file-examples-minimal-substrate-nodes-fragment-as-we-may-think-0004.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Nodes / Fragment As We May Think 0004.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-knowledge-gap-missing-relationship-evidence.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-nodes-knowledge-gap-missing-relationship-evidence.json-raw-file-examples-minimal-substrate-nodes-knowledge-gap-missing-relationship-evidence.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Nodes / Knowledge Gap Missing Relationship Evidence.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-knowledge-substrate.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-nodes-knowledge-substrate.json-raw-file-examples-minimal-substrate-nodes-knowledge-substrate.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Nodes / Knowledge Substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-media-xananode-icon.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-nodes-media-xananode-icon.json-raw-file-examples-minimal-substrate-nodes-media-xananode-icon.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Nodes / Media XanaNode Icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-person-example-maintainer.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-nodes-person-example-maintainer.json-raw-file-examples-minimal-substrate-nodes-person-example-maintainer.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Nodes / Person Example Maintainer.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-question-why-relationships-matter.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-nodes-question-why-relationships-matter.json-raw-file-examples-minimal-substrate-nodes-question-why-relationships-matter.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Nodes / Question Why Relationships Matter.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-response-relationships-preserve-context.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-nodes-response-relationships-preserve-context.json-raw-file-examples-minimal-substrate-nodes-response-relationships-preserve-context.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Nodes / Response Relationships Preserve Context.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-source-as-we-may-think.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-nodes-source-as-we-may-think.json-raw-file-examples-minimal-substrate-nodes-source-as-we-may-think.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Nodes / Source As We May Think.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-trail-start-here.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-nodes-trail-start-here.json-raw-file-examples-minimal-substrate-nodes-trail-start-here.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Nodes / Trail Start Here.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-relationships.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-relationships.json-raw-file-examples-minimal-substrate-relationships.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Relationships.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-ro-crate-metadata.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-ro-crate-metadata.json-raw-file-examples-minimal-substrate-ro-crate-metadata.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / RO-Crate Metadata.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-substrate.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-schema-protocol-artifact-examples-minimal-substrate-substrate.json-raw-file-examples-minimal-substrate-substrate.json",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:source/protocol-artifact-examples-federation-example-readme.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-source-protocol-artifact-examples-federation-example-readme.md-raw-file-examples-federation-example-readme.md",
      "summary": "Protocol Examples includes Examples / Federation Example / README.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:source/protocol-artifact-examples-federation-example-review-workspace-readme.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-source-protocol-artifact-examples-federation-example-review-workspace-readme.md-raw-file-examples-federation-example-review-workspace-readme.md",
      "summary": "Protocol Examples includes Examples / Federation Example / Review Workspace / README.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:source/protocol-artifact-examples-federation-example-substrate-a-readme.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-source-protocol-artifact-examples-federation-example-substrate-a-readme.md-raw-file-examples-federation-example-substrate-a-readme.md",
      "summary": "Protocol Examples includes Examples / Federation Example / Substrate A / README.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:source/protocol-artifact-examples-federation-example-substrate-b-readme.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-source-protocol-artifact-examples-federation-example-substrate-b-readme.md-raw-file-examples-federation-example-substrate-b-readme.md",
      "summary": "Protocol Examples includes Examples / Federation Example / Substrate B / README.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:source/protocol-artifact-examples-minimal-substrate-nodes-readme.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-source-protocol-artifact-examples-minimal-substrate-nodes-readme.md-raw-file-examples-minimal-substrate-nodes-readme.md",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / Nodes / README.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:source/protocol-artifact-examples-minimal-substrate-readme.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-source-protocol-artifact-examples-minimal-substrate-readme.md-raw-file-examples-minimal-substrate-readme.md",
      "summary": "Protocol Examples includes Examples / Minimal Substrate / README.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples",
      "target": "xananode.canonical:source/protocol-artifact-examples-readme.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-contains-source-protocol-artifact-examples-readme.md-raw-file-examples-readme.md",
      "summary": "Protocol Examples includes Examples / README.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-compatibility-report.json",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-diff.json",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-compatibility-report.json-continues_to-schema-protocol-artifact-examples-federation-example-substrate-diff.json",
      "summary": "The merge review continues from the compatibility report to the structural diff.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-compatibility-report.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-compatibility-report.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-compatibility-report.json",
      "summary": "Examples / Federation Example / Compatibility Report belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-merge-report.json",
      "target": "xananode.canonical:schema/protocol-artifact-examples-federation-example-compatibility-report.json",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-merge-report.json-continues_to-schema-protocol-artifact-examples-federation-example-compatibility-report.json",
      "summary": "The merge review continues from the merge report to the compatibility report.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-merge-report.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-merge-report.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-merge-report.json",
      "summary": "Examples / Federation Example / Merge Report belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-federation-review-proof.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-review-workspace-nodes-federation-review-proof.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-review-workspace-nodes-federation-review-proof.json",
      "summary": "Examples / Federation Example / Review Workspace / Nodes / Federation Review Proof belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-knowledge-substrate.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-review-workspace-nodes-knowledge-substrate.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-review-workspace-nodes-knowledge-substrate.json",
      "summary": "Examples / Federation Example / Review Workspace / Nodes / Knowledge Substrate belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-memory-substrate.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-review-workspace-nodes-memory-substrate.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-review-workspace-nodes-memory-substrate.json",
      "summary": "Examples / Federation Example / Review Workspace / Nodes / Memory Substrate belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-non-destructive-merge-review.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-review-workspace-nodes-non-destructive-merge-review.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-review-workspace-nodes-non-destructive-merge-review.json",
      "summary": "Examples / Federation Example / Review Workspace / Nodes / Non Destructive Merge Review belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-a.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-a.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-review-workspace-nodes-person-researcher-a.json",
      "summary": "Examples / Federation Example / Review Workspace / Nodes / Person Researcher A belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-b.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-review-workspace-nodes-person-researcher-b.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-review-workspace-nodes-person-researcher-b.json",
      "summary": "Examples / Federation Example / Review Workspace / Nodes / Person Researcher B belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-relationships.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-review-workspace-relationships.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-review-workspace-relationships.json",
      "summary": "Examples / Federation Example / Review Workspace / Relationships belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-review-workspace-substrate.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-review-workspace-substrate.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-review-workspace-substrate.json",
      "summary": "Examples / Federation Example / Review Workspace / Substrate belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-nodes-knowledge-substrate.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-substrate-a-nodes-knowledge-substrate.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-substrate-a-nodes-knowledge-substrate.json",
      "summary": "Examples / Federation Example / Substrate A / Nodes / Knowledge Substrate belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-nodes-person-researcher-a.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-substrate-a-nodes-person-researcher-a.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-substrate-a-nodes-person-researcher-a.json",
      "summary": "Examples / Federation Example / Substrate A / Nodes / Person Researcher A belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-relationships.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-substrate-a-relationships.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-substrate-a-relationships.json",
      "summary": "Examples / Federation Example / Substrate A / Relationships belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-a-substrate.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-substrate-a-substrate.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-substrate-a-substrate.json",
      "summary": "Examples / Federation Example / Substrate A / Substrate belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-nodes-memory-substrate.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-substrate-b-nodes-memory-substrate.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-substrate-b-nodes-memory-substrate.json",
      "summary": "Examples / Federation Example / Substrate B / Nodes / Memory Substrate belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-nodes-person-researcher-b.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-substrate-b-nodes-person-researcher-b.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-substrate-b-nodes-person-researcher-b.json",
      "summary": "Examples / Federation Example / Substrate B / Nodes / Person Researcher B belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-relationships.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-substrate-b-relationships.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-substrate-b-relationships.json",
      "summary": "Examples / Federation Example / Substrate B / Relationships belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-b-substrate.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-substrate-b-substrate.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-substrate-b-substrate.json",
      "summary": "Examples / Federation Example / Substrate B / Substrate belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-federation-example-substrate-diff.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-federation-example-substrate-diff.json-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-substrate-diff.json",
      "summary": "Examples / Federation Example / Substrate Diff belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-author-profile.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-author-profile.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-author-profile.json",
      "summary": "Examples / Minimal Substrate / Author Profile belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nanopublication-substrate-claim.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-nanopublication-substrate-claim.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-nanopublication-substrate-claim.json",
      "summary": "Examples / Minimal Substrate / Nanopublication Substrate Claim belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-claim-substrate-structure.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-nodes-claim-substrate-structure.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-nodes-claim-substrate-structure.json",
      "summary": "Examples / Minimal Substrate / Nodes / Claim Substrate Structure belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-communication-minimal-substrate-discussion.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-nodes-communication-minimal-substrate-discussion.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-nodes-communication-minimal-substrate-discussion.json",
      "summary": "Examples / Minimal Substrate / Nodes / Communication Minimal Substrate Discussion belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-concept-associative-trails.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-nodes-concept-associative-trails.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-nodes-concept-associative-trails.json",
      "summary": "Examples / Minimal Substrate / Nodes / Concept Associative Trails belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-essay-relationship-navigation-intro.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-nodes-essay-relationship-navigation-intro.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-nodes-essay-relationship-navigation-intro.json",
      "summary": "Examples / Minimal Substrate / Nodes / Essay Relationship Navigation Intro belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-fragment-as-we-may-think-0004.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-nodes-fragment-as-we-may-think-0004.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-nodes-fragment-as-we-may-think-0004.json",
      "summary": "Examples / Minimal Substrate / Nodes / Fragment As We May Think 0004 belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-knowledge-gap-missing-relationship-evidence.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-nodes-knowledge-gap-missing-relationship-evidence.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-nodes-knowledge-gap-missing-relationship-evidence.json",
      "summary": "Examples / Minimal Substrate / Nodes / Knowledge Gap Missing Relationship Evidence belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-knowledge-substrate.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-nodes-knowledge-substrate.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-nodes-knowledge-substrate.json",
      "summary": "Examples / Minimal Substrate / Nodes / Knowledge Substrate belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-media-xananode-icon.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-nodes-media-xananode-icon.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-nodes-media-xananode-icon.json",
      "summary": "Examples / Minimal Substrate / Nodes / Media XanaNode Icon belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-person-example-maintainer.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-nodes-person-example-maintainer.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-nodes-person-example-maintainer.json",
      "summary": "Examples / Minimal Substrate / Nodes / Person Example Maintainer belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-question-why-relationships-matter.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-nodes-question-why-relationships-matter.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-nodes-question-why-relationships-matter.json",
      "summary": "Examples / Minimal Substrate / Nodes / Question Why Relationships Matter belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-response-relationships-preserve-context.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-nodes-response-relationships-preserve-context.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-nodes-response-relationships-preserve-context.json",
      "summary": "Examples / Minimal Substrate / Nodes / Response Relationships Preserve Context belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-source-as-we-may-think.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-nodes-source-as-we-may-think.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-nodes-source-as-we-may-think.json",
      "summary": "Examples / Minimal Substrate / Nodes / Source As We May Think belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-nodes-trail-start-here.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-nodes-trail-start-here.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-nodes-trail-start-here.json",
      "summary": "Examples / Minimal Substrate / Nodes / Trail Start Here belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-relationships.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-relationships.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-relationships.json",
      "summary": "Examples / Minimal Substrate / Relationships belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-ro-crate-metadata.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-ro-crate-metadata.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-ro-crate-metadata.json",
      "summary": "Examples / Minimal Substrate / RO-Crate Metadata belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-examples-minimal-substrate-substrate.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-examples-minimal-substrate-substrate.json-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-substrate.json",
      "summary": "Examples / Minimal Substrate / Substrate belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-governance",
      "target": "xananode.canonical:source/protocol-artifact-governance-canonical-type-policy.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-governance-contains-source-protocol-artifact-governance-canonical-type-policy.md-raw-file-governance-canonical-type-policy.md",
      "summary": "Protocol Governance includes Governance / Canonical Type Policy.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-governance",
      "target": "xananode.canonical:source/protocol-artifact-governance-dispute-resolution.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-governance-contains-source-protocol-artifact-governance-dispute-resolution.md-raw-file-governance-dispute-resolution.md",
      "summary": "Protocol Governance includes Governance / Dispute Resolution.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-governance",
      "target": "xananode.canonical:source/protocol-artifact-governance-federation-rules.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-governance-contains-source-protocol-artifact-governance-federation-rules.md-raw-file-governance-federation-rules.md",
      "summary": "Protocol Governance includes Governance / Federation Rules.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-governance",
      "target": "xananode.canonical:source/protocol-artifact-governance-moderation-model.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-governance-contains-source-protocol-artifact-governance-moderation-model.md-raw-file-governance-moderation-model.md",
      "summary": "Protocol Governance includes Governance / Moderation Model.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-governance",
      "target": "xananode.canonical:source/protocol-artifact-governance-readme.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-governance-contains-source-protocol-artifact-governance-readme.md-raw-file-governance-readme.md",
      "summary": "Protocol Governance includes Governance / README.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-governance",
      "target": "xananode.canonical:source/protocol-artifact-governance-schema-extension-rules.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-governance-contains-source-protocol-artifact-governance-schema-extension-rules.md-raw-file-governance-schema-extension-rules.md",
      "summary": "Protocol Governance includes Governance / Schema Extension Rules.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-governance",
      "target": "xananode.canonical:source/protocol-artifact-governance-versioning-policy.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-governance-contains-source-protocol-artifact-governance-versioning-policy.md-raw-file-governance-versioning-policy.md",
      "summary": "Protocol Governance includes Governance / Versioning Policy.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-proposals",
      "target": "xananode.canonical:source/protocol-artifact-proposals-readme.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-proposals-contains-source-protocol-artifact-proposals-readme.md-raw-file-proposals-readme.md",
      "summary": "Protocol Proposals includes Proposals / README.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-proposals",
      "target": "xananode.canonical:source/protocol-artifact-proposals-xnp-0001-namespaces.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-proposals-contains-source-protocol-artifact-proposals-xnp-0001-namespaces.md-raw-file-proposals-xnp-0001-namespaces.md",
      "summary": "Protocol Proposals includes Proposals / XNP 0001 Namespaces.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-proposals",
      "target": "xananode.canonical:source/protocol-artifact-proposals-xnp-0002-extension-schemas.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-proposals-contains-source-protocol-artifact-proposals-xnp-0002-extension-schemas.md-raw-file-proposals-xnp-0002-extension-schemas.md",
      "summary": "Protocol Proposals includes Proposals / XNP 0002 Extension Schemas.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-proposals",
      "target": "xananode.canonical:source/protocol-artifact-proposals-xnp-0003-federation.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-proposals-contains-source-protocol-artifact-proposals-xnp-0003-federation.md-raw-file-proposals-xnp-0003-federation.md",
      "summary": "Protocol Proposals includes Proposals / XNP 0003 Federation.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-proposals",
      "target": "xananode.canonical:source/protocol-artifact-proposals-xnp-0004-merge-validation.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-proposals-contains-source-protocol-artifact-proposals-xnp-0004-merge-validation.md-raw-file-proposals-xnp-0004-merge-validation.md",
      "summary": "Protocol Proposals includes Proposals / XNP 0004 Merge Validation.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-proposals",
      "target": "xananode.canonical:source/protocol-artifact-proposals-xnp-0005-transclusion.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-proposals-contains-source-protocol-artifact-proposals-xnp-0005-transclusion.md-raw-file-proposals-xnp-0005-transclusion.md",
      "summary": "Protocol Proposals includes Proposals / XNP 0005 Transclusion.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-proposals",
      "target": "xananode.canonical:source/protocol-artifact-proposals-xnp-0006-tumbler-addressing.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-proposals-contains-source-protocol-artifact-proposals-xnp-0006-tumbler-addressing.md-raw-file-proposals-xnp-0006-tumbler-addressing.md",
      "summary": "Protocol Proposals includes Proposals / XNP 0006 Tumbler Addressing.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-proposals",
      "target": "xananode.canonical:source/protocol-artifact-proposals-xnp-0007-git-backed-substrates.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-proposals-contains-source-protocol-artifact-proposals-xnp-0007-git-backed-substrates.md-raw-file-proposals-xnp-0007-git-backed-substrates.md",
      "summary": "Protocol Proposals includes Proposals / XNP 0007 Git Backed Substrates.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-proposals",
      "target": "xananode.canonical:source/protocol-artifact-proposals-xnp-0008-derived-inverse-relationships.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-proposals-contains-source-protocol-artifact-proposals-xnp-0008-derived-inverse-relationships.md-raw-file-proposals-xnp-0008-derived-inverse-relationships.md",
      "summary": "Protocol Proposals includes Proposals / XNP 0008 Derived Inverse Relationships.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-proposals",
      "target": "xananode.canonical:source/protocol-artifact-proposals-xnp-0009-standards-alignment.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-proposals-contains-source-protocol-artifact-proposals-xnp-0009-standards-alignment.md-raw-file-proposals-xnp-0009-standards-alignment.md",
      "summary": "Protocol Proposals includes Proposals / XNP 0009 Standards Alignment.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-proposals",
      "target": "xananode.canonical:source/protocol-artifact-proposals-xnp-0010-federation-discovery-and-trust.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-proposals-contains-source-protocol-artifact-proposals-xnp-0010-federation-discovery-and-trust.md-raw-file-proposals-xnp-0010-federation-discovery-and-trust.md",
      "summary": "Protocol Proposals includes Proposals / XNP 0010 Federation Discovery And Trust.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-proposals",
      "target": "xananode.canonical:source/protocol-artifact-proposals-xnp-0011-studio-local-first-authoring.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-proposals-contains-source-protocol-artifact-proposals-xnp-0011-studio-local-first-authoring.md-raw-file-proposals-xnp-0011-studio-local-first-authoring.md",
      "summary": "Protocol Proposals includes Proposals / XNP 0011 Studio Local First Authoring.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-proposals",
      "target": "xananode.canonical:source/protocol-artifact-proposals-xnp-0012-executable-tool-contract.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-proposals-contains-source-protocol-artifact-proposals-xnp-0012-executable-tool-contract.md-raw-file-proposals-xnp-0012-executable-tool-contract.md",
      "summary": "Protocol Proposals includes Proposals / XNP 0012 Executable Tool Contract.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-registry-canonical-schemas.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-registry-canonical-schemas.json-documents-concept-protocol-artifacts-raw-file-docs-registry-canonical-schemas.json",
      "summary": "Registry / Canonical Schemas belongs to the published XanaNode registry set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-registry",
      "target": "xananode.canonical:schema/protocol-artifact-registry-canonical-schemas.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-registry-contains-schema-protocol-artifact-registry-canonical-schemas.json-raw-file-registry-canonical-schemas.json",
      "summary": "Protocol Registry includes Registry / Canonical Schemas.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-registry",
      "target": "xananode.canonical:schema/protocol-artifact-registry-federation-targets.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-registry-contains-schema-protocol-artifact-registry-federation-targets.json-raw-file-registry-federation-targets.json",
      "summary": "Protocol Registry includes Registry / Federation Targets.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-registry",
      "target": "xananode.canonical:schema/protocol-artifact-registry-federation-targets.schema.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-registry-contains-schema-protocol-artifact-registry-federation-targets.schema.json-raw-file-registry-federation-targets.schema.json",
      "summary": "Protocol Registry includes Registry / Federation Targets Schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-registry",
      "target": "xananode.canonical:schema/protocol-artifact-registry-known-implementations.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-registry-contains-schema-protocol-artifact-registry-known-implementations.json-raw-file-registry-known-implementations.json",
      "summary": "Protocol Registry includes Registry / Known Implementations.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-registry",
      "target": "xananode.canonical:schema/protocol-artifact-registry-namespaces.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-registry-contains-schema-protocol-artifact-registry-namespaces.json-raw-file-registry-namespaces.json",
      "summary": "Protocol Registry includes Registry / Namespaces.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-registry",
      "target": "xananode.canonical:source/protocol-artifact-registry-readme.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-registry-contains-source-protocol-artifact-registry-readme.md-raw-file-registry-readme.md",
      "summary": "Protocol Registry includes Registry / README.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-registry-federation-targets.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-registry-federation-targets.json-documents-concept-protocol-artifacts-raw-file-docs-registry-federation-targets.json",
      "summary": "Registry / Federation Targets belongs to the published XanaNode registry set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-registry-federation-targets.schema.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-registry-federation-targets.schema.json-documents-concept-protocol-artifacts-raw-file-docs-registry-federation-targets.schema.json",
      "summary": "Registry / Federation Targets Schema belongs to the published XanaNode registry set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-registry-known-implementations.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-registry-known-implementations.json-documents-concept-protocol-artifacts-raw-file-docs-registry-known-implementations.json",
      "summary": "Registry / Known Implementations belongs to the published XanaNode registry set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-registry-namespaces.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-registry-namespaces.json-documents-concept-protocol-artifacts-raw-file-docs-registry-namespaces.json",
      "summary": "Registry / Namespaces belongs to the published XanaNode registry set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-root",
      "target": "xananode.canonical:source/protocol-artifact-license.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-root-contains-source-protocol-artifact-license.md-raw-file-license.md",
      "summary": "Protocol Root Files includes XanaNode Protocol License.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-root",
      "target": "xananode.canonical:source/protocol-artifact-notice",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-root-contains-source-protocol-artifact-notice-raw-file-notice",
      "summary": "Protocol Root Files includes XanaNode Protocol Notice.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-root",
      "target": "xananode.canonical:source/protocol-artifact-readme.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-root-contains-source-protocol-artifact-readme.md-raw-file-readme.md",
      "summary": "Protocol Root Files includes XanaNode Protocol README.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-root",
      "target": "xananode.canonical:source/protocol-artifact-trademark.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-root-contains-source-protocol-artifact-trademark.md-raw-file-trademark.md",
      "summary": "Protocol Root Files includes XanaNode Trademark Policy.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-author-profile.schema.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-author-profile.schema.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-author-profile.schema.json",
      "summary": "Schemas / Author Profile Schema belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-compatibility-report.schema.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-compatibility-report.schema.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-compatibility-report.schema.json",
      "summary": "Schemas / Compatibility Report Schema belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-author-profile.schema.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-author-profile.schema.json-raw-file-schemas-author-profile.schema.json",
      "summary": "Protocol Schemas includes Schemas / Author Profile Schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-compatibility-report.schema.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-compatibility-report.schema.json-raw-file-schemas-compatibility-report.schema.json",
      "summary": "Protocol Schemas includes Schemas / Compatibility Report Schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-merge-report.schema.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-merge-report.schema.json-raw-file-schemas-merge-report.schema.json",
      "summary": "Protocol Schemas includes Schemas / Merge Report Schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-namespace.schema.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-namespace.schema.json-raw-file-schemas-namespace.schema.json",
      "summary": "Protocol Schemas includes Schemas / Namespace Schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-nanopublication.schema.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-nanopublication.schema.json-raw-file-schemas-nanopublication.schema.json",
      "summary": "Protocol Schemas includes Schemas / Nanopublication Schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-property-registry.schema.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-property-registry.schema.json-raw-file-schemas-property-registry.schema.json",
      "summary": "Protocol Schemas includes Schemas / Property Registry Schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-ro-crate-metadata.schema.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-ro-crate-metadata.schema.json-raw-file-schemas-ro-crate-metadata.schema.json",
      "summary": "Protocol Schemas includes Schemas / RO-Crate Metadata Schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-diff.schema.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-substrate-diff.schema.json-raw-file-schemas-substrate-diff.schema.json",
      "summary": "Protocol Schemas includes Schemas / Substrate Diff Schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-layout.schema.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-substrate-layout.schema.json-raw-file-schemas-substrate-layout.schema.json",
      "summary": "Protocol Schemas includes Schemas / Substrate Layout Schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-manifest.schema.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-substrate-manifest.schema.json-raw-file-schemas-substrate-manifest.schema.json",
      "summary": "Protocol Schemas includes Schemas / Substrate Manifest Schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-node.schema.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-substrate-node.schema.json-raw-file-schemas-substrate-node.schema.json",
      "summary": "Protocol Schemas includes Schemas / Substrate Node Schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-substrate-relationships.schema.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-substrate-relationships.schema.json-raw-file-schemas-substrate-relationships.schema.json",
      "summary": "Protocol Schemas includes Schemas / Substrate Relationships Schema.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-xananode-node-types.schema.v0.3.0.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-xananode-node-types.schema.v0.3.0.json-raw-file-schemas-xananode-node-types.schema.v0.3.0.json",
      "summary": "Protocol Schemas includes Schemas / XanaNode Node Types Schema v0.3.0.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-xananode-node-types.v0.3.0.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-xananode-node-types.v0.3.0.json-raw-file-schemas-xananode-node-types.v0.3.0.json",
      "summary": "Protocol Schemas includes Schemas / XanaNode Node Types v0.3.0.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-xananode-property-registry.v0.1.0.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-xananode-property-registry.v0.1.0.json-raw-file-schemas-xananode-property-registry.v0.1.0.json",
      "summary": "Protocol Schemas includes Schemas / XanaNode Property Registry v0.1.0.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-xananode-relationship-types.schema.v0.5.0.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-xananode-relationship-types.schema.v0.5.0.json-raw-file-schemas-xananode-relationship-types.schema.v0.5.0.json",
      "summary": "Protocol Schemas includes Schemas / XanaNode Relationship Types Schema v0.5.0.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-xananode-relationship-types.v0.5.0.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-xananode-relationship-types.v0.5.0.json-raw-file-schemas-xananode-relationship-types.v0.5.0.json",
      "summary": "Protocol Schemas includes Schemas / XanaNode Relationship Types v0.5.0.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:schema/protocol-artifact-schemas-xananode-substrate-layout.v0.1.0.json",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-schema-protocol-artifact-schemas-xananode-substrate-layout.v0.1.0.json-raw-file-schemas-xananode-substrate-layout.v0.1.0.json",
      "summary": "Protocol Schemas includes Schemas / XanaNode Substrate Layout v0.1.0.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas",
      "target": "xananode.canonical:source/protocol-artifact-schemas-readme.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-contains-source-protocol-artifact-schemas-readme.md-raw-file-schemas-readme.md",
      "summary": "Protocol Schemas includes Schemas / README.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-merge-report.schema.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-merge-report.schema.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-merge-report.schema.json",
      "summary": "Schemas / Merge Report Schema belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-namespace.schema.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-namespace.schema.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-namespace.schema.json",
      "summary": "Schemas / Namespace Schema belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-nanopublication.schema.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-nanopublication.schema.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-nanopublication.schema.json",
      "summary": "Schemas / Nanopublication Schema belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-property-registry.schema.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-property-registry.schema.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-property-registry.schema.json",
      "summary": "Schemas / Property Registry Schema belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-ro-crate-metadata.schema.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-ro-crate-metadata.schema.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-ro-crate-metadata.schema.json",
      "summary": "Schemas / RO-Crate Metadata Schema belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-substrate-diff.schema.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-substrate-diff.schema.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-substrate-diff.schema.json",
      "summary": "Schemas / Substrate Diff Schema belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-substrate-layout.schema.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-substrate-layout.schema.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-substrate-layout.schema.json",
      "summary": "Schemas / Substrate Layout Schema belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-substrate-manifest.schema.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-substrate-manifest.schema.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-substrate-manifest.schema.json",
      "summary": "Schemas / Substrate Manifest Schema belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-substrate-node.schema.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-substrate-node.schema.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-substrate-node.schema.json",
      "summary": "Schemas / Substrate Node Schema belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-substrate-relationships.schema.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-substrate-relationships.schema.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-substrate-relationships.schema.json",
      "summary": "Schemas / Substrate Relationships Schema belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-xananode-node-types.schema.v0.3.0.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-xananode-node-types.schema.v0.3.0.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-xananode-node-types.schema.v0.3.0.json",
      "summary": "Schemas / XanaNode Node Types Schema v0.3.0 belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-xananode-node-types.v0.3.0.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-xananode-node-types.v0.3.0.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-xananode-node-types.v0.3.0.json",
      "summary": "Schemas / XanaNode Node Types v0.3.0 belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-xananode-property-registry.v0.1.0.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-xananode-property-registry.v0.1.0.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-xananode-property-registry.v0.1.0.json",
      "summary": "Schemas / XanaNode Property Registry v0.1.0 belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-xananode-relationship-types.schema.v0.5.0.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-xananode-relationship-types.schema.v0.5.0.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-xananode-relationship-types.schema.v0.5.0.json",
      "summary": "Schemas / XanaNode Relationship Types Schema v0.5.0 belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-xananode-relationship-types.v0.5.0.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-xananode-relationship-types.v0.5.0.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-xananode-relationship-types.v0.5.0.json",
      "summary": "Schemas / XanaNode Relationship Types v0.5.0 belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-schemas-xananode-substrate-layout.v0.1.0.json",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-schemas-xananode-substrate-layout.v0.1.0.json-documents-concept-protocol-artifacts-raw-file-docs-schemas-xananode-substrate-layout.v0.1.0.json",
      "summary": "Schemas / XanaNode Substrate Layout v0.1.0 belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-specs",
      "target": "xananode.canonical:source/protocol-artifact-specs-compatibility-levels.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-specs-contains-source-protocol-artifact-specs-compatibility-levels.md-raw-file-specs-compatibility-levels.md",
      "summary": "Protocol Specs includes Specs / Compatibility Levels.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-specs",
      "target": "xananode.canonical:source/protocol-artifact-specs-federation.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-specs-contains-source-protocol-artifact-specs-federation.md-raw-file-specs-federation.md",
      "summary": "Protocol Specs includes Specs / Federation.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-specs",
      "target": "xananode.canonical:source/protocol-artifact-specs-implementation-compatibility.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-specs-contains-source-protocol-artifact-specs-implementation-compatibility.md-raw-file-specs-implementation-compatibility.md",
      "summary": "Protocol Specs includes Specs / Implementation Compatibility.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-specs",
      "target": "xananode.canonical:source/protocol-artifact-specs-interoperability.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-specs-contains-source-protocol-artifact-specs-interoperability.md-raw-file-specs-interoperability.md",
      "summary": "Protocol Specs includes Specs / Interoperability.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-specs",
      "target": "xananode.canonical:source/protocol-artifact-specs-merge-validation.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-specs-contains-source-protocol-artifact-specs-merge-validation.md-raw-file-specs-merge-validation.md",
      "summary": "Protocol Specs includes Specs / Merge Validation.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-specs",
      "target": "xananode.canonical:source/protocol-artifact-specs-namespaces.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-specs-contains-source-protocol-artifact-specs-namespaces.md-raw-file-specs-namespaces.md",
      "summary": "Protocol Specs includes Specs / Namespaces.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-specs",
      "target": "xananode.canonical:source/protocol-artifact-specs-nodes.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-specs-contains-source-protocol-artifact-specs-nodes.md-raw-file-specs-nodes.md",
      "summary": "Protocol Specs includes Specs / Nodes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-specs",
      "target": "xananode.canonical:source/protocol-artifact-specs-readme.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-specs-contains-source-protocol-artifact-specs-readme.md-raw-file-specs-readme.md",
      "summary": "Protocol Specs includes Specs / README.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-specs",
      "target": "xananode.canonical:source/protocol-artifact-specs-relationships.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-specs-contains-source-protocol-artifact-specs-relationships.md-raw-file-specs-relationships.md",
      "summary": "Protocol Specs includes Specs / Relationships.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-specs",
      "target": "xananode.canonical:source/protocol-artifact-specs-studio.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-specs-contains-source-protocol-artifact-specs-studio.md-raw-file-specs-studio.md",
      "summary": "Protocol Specs includes Specs / Studio.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-specs",
      "target": "xananode.canonical:source/protocol-artifact-specs-substrates.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-specs-contains-source-protocol-artifact-specs-substrates.md-raw-file-specs-substrates.md",
      "summary": "Protocol Specs includes Specs / Substrates.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-specs",
      "target": "xananode.canonical:source/protocol-artifact-specs-transclusion.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-specs-contains-source-protocol-artifact-specs-transclusion.md-raw-file-specs-transclusion.md",
      "summary": "Protocol Specs includes Specs / Transclusion.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-specs",
      "target": "xananode.canonical:source/protocol-artifact-specs-tumbler-addressing.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-specs-contains-source-protocol-artifact-specs-tumbler-addressing.md-raw-file-specs-tumbler-addressing.md",
      "summary": "Protocol Specs includes Specs / Tumbler Addressing.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/protocol-artifact-specs",
      "target": "xananode.canonical:source/protocol-artifact-specs-xananode-core.md",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-protocol-artifact-specs-contains-source-protocol-artifact-specs-xananode-core.md-raw-file-specs-xananode-core.md",
      "summary": "Protocol Specs includes Specs / XanaNode Core.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-attention",
      "target": "xananode.canonical:schema/relationship-type-critical_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-attention-contains-schema-relationship-type-critical_to",
      "summary": "The attention relationship category contains critical_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-attention",
      "target": "xananode.canonical:schema/relationship-type-critically_depends_on",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-attention-contains-schema-relationship-type-critically_depends_on",
      "summary": "The attention relationship category contains the critically_depends_on inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-attention",
      "target": "xananode.canonical:schema/relationship-type-frequently_misunderstood",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-attention-contains-schema-relationship-type-frequently_misunderstood",
      "summary": "The attention relationship category contains frequently_misunderstood.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-attention",
      "target": "xananode.canonical:schema/relationship-type-has_high_risk",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-attention-contains-schema-relationship-type-has_high_risk",
      "summary": "The attention relationship category contains the has_high_risk inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-attention",
      "target": "xananode.canonical:schema/relationship-type-has_important_context",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-attention-contains-schema-relationship-type-has_important_context",
      "summary": "The attention relationship category contains the has_important_context inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-attention",
      "target": "xananode.canonical:schema/relationship-type-high_risk_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-attention-contains-schema-relationship-type-high_risk_for",
      "summary": "The attention relationship category contains high_risk_for.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-attention",
      "target": "xananode.canonical:schema/relationship-type-important_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-attention-contains-schema-relationship-type-important_for",
      "summary": "The attention relationship category contains important_for.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-attention",
      "target": "xananode.canonical:schema/relationship-type-misunderstanding_context_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-attention-contains-schema-relationship-type-misunderstanding_context_for",
      "summary": "The attention relationship category contains the misunderstanding_context_for inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-attention",
      "target": "xananode.canonical:schema/relationship-type-overlooked_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-attention-contains-schema-relationship-type-overlooked_by",
      "summary": "The attention relationship category contains overlooked_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-attention",
      "target": "xananode.canonical:schema/relationship-type-overlooks",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-attention-contains-schema-relationship-type-overlooks",
      "summary": "The attention relationship category contains the overlooks inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-attention",
      "target": "xananode.canonical:media/relationship-category-attention-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-attention-has_primary_media-media-relationship-category-attention-projection-icon",
      "summary": "The attention relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-causation",
      "target": "xananode.canonical:schema/relationship-type-generated",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-causation-contains-schema-relationship-type-generated",
      "summary": "The causation relationship category contains generated.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-causation",
      "target": "xananode.canonical:schema/relationship-type-generated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-causation-contains-schema-relationship-type-generated_by",
      "summary": "The causation relationship category contains the generated_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-causation",
      "target": "xananode.canonical:schema/relationship-type-motivated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-causation-contains-schema-relationship-type-motivated_by",
      "summary": "The causation relationship category contains motivated_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-causation",
      "target": "xananode.canonical:schema/relationship-type-motivates",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-causation-contains-schema-relationship-type-motivates",
      "summary": "The causation relationship category contains the motivates inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-causation",
      "target": "xananode.canonical:schema/relationship-type-produces",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-causation-contains-schema-relationship-type-produces",
      "summary": "The causation relationship category contains the produces inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-causation",
      "target": "xananode.canonical:schema/relationship-type-results_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-causation-contains-schema-relationship-type-results_from",
      "summary": "The causation relationship category contains results_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-causation",
      "target": "xananode.canonical:media/relationship-category-causation-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-causation-has_primary_media-media-relationship-category-causation-projection-icon",
      "summary": "The causation relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-citation",
      "target": "xananode.canonical:schema/relationship-type-cited_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-citation-contains-schema-relationship-type-cited_by",
      "summary": "The citation relationship category contains the cited_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-citation",
      "target": "xananode.canonical:schema/relationship-type-cites",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-citation-contains-schema-relationship-type-cites",
      "summary": "The citation relationship category contains cites.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-citation",
      "target": "xananode.canonical:schema/relationship-type-discussed_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-citation-contains-schema-relationship-type-discussed_in",
      "summary": "The citation relationship category contains the discussed_in inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-citation",
      "target": "xananode.canonical:schema/relationship-type-discusses",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-citation-contains-schema-relationship-type-discusses",
      "summary": "The citation relationship category contains discusses.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-citation",
      "target": "xananode.canonical:schema/relationship-type-mentioned_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-citation-contains-schema-relationship-type-mentioned_by",
      "summary": "The citation relationship category contains the mentioned_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-citation",
      "target": "xananode.canonical:schema/relationship-type-mentions",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-citation-contains-schema-relationship-type-mentions",
      "summary": "The citation relationship category contains mentions.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-citation",
      "target": "xananode.canonical:schema/relationship-type-quoted_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-citation-contains-schema-relationship-type-quoted_by",
      "summary": "The citation relationship category contains the quoted_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-citation",
      "target": "xananode.canonical:schema/relationship-type-quotes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-citation-contains-schema-relationship-type-quotes",
      "summary": "The citation relationship category contains quotes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-citation",
      "target": "xananode.canonical:media/relationship-category-citation-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-citation-has_primary_media-media-relationship-category-citation-projection-icon",
      "summary": "The citation relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-claim_structure",
      "target": "xananode.canonical:schema/relationship-type-claim_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-claim_structure-contains-schema-relationship-type-claim_of",
      "summary": "The claim_structure relationship category contains the claim_of inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-claim_structure",
      "target": "xananode.canonical:schema/relationship-type-has_claim",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-claim_structure-contains-schema-relationship-type-has_claim",
      "summary": "The claim_structure relationship category contains has_claim.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-claim_structure",
      "target": "xananode.canonical:media/relationship-category-claim_structure-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-claim_structure-has_primary_media-media-relationship-category-claim_structure-projection-icon",
      "summary": "The claim_structure relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-cognition",
      "target": "xananode.canonical:schema/relationship-type-abstraction_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-cognition-contains-schema-relationship-type-abstraction_of",
      "summary": "The cognition relationship category contains abstraction_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-cognition",
      "target": "xananode.canonical:schema/relationship-type-analogous_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-cognition-contains-schema-relationship-type-analogous_to",
      "summary": "The cognition relationship category contains analogous_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-cognition",
      "target": "xananode.canonical:schema/relationship-type-concrete_example_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-cognition-contains-schema-relationship-type-concrete_example_of",
      "summary": "The cognition relationship category contains the concrete_example_of inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-cognition",
      "target": "xananode.canonical:schema/relationship-type-example_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-cognition-contains-schema-relationship-type-example_of",
      "summary": "The cognition relationship category contains example_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-cognition",
      "target": "xananode.canonical:schema/relationship-type-generalized_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-cognition-contains-schema-relationship-type-generalized_by",
      "summary": "The cognition relationship category contains the generalized_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-cognition",
      "target": "xananode.canonical:schema/relationship-type-generalizes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-cognition-contains-schema-relationship-type-generalizes",
      "summary": "The cognition relationship category contains generalizes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-cognition",
      "target": "xananode.canonical:schema/relationship-type-has_example",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-cognition-contains-schema-relationship-type-has_example",
      "summary": "The cognition relationship category contains the has_example inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-cognition",
      "target": "xananode.canonical:schema/relationship-type-resonates_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-cognition-contains-schema-relationship-type-resonates_with",
      "summary": "The cognition relationship category contains resonates_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-cognition",
      "target": "xananode.canonical:schema/relationship-type-specialized_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-cognition-contains-schema-relationship-type-specialized_by",
      "summary": "The cognition relationship category contains the specialized_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-cognition",
      "target": "xananode.canonical:schema/relationship-type-specializes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-cognition-contains-schema-relationship-type-specializes",
      "summary": "The cognition relationship category contains specializes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-cognition",
      "target": "xananode.canonical:media/relationship-category-cognition-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-cognition-has_primary_media-media-relationship-category-cognition-projection-icon",
      "summary": "The cognition relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-announced",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-announced",
      "summary": "The communication relationship category contains announced.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-announced_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-announced_by",
      "summary": "The communication relationship category contains the announced_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-answered_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-answered_in",
      "summary": "The communication relationship category contains answered_in.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-asked",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-asked",
      "summary": "The communication relationship category contains asked.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-asked_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-asked_by",
      "summary": "The communication relationship category contains the asked_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-asked_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-asked_in",
      "summary": "The communication relationship category contains asked_in.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-broadcast_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-broadcast_to",
      "summary": "The communication relationship category contains broadcast_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-communicated_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-communicated_to",
      "summary": "The communication relationship category contains communicated_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-communication_received_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-communication_received_from",
      "summary": "The communication relationship category contains the communication_received_from inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-debated_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-debated_with",
      "summary": "The communication relationship category contains debated_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-discussed_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-discussed_with",
      "summary": "The communication relationship category contains discussed_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-discussion_partner_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-discussion_partner_of",
      "summary": "The communication relationship category contains the discussion_partner_of inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-had_answer",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-had_answer",
      "summary": "The communication relationship category contains the had_answer inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-had_question",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-had_question",
      "summary": "The communication relationship category contains the had_question inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-negotiated_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-negotiated_with",
      "summary": "The communication relationship category contains negotiated_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-presentation_received_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-presentation_received_from",
      "summary": "The communication relationship category contains the presentation_received_from inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-presented_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-presented_to",
      "summary": "The communication relationship category contains presented_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-received_broadcast_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-received_broadcast_from",
      "summary": "The communication relationship category contains the received_broadcast_from inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-received_report_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-received_report_from",
      "summary": "The communication relationship category contains the received_report_from inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-replied_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-replied_by",
      "summary": "The communication relationship category contains the replied_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-replied_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-replied_to",
      "summary": "The communication relationship category contains replied_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:schema/relationship-type-reported_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-contains-schema-relationship-type-reported_to",
      "summary": "The communication relationship category contains reported_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-communication",
      "target": "xananode.canonical:media/relationship-category-communication-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-communication-has_primary_media-media-relationship-category-communication-projection-icon",
      "summary": "The communication relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-comparison",
      "target": "xananode.canonical:schema/relationship-type-alternative_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-comparison-contains-schema-relationship-type-alternative_to",
      "summary": "The comparison relationship category contains alternative_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-comparison",
      "target": "xananode.canonical:schema/relationship-type-contrasts_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-comparison-contains-schema-relationship-type-contrasts_with",
      "summary": "The comparison relationship category contains contrasts_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-comparison",
      "target": "xananode.canonical:schema/relationship-type-equivalent_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-comparison-contains-schema-relationship-type-equivalent_to",
      "summary": "The comparison relationship category contains equivalent_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-comparison",
      "target": "xananode.canonical:schema/relationship-type-parallel_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-comparison-contains-schema-relationship-type-parallel_to",
      "summary": "The comparison relationship category contains parallel_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-comparison",
      "target": "xananode.canonical:media/relationship-category-comparison-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-comparison-has_primary_media-media-relationship-category-comparison-projection-icon",
      "summary": "The comparison relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-assembled_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-assembled_from",
      "summary": "The composition relationship category contains assembled_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-assembled_into",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-assembled_into",
      "summary": "The composition relationship category contains the assembled_into inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-contains",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-contains",
      "summary": "The composition relationship category contains contains.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-dependency_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-dependency_of",
      "summary": "The composition relationship category contains the dependency_of inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-depends_on",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-depends_on",
      "summary": "The composition relationship category contains depends_on.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-enabled_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-enabled_by",
      "summary": "The composition relationship category contains the enabled_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-enables",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-enables",
      "summary": "The composition relationship category contains enables.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-has_ingredient",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-has_ingredient",
      "summary": "The composition relationship category contains the has_ingredient inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-implemented_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-implemented_by",
      "summary": "The composition relationship category contains the implemented_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-implements",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-implements",
      "summary": "The composition relationship category contains implements.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-included_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-included_in",
      "summary": "The composition relationship category contains the included_in inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-includes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-includes",
      "summary": "The composition relationship category contains includes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-ingredient_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-ingredient_of",
      "summary": "The composition relationship category contains ingredient_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-made_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-made_of",
      "summary": "The composition relationship category contains made_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-makes_up",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-makes_up",
      "summary": "The composition relationship category contains the makes_up inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-part_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-part_of",
      "summary": "The composition relationship category contains the part_of inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-preserved_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-preserved_by",
      "summary": "The composition relationship category contains the preserved_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-preserves",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-preserves",
      "summary": "The composition relationship category contains preserves.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-required_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-required_for",
      "summary": "The composition relationship category contains the required_for inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-requires",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-requires",
      "summary": "The composition relationship category contains requires.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-trained_on",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-trained_on",
      "summary": "The composition relationship category contains trained_on.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-used_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-used_by",
      "summary": "The composition relationship category contains the used_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-used_to_train",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-used_to_train",
      "summary": "The composition relationship category contains the used_to_train inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:schema/relationship-type-uses",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-contains-schema-relationship-type-uses",
      "summary": "The composition relationship category contains uses.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-composition",
      "target": "xananode.canonical:media/relationship-category-composition-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-composition-has_primary_media-media-relationship-category-composition-projection-icon",
      "summary": "The composition relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-creation",
      "target": "xananode.canonical:schema/relationship-type-authored",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-creation-contains-schema-relationship-type-authored",
      "summary": "The creation relationship category contains authored.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-creation",
      "target": "xananode.canonical:schema/relationship-type-authored_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-creation-contains-schema-relationship-type-authored_by",
      "summary": "The creation relationship category contains the authored_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-creation",
      "target": "xananode.canonical:schema/relationship-type-co_authored_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-creation-contains-schema-relationship-type-co_authored_with",
      "summary": "The creation relationship category contains co_authored_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-creation",
      "target": "xananode.canonical:schema/relationship-type-coined",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-creation-contains-schema-relationship-type-coined",
      "summary": "The creation relationship category contains coined.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-creation",
      "target": "xananode.canonical:schema/relationship-type-coined_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-creation-contains-schema-relationship-type-coined_by",
      "summary": "The creation relationship category contains the coined_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-creation",
      "target": "xananode.canonical:schema/relationship-type-created",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-creation-contains-schema-relationship-type-created",
      "summary": "The creation relationship category contains created.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-creation",
      "target": "xananode.canonical:schema/relationship-type-created_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-creation-contains-schema-relationship-type-created_by",
      "summary": "The creation relationship category contains the created_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-creation",
      "target": "xananode.canonical:schema/relationship-type-identified",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-creation-contains-schema-relationship-type-identified",
      "summary": "The creation relationship category contains identified.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-creation",
      "target": "xananode.canonical:schema/relationship-type-identified_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-creation-contains-schema-relationship-type-identified_by",
      "summary": "The creation relationship category contains the identified_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-creation",
      "target": "xananode.canonical:schema/relationship-type-introduced",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-creation-contains-schema-relationship-type-introduced",
      "summary": "The creation relationship category contains introduced.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-creation",
      "target": "xananode.canonical:schema/relationship-type-introduced_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-creation-contains-schema-relationship-type-introduced_by",
      "summary": "The creation relationship category contains the introduced_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-creation",
      "target": "xananode.canonical:schema/relationship-type-proposed",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-creation-contains-schema-relationship-type-proposed",
      "summary": "The creation relationship category contains proposed.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-creation",
      "target": "xananode.canonical:schema/relationship-type-proposed_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-creation-contains-schema-relationship-type-proposed_by",
      "summary": "The creation relationship category contains the proposed_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-creation",
      "target": "xananode.canonical:media/relationship-category-creation-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-creation-has_primary_media-media-relationship-category-creation-projection-icon",
      "summary": "The creation relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-definition",
      "target": "xananode.canonical:schema/relationship-type-defined_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-definition-contains-schema-relationship-type-defined_by",
      "summary": "The definition relationship category contains the defined_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-definition",
      "target": "xananode.canonical:schema/relationship-type-defines",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-definition-contains-schema-relationship-type-defines",
      "summary": "The definition relationship category contains defines.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-definition",
      "target": "xananode.canonical:media/relationship-category-definition-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-definition-has_primary_media-media-relationship-category-definition-projection-icon",
      "summary": "The definition relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-discovery",
      "target": "xananode.canonical:schema/relationship-type-possibly_related_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-discovery-contains-schema-relationship-type-possibly_related_to",
      "summary": "The discovery relationship category contains possibly_related_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-discovery",
      "target": "xananode.canonical:schema/relationship-type-shares_pattern_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-discovery-contains-schema-relationship-type-shares_pattern_with",
      "summary": "The discovery relationship category contains shares_pattern_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-discovery",
      "target": "xananode.canonical:media/relationship-category-discovery-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-discovery-has_primary_media-media-relationship-category-discovery-projection-icon",
      "summary": "The discovery relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evidence",
      "target": "xananode.canonical:schema/relationship-type-contradicted_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evidence-contains-schema-relationship-type-contradicted_by",
      "summary": "The evidence relationship category contains the contradicted_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evidence",
      "target": "xananode.canonical:schema/relationship-type-contradicts",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evidence-contains-schema-relationship-type-contradicts",
      "summary": "The evidence relationship category contains contradicts.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evidence",
      "target": "xananode.canonical:schema/relationship-type-demonstrated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evidence-contains-schema-relationship-type-demonstrated_by",
      "summary": "The evidence relationship category contains the demonstrated_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evidence",
      "target": "xananode.canonical:schema/relationship-type-demonstrates",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evidence-contains-schema-relationship-type-demonstrates",
      "summary": "The evidence relationship category contains demonstrates.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evidence",
      "target": "xananode.canonical:schema/relationship-type-documented_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evidence-contains-schema-relationship-type-documented_by",
      "summary": "The evidence relationship category contains the documented_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evidence",
      "target": "xananode.canonical:schema/relationship-type-documents",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evidence-contains-schema-relationship-type-documents",
      "summary": "The evidence relationship category contains documents.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evidence",
      "target": "xananode.canonical:schema/relationship-type-evidence_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evidence-contains-schema-relationship-type-evidence_for",
      "summary": "The evidence relationship category contains evidence_for.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evidence",
      "target": "xananode.canonical:schema/relationship-type-has_evidence",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evidence-contains-schema-relationship-type-has_evidence",
      "summary": "The evidence relationship category contains the has_evidence inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evidence",
      "target": "xananode.canonical:schema/relationship-type-supported_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evidence-contains-schema-relationship-type-supported_by",
      "summary": "The evidence relationship category contains the supported_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evidence",
      "target": "xananode.canonical:schema/relationship-type-supports",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evidence-contains-schema-relationship-type-supports",
      "summary": "The evidence relationship category contains supports.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evidence",
      "target": "xananode.canonical:media/relationship-category-evidence-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evidence-has_primary_media-media-relationship-category-evidence-projection-icon",
      "summary": "The evidence relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evolution",
      "target": "xananode.canonical:schema/relationship-type-medium_transition",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evolution-contains-schema-relationship-type-medium_transition",
      "summary": "The evolution relationship category contains medium_transition.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evolution",
      "target": "xananode.canonical:schema/relationship-type-medium_transitioned_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evolution-contains-schema-relationship-type-medium_transitioned_from",
      "summary": "The evolution relationship category contains medium_transitioned_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evolution",
      "target": "xananode.canonical:schema/relationship-type-refined_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evolution-contains-schema-relationship-type-refined_by",
      "summary": "The evolution relationship category contains the refined_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evolution",
      "target": "xananode.canonical:schema/relationship-type-refines",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evolution-contains-schema-relationship-type-refines",
      "summary": "The evolution relationship category contains refines.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evolution",
      "target": "xananode.canonical:schema/relationship-type-superseded_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evolution-contains-schema-relationship-type-superseded_by",
      "summary": "The evolution relationship category contains the superseded_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evolution",
      "target": "xananode.canonical:schema/relationship-type-supersedes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evolution-contains-schema-relationship-type-supersedes",
      "summary": "The evolution relationship category contains supersedes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-evolution",
      "target": "xananode.canonical:media/relationship-category-evolution-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-evolution-has_primary_media-media-relationship-category-evolution-projection-icon",
      "summary": "The evolution relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-explanation",
      "target": "xananode.canonical:schema/relationship-type-clarified_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-explanation-contains-schema-relationship-type-clarified_by",
      "summary": "The explanation relationship category contains the clarified_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-explanation",
      "target": "xananode.canonical:schema/relationship-type-clarifies",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-explanation-contains-schema-relationship-type-clarifies",
      "summary": "The explanation relationship category contains clarifies.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-explanation",
      "target": "xananode.canonical:schema/relationship-type-context_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-explanation-contains-schema-relationship-type-context_for",
      "summary": "The explanation relationship category contains context_for.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-explanation",
      "target": "xananode.canonical:schema/relationship-type-explained_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-explanation-contains-schema-relationship-type-explained_by",
      "summary": "The explanation relationship category contains the explained_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-explanation",
      "target": "xananode.canonical:schema/relationship-type-explains",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-explanation-contains-schema-relationship-type-explains",
      "summary": "The explanation relationship category contains explains.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-explanation",
      "target": "xananode.canonical:schema/relationship-type-has_context",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-explanation-contains-schema-relationship-type-has_context",
      "summary": "The explanation relationship category contains the has_context inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-explanation",
      "target": "xananode.canonical:media/relationship-category-explanation-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-explanation-has_primary_media-media-relationship-category-explanation-projection-icon",
      "summary": "The explanation relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-generic",
      "target": "xananode.canonical:schema/relationship-type-related_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-generic-contains-schema-relationship-type-related_to",
      "summary": "The generic relationship category contains related_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-generic",
      "target": "xananode.canonical:media/relationship-category-generic-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-generic-has_primary_media-media-relationship-category-generic-projection-icon",
      "summary": "The generic relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-governance",
      "target": "xananode.canonical:schema/relationship-type-approved",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-governance-contains-schema-relationship-type-approved",
      "summary": "The governance relationship category contains approved.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-governance",
      "target": "xananode.canonical:schema/relationship-type-approved_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-governance-contains-schema-relationship-type-approved_by",
      "summary": "The governance relationship category contains the approved_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-governance",
      "target": "xananode.canonical:schema/relationship-type-attribution_required_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-governance-contains-schema-relationship-type-attribution_required_by",
      "summary": "The governance relationship category contains the attribution_required_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-governance",
      "target": "xananode.canonical:schema/relationship-type-disputed_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-governance-contains-schema-relationship-type-disputed_by",
      "summary": "The governance relationship category contains the disputed_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-governance",
      "target": "xananode.canonical:schema/relationship-type-disputes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-governance-contains-schema-relationship-type-disputes",
      "summary": "The governance relationship category contains disputes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-governance",
      "target": "xananode.canonical:schema/relationship-type-governed_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-governance-contains-schema-relationship-type-governed_by",
      "summary": "The governance relationship category contains governed_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-governance",
      "target": "xananode.canonical:schema/relationship-type-governs",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-governance-contains-schema-relationship-type-governs",
      "summary": "The governance relationship category contains the governs inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-governance",
      "target": "xananode.canonical:schema/relationship-type-license_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-governance-contains-schema-relationship-type-license_for",
      "summary": "The governance relationship category contains the license_for inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-governance",
      "target": "xananode.canonical:schema/relationship-type-licensed_under",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-governance-contains-schema-relationship-type-licensed_under",
      "summary": "The governance relationship category contains licensed_under.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-governance",
      "target": "xananode.canonical:schema/relationship-type-requires_attribution",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-governance-contains-schema-relationship-type-requires_attribution",
      "summary": "The governance relationship category contains requires_attribution.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-governance",
      "target": "xananode.canonical:schema/relationship-type-threatened_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-governance-contains-schema-relationship-type-threatened_by",
      "summary": "The governance relationship category contains the threatened_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-governance",
      "target": "xananode.canonical:schema/relationship-type-threatens",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-governance-contains-schema-relationship-type-threatens",
      "summary": "The governance relationship category contains threatens.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-governance",
      "target": "xananode.canonical:schema/relationship-type-trademark_holder_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-governance-contains-schema-relationship-type-trademark_holder_for",
      "summary": "The governance relationship category contains the trademark_holder_for inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-governance",
      "target": "xananode.canonical:schema/relationship-type-trademarked_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-governance-contains-schema-relationship-type-trademarked_by",
      "summary": "The governance relationship category contains trademarked_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-governance",
      "target": "xananode.canonical:media/relationship-category-governance-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-governance-has_primary_media-media-relationship-category-governance-projection-icon",
      "summary": "The governance relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-historical",
      "target": "xananode.canonical:schema/relationship-type-anticipates",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-historical-contains-schema-relationship-type-anticipates",
      "summary": "The historical relationship category contains anticipates.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-historical",
      "target": "xananode.canonical:media/relationship-category-historical-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-historical-has_primary_media-media-relationship-category-historical-projection-icon",
      "summary": "The historical relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-identity",
      "target": "xananode.canonical:schema/relationship-type-disputed_identity",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-identity-contains-schema-relationship-type-disputed_identity",
      "summary": "The identity relationship category contains disputed_identity.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-identity",
      "target": "xananode.canonical:schema/relationship-type-possible_match",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-identity-contains-schema-relationship-type-possible_match",
      "summary": "The identity relationship category contains possible_match.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-identity",
      "target": "xananode.canonical:schema/relationship-type-same_concept",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-identity-contains-schema-relationship-type-same_concept",
      "summary": "The identity relationship category contains same_concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-identity",
      "target": "xananode.canonical:schema/relationship-type-same_entity",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-identity-contains-schema-relationship-type-same_entity",
      "summary": "The identity relationship category contains same_entity.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-identity",
      "target": "xananode.canonical:schema/relationship-type-same_person",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-identity-contains-schema-relationship-type-same_person",
      "summary": "The identity relationship category contains same_person.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-identity",
      "target": "xananode.canonical:schema/relationship-type-same_source",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-identity-contains-schema-relationship-type-same_source",
      "summary": "The identity relationship category contains same_source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-identity",
      "target": "xananode.canonical:media/relationship-category-identity-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-identity-has_primary_media-media-relationship-category-identity-projection-icon",
      "summary": "The identity relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-influence",
      "target": "xananode.canonical:schema/relationship-type-anticipated",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-influence-contains-schema-relationship-type-anticipated",
      "summary": "The influence relationship category contains anticipated.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-influence",
      "target": "xananode.canonical:schema/relationship-type-anticipated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-influence-contains-schema-relationship-type-anticipated_by",
      "summary": "The influence relationship category contains the anticipated_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-influence",
      "target": "xananode.canonical:schema/relationship-type-influenced",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-influence-contains-schema-relationship-type-influenced",
      "summary": "The influence relationship category contains influenced.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-influence",
      "target": "xananode.canonical:schema/relationship-type-influenced_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-influence-contains-schema-relationship-type-influenced_by",
      "summary": "The influence relationship category contains the influenced_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-influence",
      "target": "xananode.canonical:schema/relationship-type-popularized",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-influence-contains-schema-relationship-type-popularized",
      "summary": "The influence relationship category contains popularized.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-influence",
      "target": "xananode.canonical:schema/relationship-type-popularized_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-influence-contains-schema-relationship-type-popularized_by",
      "summary": "The influence relationship category contains the popularized_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-influence",
      "target": "xananode.canonical:schema/relationship-type-shaped_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-influence-contains-schema-relationship-type-shaped_by",
      "summary": "The influence relationship category contains the shaped_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-influence",
      "target": "xananode.canonical:schema/relationship-type-shapes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-influence-contains-schema-relationship-type-shapes",
      "summary": "The influence relationship category contains shapes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-influence",
      "target": "xananode.canonical:media/relationship-category-influence-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-influence-has_primary_media-media-relationship-category-influence-projection-icon",
      "summary": "The influence relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-inquiry",
      "target": "xananode.canonical:schema/relationship-type-answered_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-inquiry-contains-schema-relationship-type-answered_by",
      "summary": "The inquiry relationship category contains the answered_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-inquiry",
      "target": "xananode.canonical:schema/relationship-type-answers",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-inquiry-contains-schema-relationship-type-answers",
      "summary": "The inquiry relationship category contains answers.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-inquiry",
      "target": "xananode.canonical:schema/relationship-type-fails_to_answer",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-inquiry-contains-schema-relationship-type-fails_to_answer",
      "summary": "The inquiry relationship category contains fails_to_answer.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-inquiry",
      "target": "xananode.canonical:schema/relationship-type-inquiry_motivated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-inquiry-contains-schema-relationship-type-inquiry_motivated_by",
      "summary": "The inquiry relationship category contains the inquiry_motivated_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-inquiry",
      "target": "xananode.canonical:schema/relationship-type-investigated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-inquiry-contains-schema-relationship-type-investigated_by",
      "summary": "The inquiry relationship category contains the investigated_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-inquiry",
      "target": "xananode.canonical:schema/relationship-type-investigates",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-inquiry-contains-schema-relationship-type-investigates",
      "summary": "The inquiry relationship category contains investigates.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-inquiry",
      "target": "xananode.canonical:schema/relationship-type-motivates_inquiry",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-inquiry-contains-schema-relationship-type-motivates_inquiry",
      "summary": "The inquiry relationship category contains motivates_inquiry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-inquiry",
      "target": "xananode.canonical:schema/relationship-type-not_answered_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-inquiry-contains-schema-relationship-type-not_answered_by",
      "summary": "The inquiry relationship category contains the not_answered_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-inquiry",
      "target": "xananode.canonical:schema/relationship-type-partially_answered_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-inquiry-contains-schema-relationship-type-partially_answered_by",
      "summary": "The inquiry relationship category contains the partially_answered_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-inquiry",
      "target": "xananode.canonical:schema/relationship-type-partially_answers",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-inquiry-contains-schema-relationship-type-partially_answers",
      "summary": "The inquiry relationship category contains partially_answers.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-inquiry",
      "target": "xananode.canonical:schema/relationship-type-raised_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-inquiry-contains-schema-relationship-type-raised_by",
      "summary": "The inquiry relationship category contains the raised_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-inquiry",
      "target": "xananode.canonical:schema/relationship-type-raises",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-inquiry-contains-schema-relationship-type-raises",
      "summary": "The inquiry relationship category contains raises.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-inquiry",
      "target": "xananode.canonical:media/relationship-category-inquiry-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-inquiry-has_primary_media-media-relationship-category-inquiry-projection-icon",
      "summary": "The inquiry relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-knowledge_workflow",
      "target": "xananode.canonical:schema/relationship-type-context_required_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-knowledge_workflow-contains-schema-relationship-type-context_required_by",
      "summary": "The knowledge_workflow relationship category contains the context_required_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-knowledge_workflow",
      "target": "xananode.canonical:schema/relationship-type-information_required_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-knowledge_workflow-contains-schema-relationship-type-information_required_by",
      "summary": "The knowledge_workflow relationship category contains the information_required_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-knowledge_workflow",
      "target": "xananode.canonical:schema/relationship-type-requires_context",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-knowledge_workflow-contains-schema-relationship-type-requires_context",
      "summary": "The knowledge_workflow relationship category contains requires_context.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-knowledge_workflow",
      "target": "xananode.canonical:schema/relationship-type-requires_information",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-knowledge_workflow-contains-schema-relationship-type-requires_information",
      "summary": "The knowledge_workflow relationship category contains requires_information.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-knowledge_workflow",
      "target": "xananode.canonical:schema/relationship-type-requires_review",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-knowledge_workflow-contains-schema-relationship-type-requires_review",
      "summary": "The knowledge_workflow relationship category contains requires_review.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-knowledge_workflow",
      "target": "xananode.canonical:schema/relationship-type-requires_source",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-knowledge_workflow-contains-schema-relationship-type-requires_source",
      "summary": "The knowledge_workflow relationship category contains requires_source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-knowledge_workflow",
      "target": "xananode.canonical:schema/relationship-type-requires_validation",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-knowledge_workflow-contains-schema-relationship-type-requires_validation",
      "summary": "The knowledge_workflow relationship category contains requires_validation.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-knowledge_workflow",
      "target": "xananode.canonical:schema/relationship-type-review_required_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-knowledge_workflow-contains-schema-relationship-type-review_required_by",
      "summary": "The knowledge_workflow relationship category contains the review_required_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-knowledge_workflow",
      "target": "xananode.canonical:schema/relationship-type-source_required_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-knowledge_workflow-contains-schema-relationship-type-source_required_by",
      "summary": "The knowledge_workflow relationship category contains the source_required_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-knowledge_workflow",
      "target": "xananode.canonical:schema/relationship-type-validation_required_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-knowledge_workflow-contains-schema-relationship-type-validation_required_by",
      "summary": "The knowledge_workflow relationship category contains the validation_required_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-knowledge_workflow",
      "target": "xananode.canonical:media/relationship-category-knowledge_workflow-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-knowledge_workflow-has_primary_media-media-relationship-category-knowledge_workflow-projection-icon",
      "summary": "The knowledge_workflow relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-lineage",
      "target": "xananode.canonical:schema/relationship-type-derived_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-lineage-contains-schema-relationship-type-derived_from",
      "summary": "The lineage relationship category contains derived_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-lineage",
      "target": "xananode.canonical:schema/relationship-type-derived_into",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-lineage-contains-schema-relationship-type-derived_into",
      "summary": "The lineage relationship category contains the derived_into inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-lineage",
      "target": "xananode.canonical:schema/relationship-type-extended_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-lineage-contains-schema-relationship-type-extended_by",
      "summary": "The lineage relationship category contains the extended_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-lineage",
      "target": "xananode.canonical:schema/relationship-type-extends",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-lineage-contains-schema-relationship-type-extends",
      "summary": "The lineage relationship category contains extends.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-lineage",
      "target": "xananode.canonical:media/relationship-category-lineage-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-lineage-has_primary_media-media-relationship-category-lineage-projection-icon",
      "summary": "The lineage relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-location",
      "target": "xananode.canonical:schema/relationship-type-occurred_at",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-location-contains-schema-relationship-type-occurred_at",
      "summary": "The location relationship category contains occurred_at.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-location",
      "target": "xananode.canonical:schema/relationship-type-site_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-location-contains-schema-relationship-type-site_of",
      "summary": "The location relationship category contains the site_of inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-location",
      "target": "xananode.canonical:media/relationship-category-location-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-location-has_primary_media-media-relationship-category-location-projection-icon",
      "summary": "The location relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-participation",
      "target": "xananode.canonical:schema/relationship-type-appears_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-participation-contains-schema-relationship-type-appears_in",
      "summary": "The participation relationship category contains appears_in.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-participation",
      "target": "xananode.canonical:schema/relationship-type-featured_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-participation-contains-schema-relationship-type-featured_in",
      "summary": "The participation relationship category contains the featured_in inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-participation",
      "target": "xananode.canonical:schema/relationship-type-featured_speaker",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-participation-contains-schema-relationship-type-featured_speaker",
      "summary": "The participation relationship category contains the featured_speaker inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-participation",
      "target": "xananode.canonical:schema/relationship-type-features",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-participation-contains-schema-relationship-type-features",
      "summary": "The participation relationship category contains features.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-participation",
      "target": "xananode.canonical:schema/relationship-type-had_participant",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-participation-contains-schema-relationship-type-had_participant",
      "summary": "The participation relationship category contains the had_participant inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-participation",
      "target": "xananode.canonical:schema/relationship-type-has_appearance",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-participation-contains-schema-relationship-type-has_appearance",
      "summary": "The participation relationship category contains the has_appearance inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-participation",
      "target": "xananode.canonical:schema/relationship-type-introduced_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-participation-contains-schema-relationship-type-introduced_in",
      "summary": "The participation relationship category contains introduced_in.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-participation",
      "target": "xananode.canonical:schema/relationship-type-introduction_venue_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-participation-contains-schema-relationship-type-introduction_venue_of",
      "summary": "The participation relationship category contains the introduction_venue_of inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-participation",
      "target": "xananode.canonical:schema/relationship-type-participated_in",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-participation-contains-schema-relationship-type-participated_in",
      "summary": "The participation relationship category contains participated_in.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-participation",
      "target": "xananode.canonical:schema/relationship-type-presented",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-participation-contains-schema-relationship-type-presented",
      "summary": "The participation relationship category contains presented.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-participation",
      "target": "xananode.canonical:schema/relationship-type-presented_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-participation-contains-schema-relationship-type-presented_by",
      "summary": "The participation relationship category contains the presented_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-participation",
      "target": "xananode.canonical:schema/relationship-type-spoke_at",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-participation-contains-schema-relationship-type-spoke_at",
      "summary": "The participation relationship category contains spoke_at.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-participation",
      "target": "xananode.canonical:media/relationship-category-participation-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-participation-has_primary_media-media-relationship-category-participation-projection-icon",
      "summary": "The participation relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-reasoning",
      "target": "xananode.canonical:schema/relationship-type-arrived_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-reasoning-contains-schema-relationship-type-arrived_from",
      "summary": "The reasoning relationship category contains the arrived_from inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-reasoning",
      "target": "xananode.canonical:schema/relationship-type-arrives_at",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-reasoning-contains-schema-relationship-type-arrives_at",
      "summary": "The reasoning relationship category contains arrives_at.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-reasoning",
      "target": "xananode.canonical:media/relationship-category-reasoning-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-reasoning-has_primary_media-media-relationship-category-reasoning-projection-icon",
      "summary": "The reasoning relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-representation",
      "target": "xananode.canonical:schema/relationship-type-alias_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-representation-contains-schema-relationship-type-alias_of",
      "summary": "The representation relationship category contains alias_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-representation",
      "target": "xananode.canonical:schema/relationship-type-deep_linked_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-representation-contains-schema-relationship-type-deep_linked_from",
      "summary": "The representation relationship category contains the deep_linked_from inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-representation",
      "target": "xananode.canonical:schema/relationship-type-deep_links_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-representation-contains-schema-relationship-type-deep_links_to",
      "summary": "The representation relationship category contains deep_links_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-representation",
      "target": "xananode.canonical:schema/relationship-type-depicted_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-representation-contains-schema-relationship-type-depicted_by",
      "summary": "The representation relationship category contains the depicted_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-representation",
      "target": "xananode.canonical:schema/relationship-type-depicts",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-representation-contains-schema-relationship-type-depicts",
      "summary": "The representation relationship category contains depicts.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-representation",
      "target": "xananode.canonical:schema/relationship-type-format_translated_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-representation-contains-schema-relationship-type-format_translated_from",
      "summary": "The representation relationship category contains format_translated_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-representation",
      "target": "xananode.canonical:schema/relationship-type-format_translated_into",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-representation-contains-schema-relationship-type-format_translated_into",
      "summary": "The representation relationship category contains format_translated_into.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-representation",
      "target": "xananode.canonical:schema/relationship-type-has_alias",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-representation-contains-schema-relationship-type-has_alias",
      "summary": "The representation relationship category contains the has_alias inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-representation",
      "target": "xananode.canonical:schema/relationship-type-has_primary_media",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-representation-contains-schema-relationship-type-has_primary_media",
      "summary": "The representation relationship category contains has_primary_media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-representation",
      "target": "xananode.canonical:schema/relationship-type-represented_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-representation-contains-schema-relationship-type-represented_by",
      "summary": "The representation relationship category contains the represented_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-representation",
      "target": "xananode.canonical:schema/relationship-type-represents",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-representation-contains-schema-relationship-type-represents",
      "summary": "The representation relationship category contains represents.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-representation",
      "target": "xananode.canonical:schema/relationship-type-transcluded_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-representation-contains-schema-relationship-type-transcluded_by",
      "summary": "The representation relationship category contains the transcluded_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-representation",
      "target": "xananode.canonical:schema/relationship-type-transcludes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-representation-contains-schema-relationship-type-transcludes",
      "summary": "The representation relationship category contains transcludes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-representation",
      "target": "xananode.canonical:schema/relationship-type-used_as_primary_media_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-representation-contains-schema-relationship-type-used_as_primary_media_for",
      "summary": "The representation relationship category contains the used_as_primary_media_for inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-representation",
      "target": "xananode.canonical:media/relationship-category-representation-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-representation-has_primary_media-media-relationship-category-representation-projection-icon",
      "summary": "The representation relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-research_workflow",
      "target": "xananode.canonical:schema/relationship-type-falsified_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-research_workflow-contains-schema-relationship-type-falsified_by",
      "summary": "The research_workflow relationship category contains the falsified_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-research_workflow",
      "target": "xananode.canonical:schema/relationship-type-falsifies",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-research_workflow-contains-schema-relationship-type-falsifies",
      "summary": "The research_workflow relationship category contains falsifies.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-research_workflow",
      "target": "xananode.canonical:schema/relationship-type-tested_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-research_workflow-contains-schema-relationship-type-tested_by",
      "summary": "The research_workflow relationship category contains the tested_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-research_workflow",
      "target": "xananode.canonical:schema/relationship-type-tests",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-research_workflow-contains-schema-relationship-type-tests",
      "summary": "The research_workflow relationship category contains tests.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-research_workflow",
      "target": "xananode.canonical:schema/relationship-type-validated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-research_workflow-contains-schema-relationship-type-validated_by",
      "summary": "The research_workflow relationship category contains the validated_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-research_workflow",
      "target": "xananode.canonical:schema/relationship-type-validates",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-research_workflow-contains-schema-relationship-type-validates",
      "summary": "The research_workflow relationship category contains validates.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-research_workflow",
      "target": "xananode.canonical:media/relationship-category-research_workflow-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-research_workflow-has_primary_media-media-relationship-category-research_workflow-projection-icon",
      "summary": "The research_workflow relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-revision",
      "target": "xananode.canonical:schema/relationship-type-adapted_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-revision-contains-schema-relationship-type-adapted_from",
      "summary": "The revision relationship category contains adapted_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-revision",
      "target": "xananode.canonical:schema/relationship-type-adapted_into",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-revision-contains-schema-relationship-type-adapted_into",
      "summary": "The revision relationship category contains adapted_into.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-revision",
      "target": "xananode.canonical:schema/relationship-type-refined_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-revision-contains-schema-relationship-type-refined_by",
      "summary": "The revision relationship category contains the refined_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-revision",
      "target": "xananode.canonical:schema/relationship-type-refines",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-revision-contains-schema-relationship-type-refines",
      "summary": "The revision relationship category contains refines.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-revision",
      "target": "xananode.canonical:schema/relationship-type-superseded_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-revision-contains-schema-relationship-type-superseded_by",
      "summary": "The revision relationship category contains the superseded_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-revision",
      "target": "xananode.canonical:schema/relationship-type-supersedes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-revision-contains-schema-relationship-type-supersedes",
      "summary": "The revision relationship category contains supersedes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-revision",
      "target": "xananode.canonical:media/relationship-category-revision-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-revision-has_primary_media-media-relationship-category-revision-projection-icon",
      "summary": "The revision relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-schema_mapping",
      "target": "xananode.canonical:schema/relationship-type-broader_than",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-schema_mapping-contains-schema-relationship-type-broader_than",
      "summary": "The schema_mapping relationship category contains broader_than.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-schema_mapping",
      "target": "xananode.canonical:schema/relationship-type-compatible_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-schema_mapping-contains-schema-relationship-type-compatible_with",
      "summary": "The schema_mapping relationship category contains compatible_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-schema_mapping",
      "target": "xananode.canonical:schema/relationship-type-extension_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-schema_mapping-contains-schema-relationship-type-extension_of",
      "summary": "The schema_mapping relationship category contains extension_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-schema_mapping",
      "target": "xananode.canonical:schema/relationship-type-has_extension",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-schema_mapping-contains-schema-relationship-type-has_extension",
      "summary": "The schema_mapping relationship category contains the has_extension inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-schema_mapping",
      "target": "xananode.canonical:schema/relationship-type-mapped_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-schema_mapping-contains-schema-relationship-type-mapped_from",
      "summary": "The schema_mapping relationship category contains the mapped_from inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-schema_mapping",
      "target": "xananode.canonical:schema/relationship-type-maps_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-schema_mapping-contains-schema-relationship-type-maps_to",
      "summary": "The schema_mapping relationship category contains maps_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-schema_mapping",
      "target": "xananode.canonical:schema/relationship-type-narrower_than",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-schema_mapping-contains-schema-relationship-type-narrower_than",
      "summary": "The schema_mapping relationship category contains the narrower_than inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-schema_mapping",
      "target": "xananode.canonical:media/relationship-category-schema_mapping-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-schema_mapping-has_primary_media-media-relationship-category-schema_mapping-projection-icon",
      "summary": "The schema_mapping relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-social",
      "target": "xananode.canonical:schema/relationship-type-collaborated_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-social-contains-schema-relationship-type-collaborated_with",
      "summary": "The social relationship category contains collaborated_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-social",
      "target": "xananode.canonical:schema/relationship-type-friend_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-social-contains-schema-relationship-type-friend_of",
      "summary": "The social relationship category contains friend_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-social",
      "target": "xananode.canonical:schema/relationship-type-interviewed",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-social-contains-schema-relationship-type-interviewed",
      "summary": "The social relationship category contains interviewed.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-social",
      "target": "xananode.canonical:schema/relationship-type-interviewed_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-social-contains-schema-relationship-type-interviewed_by",
      "summary": "The social relationship category contains the interviewed_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-social",
      "target": "xananode.canonical:schema/relationship-type-memorialized_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-social-contains-schema-relationship-type-memorialized_by",
      "summary": "The social relationship category contains the memorialized_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-social",
      "target": "xananode.canonical:schema/relationship-type-memorializes",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-social-contains-schema-relationship-type-memorializes",
      "summary": "The social relationship category contains memorializes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-social",
      "target": "xananode.canonical:media/relationship-category-social-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-social-has_primary_media-media-relationship-category-social-projection-icon",
      "summary": "The social relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-temporal",
      "target": "xananode.canonical:schema/relationship-type-contemporary_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-temporal-contains-schema-relationship-type-contemporary_of",
      "summary": "The temporal relationship category contains contemporary_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-temporal",
      "target": "xananode.canonical:schema/relationship-type-continued_from",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-temporal-contains-schema-relationship-type-continued_from",
      "summary": "The temporal relationship category contains the continued_from inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-temporal",
      "target": "xananode.canonical:schema/relationship-type-continues_to",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-temporal-contains-schema-relationship-type-continues_to",
      "summary": "The temporal relationship category contains continues_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-temporal",
      "target": "xananode.canonical:schema/relationship-type-followed",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-temporal-contains-schema-relationship-type-followed",
      "summary": "The temporal relationship category contains the followed inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-temporal",
      "target": "xananode.canonical:schema/relationship-type-is_start_of",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-temporal-contains-schema-relationship-type-is_start_of",
      "summary": "The temporal relationship category contains the is_start_of inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-temporal",
      "target": "xananode.canonical:schema/relationship-type-preceded",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-temporal-contains-schema-relationship-type-preceded",
      "summary": "The temporal relationship category contains preceded.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-temporal",
      "target": "xananode.canonical:schema/relationship-type-starts_with",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-temporal-contains-schema-relationship-type-starts_with",
      "summary": "The temporal relationship category contains starts_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-temporal",
      "target": "xananode.canonical:media/relationship-category-temporal-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-temporal-has_primary_media-media-relationship-category-temporal-projection-icon",
      "summary": "The temporal relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-uncertainty",
      "target": "xananode.canonical:schema/relationship-type-evidence_insufficient_for",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-uncertainty-contains-schema-relationship-type-evidence_insufficient_for",
      "summary": "The uncertainty relationship category contains the evidence_insufficient_for inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-uncertainty",
      "target": "xananode.canonical:schema/relationship-type-insufficient_evidence",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-uncertainty-contains-schema-relationship-type-insufficient_evidence",
      "summary": "The uncertainty relationship category contains insufficient_evidence.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-uncertainty",
      "target": "xananode.canonical:schema/relationship-type-reviewed_under",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-uncertainty-contains-schema-relationship-type-reviewed_under",
      "summary": "The uncertainty relationship category contains the reviewed_under inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-uncertainty",
      "target": "xananode.canonical:schema/relationship-type-speculated_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-uncertainty-contains-schema-relationship-type-speculated_by",
      "summary": "The uncertainty relationship category contains the speculated_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-uncertainty",
      "target": "xananode.canonical:schema/relationship-type-speculative",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-uncertainty-contains-schema-relationship-type-speculative",
      "summary": "The uncertainty relationship category contains speculative.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-uncertainty",
      "target": "xananode.canonical:schema/relationship-type-under_review",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-uncertainty-contains-schema-relationship-type-under_review",
      "summary": "The uncertainty relationship category contains under_review.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-uncertainty",
      "target": "xananode.canonical:schema/relationship-type-unresolved",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-uncertainty-contains-schema-relationship-type-unresolved",
      "summary": "The uncertainty relationship category contains unresolved.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-uncertainty",
      "target": "xananode.canonical:schema/relationship-type-unresolved_by",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-uncertainty-contains-schema-relationship-type-unresolved_by",
      "summary": "The uncertainty relationship category contains the unresolved_by inverse term.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-category-uncertainty",
      "target": "xananode.canonical:media/relationship-category-uncertainty-projection-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-category-uncertainty-has_primary_media-media-relationship-category-uncertainty-projection-icon",
      "summary": "The uncertainty relationship category uses this projection icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-abstraction_of",
      "target": "xananode.canonical:schema/relationship-type-concrete_example_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-abstraction_of-related_to-schema-relationship-type-concrete_example_of-inverse",
      "summary": "Abstraction of has inverse concrete_example_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-adapted_from",
      "target": "xananode.canonical:schema/relationship-type-adapted_into",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-adapted_from-related_to-schema-relationship-type-adapted_into-inverse",
      "summary": "Adapted from has inverse adapted_into.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-adapted_into",
      "target": "xananode.canonical:schema/relationship-type-adapted_from",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-adapted_into-related_to-schema-relationship-type-adapted_from-inverse",
      "summary": "Adapted into has inverse adapted_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-alias_of",
      "target": "xananode.canonical:schema/relationship-type-has_alias",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-alias_of-related_to-schema-relationship-type-has_alias-inverse",
      "summary": "Alias of has inverse has_alias.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-alternative_to",
      "target": "xananode.canonical:schema/relationship-type-alternative_to",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-alternative_to-related_to-schema-relationship-type-alternative_to-inverse",
      "summary": "Alternative to has inverse alternative_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-analogous_to",
      "target": "xananode.canonical:schema/relationship-type-analogous_to",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-analogous_to-related_to-schema-relationship-type-analogous_to-inverse",
      "summary": "Analogous to has inverse analogous_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-announced_by",
      "target": "xananode.canonical:schema/relationship-type-announced",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-announced_by-related_to-schema-relationship-type-announced-inverse",
      "summary": "announced_by is the inverse term for announced.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-announced",
      "target": "xananode.canonical:schema/relationship-type-announced_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-announced-related_to-schema-relationship-type-announced_by-inverse",
      "summary": "Announced has inverse announced_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-answered_by",
      "target": "xananode.canonical:schema/relationship-type-answers",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-answered_by-related_to-schema-relationship-type-answers-inverse",
      "summary": "answered_by is the inverse term for answers.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-answered_in",
      "target": "xananode.canonical:schema/relationship-type-had_answer",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-answered_in-related_to-schema-relationship-type-had_answer-inverse",
      "summary": "Answered in has inverse had_answer.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-answers",
      "target": "xananode.canonical:schema/relationship-type-answered_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-answers-related_to-schema-relationship-type-answered_by-inverse",
      "summary": "Answers has inverse answered_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-anticipated_by",
      "target": "xananode.canonical:schema/relationship-type-anticipated",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-anticipated_by-related_to-schema-relationship-type-anticipated-inverse",
      "summary": "anticipated_by is the inverse term for anticipated.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-anticipated",
      "target": "xananode.canonical:schema/relationship-type-anticipated_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-anticipated-related_to-schema-relationship-type-anticipated_by-inverse",
      "summary": "Anticipated has inverse anticipated_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-anticipates",
      "target": "xananode.canonical:schema/relationship-type-anticipated_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-anticipates-related_to-schema-relationship-type-anticipated_by-inverse",
      "summary": "Anticipates has inverse anticipated_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-appears_in",
      "target": "xananode.canonical:schema/relationship-type-has_appearance",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-appears_in-related_to-schema-relationship-type-has_appearance-inverse",
      "summary": "Appears in has inverse has_appearance.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-approved_by",
      "target": "xananode.canonical:schema/relationship-type-approved",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-approved_by-related_to-schema-relationship-type-approved-inverse",
      "summary": "approved_by is the inverse term for approved.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-approved",
      "target": "xananode.canonical:schema/relationship-type-approved_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-approved-related_to-schema-relationship-type-approved_by-inverse",
      "summary": "Approved has inverse approved_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-arrived_from",
      "target": "xananode.canonical:schema/relationship-type-arrives_at",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-arrived_from-related_to-schema-relationship-type-arrives_at-inverse",
      "summary": "arrived_from is the inverse term for arrives_at.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-arrives_at",
      "target": "xananode.canonical:schema/relationship-type-arrived_from",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-arrives_at-related_to-schema-relationship-type-arrived_from-inverse",
      "summary": "Arrives at has inverse arrived_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-asked_by",
      "target": "xananode.canonical:schema/relationship-type-asked",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-asked_by-related_to-schema-relationship-type-asked-inverse",
      "summary": "asked_by is the inverse term for asked.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-asked_in",
      "target": "xananode.canonical:schema/relationship-type-had_question",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-asked_in-related_to-schema-relationship-type-had_question-inverse",
      "summary": "Asked in has inverse had_question.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-asked",
      "target": "xananode.canonical:schema/relationship-type-asked_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-asked-related_to-schema-relationship-type-asked_by-inverse",
      "summary": "Asked has inverse asked_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-assembled_from",
      "target": "xananode.canonical:schema/relationship-type-assembled_into",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-assembled_from-related_to-schema-relationship-type-assembled_into-inverse",
      "summary": "Assembled from has inverse assembled_into.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-assembled_into",
      "target": "xananode.canonical:schema/relationship-type-assembled_from",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-assembled_into-related_to-schema-relationship-type-assembled_from-inverse",
      "summary": "assembled_into is the inverse term for assembled_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-attribution_required_by",
      "target": "xananode.canonical:schema/relationship-type-requires_attribution",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-attribution_required_by-related_to-schema-relationship-type-requires_attribution-inverse",
      "summary": "attribution_required_by is the inverse term for requires_attribution.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-authored_by",
      "target": "xananode.canonical:schema/relationship-type-authored",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-authored_by-related_to-schema-relationship-type-authored-inverse",
      "summary": "authored_by is the inverse term for authored.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-authored",
      "target": "xananode.canonical:schema/relationship-type-authored_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-authored-related_to-schema-relationship-type-authored_by-inverse",
      "summary": "Authored has inverse authored_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-broadcast_to",
      "target": "xananode.canonical:schema/relationship-type-received_broadcast_from",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-broadcast_to-related_to-schema-relationship-type-received_broadcast_from-inverse",
      "summary": "Broadcast to has inverse received_broadcast_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-broader_than",
      "target": "xananode.canonical:schema/relationship-type-narrower_than",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-broader_than-related_to-schema-relationship-type-narrower_than-inverse",
      "summary": "Broader than has inverse narrower_than.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-cited_by",
      "target": "xananode.canonical:schema/relationship-type-cites",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-cited_by-related_to-schema-relationship-type-cites-inverse",
      "summary": "cited_by is the inverse term for cites.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-cites",
      "target": "xananode.canonical:schema/relationship-type-cited_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-cites-related_to-schema-relationship-type-cited_by-inverse",
      "summary": "Cites has inverse cited_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-claim_of",
      "target": "xananode.canonical:schema/relationship-type-has_claim",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-claim_of-related_to-schema-relationship-type-has_claim-inverse",
      "summary": "claim_of is the inverse term for has_claim.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-clarified_by",
      "target": "xananode.canonical:schema/relationship-type-clarifies",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-clarified_by-related_to-schema-relationship-type-clarifies-inverse",
      "summary": "clarified_by is the inverse term for clarifies.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-clarifies",
      "target": "xananode.canonical:schema/relationship-type-clarified_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-clarifies-related_to-schema-relationship-type-clarified_by-inverse",
      "summary": "Clarifies has inverse clarified_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-co_authored_with",
      "target": "xananode.canonical:schema/relationship-type-co_authored_with",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-co_authored_with-related_to-schema-relationship-type-co_authored_with-inverse",
      "summary": "Co-authored with has inverse co_authored_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-coined_by",
      "target": "xananode.canonical:schema/relationship-type-coined",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-coined_by-related_to-schema-relationship-type-coined-inverse",
      "summary": "coined_by is the inverse term for coined.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-coined",
      "target": "xananode.canonical:schema/relationship-type-coined_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-coined-related_to-schema-relationship-type-coined_by-inverse",
      "summary": "Coined has inverse coined_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-collaborated_with",
      "target": "xananode.canonical:schema/relationship-type-collaborated_with",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-collaborated_with-related_to-schema-relationship-type-collaborated_with-inverse",
      "summary": "Collaborated with has inverse collaborated_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-communicated_to",
      "target": "xananode.canonical:schema/relationship-type-communication_received_from",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-communicated_to-related_to-schema-relationship-type-communication_received_from-inverse",
      "summary": "Communicated to has inverse communication_received_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-communication_received_from",
      "target": "xananode.canonical:schema/relationship-type-communicated_to",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-communication_received_from-related_to-schema-relationship-type-communicated_to-inverse",
      "summary": "communication_received_from is the inverse term for communicated_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-compatible_with",
      "target": "xananode.canonical:schema/relationship-type-compatible_with",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-compatible_with-related_to-schema-relationship-type-compatible_with-inverse",
      "summary": "Compatible with has inverse compatible_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-concrete_example_of",
      "target": "xananode.canonical:schema/relationship-type-abstraction_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-concrete_example_of-related_to-schema-relationship-type-abstraction_of-inverse",
      "summary": "concrete_example_of is the inverse term for abstraction_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-contains",
      "target": "xananode.canonical:schema/relationship-type-part_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-contains-related_to-schema-relationship-type-part_of-inverse",
      "summary": "Contains has inverse part_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-contemporary_of",
      "target": "xananode.canonical:schema/relationship-type-contemporary_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-contemporary_of-related_to-schema-relationship-type-contemporary_of-inverse",
      "summary": "Contemporary of has inverse contemporary_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-context_for",
      "target": "xananode.canonical:schema/relationship-type-has_context",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-context_for-related_to-schema-relationship-type-has_context-inverse",
      "summary": "Context for has inverse has_context.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-context_required_by",
      "target": "xananode.canonical:schema/relationship-type-requires_context",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-context_required_by-related_to-schema-relationship-type-requires_context-inverse",
      "summary": "context_required_by is the inverse term for requires_context.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-continued_from",
      "target": "xananode.canonical:schema/relationship-type-continues_to",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-continued_from-related_to-schema-relationship-type-continues_to-inverse",
      "summary": "continued_from is the inverse term for continues_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-continues_to",
      "target": "xananode.canonical:schema/relationship-type-continued_from",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-continues_to-related_to-schema-relationship-type-continued_from-inverse",
      "summary": "Continues to has inverse continued_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-contradicted_by",
      "target": "xananode.canonical:schema/relationship-type-contradicts",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-contradicted_by-related_to-schema-relationship-type-contradicts-inverse",
      "summary": "contradicted_by is the inverse term for contradicts.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-contradicts",
      "target": "xananode.canonical:schema/relationship-type-contradicted_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-contradicts-related_to-schema-relationship-type-contradicted_by-inverse",
      "summary": "Contradicts has inverse contradicted_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-contrasts_with",
      "target": "xananode.canonical:schema/relationship-type-contrasts_with",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-contrasts_with-related_to-schema-relationship-type-contrasts_with-inverse",
      "summary": "Contrasts with has inverse contrasts_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-created_by",
      "target": "xananode.canonical:schema/relationship-type-created",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-created_by-related_to-schema-relationship-type-created-inverse",
      "summary": "created_by is the inverse term for created.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-created",
      "target": "xananode.canonical:schema/relationship-type-created_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-created-related_to-schema-relationship-type-created_by-inverse",
      "summary": "Created has inverse created_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-critical_to",
      "target": "xananode.canonical:schema/relationship-type-critically_depends_on",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-critical_to-related_to-schema-relationship-type-critically_depends_on-inverse",
      "summary": "Critical to has inverse critically_depends_on.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-critically_depends_on",
      "target": "xananode.canonical:schema/relationship-type-critical_to",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-critically_depends_on-related_to-schema-relationship-type-critical_to-inverse",
      "summary": "critically_depends_on is the inverse term for critical_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-debated_with",
      "target": "xananode.canonical:schema/relationship-type-debated_with",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-debated_with-related_to-schema-relationship-type-debated_with-inverse",
      "summary": "Debated with has inverse debated_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-deep_linked_from",
      "target": "xananode.canonical:schema/relationship-type-deep_links_to",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-deep_linked_from-related_to-schema-relationship-type-deep_links_to-inverse",
      "summary": "deep_linked_from is the inverse term for deep_links_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-deep_links_to",
      "target": "xananode.canonical:schema/relationship-type-deep_linked_from",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-deep_links_to-related_to-schema-relationship-type-deep_linked_from-inverse",
      "summary": "Deep links to has inverse deep_linked_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-defined_by",
      "target": "xananode.canonical:schema/relationship-type-defines",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-defined_by-related_to-schema-relationship-type-defines-inverse",
      "summary": "defined_by is the inverse term for defines.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-defines",
      "target": "xananode.canonical:schema/relationship-type-defined_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-defines-related_to-schema-relationship-type-defined_by-inverse",
      "summary": "Defines has inverse defined_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-demonstrated_by",
      "target": "xananode.canonical:schema/relationship-type-demonstrates",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-demonstrated_by-related_to-schema-relationship-type-demonstrates-inverse",
      "summary": "demonstrated_by is the inverse term for demonstrates.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-demonstrates",
      "target": "xananode.canonical:schema/relationship-type-demonstrated_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-demonstrates-related_to-schema-relationship-type-demonstrated_by-inverse",
      "summary": "Demonstrates has inverse demonstrated_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-dependency_of",
      "target": "xananode.canonical:schema/relationship-type-depends_on",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-dependency_of-related_to-schema-relationship-type-depends_on-inverse",
      "summary": "dependency_of is the inverse term for depends_on.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-depends_on",
      "target": "xananode.canonical:schema/relationship-type-dependency_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-depends_on-related_to-schema-relationship-type-dependency_of-inverse",
      "summary": "Depends on has inverse dependency_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-depicted_by",
      "target": "xananode.canonical:schema/relationship-type-depicts",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-depicted_by-related_to-schema-relationship-type-depicts-inverse",
      "summary": "depicted_by is the inverse term for depicts.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-depicts",
      "target": "xananode.canonical:schema/relationship-type-depicted_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-depicts-related_to-schema-relationship-type-depicted_by-inverse",
      "summary": "Depicts has inverse depicted_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-derived_from",
      "target": "xananode.canonical:schema/relationship-type-derived_into",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-derived_from-related_to-schema-relationship-type-derived_into-inverse",
      "summary": "Derived from has inverse derived_into.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-derived_into",
      "target": "xananode.canonical:schema/relationship-type-derived_from",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-derived_into-related_to-schema-relationship-type-derived_from-inverse",
      "summary": "derived_into is the inverse term for derived_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-discussed_in",
      "target": "xananode.canonical:schema/relationship-type-discusses",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-discussed_in-related_to-schema-relationship-type-discusses-inverse",
      "summary": "discussed_in is the inverse term for discusses.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-discussed_with",
      "target": "xananode.canonical:schema/relationship-type-discussion_partner_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-discussed_with-related_to-schema-relationship-type-discussion_partner_of-inverse",
      "summary": "Discussed with has inverse discussion_partner_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-discusses",
      "target": "xananode.canonical:schema/relationship-type-discussed_in",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-discusses-related_to-schema-relationship-type-discussed_in-inverse",
      "summary": "Discusses has inverse discussed_in.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-discussion_partner_of",
      "target": "xananode.canonical:schema/relationship-type-discussed_with",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-discussion_partner_of-related_to-schema-relationship-type-discussed_with-inverse",
      "summary": "discussion_partner_of is the inverse term for discussed_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-disputed_by",
      "target": "xananode.canonical:schema/relationship-type-disputes",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-disputed_by-related_to-schema-relationship-type-disputes-inverse",
      "summary": "disputed_by is the inverse term for disputes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-disputed_identity",
      "target": "xananode.canonical:schema/relationship-type-disputed_identity",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-disputed_identity-related_to-schema-relationship-type-disputed_identity-inverse",
      "summary": "Disputed identity has inverse disputed_identity.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-disputes",
      "target": "xananode.canonical:schema/relationship-type-disputed_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-disputes-related_to-schema-relationship-type-disputed_by-inverse",
      "summary": "Disputes has inverse disputed_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-documented_by",
      "target": "xananode.canonical:schema/relationship-type-documents",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-documented_by-related_to-schema-relationship-type-documents-inverse",
      "summary": "documented_by is the inverse term for documents.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-documents",
      "target": "xananode.canonical:schema/relationship-type-documented_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-documents-related_to-schema-relationship-type-documented_by-inverse",
      "summary": "Documents has inverse documented_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-enabled_by",
      "target": "xananode.canonical:schema/relationship-type-enables",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-enabled_by-related_to-schema-relationship-type-enables-inverse",
      "summary": "enabled_by is the inverse term for enables.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-enables",
      "target": "xananode.canonical:schema/relationship-type-enabled_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-enables-related_to-schema-relationship-type-enabled_by-inverse",
      "summary": "Enables has inverse enabled_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-equivalent_to",
      "target": "xananode.canonical:schema/relationship-type-equivalent_to",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-equivalent_to-related_to-schema-relationship-type-equivalent_to-inverse",
      "summary": "Equivalent to has inverse equivalent_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-evidence_for",
      "target": "xananode.canonical:schema/relationship-type-has_evidence",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-evidence_for-related_to-schema-relationship-type-has_evidence-inverse",
      "summary": "Evidence for has inverse has_evidence.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-evidence_insufficient_for",
      "target": "xananode.canonical:schema/relationship-type-insufficient_evidence",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-evidence_insufficient_for-related_to-schema-relationship-type-insufficient_evidence-inverse",
      "summary": "evidence_insufficient_for is the inverse term for insufficient_evidence.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-example_of",
      "target": "xananode.canonical:schema/relationship-type-has_example",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-example_of-related_to-schema-relationship-type-has_example-inverse",
      "summary": "Example of has inverse has_example.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-explained_by",
      "target": "xananode.canonical:schema/relationship-type-explains",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-explained_by-related_to-schema-relationship-type-explains-inverse",
      "summary": "explained_by is the inverse term for explains.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-explains",
      "target": "xananode.canonical:schema/relationship-type-explained_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-explains-related_to-schema-relationship-type-explained_by-inverse",
      "summary": "Explains has inverse explained_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-extended_by",
      "target": "xananode.canonical:schema/relationship-type-extends",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-extended_by-related_to-schema-relationship-type-extends-inverse",
      "summary": "extended_by is the inverse term for extends.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-extends",
      "target": "xananode.canonical:schema/relationship-type-extended_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-extends-related_to-schema-relationship-type-extended_by-inverse",
      "summary": "Extends has inverse extended_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-extension_of",
      "target": "xananode.canonical:schema/relationship-type-has_extension",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-extension_of-related_to-schema-relationship-type-has_extension-inverse",
      "summary": "Extension of has inverse has_extension.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-fails_to_answer",
      "target": "xananode.canonical:schema/relationship-type-not_answered_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-fails_to_answer-related_to-schema-relationship-type-not_answered_by-inverse",
      "summary": "Fails to answer has inverse not_answered_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-falsified_by",
      "target": "xananode.canonical:schema/relationship-type-falsifies",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-falsified_by-related_to-schema-relationship-type-falsifies-inverse",
      "summary": "falsified_by is the inverse term for falsifies.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-falsifies",
      "target": "xananode.canonical:schema/relationship-type-falsified_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-falsifies-related_to-schema-relationship-type-falsified_by-inverse",
      "summary": "Falsifies has inverse falsified_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-featured_in",
      "target": "xananode.canonical:schema/relationship-type-features",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-featured_in-related_to-schema-relationship-type-features-inverse",
      "summary": "featured_in is the inverse term for features.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-featured_speaker",
      "target": "xananode.canonical:schema/relationship-type-spoke_at",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-featured_speaker-related_to-schema-relationship-type-spoke_at-inverse",
      "summary": "featured_speaker is the inverse term for spoke_at.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-features",
      "target": "xananode.canonical:schema/relationship-type-featured_in",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-features-related_to-schema-relationship-type-featured_in-inverse",
      "summary": "Features has inverse featured_in.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-followed",
      "target": "xananode.canonical:schema/relationship-type-preceded",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-followed-related_to-schema-relationship-type-preceded-inverse",
      "summary": "followed is the inverse term for preceded.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-format_translated_from",
      "target": "xananode.canonical:schema/relationship-type-format_translated_into",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-format_translated_from-related_to-schema-relationship-type-format_translated_into-inverse",
      "summary": "Format translated from has inverse format_translated_into.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-format_translated_into",
      "target": "xananode.canonical:schema/relationship-type-format_translated_from",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-format_translated_into-related_to-schema-relationship-type-format_translated_from-inverse",
      "summary": "Format translated into has inverse format_translated_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-frequently_misunderstood",
      "target": "xananode.canonical:schema/relationship-type-misunderstanding_context_for",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-frequently_misunderstood-related_to-schema-relationship-type-misunderstanding_context_for-inverse",
      "summary": "Frequently misunderstood has inverse misunderstanding_context_for.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-friend_of",
      "target": "xananode.canonical:schema/relationship-type-friend_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-friend_of-related_to-schema-relationship-type-friend_of-inverse",
      "summary": "Friend of has inverse friend_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-generalized_by",
      "target": "xananode.canonical:schema/relationship-type-specializes",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-generalized_by-related_to-schema-relationship-type-specializes-inverse",
      "summary": "generalized_by is the inverse term for specializes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-generalizes",
      "target": "xananode.canonical:schema/relationship-type-specialized_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-generalizes-related_to-schema-relationship-type-specialized_by-inverse",
      "summary": "Generalizes has inverse specialized_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-generated_by",
      "target": "xananode.canonical:schema/relationship-type-generated",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-generated_by-related_to-schema-relationship-type-generated-inverse",
      "summary": "generated_by is the inverse term for generated.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-generated",
      "target": "xananode.canonical:schema/relationship-type-generated_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-generated-related_to-schema-relationship-type-generated_by-inverse",
      "summary": "Generated has inverse generated_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-governed_by",
      "target": "xananode.canonical:schema/relationship-type-governs",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-governed_by-related_to-schema-relationship-type-governs-inverse",
      "summary": "governed by has inverse governs.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-governs",
      "target": "xananode.canonical:schema/relationship-type-governed_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-governs-related_to-schema-relationship-type-governed_by-inverse",
      "summary": "governs is the inverse term for governed_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-had_answer",
      "target": "xananode.canonical:schema/relationship-type-answered_in",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-had_answer-related_to-schema-relationship-type-answered_in-inverse",
      "summary": "had_answer is the inverse term for answered_in.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-had_participant",
      "target": "xananode.canonical:schema/relationship-type-participated_in",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-had_participant-related_to-schema-relationship-type-participated_in-inverse",
      "summary": "had_participant is the inverse term for participated_in.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-had_question",
      "target": "xananode.canonical:schema/relationship-type-asked_in",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-had_question-related_to-schema-relationship-type-asked_in-inverse",
      "summary": "had_question is the inverse term for asked_in.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-has_alias",
      "target": "xananode.canonical:schema/relationship-type-alias_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-has_alias-related_to-schema-relationship-type-alias_of-inverse",
      "summary": "has_alias is the inverse term for alias_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-has_appearance",
      "target": "xananode.canonical:schema/relationship-type-appears_in",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-has_appearance-related_to-schema-relationship-type-appears_in-inverse",
      "summary": "has_appearance is the inverse term for appears_in.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-has_claim",
      "target": "xananode.canonical:schema/relationship-type-claim_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-has_claim-related_to-schema-relationship-type-claim_of-inverse",
      "summary": "Has claim has inverse claim_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-has_context",
      "target": "xananode.canonical:schema/relationship-type-context_for",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-has_context-related_to-schema-relationship-type-context_for-inverse",
      "summary": "has_context is the inverse term for context_for.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-has_evidence",
      "target": "xananode.canonical:schema/relationship-type-evidence_for",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-has_evidence-related_to-schema-relationship-type-evidence_for-inverse",
      "summary": "has_evidence is the inverse term for evidence_for.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-has_example",
      "target": "xananode.canonical:schema/relationship-type-example_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-has_example-related_to-schema-relationship-type-example_of-inverse",
      "summary": "has_example is the inverse term for example_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-has_extension",
      "target": "xananode.canonical:schema/relationship-type-extension_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-has_extension-related_to-schema-relationship-type-extension_of-inverse",
      "summary": "has_extension is the inverse term for extension_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-has_high_risk",
      "target": "xananode.canonical:schema/relationship-type-high_risk_for",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-has_high_risk-related_to-schema-relationship-type-high_risk_for-inverse",
      "summary": "has_high_risk is the inverse term for high_risk_for.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-has_important_context",
      "target": "xananode.canonical:schema/relationship-type-important_for",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-has_important_context-related_to-schema-relationship-type-important_for-inverse",
      "summary": "has_important_context is the inverse term for important_for.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-has_ingredient",
      "target": "xananode.canonical:schema/relationship-type-ingredient_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-has_ingredient-related_to-schema-relationship-type-ingredient_of-inverse",
      "summary": "has_ingredient is the inverse term for ingredient_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-has_primary_media",
      "target": "xananode.canonical:schema/relationship-type-used_as_primary_media_for",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-has_primary_media-related_to-schema-relationship-type-used_as_primary_media_for-inverse",
      "summary": "Has primary media has inverse used_as_primary_media_for.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-high_risk_for",
      "target": "xananode.canonical:schema/relationship-type-has_high_risk",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-high_risk_for-related_to-schema-relationship-type-has_high_risk-inverse",
      "summary": "High risk for has inverse has_high_risk.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-identified_by",
      "target": "xananode.canonical:schema/relationship-type-identified",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-identified_by-related_to-schema-relationship-type-identified-inverse",
      "summary": "identified_by is the inverse term for identified.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-identified",
      "target": "xananode.canonical:schema/relationship-type-identified_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-identified-related_to-schema-relationship-type-identified_by-inverse",
      "summary": "Identified has inverse identified_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-implemented_by",
      "target": "xananode.canonical:schema/relationship-type-implements",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-implemented_by-related_to-schema-relationship-type-implements-inverse",
      "summary": "implemented_by is the inverse term for implements.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-implements",
      "target": "xananode.canonical:schema/relationship-type-implemented_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-implements-related_to-schema-relationship-type-implemented_by-inverse",
      "summary": "Implements has inverse implemented_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-important_for",
      "target": "xananode.canonical:schema/relationship-type-has_important_context",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-important_for-related_to-schema-relationship-type-has_important_context-inverse",
      "summary": "Important for has inverse has_important_context.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-included_in",
      "target": "xananode.canonical:schema/relationship-type-includes",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-included_in-related_to-schema-relationship-type-includes-inverse",
      "summary": "included_in is the inverse term for includes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-includes",
      "target": "xananode.canonical:schema/relationship-type-included_in",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-includes-related_to-schema-relationship-type-included_in-inverse",
      "summary": "Includes has inverse included_in.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-influenced_by",
      "target": "xananode.canonical:schema/relationship-type-influenced",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-influenced_by-related_to-schema-relationship-type-influenced-inverse",
      "summary": "influenced_by is the inverse term for influenced.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-influenced",
      "target": "xananode.canonical:schema/relationship-type-influenced_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-influenced-related_to-schema-relationship-type-influenced_by-inverse",
      "summary": "Influenced has inverse influenced_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-information_required_by",
      "target": "xananode.canonical:schema/relationship-type-requires_information",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-information_required_by-related_to-schema-relationship-type-requires_information-inverse",
      "summary": "information_required_by is the inverse term for requires_information.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-ingredient_of",
      "target": "xananode.canonical:schema/relationship-type-has_ingredient",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-ingredient_of-related_to-schema-relationship-type-has_ingredient-inverse",
      "summary": "Ingredient of has inverse has_ingredient.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-inquiry_motivated_by",
      "target": "xananode.canonical:schema/relationship-type-motivates_inquiry",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-inquiry_motivated_by-related_to-schema-relationship-type-motivates_inquiry-inverse",
      "summary": "inquiry_motivated_by is the inverse term for motivates_inquiry.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-insufficient_evidence",
      "target": "xananode.canonical:schema/relationship-type-evidence_insufficient_for",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-insufficient_evidence-related_to-schema-relationship-type-evidence_insufficient_for-inverse",
      "summary": "Insufficient evidence has inverse evidence_insufficient_for.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-interviewed_by",
      "target": "xananode.canonical:schema/relationship-type-interviewed",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-interviewed_by-related_to-schema-relationship-type-interviewed-inverse",
      "summary": "interviewed_by is the inverse term for interviewed.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-interviewed",
      "target": "xananode.canonical:schema/relationship-type-interviewed_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-interviewed-related_to-schema-relationship-type-interviewed_by-inverse",
      "summary": "Interviewed has inverse interviewed_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-introduced_by",
      "target": "xananode.canonical:schema/relationship-type-introduced",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-introduced_by-related_to-schema-relationship-type-introduced-inverse",
      "summary": "introduced_by is the inverse term for introduced.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-introduced_in",
      "target": "xananode.canonical:schema/relationship-type-introduction_venue_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-introduced_in-related_to-schema-relationship-type-introduction_venue_of-inverse",
      "summary": "Introduced in has inverse introduction_venue_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-introduced",
      "target": "xananode.canonical:schema/relationship-type-introduced_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-introduced-related_to-schema-relationship-type-introduced_by-inverse",
      "summary": "Introduced has inverse introduced_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-introduction_venue_of",
      "target": "xananode.canonical:schema/relationship-type-introduced_in",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-introduction_venue_of-related_to-schema-relationship-type-introduced_in-inverse",
      "summary": "introduction_venue_of is the inverse term for introduced_in.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-investigated_by",
      "target": "xananode.canonical:schema/relationship-type-investigates",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-investigated_by-related_to-schema-relationship-type-investigates-inverse",
      "summary": "investigated_by is the inverse term for investigates.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-investigates",
      "target": "xananode.canonical:schema/relationship-type-investigated_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-investigates-related_to-schema-relationship-type-investigated_by-inverse",
      "summary": "Investigates has inverse investigated_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-is_start_of",
      "target": "xananode.canonical:schema/relationship-type-starts_with",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-is_start_of-related_to-schema-relationship-type-starts_with-inverse",
      "summary": "is_start_of is the inverse term for starts_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-license_for",
      "target": "xananode.canonical:schema/relationship-type-licensed_under",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-license_for-related_to-schema-relationship-type-licensed_under-inverse",
      "summary": "license_for is the inverse term for licensed_under.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-licensed_under",
      "target": "xananode.canonical:schema/relationship-type-license_for",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-licensed_under-related_to-schema-relationship-type-license_for-inverse",
      "summary": "licensed under has inverse license_for.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-made_of",
      "target": "xananode.canonical:schema/relationship-type-makes_up",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-made_of-related_to-schema-relationship-type-makes_up-inverse",
      "summary": "Made of has inverse makes_up.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-makes_up",
      "target": "xananode.canonical:schema/relationship-type-made_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-makes_up-related_to-schema-relationship-type-made_of-inverse",
      "summary": "makes_up is the inverse term for made_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-mapped_from",
      "target": "xananode.canonical:schema/relationship-type-maps_to",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-mapped_from-related_to-schema-relationship-type-maps_to-inverse",
      "summary": "mapped_from is the inverse term for maps_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-maps_to",
      "target": "xananode.canonical:schema/relationship-type-mapped_from",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-maps_to-related_to-schema-relationship-type-mapped_from-inverse",
      "summary": "Maps to has inverse mapped_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-medium_transition",
      "target": "xananode.canonical:schema/relationship-type-medium_transitioned_from",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-medium_transition-related_to-schema-relationship-type-medium_transitioned_from-inverse",
      "summary": "Medium transition has inverse medium_transitioned_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-medium_transitioned_from",
      "target": "xananode.canonical:schema/relationship-type-medium_transition",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-medium_transitioned_from-related_to-schema-relationship-type-medium_transition-inverse",
      "summary": "Medium transitioned from has inverse medium_transition.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-memorialized_by",
      "target": "xananode.canonical:schema/relationship-type-memorializes",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-memorialized_by-related_to-schema-relationship-type-memorializes-inverse",
      "summary": "memorialized_by is the inverse term for memorializes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-memorializes",
      "target": "xananode.canonical:schema/relationship-type-memorialized_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-memorializes-related_to-schema-relationship-type-memorialized_by-inverse",
      "summary": "Memorializes has inverse memorialized_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-mentioned_by",
      "target": "xananode.canonical:schema/relationship-type-mentions",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-mentioned_by-related_to-schema-relationship-type-mentions-inverse",
      "summary": "mentioned_by is the inverse term for mentions.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-mentions",
      "target": "xananode.canonical:schema/relationship-type-mentioned_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-mentions-related_to-schema-relationship-type-mentioned_by-inverse",
      "summary": "Mentions has inverse mentioned_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-misunderstanding_context_for",
      "target": "xananode.canonical:schema/relationship-type-frequently_misunderstood",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-misunderstanding_context_for-related_to-schema-relationship-type-frequently_misunderstood-inverse",
      "summary": "misunderstanding_context_for is the inverse term for frequently_misunderstood.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-motivated_by",
      "target": "xananode.canonical:schema/relationship-type-motivates",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-motivated_by-related_to-schema-relationship-type-motivates-inverse",
      "summary": "Motivated by has inverse motivates.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-motivates_inquiry",
      "target": "xananode.canonical:schema/relationship-type-inquiry_motivated_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-motivates_inquiry-related_to-schema-relationship-type-inquiry_motivated_by-inverse",
      "summary": "Motivates inquiry has inverse inquiry_motivated_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-motivates",
      "target": "xananode.canonical:schema/relationship-type-motivated_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-motivates-related_to-schema-relationship-type-motivated_by-inverse",
      "summary": "motivates is the inverse term for motivated_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-narrower_than",
      "target": "xananode.canonical:schema/relationship-type-broader_than",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-narrower_than-related_to-schema-relationship-type-broader_than-inverse",
      "summary": "narrower_than is the inverse term for broader_than.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-negotiated_with",
      "target": "xananode.canonical:schema/relationship-type-negotiated_with",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-negotiated_with-related_to-schema-relationship-type-negotiated_with-inverse",
      "summary": "Negotiated with has inverse negotiated_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-not_answered_by",
      "target": "xananode.canonical:schema/relationship-type-fails_to_answer",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-not_answered_by-related_to-schema-relationship-type-fails_to_answer-inverse",
      "summary": "not_answered_by is the inverse term for fails_to_answer.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-occurred_at",
      "target": "xananode.canonical:schema/relationship-type-site_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-occurred_at-related_to-schema-relationship-type-site_of-inverse",
      "summary": "Occurred at has inverse site_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-overlooked_by",
      "target": "xananode.canonical:schema/relationship-type-overlooks",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-overlooked_by-related_to-schema-relationship-type-overlooks-inverse",
      "summary": "Overlooked by has inverse overlooks.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-overlooks",
      "target": "xananode.canonical:schema/relationship-type-overlooked_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-overlooks-related_to-schema-relationship-type-overlooked_by-inverse",
      "summary": "overlooks is the inverse term for overlooked_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-parallel_to",
      "target": "xananode.canonical:schema/relationship-type-parallel_to",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-parallel_to-related_to-schema-relationship-type-parallel_to-inverse",
      "summary": "Parallel to has inverse parallel_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-part_of",
      "target": "xananode.canonical:schema/relationship-type-contains",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-part_of-related_to-schema-relationship-type-contains-inverse",
      "summary": "part_of is the inverse term for contains.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-partially_answered_by",
      "target": "xananode.canonical:schema/relationship-type-partially_answers",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-partially_answered_by-related_to-schema-relationship-type-partially_answers-inverse",
      "summary": "partially_answered_by is the inverse term for partially_answers.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-partially_answers",
      "target": "xananode.canonical:schema/relationship-type-partially_answered_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-partially_answers-related_to-schema-relationship-type-partially_answered_by-inverse",
      "summary": "Partially answers has inverse partially_answered_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-participated_in",
      "target": "xananode.canonical:schema/relationship-type-had_participant",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-participated_in-related_to-schema-relationship-type-had_participant-inverse",
      "summary": "Participated in has inverse had_participant.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-popularized_by",
      "target": "xananode.canonical:schema/relationship-type-popularized",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-popularized_by-related_to-schema-relationship-type-popularized-inverse",
      "summary": "popularized_by is the inverse term for popularized.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-popularized",
      "target": "xananode.canonical:schema/relationship-type-popularized_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-popularized-related_to-schema-relationship-type-popularized_by-inverse",
      "summary": "Popularized has inverse popularized_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-possible_match",
      "target": "xananode.canonical:schema/relationship-type-possible_match",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-possible_match-related_to-schema-relationship-type-possible_match-inverse",
      "summary": "Possible match has inverse possible_match.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-possibly_related_to",
      "target": "xananode.canonical:schema/relationship-type-possibly_related_to",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-possibly_related_to-related_to-schema-relationship-type-possibly_related_to-inverse",
      "summary": "Possibly related to has inverse possibly_related_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-preceded",
      "target": "xananode.canonical:schema/relationship-type-followed",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-preceded-related_to-schema-relationship-type-followed-inverse",
      "summary": "Preceded has inverse followed.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-presentation_received_from",
      "target": "xananode.canonical:schema/relationship-type-presented_to",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-presentation_received_from-related_to-schema-relationship-type-presented_to-inverse",
      "summary": "presentation_received_from is the inverse term for presented_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-presented_by",
      "target": "xananode.canonical:schema/relationship-type-presented",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-presented_by-related_to-schema-relationship-type-presented-inverse",
      "summary": "presented_by is the inverse term for presented.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-presented_to",
      "target": "xananode.canonical:schema/relationship-type-presentation_received_from",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-presented_to-related_to-schema-relationship-type-presentation_received_from-inverse",
      "summary": "Presented to has inverse presentation_received_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-presented",
      "target": "xananode.canonical:schema/relationship-type-presented_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-presented-related_to-schema-relationship-type-presented_by-inverse",
      "summary": "Presented has inverse presented_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-preserved_by",
      "target": "xananode.canonical:schema/relationship-type-preserves",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-preserved_by-related_to-schema-relationship-type-preserves-inverse",
      "summary": "preserved_by is the inverse term for preserves.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-preserves",
      "target": "xananode.canonical:schema/relationship-type-preserved_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-preserves-related_to-schema-relationship-type-preserved_by-inverse",
      "summary": "Preserves has inverse preserved_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-produces",
      "target": "xananode.canonical:schema/relationship-type-results_from",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-produces-related_to-schema-relationship-type-results_from-inverse",
      "summary": "produces is the inverse term for results_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-proposed_by",
      "target": "xananode.canonical:schema/relationship-type-proposed",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-proposed_by-related_to-schema-relationship-type-proposed-inverse",
      "summary": "proposed_by is the inverse term for proposed.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-proposed",
      "target": "xananode.canonical:schema/relationship-type-proposed_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-proposed-related_to-schema-relationship-type-proposed_by-inverse",
      "summary": "Proposed has inverse proposed_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-quoted_by",
      "target": "xananode.canonical:schema/relationship-type-quotes",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-quoted_by-related_to-schema-relationship-type-quotes-inverse",
      "summary": "quoted_by is the inverse term for quotes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-quotes",
      "target": "xananode.canonical:schema/relationship-type-quoted_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-quotes-related_to-schema-relationship-type-quoted_by-inverse",
      "summary": "Quotes has inverse quoted_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-raised_by",
      "target": "xananode.canonical:schema/relationship-type-raises",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-raised_by-related_to-schema-relationship-type-raises-inverse",
      "summary": "raised_by is the inverse term for raises.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-raises",
      "target": "xananode.canonical:schema/relationship-type-raised_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-raises-related_to-schema-relationship-type-raised_by-inverse",
      "summary": "Raises has inverse raised_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-received_broadcast_from",
      "target": "xananode.canonical:schema/relationship-type-broadcast_to",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-received_broadcast_from-related_to-schema-relationship-type-broadcast_to-inverse",
      "summary": "received_broadcast_from is the inverse term for broadcast_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-received_report_from",
      "target": "xananode.canonical:schema/relationship-type-reported_to",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-received_report_from-related_to-schema-relationship-type-reported_to-inverse",
      "summary": "received_report_from is the inverse term for reported_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-refined_by",
      "target": "xananode.canonical:schema/relationship-type-refines",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-refined_by-related_to-schema-relationship-type-refines-inverse",
      "summary": "refined_by is the inverse term for refines.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-refines",
      "target": "xananode.canonical:schema/relationship-type-refined_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-refines-related_to-schema-relationship-type-refined_by-inverse",
      "summary": "Refines has inverse refined_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-attention",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-attention",
      "summary": "The relationship type registry contains the attention category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-causation",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-causation",
      "summary": "The relationship type registry contains the causation category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-citation",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-citation",
      "summary": "The relationship type registry contains the citation category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-claim_structure",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-claim_structure",
      "summary": "The relationship type registry contains the claim_structure category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-cognition",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-cognition",
      "summary": "The relationship type registry contains the cognition category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-communication",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-communication",
      "summary": "The relationship type registry contains the communication category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-comparison",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-comparison",
      "summary": "The relationship type registry contains the comparison category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-composition",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-composition",
      "summary": "The relationship type registry contains the composition category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-creation",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-creation",
      "summary": "The relationship type registry contains the creation category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-definition",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-definition",
      "summary": "The relationship type registry contains the definition category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-discovery",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-discovery",
      "summary": "The relationship type registry contains the discovery category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-evidence",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-evidence",
      "summary": "The relationship type registry contains the evidence category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-evolution",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-evolution",
      "summary": "The relationship type registry contains the evolution category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-explanation",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-explanation",
      "summary": "The relationship type registry contains the explanation category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-generic",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-generic",
      "summary": "The relationship type registry contains the generic category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-governance",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-governance",
      "summary": "The relationship type registry contains the governance category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-historical",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-historical",
      "summary": "The relationship type registry contains the historical category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-identity",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-identity",
      "summary": "The relationship type registry contains the identity category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-influence",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-influence",
      "summary": "The relationship type registry contains the influence category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-inquiry",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-inquiry",
      "summary": "The relationship type registry contains the inquiry category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-knowledge_workflow",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-knowledge_workflow",
      "summary": "The relationship type registry contains the knowledge_workflow category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-lineage",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-lineage",
      "summary": "The relationship type registry contains the lineage category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-location",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-location",
      "summary": "The relationship type registry contains the location category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-participation",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-participation",
      "summary": "The relationship type registry contains the participation category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-reasoning",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-reasoning",
      "summary": "The relationship type registry contains the reasoning category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-representation",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-representation",
      "summary": "The relationship type registry contains the representation category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-research_workflow",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-research_workflow",
      "summary": "The relationship type registry contains the research_workflow category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-revision",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-revision",
      "summary": "The relationship type registry contains the revision category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-schema_mapping",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-schema_mapping",
      "summary": "The relationship type registry contains the schema_mapping category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-social",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-social",
      "summary": "The relationship type registry contains the social category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-temporal",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-temporal",
      "summary": "The relationship type registry contains the temporal category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-registry",
      "target": "xananode.canonical:schema/relationship-category-uncertainty",
      "type": "contains",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-registry-contains-schema-relationship-category-uncertainty",
      "summary": "The relationship type registry contains the uncertainty category.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-related_to",
      "target": "xananode.canonical:schema/relationship-type-related_to",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-related_to-related_to-schema-relationship-type-related_to-inverse",
      "summary": "Related to has inverse related_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-replied_by",
      "target": "xananode.canonical:schema/relationship-type-replied_to",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-replied_by-related_to-schema-relationship-type-replied_to-inverse",
      "summary": "replied_by is the inverse term for replied_to.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-replied_to",
      "target": "xananode.canonical:schema/relationship-type-replied_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-replied_to-related_to-schema-relationship-type-replied_by-inverse",
      "summary": "Replied to has inverse replied_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-reported_to",
      "target": "xananode.canonical:schema/relationship-type-received_report_from",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-reported_to-related_to-schema-relationship-type-received_report_from-inverse",
      "summary": "Reported to has inverse received_report_from.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-represented_by",
      "target": "xananode.canonical:schema/relationship-type-represents",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-represented_by-related_to-schema-relationship-type-represents-inverse",
      "summary": "represented_by is the inverse term for represents.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-represents",
      "target": "xananode.canonical:schema/relationship-type-represented_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-represents-related_to-schema-relationship-type-represented_by-inverse",
      "summary": "Represents has inverse represented_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-required_for",
      "target": "xananode.canonical:schema/relationship-type-requires",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-required_for-related_to-schema-relationship-type-requires-inverse",
      "summary": "required_for is the inverse term for requires.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-requires_attribution",
      "target": "xananode.canonical:schema/relationship-type-attribution_required_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-requires_attribution-related_to-schema-relationship-type-attribution_required_by-inverse",
      "summary": "requires attribution has inverse attribution_required_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-requires_context",
      "target": "xananode.canonical:schema/relationship-type-context_required_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-requires_context-related_to-schema-relationship-type-context_required_by-inverse",
      "summary": "Requires context has inverse context_required_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-requires_information",
      "target": "xananode.canonical:schema/relationship-type-information_required_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-requires_information-related_to-schema-relationship-type-information_required_by-inverse",
      "summary": "Requires information has inverse information_required_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-requires_review",
      "target": "xananode.canonical:schema/relationship-type-review_required_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-requires_review-related_to-schema-relationship-type-review_required_by-inverse",
      "summary": "Requires review has inverse review_required_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-requires_source",
      "target": "xananode.canonical:schema/relationship-type-source_required_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-requires_source-related_to-schema-relationship-type-source_required_by-inverse",
      "summary": "Requires source has inverse source_required_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-requires_validation",
      "target": "xananode.canonical:schema/relationship-type-validation_required_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-requires_validation-related_to-schema-relationship-type-validation_required_by-inverse",
      "summary": "Requires validation has inverse validation_required_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-requires",
      "target": "xananode.canonical:schema/relationship-type-required_for",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-requires-related_to-schema-relationship-type-required_for-inverse",
      "summary": "Requires has inverse required_for.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-resonates_with",
      "target": "xananode.canonical:schema/relationship-type-resonates_with",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-resonates_with-related_to-schema-relationship-type-resonates_with-inverse",
      "summary": "Resonates with has inverse resonates_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-results_from",
      "target": "xananode.canonical:schema/relationship-type-produces",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-results_from-related_to-schema-relationship-type-produces-inverse",
      "summary": "Results from has inverse produces.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-review_required_by",
      "target": "xananode.canonical:schema/relationship-type-requires_review",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-review_required_by-related_to-schema-relationship-type-requires_review-inverse",
      "summary": "review_required_by is the inverse term for requires_review.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-reviewed_under",
      "target": "xananode.canonical:schema/relationship-type-under_review",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-reviewed_under-related_to-schema-relationship-type-under_review-inverse",
      "summary": "reviewed_under is the inverse term for under_review.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-same_concept",
      "target": "xananode.canonical:schema/relationship-type-same_concept",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-same_concept-related_to-schema-relationship-type-same_concept-inverse",
      "summary": "Same concept has inverse same_concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-same_entity",
      "target": "xananode.canonical:schema/relationship-type-same_entity",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-same_entity-related_to-schema-relationship-type-same_entity-inverse",
      "summary": "Same entity has inverse same_entity.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-same_person",
      "target": "xananode.canonical:schema/relationship-type-same_person",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-same_person-related_to-schema-relationship-type-same_person-inverse",
      "summary": "Same person has inverse same_person.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-same_source",
      "target": "xananode.canonical:schema/relationship-type-same_source",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-same_source-related_to-schema-relationship-type-same_source-inverse",
      "summary": "Same source has inverse same_source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-shaped_by",
      "target": "xananode.canonical:schema/relationship-type-shapes",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-shaped_by-related_to-schema-relationship-type-shapes-inverse",
      "summary": "shaped_by is the inverse term for shapes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-shapes",
      "target": "xananode.canonical:schema/relationship-type-shaped_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-shapes-related_to-schema-relationship-type-shaped_by-inverse",
      "summary": "Shapes has inverse shaped_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-shares_pattern_with",
      "target": "xananode.canonical:schema/relationship-type-shares_pattern_with",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-shares_pattern_with-related_to-schema-relationship-type-shares_pattern_with-inverse",
      "summary": "Shares pattern with has inverse shares_pattern_with.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-site_of",
      "target": "xananode.canonical:schema/relationship-type-occurred_at",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-site_of-related_to-schema-relationship-type-occurred_at-inverse",
      "summary": "site_of is the inverse term for occurred_at.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-source_required_by",
      "target": "xananode.canonical:schema/relationship-type-requires_source",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-source_required_by-related_to-schema-relationship-type-requires_source-inverse",
      "summary": "source_required_by is the inverse term for requires_source.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-specialized_by",
      "target": "xananode.canonical:schema/relationship-type-generalizes",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-specialized_by-related_to-schema-relationship-type-generalizes-inverse",
      "summary": "specialized_by is the inverse term for generalizes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-specializes",
      "target": "xananode.canonical:schema/relationship-type-generalized_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-specializes-related_to-schema-relationship-type-generalized_by-inverse",
      "summary": "Specializes has inverse generalized_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-speculated_by",
      "target": "xananode.canonical:schema/relationship-type-speculative",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-speculated_by-related_to-schema-relationship-type-speculative-inverse",
      "summary": "speculated_by is the inverse term for speculative.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-speculative",
      "target": "xananode.canonical:schema/relationship-type-speculated_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-speculative-related_to-schema-relationship-type-speculated_by-inverse",
      "summary": "Speculative has inverse speculated_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-spoke_at",
      "target": "xananode.canonical:schema/relationship-type-featured_speaker",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-spoke_at-related_to-schema-relationship-type-featured_speaker-inverse",
      "summary": "Spoke at has inverse featured_speaker.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-starts_with",
      "target": "xananode.canonical:schema/relationship-type-is_start_of",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-starts_with-related_to-schema-relationship-type-is_start_of-inverse",
      "summary": "Starts with has inverse is_start_of.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-superseded_by",
      "target": "xananode.canonical:schema/relationship-type-supersedes",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-superseded_by-related_to-schema-relationship-type-supersedes-inverse",
      "summary": "superseded_by is the inverse term for supersedes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-supersedes",
      "target": "xananode.canonical:schema/relationship-type-superseded_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-supersedes-related_to-schema-relationship-type-superseded_by-inverse",
      "summary": "Supersedes has inverse superseded_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-supported_by",
      "target": "xananode.canonical:schema/relationship-type-supports",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-supported_by-related_to-schema-relationship-type-supports-inverse",
      "summary": "supported_by is the inverse term for supports.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-supports",
      "target": "xananode.canonical:schema/relationship-type-supported_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-supports-related_to-schema-relationship-type-supported_by-inverse",
      "summary": "Supports has inverse supported_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-tested_by",
      "target": "xananode.canonical:schema/relationship-type-tests",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-tested_by-related_to-schema-relationship-type-tests-inverse",
      "summary": "tested_by is the inverse term for tests.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-tests",
      "target": "xananode.canonical:schema/relationship-type-tested_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-tests-related_to-schema-relationship-type-tested_by-inverse",
      "summary": "Tests has inverse tested_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-threatened_by",
      "target": "xananode.canonical:schema/relationship-type-threatens",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-threatened_by-related_to-schema-relationship-type-threatens-inverse",
      "summary": "threatened_by is the inverse term for threatens.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-threatens",
      "target": "xananode.canonical:schema/relationship-type-threatened_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-threatens-related_to-schema-relationship-type-threatened_by-inverse",
      "summary": "Threatens has inverse threatened_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-trademark_holder_for",
      "target": "xananode.canonical:schema/relationship-type-trademarked_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-trademark_holder_for-related_to-schema-relationship-type-trademarked_by-inverse",
      "summary": "trademark_holder_for is the inverse term for trademarked_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-trademarked_by",
      "target": "xananode.canonical:schema/relationship-type-trademark_holder_for",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-trademarked_by-related_to-schema-relationship-type-trademark_holder_for-inverse",
      "summary": "trademarked by has inverse trademark_holder_for.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-trained_on",
      "target": "xananode.canonical:schema/relationship-type-used_to_train",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-trained_on-related_to-schema-relationship-type-used_to_train-inverse",
      "summary": "Trained on has inverse used_to_train.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-transcluded_by",
      "target": "xananode.canonical:schema/relationship-type-transcludes",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-transcluded_by-related_to-schema-relationship-type-transcludes-inverse",
      "summary": "transcluded_by is the inverse term for transcludes.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-transcludes",
      "target": "xananode.canonical:schema/relationship-type-transcluded_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-transcludes-related_to-schema-relationship-type-transcluded_by-inverse",
      "summary": "Transcludes has inverse transcluded_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-under_review",
      "target": "xananode.canonical:schema/relationship-type-reviewed_under",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-under_review-related_to-schema-relationship-type-reviewed_under-inverse",
      "summary": "Under review has inverse reviewed_under.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-unresolved_by",
      "target": "xananode.canonical:schema/relationship-type-unresolved",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-unresolved_by-related_to-schema-relationship-type-unresolved-inverse",
      "summary": "unresolved_by is the inverse term for unresolved.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-unresolved",
      "target": "xananode.canonical:schema/relationship-type-unresolved_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-unresolved-related_to-schema-relationship-type-unresolved_by-inverse",
      "summary": "Unresolved has inverse unresolved_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-used_as_primary_media_for",
      "target": "xananode.canonical:schema/relationship-type-has_primary_media",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-used_as_primary_media_for-related_to-schema-relationship-type-has_primary_media-inverse",
      "summary": "used_as_primary_media_for is the inverse term for has_primary_media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-used_by",
      "target": "xananode.canonical:schema/relationship-type-uses",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-used_by-related_to-schema-relationship-type-uses-inverse",
      "summary": "used_by is the inverse term for uses.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-used_to_train",
      "target": "xananode.canonical:schema/relationship-type-trained_on",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-used_to_train-related_to-schema-relationship-type-trained_on-inverse",
      "summary": "used_to_train is the inverse term for trained_on.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-uses",
      "target": "xananode.canonical:schema/relationship-type-used_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-uses-related_to-schema-relationship-type-used_by-inverse",
      "summary": "Uses has inverse used_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-validated_by",
      "target": "xananode.canonical:schema/relationship-type-validates",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-validated_by-related_to-schema-relationship-type-validates-inverse",
      "summary": "validated_by is the inverse term for validates.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-validates",
      "target": "xananode.canonical:schema/relationship-type-validated_by",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-validates-related_to-schema-relationship-type-validated_by-inverse",
      "summary": "Validates has inverse validated_by.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:schema/relationship-type-validation_required_by",
      "target": "xananode.canonical:schema/relationship-type-requires_validation",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/schema-relationship-type-validation_required_by-related_to-schema-relationship-type-requires_validation-inverse",
      "summary": "validation_required_by is the inverse term for requires_validation.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/federated-substrate-xananode.canonical",
      "target": "xananode.canonical:claim/canonical-assembles-federated-stack-layer-substrates",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-federated-substrate-xananode.canonical-supports-claim-canonical-assembles-federated-stack-layer-substrates",
      "summary": "The canonical substrate source supports the claim that canonical now assembles federated stack-layer substrates.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/federated-substrate-xananode.core",
      "target": "xananode.canonical:source/federated-substrate-xananode.hugo",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-federated-substrate-xananode.core-continues_to-source-federated-substrate-xananode.hugo",
      "summary": "The stack proof also continues from Core to the Hugo projection layer substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/federated-substrate-xananode.core",
      "target": "xananode.canonical:source/federated-substrate-xananode.workspace",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-federated-substrate-xananode.core-continues_to-source-federated-substrate-xananode.workspace",
      "summary": "The stack proof continues from the Core substrate to the Workspace substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/federated-substrate-xananode.core",
      "target": "xananode.canonical:project/xananode-core-sdk",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-federated-substrate-xananode.core-documents-project-xananode-core-sdk",
      "summary": "XanaNode Core SDK Substrate is the actual federated substrate source for XanaNode Core SDK.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/federated-substrate-xananode.hugo",
      "target": "xananode.canonical:source/federated-substrate-xananode.canonical",
      "type": "arrives_at",
      "color": "#818cf8",
      "inverse_color": "#c7d2fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-federated-substrate-xananode.hugo-arrives_at-source-federated-substrate-xananode.canonical",
      "summary": "Hugo projects the canonical substrate as a public readable lens.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/federated-substrate-xananode.hugo",
      "target": "xananode.canonical:project/xananode-hugo-theme",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-federated-substrate-xananode.hugo-documents-project-xananode-hugo-theme",
      "summary": "XanaNode Hugo Theme Substrate is the actual federated substrate source for XanaNode Hugo Theme.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/federated-substrate-xananode.mobile",
      "target": "xananode.canonical:source/federated-substrate-xananode.canonical",
      "type": "arrives_at",
      "color": "#818cf8",
      "inverse_color": "#c7d2fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-federated-substrate-xananode.mobile-arrives_at-source-federated-substrate-xananode.canonical",
      "summary": "Mobile capture can eventually federate back into the canonical substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/federated-substrate-xananode.mobile",
      "target": "xananode.canonical:project/xananode-mobile",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-federated-substrate-xananode.mobile-documents-project-xananode-mobile",
      "summary": "XanaNode Mobile Substrate is the actual federated substrate source for XanaNode Mobile.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/federated-substrate-xananode.protocol",
      "target": "xananode.canonical:source/federated-substrate-xananode.core",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-federated-substrate-xananode.protocol-continues_to-source-federated-substrate-xananode.core",
      "summary": "The stack proof continues from the protocol substrate to the Core substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/federated-substrate-xananode.protocol",
      "target": "xananode.canonical:project/xananode-protocol",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-federated-substrate-xananode.protocol-documents-project-xananode-protocol",
      "summary": "XanaNode Protocol Substrate is the actual federated substrate source for XanaNode Protocol.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/federated-substrate-xananode.studio",
      "target": "xananode.canonical:source/federated-substrate-xananode.canonical",
      "type": "arrives_at",
      "color": "#818cf8",
      "inverse_color": "#c7d2fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-federated-substrate-xananode.studio-arrives_at-source-federated-substrate-xananode.canonical",
      "summary": "Studio can participate in producing and editing the canonical substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/federated-substrate-xananode.studio",
      "target": "xananode.canonical:project/xananode-studio",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-federated-substrate-xananode.studio-documents-project-xananode-studio",
      "summary": "XanaNode Studio Substrate is the actual federated substrate source for XanaNode Studio.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/federated-substrate-xananode.workspace",
      "target": "xananode.canonical:source/federated-substrate-xananode.mobile",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-federated-substrate-xananode.workspace-continues_to-source-federated-substrate-xananode.mobile",
      "summary": "The stack proof also continues from Workspace to Mobile.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/federated-substrate-xananode.workspace",
      "target": "xananode.canonical:source/federated-substrate-xananode.studio",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-federated-substrate-xananode.workspace-continues_to-source-federated-substrate-xananode.studio",
      "summary": "The stack proof continues from Workspace to Studio.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/federated-substrate-xananode.workspace",
      "target": "xananode.canonical:project/xananode-workspace",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-federated-substrate-xananode.workspace-documents-project-xananode-workspace",
      "summary": "XanaNode Workspace Substrate is the actual federated substrate source for XanaNode Workspace.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-examples-federation-example-readme.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-examples-federation-example-readme.md-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-readme.md",
      "summary": "Examples / Federation Example / README belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-examples-federation-example-review-workspace-readme.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-examples-federation-example-review-workspace-readme.md-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-review-workspace-readme.md",
      "summary": "Examples / Federation Example / Review Workspace / README belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-examples-federation-example-substrate-a-readme.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-examples-federation-example-substrate-a-readme.md-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-substrate-a-readme.md",
      "summary": "Examples / Federation Example / Substrate A / README belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-examples-federation-example-substrate-b-readme.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-examples-federation-example-substrate-b-readme.md-documents-concept-protocol-artifacts-raw-file-docs-examples-federation-example-substrate-b-readme.md",
      "summary": "Examples / Federation Example / Substrate B / README belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-examples-minimal-substrate-nodes-readme.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-examples-minimal-substrate-nodes-readme.md-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-nodes-readme.md",
      "summary": "Examples / Minimal Substrate / Nodes / README belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-examples-minimal-substrate-readme.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-examples-minimal-substrate-readme.md-documents-concept-protocol-artifacts-raw-file-docs-examples-minimal-substrate-readme.md",
      "summary": "Examples / Minimal Substrate / README belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-examples-readme.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-examples-readme.md-documents-concept-protocol-artifacts-raw-file-docs-examples-readme.md",
      "summary": "Examples / README belongs to the published XanaNode example set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-governance-canonical-type-policy.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-governance-canonical-type-policy.md-documents-concept-protocol-artifacts-raw-file-docs-governance-canonical-type-policy.md",
      "summary": "Governance / Canonical Type Policy belongs to the published XanaNode governance set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-governance-dispute-resolution.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-governance-dispute-resolution.md-documents-concept-protocol-artifacts-raw-file-docs-governance-dispute-resolution.md",
      "summary": "Governance / Dispute Resolution belongs to the published XanaNode governance set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-governance-federation-rules.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-governance-federation-rules.md-documents-concept-protocol-artifacts-raw-file-docs-governance-federation-rules.md",
      "summary": "Governance / Federation Rules belongs to the published XanaNode governance set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-governance-moderation-model.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-governance-moderation-model.md-documents-concept-protocol-artifacts-raw-file-docs-governance-moderation-model.md",
      "summary": "Governance / Moderation Model belongs to the published XanaNode governance set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-governance-readme.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-governance-readme.md-documents-concept-protocol-artifacts-raw-file-docs-governance-readme.md",
      "summary": "Governance / README belongs to the published XanaNode governance set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-governance-schema-extension-rules.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-governance-schema-extension-rules.md-documents-concept-protocol-artifacts-raw-file-docs-governance-schema-extension-rules.md",
      "summary": "Governance / Schema Extension Rules belongs to the published XanaNode governance set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-governance-versioning-policy.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-governance-versioning-policy.md-documents-concept-protocol-artifacts-raw-file-docs-governance-versioning-policy.md",
      "summary": "Governance / Versioning Policy belongs to the published XanaNode governance set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-license.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-license.md-documents-concept-protocol-artifacts-raw-file-docs-license.md",
      "summary": "The protocol license belongs to the published XanaNode artifact set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-notice",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-notice-documents-concept-protocol-artifacts-raw-file-docs-notice",
      "summary": "The protocol notice file belongs to the published XanaNode artifact set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-proposals-readme.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-proposals-readme.md-documents-concept-protocol-artifacts-raw-file-docs-proposals-readme.md",
      "summary": "Proposals / README belongs to the published XanaNode proposal set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-proposals-xnp-0001-namespaces.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-proposals-xnp-0001-namespaces.md-documents-concept-protocol-artifacts-raw-file-docs-proposals-xnp-0001-namespaces.md",
      "summary": "Proposals / XNP 0001 Namespaces belongs to the published XanaNode proposal set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-proposals-xnp-0002-extension-schemas.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-proposals-xnp-0002-extension-schemas.md-documents-concept-protocol-artifacts-raw-file-docs-proposals-xnp-0002-extension-schemas.md",
      "summary": "Proposals / XNP 0002 Extension Schemas belongs to the published XanaNode proposal set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-proposals-xnp-0003-federation.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-proposals-xnp-0003-federation.md-documents-concept-protocol-artifacts-raw-file-docs-proposals-xnp-0003-federation.md",
      "summary": "Proposals / XNP 0003 Federation belongs to the published XanaNode proposal set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-proposals-xnp-0004-merge-validation.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-proposals-xnp-0004-merge-validation.md-documents-concept-protocol-artifacts-raw-file-docs-proposals-xnp-0004-merge-validation.md",
      "summary": "Proposals / XNP 0004 Merge Validation belongs to the published XanaNode proposal set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-proposals-xnp-0005-transclusion.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-proposals-xnp-0005-transclusion.md-documents-concept-protocol-artifacts-raw-file-docs-proposals-xnp-0005-transclusion.md",
      "summary": "Proposals / XNP 0005 Transclusion belongs to the published XanaNode proposal set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-proposals-xnp-0006-tumbler-addressing.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-proposals-xnp-0006-tumbler-addressing.md-documents-concept-protocol-artifacts-raw-file-docs-proposals-xnp-0006-tumbler-addressing.md",
      "summary": "Proposals / XNP 0006 Tumbler Addressing belongs to the published XanaNode proposal set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-proposals-xnp-0007-git-backed-substrates.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-proposals-xnp-0007-git-backed-substrates.md-documents-concept-protocol-artifacts-raw-file-docs-proposals-xnp-0007-git-backed-substrates.md",
      "summary": "Proposals / XNP 0007 Git Backed Substrates belongs to the published XanaNode proposal set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-proposals-xnp-0008-derived-inverse-relationships.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-proposals-xnp-0008-derived-inverse-relationships.md-documents-concept-protocol-artifacts-raw-file-docs-proposals-xnp-0008-derived-inverse-relationships.md",
      "summary": "Proposals / XNP 0008 Derived Inverse Relationships belongs to the published XanaNode proposal set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-proposals-xnp-0009-standards-alignment.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-proposals-xnp-0009-standards-alignment.md-documents-concept-protocol-artifacts-raw-file-docs-proposals-xnp-0009-standards-alignment.md",
      "summary": "Proposals / XNP 0009 Standards Alignment belongs to the published XanaNode proposal set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-proposals-xnp-0010-federation-discovery-and-trust.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-proposals-xnp-0010-federation-discovery-and-trust.md-documents-concept-protocol-artifacts-raw-file-docs-proposals-xnp-0010-federation-discovery-and-trust.md",
      "summary": "Proposals / XNP 0010 Federation Discovery And Trust belongs to the published XanaNode proposal set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-proposals-xnp-0011-studio-local-first-authoring.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-proposals-xnp-0011-studio-local-first-authoring.md-documents-concept-protocol-artifacts-raw-file-docs-proposals-xnp-0011-studio-local-first-authoring.md",
      "summary": "Proposals / XNP 0011 Studio Local First Authoring belongs to the published XanaNode proposal set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-proposals-xnp-0012-executable-tool-contract.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-proposals-xnp-0012-executable-tool-contract.md-documents-concept-protocol-artifacts-raw-file-docs-proposals-xnp-0012-executable-tool-contract.md",
      "summary": "Proposals / XNP 0012 Executable Tool Contract belongs to the published XanaNode proposal set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-readme.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-readme.md-documents-concept-protocol-artifacts-raw-file-docs-readme.md",
      "summary": "The main protocol README belongs to the published XanaNode artifact set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-registry-readme.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-registry-readme.md-documents-concept-protocol-artifacts-raw-file-docs-registry-readme.md",
      "summary": "Registry / README belongs to the published XanaNode registry set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-schemas-readme.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-schemas-readme.md-documents-concept-protocol-artifacts-raw-file-docs-schemas-readme.md",
      "summary": "Schemas / README belongs to the published XanaNode schema set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-compatibility-levels.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-specs-compatibility-levels.md-documents-concept-protocol-artifacts-raw-file-docs-specs-compatibility-levels.md",
      "summary": "Specs / Compatibility Levels belongs to the published XanaNode specification set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-federation.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-specs-federation.md-documents-concept-protocol-artifacts-raw-file-docs-specs-federation.md",
      "summary": "Specs / Federation belongs to the published XanaNode specification set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-implementation-compatibility.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-specs-implementation-compatibility.md-documents-concept-protocol-artifacts-raw-file-docs-specs-implementation-compatibility.md",
      "summary": "Specs / Implementation Compatibility belongs to the published XanaNode specification set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-interoperability.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-specs-interoperability.md-documents-concept-protocol-artifacts-raw-file-docs-specs-interoperability.md",
      "summary": "Specs / Interoperability belongs to the published XanaNode specification set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-merge-validation.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-specs-merge-validation.md-documents-concept-protocol-artifacts-raw-file-docs-specs-merge-validation.md",
      "summary": "Specs / Merge Validation belongs to the published XanaNode specification set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-namespaces.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-specs-namespaces.md-documents-concept-protocol-artifacts-raw-file-docs-specs-namespaces.md",
      "summary": "Specs / Namespaces belongs to the published XanaNode specification set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-nodes.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-specs-nodes.md-documents-concept-protocol-artifacts-raw-file-docs-specs-nodes.md",
      "summary": "Specs / Nodes belongs to the published XanaNode specification set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-readme.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-specs-readme.md-documents-concept-protocol-artifacts-raw-file-docs-specs-readme.md",
      "summary": "Specs / README belongs to the published XanaNode specification set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-relationships.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-specs-relationships.md-documents-concept-protocol-artifacts-raw-file-docs-specs-relationships.md",
      "summary": "Specs / Relationships belongs to the published XanaNode specification set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-studio.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-specs-studio.md-documents-concept-protocol-artifacts-raw-file-docs-specs-studio.md",
      "summary": "Specs / Studio belongs to the published XanaNode specification set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-substrates.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-specs-substrates.md-documents-concept-protocol-artifacts-raw-file-docs-specs-substrates.md",
      "summary": "Specs / Substrates belongs to the published XanaNode specification set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-transclusion.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-specs-transclusion.md-documents-concept-protocol-artifacts-raw-file-docs-specs-transclusion.md",
      "summary": "Specs / Transclusion belongs to the published XanaNode specification set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-tumbler-addressing.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-specs-tumbler-addressing.md-documents-concept-protocol-artifacts-raw-file-docs-specs-tumbler-addressing.md",
      "summary": "Specs / Tumbler Addressing belongs to the published XanaNode specification set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-specs-xananode-core.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-specs-xananode-core.md-documents-concept-protocol-artifacts-raw-file-docs-specs-xananode-core.md",
      "summary": "Specs / XanaNode Core belongs to the published XanaNode specification set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/protocol-artifact-trademark.md",
      "target": "xananode.canonical:concept/protocol-artifacts",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-protocol-artifact-trademark.md-documents-concept-protocol-artifacts-raw-file-docs-trademark.md",
      "summary": "The trademark policy belongs to the published XanaNode artifact set.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/repository-kingc95-xananode-core-sdk",
      "target": "xananode.canonical:project/xananode-core-sdk",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-repository-kingc95-xananode-core-sdk-documents-project-xananode-core-sdk",
      "summary": "XanaNode Core SDK is documented and versioned in its public repository.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/repository-kingc95-xananode",
      "target": "xananode.canonical:project/xananode-protocol",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-repository-kingc95-xananode-documents-project-xananode-protocol",
      "summary": "XanaNode Protocol is documented and versioned in its public repository.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/repository-kingc95-xananode-hugo",
      "target": "xananode.canonical:project/xananode-hugo-theme",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-repository-kingc95-xananode-hugo-documents-project-xananode-hugo-theme",
      "summary": "XanaNode Hugo Theme is documented and versioned in its public repository.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/repository-kingc95-xananode-mobile",
      "target": "xananode.canonical:project/xananode-mobile",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-repository-kingc95-xananode-mobile-documents-project-xananode-mobile",
      "summary": "XanaNode Mobile is documented and versioned in its public repository.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/repository-kingc95-xananode-studio",
      "target": "xananode.canonical:project/xananode-studio",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-repository-kingc95-xananode-studio-documents-project-xananode-studio",
      "summary": "XanaNode Studio is documented and versioned in its public repository.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/repository-kingc95-xananode-workspace",
      "target": "xananode.canonical:project/xananode-workspace",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/source-repository-kingc95-xananode-workspace-documents-project-xananode-workspace",
      "summary": "XanaNode Workspace is documented and versioned in its public repository.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/support-xananode",
      "target": "xananode.canonical:community/xananode-contributors",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/support-supports-contributors",
      "summary": "The support source supports ongoing XanaNode authorship and development.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:fragment/relationships-preserve-knowledge-sentence",
      "target": "xananode.canonical:claim/relationships-preserve-knowledge",
      "type": "derived_from",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/tagline-fragment-derived-from-claim",
      "summary": "The tagline fragment is derived from the relationship preservation claim.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/xananode-trademark-policy",
      "target": "xananode.canonical:claim/xananode-name-and-logo-are-trademarked",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/trademark-claim-supported-by-policy",
      "summary": "The trademark policy supports the XanaNode trademark claim.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:source/xananode-trademark-policy",
      "target": "xananode.canonical:concept/trademark",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/trademark-policy-defines-trademark",
      "summary": "The XanaNode trademark policy defines how the name and logo are governed.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:trail/federated-stack-proof",
      "target": "xananode.canonical:claim/canonical-distinguishes-embedded-examples-from-federated-sources",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/trail-federated-stack-proof-continues_to-claim-canonical-distinguishes-embedded-examples-from-federated-sources",
      "summary": "The trail continues by clarifying the difference between embedded examples and real federated substrate sources.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:trail/federated-stack-proof",
      "target": "xananode.canonical:concept/self-federating-stack",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/trail-federated-stack-proof-explains-concept-self-federating-stack",
      "summary": "The trail explains the self-federating stack concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:trail/federated-stack-proof",
      "target": "xananode.canonical:claim/stack-demonstrates-federation-through-layer-substrates",
      "type": "starts_with",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/trail-federated-stack-proof-starts_with-claim-stack-demonstrates-federation-through-layer-substrates",
      "summary": "The trail begins with the claim that the stack demonstrates federation through layer substrates.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:trail/federated-stack-proof",
      "target": "xananode.canonical:concept/embedded-example-namespaces",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/trail-federated-stack-proof-supports-concept-embedded-example-namespaces",
      "summary": "The trail also supports the concept of embedded example namespaces.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:trail/federation-merge-proof",
      "target": "example.researcher_a:concept/knowledge-substrate",
      "type": "continues_to",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/trail-federation-merge-proof-continues_to-concept-knowledge-substrate",
      "summary": "The trail continues into Researcher A's local concept.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:trail/federation-merge-proof",
      "target": "xananode.canonical:concept/non-destructive-merge-review",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/trail-federation-merge-proof-explains-concept-non-destructive-merge-review",
      "summary": "The trail explains the idea of non-destructive merge review.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:trail/federation-merge-proof",
      "target": "xananode.canonical:claim/possible-match-preserves-local-identity-until-review",
      "type": "starts_with",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/trail-federation-merge-proof-starts_with-claim-possible-match-preserves-local-identity-until-review",
      "summary": "The trail begins with the claim that possible matches preserve local identity until review.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "example.minimal:trail/start-here",
      "target": "xananode.canonical:concept/embedded-example-namespaces",
      "type": "demonstrates",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/trail-start-here-demonstrates-concept-embedded-example-namespaces",
      "summary": "The embedded minimal namespace records a small teaching substrate inside the canonical bundle.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/trifecta-of-computing-failure",
      "target": "xananode.canonical:claim/copy-paste-breaks-lineage",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/trifecta-has-claim-copy-paste",
      "summary": "The trifecta concept includes the claim that copy and paste breaks lineage.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/trifecta-of-computing-failure",
      "target": "xananode.canonical:claim/documents-collapse-knowledge-structure",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/trifecta-has-claim-document-boundaries",
      "summary": "The trifecta concept includes the claim that document boundaries collapse knowledge structure.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/trifecta-of-computing-failure",
      "target": "xananode.canonical:claim/local-first-without-federation-is-not-enough",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/trifecta-has-claim-local-first-alone",
      "summary": "The trifecta concept includes the claim that local-first alone is not enough without a federation protocol.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:essay/what-is-xananode",
      "target": "xananode.canonical:concept/xananode",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/what-is-xananode-explains-xananode",
      "summary": "The explainer essay explains XanaNode as a layered protocol and substrate model.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-workspace",
      "target": "xananode.canonical:project/xananode-core-sdk",
      "type": "uses",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/workspace-uses-core",
      "summary": "Workspace uses Core for substrate validation, pack handling, and build orchestration.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/xananode-android-chrome-192",
      "target": "xananode.canonical:media/xananode-icon",
      "type": "derived_from",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-android-chrome-192-derived-from-icon",
      "summary": "XanaNode Android Chrome Icon 192x192 is derived from the canonical XanaNode icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/xananode-android-chrome-192",
      "target": "xananode.canonical:concept/xananode",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-android-chrome-192-represents-xananode",
      "summary": "XanaNode Android Chrome Icon 192x192 represents XanaNode in projection branding.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/xananode-android-chrome-512",
      "target": "xananode.canonical:media/xananode-icon",
      "type": "derived_from",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-android-chrome-512-derived-from-icon",
      "summary": "XanaNode Android Chrome Icon 512x512 is derived from the canonical XanaNode icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/xananode-android-chrome-512",
      "target": "xananode.canonical:concept/xananode",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-android-chrome-512-represents-xananode",
      "summary": "XanaNode Android Chrome Icon 512x512 represents XanaNode in projection branding.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/xananode-apple-touch-icon",
      "target": "xananode.canonical:media/xananode-icon",
      "type": "derived_from",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-apple-touch-icon-derived-from-icon",
      "summary": "XanaNode Apple Touch Icon is derived from the canonical XanaNode icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/xananode-apple-touch-icon",
      "target": "xananode.canonical:concept/xananode",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-apple-touch-icon-represents-xananode",
      "summary": "XanaNode Apple Touch Icon represents XanaNode in projection branding.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:concept/compatibility-attribution",
      "type": "governed_by",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-core-sdk-identifies-compatibility",
      "summary": "xananode core sdk should identify as XanaNode-compatible and reference the canonical specification.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-core-sdk",
      "target": "xananode.canonical:source/apache-2-0-license",
      "type": "licensed_under",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-core-sdk-licensed-under-apache",
      "summary": "xananode core sdk is licensed under Apache-2.0.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/xananode",
      "target": "xananode.canonical:concept/knowledge-substrate",
      "type": "defines",
      "color": "#facc15",
      "inverse_color": "#fde68a",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-defines-knowledge-substrate",
      "summary": "XanaNode defines a knowledge substrate as an authored graph of addressable nodes and relationships.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/xananode-favicon-16",
      "target": "xananode.canonical:media/xananode-icon",
      "type": "derived_from",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-favicon-16-derived-from-icon",
      "summary": "XanaNode Favicon 16x16 is derived from the canonical XanaNode icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/xananode-favicon-16",
      "target": "xananode.canonical:concept/xananode",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-favicon-16-represents-xananode",
      "summary": "XanaNode Favicon 16x16 represents XanaNode in projection branding.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/xananode-favicon-32",
      "target": "xananode.canonical:media/xananode-icon",
      "type": "derived_from",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-favicon-32-derived-from-icon",
      "summary": "XanaNode Favicon 32x32 is derived from the canonical XanaNode icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/xananode-favicon-32",
      "target": "xananode.canonical:concept/xananode",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-favicon-32-represents-xananode",
      "summary": "XanaNode Favicon 32x32 represents XanaNode in projection branding.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/xananode-favicon-ico",
      "target": "xananode.canonical:media/xananode-icon",
      "type": "derived_from",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-favicon-ico-derived-from-icon",
      "summary": "XanaNode Favicon ICO is derived from the canonical XanaNode icon.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/xananode-favicon-ico",
      "target": "xananode.canonical:concept/xananode",
      "type": "represents",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-favicon-ico-represents-xananode",
      "summary": "XanaNode Favicon ICO represents XanaNode in projection branding.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/xananode",
      "target": "xananode.canonical:claim/xananode-is-an-open-kernel-for-knowledge",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-has-claim-open-kernel",
      "summary": "The XanaNode concept includes the claim that it should function as an open kernel for knowledge.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/xananode",
      "target": "xananode.canonical:claim/projections-are-lenses-over-a-stable-substrate",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-has-claim-projection-lenses",
      "summary": "The XanaNode concept includes the claim that projections are lenses over a stable substrate.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/xananode",
      "target": "xananode.canonical:claim/relationships-preserve-knowledge",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-has-claim-relationships-preserve-knowledge",
      "summary": "XanaNode centers the claim that relationships preserve knowledge.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/xananode",
      "target": "xananode.canonical:media/xananode-icon",
      "type": "has_primary_media",
      "color": "#f59e0b",
      "inverse_color": "#fcd34d",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-has-primary-media-icon",
      "summary": "The XanaNode concept uses the XanaNode icon as primary media.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-hugo-theme",
      "target": "xananode.canonical:concept/compatibility-attribution",
      "type": "governed_by",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-hugo-theme-identifies-compatibility",
      "summary": "xananode hugo theme should identify as XanaNode-compatible and reference the canonical specification.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-hugo-theme",
      "target": "xananode.canonical:source/apache-2-0-license",
      "type": "licensed_under",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-hugo-theme-licensed-under-apache",
      "summary": "xananode hugo theme is licensed under Apache-2.0.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:media/xananode-icon",
      "target": "xananode.canonical:source/xananode-trademark-policy",
      "type": "trademarked_by",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-logo-trademarked-by-policy",
      "summary": "The XanaNode logo is governed by the XanaNode trademark policy.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/xananode",
      "target": "xananode.canonical:source/xananode-trademark-policy",
      "type": "trademarked_by",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-name-trademarked-by-policy",
      "summary": "The XanaNode name is governed by the XanaNode trademark policy.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/xananode",
      "target": "xananode.canonical:source/xananode-com-domain",
      "type": "documents",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-published-at-com",
      "summary": "XanaNode is publicly presented at XanaNode.com.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:concept/xananode",
      "target": "xananode.canonical:concept/trifecta-of-computing-failure",
      "type": "related_to",
      "color": "#94a3b8",
      "inverse_color": "#cbd5e1",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-related-to-trifecta",
      "summary": "XanaNode is explicitly positioned as an answer to the trifecta of computing failure.",
      "asserted_by": "",
      "asserted_at": "2026-06-22T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-studio",
      "target": "xananode.canonical:concept/compatibility-attribution",
      "type": "governed_by",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-studio-identifies-compatibility",
      "summary": "xananode studio should identify as XanaNode-compatible and reference the canonical specification.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-studio",
      "target": "xananode.canonical:source/apache-2-0-license",
      "type": "licensed_under",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-studio-licensed-under-apache",
      "summary": "xananode studio is licensed under Apache-2.0.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-workspace",
      "target": "xananode.canonical:concept/compatibility-attribution",
      "type": "governed_by",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-workspace-identifies-compatibility",
      "summary": "xananode workspace should identify as XanaNode-compatible and reference the canonical specification.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.canonical:project/xananode-workspace",
      "target": "xananode.canonical:source/apache-2-0-license",
      "type": "licensed_under",
      "color": "#eab308",
      "inverse_color": "#fde047",
      "line_style": "double",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.canonical:rel/xananode-workspace-licensed-under-apache",
      "summary": "xananode workspace is licensed under Apache-2.0.",
      "asserted_by": "",
      "asserted_at": "2026-06-19T00:00:00.000Z",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/gottfried-wilhelm-leibniz",
      "target": "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
      "type": "anticipated",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "background",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/leibniz-anticipated-semantic-computation",
      "summary": "Leibniz anticipated semantic computation through universal symbolic reasoning.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/wilhelm-ostwald",
      "target": "xananode.lineage:person/paul-otlet",
      "type": "parallel_to",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "background",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/ostwald-parallel-to-otlet",
      "summary": "Ostwald's Die Bruecke work runs parallel to Otlet's knowledge organization work.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/jorge-luis-borges",
      "target": "xananode.lineage:publication/the-garden-of-forking-paths",
      "type": "authored",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/borges-authored-forking-paths",
      "summary": "Borges authored The Garden of Forking Paths.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:publication/the-garden-of-forking-paths",
      "target": "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
      "type": "anticipated",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "background",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/forking-paths-anticipated-nonlinear-text",
      "summary": "The Garden of Forking Paths anticipated nonlinear textual structures.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/andries-van-dam",
      "target": "ted-nelson",
      "type": "collaborated_with",
      "color": "#fb7185",
      "inverse_color": "#fecdd3",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/van-dam-collaborated-with-nelson",
      "summary": "Andries van Dam belongs to the Brown hypertext lineage connected to Nelson's early hypertext work.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:place/brown-university",
      "target": "xananode.lineage:project/hypertext-editing-system",
      "type": "occurred_at",
      "color": "#84cc16",
      "inverse_color": "#bef264",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/brown-site-of-hes",
      "summary": "Brown University was a site of the Hypertext Editing System lineage.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/andries-van-dam",
      "target": "xananode.lineage:project/fress",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/van-dam-implemented-fress",
      "summary": "Van Dam's Brown lineage implemented FRESS.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:project/intermedia",
      "target": "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/intermedia-implemented-scholarly-hypermedia",
      "summary": "Intermedia implemented scholarly hypermedia as part of the larger lineage.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/alan-kay",
      "target": "douglas-engelbart",
      "type": "extends",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/alan-kay-extends-engelbart",
      "summary": "Kay extends Engelbart's augmentation ideas into personal dynamic media.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:organization/xerox-parc",
      "target": "xananode.lineage:person/alan-kay",
      "type": "context_for",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/xerox-parc-context-for-kay",
      "summary": "Xerox PARC contextualizes Kay's major work.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/nicholas-negroponte",
      "target": "xananode.lineage:organization/mit-media-lab",
      "type": "shapes",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/negroponte-shapes-media-lab",
      "summary": "Negroponte shaped the interactive media and information-space branch.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/seymour-papert",
      "target": "xananode.lineage:person/alan-kay",
      "type": "parallel_to",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "background",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/papert-parallel-to-kay",
      "summary": "Papert's learning-media work runs parallel to Kay's dynamic media branch.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/marvin-minsky",
      "target": "xananode.lineage:technology/apple-knowledge-navigator",
      "type": "context_for",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "background",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/minsky-context-for-agents",
      "summary": "Minsky's AI work contextualizes intelligent agents and cognitive modeling.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/hans-peter-brondmo",
      "target": "xananode.lineage:technology/micons",
      "type": "introduced",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/brondmo-introduced-micons",
      "summary": "Hans Peter Brondmo introduced micons as animated conceptual representations.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:publication/hyperland",
      "target": "xananode.lineage:technology/micons",
      "type": "features",
      "color": "#ec4899",
      "inverse_color": "#f9a8d4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/hyperland-features-micons",
      "summary": "Hyperland features micons as part of its media-agent demonstration.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/robert-winter",
      "target": "xananode.lineage:project/interactive-beethoven-ninth",
      "type": "demonstrates",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/winter-demonstrated-interactive-music",
      "summary": "Robert Winter demonstrated music as explorable structure.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/robert-abel",
      "target": "xananode.lineage:project/interactive-guernica",
      "type": "demonstrates",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/abel-demonstrated-guernica",
      "summary": "Robert Abel demonstrated visual art as navigable knowledge.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/ivan-sutherland",
      "target": "xananode.lineage:tool/hyperland-vr",
      "type": "anticipated",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/sutherland-anticipated-spatial-computing",
      "summary": "Sutherland anticipated visual and spatial computing.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/jaron-lanier",
      "target": "xananode.lineage:organization/vpl-research",
      "type": "popularized",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/lanier-popularized-vr",
      "summary": "Lanier popularized virtual reality through VPL Research.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/scott-fisher",
      "target": "xananode.lineage:organization/nasa",
      "type": "demonstrates",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/fisher-demonstrated-nasa-vr",
      "summary": "Scott Fisher demonstrated VR cases including NASA virtual environment work.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:publication/dirk-gentlys-holistic-detective-agency",
      "target": "xananode.lineage:publication/hyperland",
      "type": "anticipated",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/dirk-gently-anticipated-hyperland",
      "summary": "Dirk Gently anticipates Hyperland's theme of interconnectedness.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:organization/bbc-two",
      "target": "xananode.lineage:publication/hyperland",
      "type": "created",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/bbc-two-created-hyperland-broadcast-context",
      "summary": "BBC Two provided the broadcast context for Hyperland.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/richard-saul-wurman",
      "target": "xananode.lineage:event/ted2-1990",
      "type": "created",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/wurman-created-ted-context",
      "summary": "Richard Saul Wurman created the TED context that TED2 belongs to.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/harry-marks",
      "target": "xananode.lineage:event/ted2-1990",
      "type": "participated_in",
      "color": "#ec4899",
      "inverse_color": "#f9a8d4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "background",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/harry-marks-participated-in-ted2",
      "summary": "Harry Marks participated in TED2.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/john-sculley",
      "target": "xananode.lineage:technology/apple-knowledge-navigator",
      "type": "presented",
      "color": "#ec4899",
      "inverse_color": "#f9a8d4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/sculley-presented-knowledge-navigator",
      "summary": "John Sculley presented Apple's agent and interactive-media future.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:technology/apple-knowledge-navigator",
      "target": "xananode.lineage:person/tom-baker",
      "type": "parallel_to",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 3,
      "visibility": "background",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/knowledge-navigator-parallel-to-hyperland-agent",
      "summary": "Apple Knowledge Navigator runs parallel to Hyperland's software-agent persona.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/bill-atkinson",
      "target": "xananode.lineage:technology/hypercard",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/bill-atkinson-implemented-hypercard",
      "summary": "Bill Atkinson implemented HyperCard.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:event/ted2-1990",
      "target": "xananode.lineage:person/robert-abel",
      "type": "features",
      "color": "#ec4899",
      "inverse_color": "#f9a8d4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/ted2-features-robert-abel",
      "summary": "TED2 featured Robert Abel's multimedia art navigation branch.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:event/ted2-1990",
      "target": "xananode.lineage:person/bill-atkinson",
      "type": "features",
      "color": "#ec4899",
      "inverse_color": "#f9a8d4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/ted2-features-bill-atkinson",
      "summary": "TED2 featured Bill Atkinson and accessible hypermedia authoring.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/tim-berners-lee",
      "target": "xananode.lineage:person/robert-cailliau",
      "type": "collaborated_with",
      "color": "#fb7185",
      "inverse_color": "#fecdd3",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/berners-lee-collaborated-with-cailliau",
      "summary": "Berners-Lee collaborated with Robert Cailliau on the Web proposal and promotion.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:place/cern",
      "target": "xananode.lineage:technology/world-wide-web",
      "type": "context_for",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/cern-context-for-web",
      "summary": "CERN provided the context for the Web's birth.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:technology/html",
      "target": "xananode.lineage:technology/world-wide-web",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/html-implements-markup",
      "summary": "HTML implements document markup for the Web.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:technology/http",
      "target": "xananode.lineage:technology/world-wide-web",
      "type": "enables",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/http-enables-web",
      "summary": "HTTP enables distributed retrieval on the Web.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:technology/url-uri",
      "target": "xananode.lineage:technology/world-wide-web",
      "type": "enables",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/url-uri-enables-addressability",
      "summary": "URL and URI addressing enables Web addressability.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:organization/ncsa",
      "target": "xananode.lineage:technology/mosaic",
      "type": "popularized",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/ncsa-popularized-mosaic",
      "summary": "NCSA popularized Web browsing through Mosaic.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/marc-andreessen",
      "target": "xananode.lineage:technology/world-wide-web",
      "type": "popularized",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/andreessen-popularized-web",
      "summary": "Marc Andreessen helped popularize the Web branch.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:concept/web-as-incomplete-hypertext",
      "target": "xananode",
      "type": "contrasts_with",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/web-incomplete-contrasts-with-xananode",
      "summary": "The incomplete-hypertext frame contrasts the Web's missing provenance and relationship governance with XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:technology/guide",
      "target": "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "background",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/guide-implemented-pc-hypertext",
      "summary": "Guide implemented personal-computer hypertext.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:project/storyspace",
      "target": "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "background",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/storyspace-implemented-hypertext-literature",
      "summary": "Storyspace implemented hypertext literature authoring.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:project/zog-kms",
      "target": "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "background",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/zog-kms-implemented-frame-navigation",
      "summary": "ZOG/KMS implemented frame and card based knowledge management.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:project/xanadu-at-autodesk",
      "target": "project-xanadu",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/xanadu-at-autodesk-implements-xanadu",
      "summary": "Xanadu at Autodesk attempted a commercial implementation of Nelson's Xanadu vision.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode",
      "target": "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
      "type": "preserves",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/xananode-preserves-lost-lineage",
      "summary": "XanaNode preserves the lost lineage as an intertwingled graph.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode",
      "target": "memex",
      "type": "extends",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/xananode-extends-bush-trails",
      "summary": "XanaNode extends Bush's associative trails into typed, portable substrate records.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode",
      "target": "transclusion",
      "type": "extends",
      "color": "#8b5cf6",
      "inverse_color": "#c4b5fd",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/xananode-extends-transclusion",
      "summary": "XanaNode extends Nelson-style transclusion with stable fragments and protocol identity.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:concept/conflict-disputed-identity",
      "target": "federated-knowledge-substrates",
      "type": "preserves",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/conflict-preserves-disagreement",
      "summary": "Conflict and disputed identity preserve disagreement instead of flattening it.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:technology/git-backed-substrate",
      "target": "provenance",
      "type": "enables",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/git-backed-substrate-enables-history",
      "summary": "A Git-backed substrate enables history, branching, merging, authorship, and preservation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:tool/babel",
      "target": "schema-extension",
      "type": "maps_to",
      "color": "#22d3ee",
      "inverse_color": "#a5f3fc",
      "line_style": "double",
      "inverse_line_style": "double",
      "weight": 3,
      "visibility": "background",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/babel-maps-to-translation",
      "summary": "Babel maps to future translation across machine-readable formats, languages, and ontologies.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:tool/hyperland-vr",
      "target": "federated-knowledge-substrates",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "background",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/hyperland-vr-implements-spatial-navigation",
      "summary": "Hyperland VR imagines spatial navigation across federated substrates.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:concept/authored-substrate-overlap",
      "target": "federated-knowledge-substrates",
      "type": "context_for",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/overlap-context-for-federation",
      "summary": "Authored overlap is the practical reason federated substrates need identity comparison and governed merge behavior.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:concept/authored-substrate-overlap",
      "target": "xananode.lineage:claim/overlap-is-federation-signal",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/overlap-has-federation-signal-claim",
      "summary": "The overlap concept claims that overlapping records are federation signals.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:concept/authored-substrate-overlap",
      "target": "xananode.lineage:claim/merge-is-authored-interpretation",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/overlap-has-merge-claim",
      "summary": "The overlap concept claims that merge decisions are authored interpretations.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:concept/authored-substrate-overlap",
      "target": "xananode.lineage:claim/lineage-pack-can-overlap-canonical-pack",
      "type": "has_claim",
      "color": "#f43f5e",
      "inverse_color": "#fda4af",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/overlap-has-lineage-pack-claim",
      "summary": "The overlap concept claims that the lineage pack can overlap the canonical pack without becoming the same substrate.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:concept/authored-substrate-overlap",
      "target": "xananode.lineage:concept/conflict-disputed-identity",
      "type": "preserves",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/overlap-preserves-disputed-identity",
      "summary": "Authored overlap preserves possible identity conflicts until a merge decision is justified.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:claim/overlap-is-federation-signal",
      "target": "xananode",
      "type": "supports",
      "color": "#10b981",
      "inverse_color": "#6ee7b7",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/federation-signal-supports-xananode",
      "summary": "Treating overlap as a signal supports XanaNode's relationship-first federation model.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:claim/merge-is-authored-interpretation",
      "target": "xananode.lineage:concept/conflict-disputed-identity",
      "type": "refines",
      "color": "#64748b",
      "inverse_color": "#cbd5e1",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/merge-claim-refines-conflict",
      "summary": "The merge claim refines disputed identity by making identity resolution attributable and reversible.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:claim/lineage-pack-can-overlap-canonical-pack",
      "target": "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
      "type": "explains",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/lineage-overlap-claim-explains-pack-boundary",
      "summary": "The lineage pack may name canonical XanaNode ideas when explaining the path that led to them.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
      "target": "xananode",
      "type": "context_for",
      "color": "#60a5fa",
      "inverse_color": "#bfdbfe",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/lost-lineage-context-for-xananode",
      "summary": "The lost lineage frames XanaNode as a corrective for preserving connected, attributable knowledge.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/paul-otlet",
      "target": "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
      "type": "anticipated",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/otlet-anticipated-knowledge-systems",
      "summary": "Otlet anticipated global knowledge systems and networked documentation.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/h-g-wells",
      "target": "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
      "type": "proposed",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/wells-proposed-world-brain",
      "summary": "Wells proposed a planetary memory through the World Brain.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "vannevar-bush",
      "target": "xananode.lineage:person/douglas-adams",
      "type": "influenced",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/bush-influenced-adams-lineage",
      "summary": "Bush's associative trails feed the lineage that Hyperland dramatized.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "ted-nelson",
      "target": "xananode.lineage:publication/hyperland",
      "type": "influenced",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/nelson-influenced-hyperland",
      "summary": "Nelson's hypertext and Xanadu ideas are central to Hyperland.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/douglas-adams",
      "target": "xananode.lineage:publication/hyperland",
      "type": "authored",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/adams-authored-hyperland",
      "summary": "Douglas Adams authored Hyperland.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/max-whitby",
      "target": "xananode.lineage:publication/hyperland",
      "type": "created",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/whitby-created-hyperland",
      "summary": "Max Whitby produced and directed Hyperland.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:publication/hyperland",
      "target": "xananode.lineage:person/tom-baker",
      "type": "features",
      "color": "#ec4899",
      "inverse_color": "#f9a8d4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/hyperland-features-tom-baker",
      "summary": "Hyperland features Tom Baker as a software-agent persona.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:publication/hyperland",
      "target": "xananode.lineage:event/ted2-1990",
      "type": "contemporary_of",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/hyperland-contemporary-of-ted2",
      "summary": "Hyperland and TED2 converge in the same 1990 hypermedia moment.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "1990-01-01T00:00:00Z",
      "valid_to": "1990-12-31T23:59:59Z",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:event/ted2-1990",
      "target": "xananode.lineage:place/monterey-california",
      "type": "occurred_at",
      "color": "#84cc16",
      "inverse_color": "#bef264",
      "line_style": "dotted",
      "inverse_line_style": "dotted",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/ted2-occurred-at-monterey",
      "summary": "TED2 occurred in Monterey, California.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:event/ted2-1990",
      "target": "xananode.lineage:person/douglas-adams",
      "type": "features",
      "color": "#ec4899",
      "inverse_color": "#f9a8d4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/ted2-features-adams",
      "summary": "TED2 featured Douglas Adams.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:event/ted2-1990",
      "target": "xananode.lineage:person/bob-stein",
      "type": "features",
      "color": "#ec4899",
      "inverse_color": "#f9a8d4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/ted2-features-bob-stein",
      "summary": "TED2 featured Bob Stein's interactive publishing branch.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/bob-stein",
      "target": "xananode.lineage:organization/voyager-company",
      "type": "created",
      "color": "#fb923c",
      "inverse_color": "#fed7aa",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/bob-stein-created-voyager",
      "summary": "Bob Stein created interactive publishing contexts including Voyager.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:event/ted2-1990",
      "target": "xananode.lineage:person/alan-kay",
      "type": "features",
      "color": "#ec4899",
      "inverse_color": "#f9a8d4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 4,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/ted2-features-alan-kay",
      "summary": "TED2 featured Alan Kay's dynamic media branch.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/alan-kay",
      "target": "xananode.lineage:organization/xerox-parc",
      "type": "shapes",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/alan-kay-shaped-dynamic-media",
      "summary": "Kay's work belongs to the PARC dynamic-media and personal-computing lineage.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:technology/hypercard",
      "target": "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
      "type": "popularized",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "secondary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/hypercard-popularized-hypermedia",
      "summary": "HyperCard popularized personal hypermedia authoring.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:person/tim-berners-lee",
      "target": "xananode.lineage:technology/world-wide-web",
      "type": "implements",
      "color": "#22c55e",
      "inverse_color": "#86efac",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/berners-lee-implemented-web",
      "summary": "Tim Berners-Lee implemented the Web as simple distributed hypertext.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:technology/world-wide-web",
      "target": "xananode",
      "type": "contrasts_with",
      "color": "#a78bfa",
      "inverse_color": "#ddd6fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/web-contrasts-with-xananode",
      "summary": "The Web solved broad publishing, while XanaNode focuses on semantic relationships, provenance, transclusion, and governance.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:project/aspen-movie-map",
      "target": "xananode.lineage:publication/hyperland",
      "type": "anticipated",
      "color": "#14b8a6",
      "inverse_color": "#99f6e4",
      "line_style": "solid",
      "inverse_line_style": "dashed",
      "weight": 3,
      "visibility": "background",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/aspen-anticipated-spatial-media",
      "summary": "Aspen Movie Map anticipates navigable spatial media adjacent to Hyperland's concerns.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:trail/lost-lineage-intertwingled-trail",
      "target": "xananode.lineage:concept/lost-lineage-human-knowledge-augmentation",
      "type": "starts_with",
      "color": "#a3e635",
      "inverse_color": "#d9f99d",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/trail-starts-with-lost-lineage",
      "summary": "The imported lineage trail starts with the lost-lineage frame.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    },
    {
      "source": "xananode.lineage:trail/lost-lineage-intertwingled-trail",
      "target": "xananode",
      "type": "arrives_at",
      "color": "#818cf8",
      "inverse_color": "#c7d2fe",
      "line_style": "dashed",
      "inverse_line_style": "solid",
      "weight": 5,
      "visibility": "primary",
      "origin": "protocol_relationship",
      "protocol_id": "xananode.lineage:rel/trail-arrives-at-xananode",
      "summary": "The imported lineage trail arrives at XanaNode.",
      "asserted_by": "",
      "asserted_at": "",
      "valid_from": "",
      "valid_to": "",
      "confidence": "",
      "external": false,
      "target_substrate": ""
    }
  ]
}
