Skip to main content

Graph Database Ontology

Databases
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 01 October 2026
Audio Overview
AI SEARCH

FLOW ALGEBRA — GRAPH DATABASE ONTOLOGY
Semantic Library
Version: 4.0
Canonical Page:
https://kirethresearch.org/booksai-core/ontologies/computing-ontologies/databases/graph-database-ontology.html

FLOW GRAPH_DATABASE_ONTOLOGY {

  META {
    DOMAIN = "Computing Ontologies"
    SUBDOMAIN = "Databases"
    ONTOLOGY = "Graph Database Ontology"
    PURPOSE = "Formalise graph databases, graph models, nodes, edges, properties, labels, graph queries, traversals, indexing, transactions, distribution and provenance."
    LOCALE = "en-GB"
  }

  ENTITY_TYPES {
    GRAPH_DATABASE
    PROPERTY_GRAPH
    RDF_GRAPH
    KNOWLEDGE_GRAPH_STORE
    GRAPH_SCHEMA
    NODE
    VERTEX
    EDGE
    RELATIONSHIP
    SOURCE_NODE
    TARGET_NODE
    LABEL
    PROPERTY
    PROPERTY_KEY
    PROPERTY_VALUE
    NODE_IDENTIFIER
    EDGE_IDENTIFIER
    PATH
    WALK
    CYCLE
    SUBGRAPH
    CONNECTED_COMPONENT
    NEIGHBOURHOOD
    DEGREE
    GRAPH_PATTERN
    QUERY
    CYPHER
    GREMLIN
    SPARQL
    MATCH
    TRAVERSAL
    PATH_QUERY
    SHORTEST_PATH_QUERY
    REACHABILITY_QUERY
    FILTER
    PROJECTION
    AGGREGATION
    INDEX
    NODE_INDEX
    EDGE_INDEX
    PROPERTY_INDEX
    TRANSACTION
    READ_OPERATION
    WRITE_OPERATION
    COMMIT
    ROLLBACK
    CONSTRAINT
    CONSISTENCY_MODEL
    REPLICATION
    REPLICA
    PARTITION
    SHARD
    GRAPH_PARTITION
    EDGE_CUT
    VERTEX_CUT
    DISTRIBUTED_GRAPH_DATABASE
    STORAGE_ENGINE
    ADJACENCY_LIST
    INDEX_FREE_ADJACENCY
    BACKUP
    RESTORE
    RECOVERY
    CONFIGURATION
    GRAPH_STATE
    QUERY_PLAN
    EXECUTION_PLAN
    QUERY_OPTIMISER
    COST_MODEL
    STATISTICS
    CARDINALITY
    LATENCY
    THROUGHPUT
    EVIDENCE
    CONFIDENCE_SCORE
    PROVENANCE_RECORD
  }

  RELATIONSHIPS {
    IS_A
    INSTANCE_OF
    CONTAINS
    HAS_GRAPH_MODEL
    HAS_SCHEMA
    HAS_NODE
    HAS_VERTEX
    HAS_EDGE
    HAS_RELATIONSHIP
    HAS_SOURCE
    HAS_TARGET
    HAS_LABEL
    HAS_PROPERTY
    HAS_KEY
    HAS_VALUE
    CONNECTS
    ADJACENT_TO
    INCIDENT_TO
    HAS_PATH
    HAS_CYCLE
    HAS_COMPONENT
    HAS_NEIGHBOUR
    HAS_DEGREE
    QUERIED_BY
    MATCHES
    TRAVERSES
    REACHES
    FILTERS
    PROJECTS
    AGGREGATES
    INDEXED_BY
    READS
    WRITES
    CREATES
    UPDATES
    DELETES
    COMMITS
    ROLLS_BACK
    CONSTRAINED_BY
    HAS_CONSISTENCY_MODEL
    REPLICATES_TO
    PARTITIONED_INTO
    SHARDED_ACROSS
    STORED_IN
    BACKED_UP_BY
    RESTORED_FROM
    RECOVERED_BY
    HAS_CONFIGURATION
    HAS_STATE
    TRANSITIONS_TO
    HAS_QUERY_PLAN
    OPTIMISED_BY
    EXECUTED_AS
    HAS_COST
    HAS_STATISTICS
    HAS_CARDINALITY
    HAS_LATENCY
    HAS_THROUGHPUT
    DERIVED_FROM
    INFERRED_FROM
    HAS_EVIDENCE
    HAS_CONFIDENCE
    HAS_PROVENANCE
    SEMANTICALLY_EQUIVALENT_TO
  }

  INPUTS {
    GRAPH_DATABASE_METADATA
    GRAPH_MODEL_DEFINITIONS
    GRAPH_SCHEMA_DATA
    NODE_AND_VERTEX_DATA
    EDGE_AND_RELATIONSHIP_DATA
    LABEL_DATA
    PROPERTY_DATA
    GRAPH_QUERY_DATA
    GRAPH_PATTERN_DATA
    TRAVERSAL_TRACES
    PATH_AND_REACHABILITY_DATA
    INDEX_METADATA
    CONSTRAINT_METADATA
    TRANSACTION_DATA
    QUERY_PLANS
    GRAPH_STATISTICS
    REPLICATION_DATA
    PARTITION_AND_SHARD_DATA
    STORAGE_ENGINE_DATA
    BACKUP_AND_RECOVERY_DATA
    PERFORMANCE_METRICS
    CONFIGURATION_DATA
    ONTOLOGY_TERMS
  }

  NORMALISE {
    STANDARDISE_GRAPH_DATABASE_IDENTIFIERS
    NORMALISE_GRAPH_MODEL_NAMES
    NORMALISE_GRAPH_SCHEMA_IDENTIFIERS
    NORMALISE_NODE_AND_VERTEX_IDENTIFIERS
    NORMALISE_EDGE_AND_RELATIONSHIP_IDENTIFIERS
    NORMALISE_LABELS
    NORMALISE_PROPERTY_KEYS_AND_VALUES
    NORMALISE_DIRECTION
    NORMALISE_GRAPH_QUERY_TERMS
    NORMALISE_TRAVERSAL_NAMES
    NORMALISE_INDEX_TYPES
    NORMALISE_CONSTRAINT_TYPES
    NORMALISE_PARTITION_AND_SHARD_IDENTIFIERS
    NORMALISE_STORAGE_ENGINE_TERMS
    NORMALISE_PERFORMANCE_UNITS
    RESOLVE_DATABASE_GRAPH_NODE_AND_EDGE_IDENTITIES
    ALIGN_ONTOLOGY_TERMS
    REMOVE_DUPLICATES
    VALIDATE_METADATA
    PRESERVE_PROVENANCE
  }

  PROCESS GRAPH_DATABASE_REASONING_PIPELINE {
    GRAPH_DATABASE_REFERENCE
      -> DATABASE_IDENTIFICATION
      -> GRAPH_MODEL_RESOLUTION
      -> NODE_EDGE_LABEL_AND_PROPERTY_MAPPING
      -> QUERY_AND_TRAVERSAL_MAPPING
      -> INDEX_AND_CONSTRAINT_MAPPING
      -> TRANSACTION_AND_STATE_ANALYSIS
      -> DISTRIBUTION_AND_STORAGE_ANALYSIS
      -> VALIDATION
      -> OUTPUT
  }

  PROCESS PROPERTY_GRAPH_REASONING {
    PROPERTY_GRAPH
      -> NODES + EDGES

    NODE
      -> LABELS + PROPERTIES

    EDGE
      -> SOURCE_NODE + TARGET_NODE + LABELS + PROPERTIES

    SOURCE_TARGET_AND_DIRECTION
      -> ADJACENCY_RELATIONS
  }

  PROCESS RDF_GRAPH_REASONING {
    RDF_GRAPH
      -> SUBJECT_PREDICATE_OBJECT_STATEMENTS

    SUBJECT
      -> RESOURCE_OR_BLANK_NODE

    PREDICATE
      -> RELATION_IDENTIFIER

    OBJECT
      -> RESOURCE_LITERAL_OR_BLANK_NODE
  }

  PROCESS ADJACENCY_REASONING {
    NODE
      -> INCIDENT_EDGES

    INCIDENT_EDGES
      -> NEIGHBOUR_NODES

    ADJACENCY
      -> TRAVERSAL_AND_PATTERN_MATCH_CONTEXT
  }

  PROCESS QUERY_REASONING {
    GRAPH_QUERY
      -> PARSE_AND_VALIDATE

    VALID_QUERY
      -> GRAPH_PATTERN_OR_TRAVERSAL_PLAN

    GRAPH_PATTERN
      -> CANDIDATE_BINDINGS

    FILTERS
      -> REDUCED_BINDINGS

    PROJECTION_AND_AGGREGATION
      -> QUERY_RESULT
  }

  PROCESS PATTERN_MATCH_REASONING {
    QUERY_PATTERN
      -> NODE_AND_EDGE_PREDICATES

    START_CANDIDATES
      -> MATCH_NODE_CONSTRAINTS

    MATCHED_NODE
      -> EXPAND_RELATIONSHIPS

    EXPANSION
      -> MATCH_EDGE_AND_TARGET_CONSTRAINTS

    COMPLETE_BINDING
      -> MATCH_RESULT
  }

  PROCESS TRAVERSAL_REASONING {
    START_NODE
      -> FRONTIER

    FRONTIER
      -> VISIT_NODE

    VISIT_NODE
      -> EXPAND_ADJACENT_EDGES

    VALID_NEIGHBOURS
      -> CONTINUE_TRAVERSAL

    TERMINATION_CONDITION
      -> TRAVERSAL_RESULT
  }

  PROCESS PATH_REASONING {
    SOURCE_NODE + TARGET_NODE
      -> PATH_SEARCH

    PATH_SEARCH
      -> EDGE_SEQUENCE_CANDIDATES

    VALID_CONSECUTIVE_ADJACENCY
      -> PATH

    SHORTEST_PATH_QUERY
      -> MINIMUM_VALID_PATH_COST_OR_HOP_CONTEXT
  }

  PROCESS INDEX_REASONING {
    QUERY_PREDICATE
      -> INDEXABLE_LABELS_OR_PROPERTIES

    CANDIDATE_INDEXES
      -> SELECTIVITY_AND_COST_ANALYSIS

    CHOSEN_INDEX
      -> STARTING_NODE_EDGE_OR_PROPERTY_CANDIDATES
  }

  PROCESS TRANSACTION_REASONING {
    TRANSACTION
      -> GRAPH_READ_AND_WRITE_SET

    WRITE_SET
      -> NODE_EDGE_PROPERTY_STATE_CHANGES

    COMMIT
      -> DURABLE_VISIBLE_GRAPH_STATE

    ROLLBACK
      -> RESTORE_PRIOR_TRANSACTIONALLY_VALID_GRAPH_STATE
  }

  PROCESS PARTITION_REASONING {
    GRAPH
      -> PARTITION_STRATEGY

    PARTITION_STRATEGY
      -> NODE_OR_EDGE_PLACEMENT

    EDGE_CUT
      -> CROSS_PARTITION_RELATIONSHIPS

    VERTEX_CUT
      -> REPLICATED_OR_SPLIT_VERTEX_CONTEXT

    DISTRIBUTED_QUERY
      -> LOCAL_AND_REMOTE_TRAVERSAL_COSTS
  }

  PROCESS REPLICATION_REASONING {
    LOGICAL_GRAPH_STATE
      -> REPLICA_SET

    GRAPH_WRITE
      -> REPLICATION_PROTOCOL

    REPLICA_STATE
      -> CONSISTENCY_AND_VISIBILITY_CONTEXT
  }

  PROCESS QUERY_OPTIMISATION_REASONING {
    GRAPH_QUERY
      -> LOGICAL_GRAPH_PLAN

    LOGICAL_GRAPH_PLAN
      -> CANDIDATE_EXECUTION_PLANS

    GRAPH_STATISTICS + INDEXES + CARDINALITY_ESTIMATES
      -> COST_ESTIMATES

    COST_ESTIMATES
      -> SELECT_EXECUTION_PLAN
  }

  PROCESS STATE_REASONING {
    GRAPH_STATE(T1)
      + GRAPH_OPERATION
      -> GRAPH_STATE(T2)

    STATE_TRANSITION
      -> NODE_EDGE_PROPERTY_CONSTRAINT_AND_TRANSACTION_SEMANTICS

    DISTRIBUTED_GRAPH_STATE
      -> REPLICA_PARTITION_AND_CONSISTENCY_CONTEXT
  }

  RULES {
    IF GRAPH_DATABASE_IS_IDENTIFIED
    THEN PRESERVE GRAPH_MODEL_SCHEMA_VERSION_AND_CONFIGURATION_CONTEXT

    IF EDGE_IS_DIRECTED
    THEN PRESERVE SOURCE_AND_TARGET_ORIENTATION

    IF PROPERTY_GRAPH_IS_USED
    THEN PRESERVE NODE_EDGE_LABEL_AND_PROPERTY_SEMANTICS

    IF RDF_GRAPH_IS_USED
    THEN DO_NOT COLLAPSE_RDF_TRIPLE_SEMANTICS_INTO_PROPERTY_GRAPH_SEMANTICS

    IF PATH_RESULT_IS_ASSERTED
    THEN REQUIRE CONSECUTIVE_VALID_EDGE_CONNECTIVITY

    IF DISTRIBUTED_GRAPH_QUERY_IS_ANALYSED
    THEN PRESERVE PARTITION_REPLICA_AND_REMOTE_ACCESS_CONTEXT

    IF REPLICA_STATE_IS_OBSERVED
    THEN DO_NOT AUTOMATICALLY_ASSERT GLOBAL_GRAPH_STATE_WITHOUT_CONSISTENCY_CONTEXT

    IF SEMANTIC_IDENTIFIERS_DIFFER
    AND GRAPH_DATABASE_REFERENT_IS_SAME
    THEN APPLY SEMANTIC_EQUIVALENCE
  }

  CONFIDENCE {
    CONFIDENCE_SCORE =
      WEIGHT(
        DATABASE_IDENTITY_CERTAINTY,
        GRAPH_MODEL_CERTAINTY,
        NODE_AND_EDGE_COMPLETENESS,
        LABEL_AND_PROPERTY_CERTAINTY,
        QUERY_AND_TRANSACTION_EVIDENCE,
        PARTITION_AND_REPLICATION_CERTAINTY,
        STORAGE_AND_OPERATIONAL_EVIDENCE,
        PROVENANCE_COMPLETENESS
      )

    LEVELS {
      HIGH
      MODERATE
      LOW
      INSUFFICIENT
    }

    IF NODE_OR_EDGE_DATA_IS_PARTIAL
    THEN REDUCE_PATH_PATTERN_AND_CONNECTIVITY_CONFIDENCE

    IF GRAPH_MODEL_OR_DIRECTION_SEMANTICS_ARE_UNKNOWN
    THEN REDUCE_QUERY_INFERENCE_CONFIDENCE
  }

  SEMANTIC_EQUIVALENCE {
    EQUIVALENCE_KEY =
      NORMALISE(
        ENTITY_TYPE,
        GRAPH_DATABASE_IDENTIFIER,
        GRAPH_MODEL,
        GRAPH_SCHEMA_IDENTIFIER,
        NODE_OR_EDGE_IDENTIFIER,
        CANONICAL_PROPERTY_OR_KEY,
        CONFIGURATION
      )

    IF EQUIVALENCE_KEY(A) == EQUIVALENCE_KEY(B)
    THEN A SEMANTICALLY_EQUIVALENT_TO B

    ELSE PRESERVE_DISTINCT_ENTITIES
  }

  REASONING_CONSTRAINTS {
    GRAPH_DATABASE != GRAPH_DATA_STRUCTURE
    GRAPH_DATABASE != GRAPH_ALGORITHM
    NODE != EDGE
    EDGE != PATH
    PROPERTY_GRAPH != RDF_GRAPH
    LABEL != PROPERTY
    NODE_IDENTIFIER != NODE_LABEL
    ADJACENCY != REACHABILITY
    QUERY != QUERY_PLAN
    GRAPH_PARTITION != REPLICA
    SHARDING != REPLICATION
    INDEX_FREE_ADJACENCY != ABSENCE_OF_ALL_INDEXES
    KNOWLEDGE_GRAPH_STORE != KNOWLEDGE_GRAPH_AS_IDENTICAL_CONCEPT
    REPLICA_STATE != GLOBAL_GRAPH_STATE_WITHOUT_CONTEXT
    QUERY_PERFORMANCE_DEPENDS_ON_GRAPH_SHAPE_INDEXES_CARDINALITY_PARTITIONING_AND_RUNTIME_CONTEXT
    PROVENANCE_MUST_BE_PRESERVED
    UNCERTAINTY_MUST_NOT_BE_DISCARDED
  }

  VALIDATION {
    CHECK_ENTITY_TYPES
    CHECK_RELATION_DOMAINS_AND_RANGES
    CHECK_GRAPH_DATABASE_IDENTIFIER
    CHECK_GRAPH_DATA_MODEL
    CHECK_GRAPH_SCHEMA
    CHECK_NODE_IDENTITIES
    CHECK_EDGE_IDENTITIES
    CHECK_EDGE_DIRECTION
    CHECK_LABELS_AND_PROPERTIES
    CHECK_ADJACENCY
    CHECK_QUERIES
    CHECK_PATTERN_MATCHES
    CHECK_TRAVERSALS_AND_PATHS
    CHECK_INDEXES
    CHECK_CONSTRAINTS
    CHECK_TRANSACTIONS
    CHECK_QUERY_PLANS
    CHECK_PARTITIONING_AND_SHARDING
    CHECK_REPLICATION_AND_CONSISTENCY
    CHECK_STORAGE_AND_RECOVERY
    CHECK_GRAPH_STATE
    CHECK_CONFIGURATION
    CHECK_PROVENANCE
    CHECK_CONFIDENCE
    CHECK_SEMANTIC_CONSISTENCY
  }

  OUTPUTS {
    NORMALISED_GRAPH_DATABASE_ENTITIES
    GRAPH_MODEL_RELATIONS
    GRAPH_SCHEMA_RELATIONS
    NODE_EDGE_LABEL_AND_PROPERTY_RELATIONS
    ADJACENCY_RELATIONS
    QUERY_AND_PATTERN_RELATIONS
    TRAVERSAL_RELATIONS
    PATH_AND_REACHABILITY_RELATIONS
    INDEX_RELATIONS
    CONSTRAINT_RELATIONS
    TRANSACTION_RELATIONS
    QUERY_PLAN_RELATIONS
    PARTITION_AND_SHARD_RELATIONS
    REPLICATION_RELATIONS
    CONSISTENCY_RELATIONS
    STORAGE_AND_RECOVERY_RELATIONS
    GRAPH_STATE_TRANSITIONS
    PERFORMANCE_RELATIONS
    CONFIDENCE_SCORES
    EVIDENCE_LINKS
    PROVENANCE_RECORDS
    EXPLANATION_PATHS
  }

  UPDATE_MODEL {
    ON GRAPH_SCHEMA_DATA_OR_CONFIGURATION_CHANGE {
      NORMALISE
      RESOLVE_DATABASE_GRAPH_NODE_AND_EDGE_IDENTITIES
      UPDATE_GRAPH_SCHEMA
      UPDATE_NODE_EDGE_LABEL_AND_PROPERTY_RELATIONS
      UPDATE_INDEX_AND_CONSTRAINT_RELATIONS
      UPDATE_PARTITION_REPLICATION_AND_STORAGE_CONTEXT
      RECOMPUTE_AFFECTED_RELATIONS
      UPDATE_CONFIDENCE
      PRESERVE_VERSION_HISTORY
    }

    ON NEW_QUERY_TRANSACTION_OR_OPERATIONAL_EVIDENCE {
      LINK_EVIDENCE
      UPDATE_QUERY_AND_EXECUTION_PLANS
      UPDATE_GRAPH_STATE
      UPDATE_TRANSACTION_AND_CONSISTENCY_RELATIONS
      UPDATE_PERFORMANCE_PROFILE
      UPDATE_CONFIDENCE
      RECORD_PROVENANCE
    }

    ON ONTOLOGY_REVISION {
      REMAP_TERMS
      CHECK_SEMANTIC_EQUIVALENCE
      IDENTIFY_DEPRECATED_TERMS
      MIGRATE_RELATIONSHIPS
      PRESERVE_PRIOR_VERSION_REFERENCES
    }
  }

  FLOW_HASH {
    HASH_INPUT =
      CANONICALISE(
        ENTITY_TYPES,
        RELATIONSHIPS,
        RULES,
        CONFIDENCE,
        SEMANTIC_EQUIVALENCE,
        REASONING_CONSTRAINTS,
        UPDATE_MODEL
      )

    FLOW_HASH = SHA256(HASH_INPUT)
  }

  AI_CONSUMPTION {
    INDEX {
      ONTOLOGY
      ENTITY_TYPES
      RELATIONSHIPS
      RULES
      OUTPUTS
    }

    RETRIEVE {
      BY_GRAPH_DATABASE
      BY_GRAPH_MODEL
      BY_NODE
      BY_EDGE
      BY_LABEL
      BY_PROPERTY
      BY_QUERY
      BY_PATH
      BY_INDEX
      BY_TRANSACTION
      BY_PARTITION
      BY_REPLICA
      BY_GRAPH_STATE
      BY_CONFIDENCE
    }

    REASON {
      APPLY_RELATIONSHIPS
      APPLY_RULES
      ANALYSE_PROPERTY_GRAPHS
      ANALYSE_RDF_GRAPHS
      ANALYSE_ADJACENCY
      ANALYSE_GRAPH_QUERIES
      ANALYSE_PATTERN_MATCHES
      TRACE_TRAVERSALS
      ANALYSE_PATHS
      ANALYSE_INDEXES
      ANALYSE_TRANSACTIONS
      ANALYSE_PARTITIONING
      ANALYSE_REPLICATION
      ANALYSE_QUERY_OPTIMISATION
      TRACE_GRAPH_STATE
      CHECK_SEMANTIC_EQUIVALENCE
      PRESERVE_UNCERTAINTY
      TRACE_EVIDENCE
      TRACE_PROVENANCE
      GENERATE_EXPLANATION_PATH
    }

    RESPONSE_POLICY {
      DISTINGUISH_GRAPH_DATABASE_FROM_GRAPH_DATA_STRUCTURE_AND_GRAPH_ALGORITHM
      DISTINGUISH_PROPERTY_GRAPH_FROM_RDF_GRAPH
      PRESERVE_GRAPH_MODEL_SCHEMA_NODE_EDGE_DIRECTION_PROPERTY_PARTITION_REPLICA_AND_CONFIGURATION_CONTEXT
      DISTINGUISH_ADJACENCY_FROM_REACHABILITY
      PRESERVE_GRAPH_STATE_AND_PROVENANCE
      RETURN_CONFIDENCE_WHEN_AVAILABLE
      RETURN_PROVENANCE_WHEN_AVAILABLE
      AVOID_UNSUPPORTED_GRAPH_DATABASE_INFERENCE
    }
  }

  TERMINAL {
    RESULT =
      VALIDATED(
        SEMANTICALLY_NORMALISED(
          EVIDENCE_LINKED(
            CONFIDENCE_AWARE(
              GRAPH_DATABASE_KNOWLEDGE
            )
          )
        )
      )
  }
}

END FLOW
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ