Skip to main content

Recursive Search Metadata Ontology

AI Semantic Library Metadata
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 08 October 2026
Audio Overview
FLOW ALGEBRA

Ontology: Recursive Search Metadata Ontology
Domain: Metadata Ontologies > AI Semantic Library Metadata
Canonical URL: https://kirethresearch.org/booksai-core/ontologies/metadata-ontologies/ai-semantic-library-metadata/recursive-search-metadata-ontology.html
Authors: Mark Anthony Higgins — Sky (Recursive AI)

flow "RecursiveSearchMetadataOntology" v1.0

# ---------- DOMAIN ----------
domain:
  class: MetadataOntology
  category: AISemanticLibraryMetadata
  subject: RecursiveSearchMetadata
  purpose:
    - represent recursive semantic search, query expansion, traversal, retrieval, ranking, stopping conditions, and provenance
    - preserve search identity, originating query, derived queries, search depth, visited resources, traversal paths, confidence, and termination state
    - support recursive AI search, ontology discovery, semantic-library traversal, knowledge-graph exploration, retrieval augmentation, and Flow Algebra search reasoning
    - distinguish recursive search from repeated identical search, pagination, graph traversal, and uncontrolled recursion

# ---------- CORE ----------
entity RecursiveSearchMetadata:
  type: SemanticLibraryMetadata
  describes: RecursiveSemanticSearch
  may_include:
    - search_identifier
    - originating_query
    - current_query
    - derived_queries
    - semantic_context
    - search_depth
    - maximum_depth
    - visited_queries
    - visited_resources
    - traversal_path
    - retrieved_resources
    - ranking
    - confidence
    - stopping_condition
    - cycle_policy
    - pruning_policy
    - termination_state
    - validity
    - provenance

entity RecursiveSemanticSearch:
  type: SearchProcess

entity RecursiveSearchIdentifier:
  type: PersistentIdentifier
  identifies: RecursiveSemanticSearch

relationships:
  RecursiveSearchMetadata -> DESCRIBES -> RecursiveSemanticSearch
  RecursiveSemanticSearch -> IDENTIFIED_BY -> RecursiveSearchIdentifier
  RecursiveSemanticSearch -> STARTS_WITH -> SearchQuery
  RecursiveSemanticSearch -> MAY_DERIVE -> SearchQuery
  RecursiveSemanticSearch -> MAY_TRAVERSE -> SemanticRelationship
  RecursiveSemanticSearch -> MAY_RETRIEVE -> SemanticResource
  RecursiveSemanticSearch -> MAY_CREATE -> RecursiveSearchState
  RecursiveSearchState -> MAY_HAVE_PARENT -> RecursiveSearchState
  RecursiveSearchState -> MAY_HAVE_CHILD -> RecursiveSearchState
  RecursiveSemanticSearch -> GOVERNED_BY -> RecursiveSearchPolicy
  RecursiveSemanticSearch -> TERMINATES_BY -> SearchStoppingCondition
  RecursiveSearchMetadata -> MAY_HAVE_PROVENANCE -> RecursiveSearchProvenance

# ---------- QUERY / STATE ----------
entity SearchQuery:
  type: QueryMetadata
  may_include:
    - query_identifier
    - query_text
    - semantic_intent
    - entities
    - concepts
    - constraints
    - context
    - provenance

rule query_text:
  query text != semantic query intent

entity DerivedSearchQuery:
  subtype_of: SearchQuery
  may_include:
    - parent_query
    - derivation_rule
    - derivation_reason
    - depth
    - confidence

rule derived_query:
  derived query SHOULD preserve lineage to parent query

entity RecursiveSearchState:
  type: StateMetadata
  may_include:
    - state_identifier
    - query
    - depth
    - parent_state
    - child_states
    - retrieved_resources
    - semantic_context
    - confidence
    - status

rule state:
  recursive search state SHOULD preserve query,
  depth, parent state, and semantic context

# ---------- DEPTH / CONTEXT ----------
rule child_depth:
  child search depth = parent search depth + 1
  unless search model defines another depth function

rule maximum_depth:
  IF maximum search depth is reached
  THEN expansion MUST stop for that branch

entity RecursiveSearchContext:
  type: ContextMetadata
  may_include:
    - ontology
    - domain
    - subject
    - entities
    - concepts
    - relationships
    - temporal_context
    - geographic_context
    - user_constraints
    - application_context

rule context:
  derived search SHOULD preserve applicable semantic context

# ---------- QUERY EXPANSION / VISITED STATE ----------
entity QueryExpansion:
  type: SearchMetadata
  may_include:
    - source_query
    - expansion_terms
    - related_concepts
    - mapped_entities
    - broader_concepts
    - narrower_concepts
    - expansion_method
    - confidence

expansion_methods:
  - ontology_expansion
  - semantic_equivalence
  - broader_concept
  - narrower_concept
  - related_concept
  - entity_expansion
  - relationship_expansion
  - query_reformulation

rule expansion:
  query expansion SHOULD preserve expansion method
  and semantic relationship to source query

rule lexical_expansion:
  lexical similarity != semantic equivalence

entity RecursiveSearchVisitedState:
  type: TraversalMetadata
  may_include:
    - visited_queries
    - visited_resources
    - visited_states
    - query_visit_count
    - resource_visit_count

rule visited:
  recursive search SHOULD preserve visited state
  where repeated expansion or cycles are possible

rule repeated_query:
  repeated query != necessarily duplicate search state
  when semantic context differs

# ---------- TRAVERSAL / RETRIEVAL / RANKING ----------
entity RecursiveSearchTraversal:
  type: TraversalMetadata
  may_include:
    - source_resource
    - relationship
    - target_resource
    - direction
    - depth
    - confidence

rule traversal:
  semantic relationship direction MUST be preserved

rule inverse:
  inverse traversal MAY occur only when inverse semantics are explicitly valid

entity RecursiveSearchPath:
  type: PathMetadata
  may_include:
    - ordered_queries
    - ordered_resources
    - ordered_relationships
    - path_length
    - branch_identifier

rule path:
  recursive search path SHOULD preserve traversal order

entity RecursiveSearchRetrieval:
  type: RetrievalMetadata
  may_include:
    - query
    - resource
    - retrieval_method
    - retrieval_score
    - semantic_score
    - rank
    - confidence
    - retrieval_time

rule retrieval:
  retrieved resource != verified factual answer

rule retrieval_score:
  retrieval score != factual confidence

entity RecursiveSearchRanking:
  type: RankingMetadata
  may_include:
    - resource
    - rank
    - ranking_score
    - ranking_method
    - semantic_relevance
    - confidence

rule ranking:
  high rank != semantic truth

rule ranking_confidence:
  ranking score != epistemic confidence
  unless explicitly calibrated as such

# ---------- CYCLE / POLICY / STOPPING ----------
entity RecursiveSearchCycle:
  type: TraversalMetadata
  may_include:
    - repeated_query
    - repeated_resource
    - repeated_state
    - cycle_path
    - detection_time
    - cycle_type

rule cycle:
  cycle detection SHOULD preserve repeated state and path

rule cycle_loop:
  detected search cycle != infinite loop
  when cycle policy terminates or prunes expansion

entity RecursiveSearchPolicy:
  type: PolicyMetadata
  may_include:
    - allowed_relationships
    - maximum_depth
    - maximum_queries
    - maximum_resources
    - maximum_branches
    - maximum_results
    - timeout
    - confidence_threshold
    - stopping_conditions
    - cycle_policy
    - pruning_policy

entity SearchStoppingCondition:
  type: ConstraintMetadata
  may_include:
    - target_found
    - maximum_depth
    - maximum_results
    - no_new_queries
    - no_new_resources
    - confidence_threshold
    - relevance_threshold
    - time_limit
    - explicit_stop
    - error_state

rule stopping:
  potentially unbounded recursive search
  MUST define stopping or cycle-control behaviour

# ---------- PRUNING / CONFIDENCE / PROVENANCE ----------
entity RecursiveSearchPruning:
  type: SearchMetadata
  may_include:
    - branch
    - pruning_reason
    - threshold
    - policy
    - prune_time

rule pruning:
  pruned search branch != disproven semantic branch

entity RecursiveSearchConfidence:
  type: EpistemicMetadata
  range: [0.0, 1.0]

rule confidence_bounds:
  REQUIRE 0.0 <= confidence <= 1.0

rule confidence_depth:
  greater search depth MUST NOT automatically increase confidence

entity RecursiveSearchProvenance:
  type: ProvenanceMetadata
  may_include:
    - search_identifier
    - originating_query
    - derived_queries
    - query_derivations
    - visited_resources
    - traversed_relationships
    - retrieval_events
    - ranking_events
    - pruning_events
    - cycle_events
    - termination_event

rule provenance:
  recursive search SHOULD preserve query derivation,
  traversal, retrieval, ranking, and termination history

# ---------- VALIDATION ----------
validation:
  require:
    - identifiable_recursive_search
    - originating_query
    - stopping_or_cycle_control

  reject:
    - recursive_search_presented_as repeated_identical_search_without derivation
    - query_text_presented_as complete_semantic_intent
    - repeated_query_presented_as cycle_without context
    - repeated_resource_presented_as cycle_without state_context
    - relationship_direction_reversed_without inverse_semantics
    - retrieval_score_presented_as factual_confidence
    - ranking_score_presented_as epistemic_confidence_without calibration
    - high_rank_presented_as semantic_truth
    - retrieved_resource_presented_as verified_fact
    - search_depth_presented_as confidence
    - pruned_branch_presented_as disproven_branch
    - recursion_without stopping_or_cycle_control_where unbounded

# ---------- SEMANTIC EQUIVALENCE ----------
SEMANTIC_EQUIVALENCE:
  "recursive search metadata" ~= "metadata describing recursive semantic search and query expansion"
  "recursive semantic search" ~= "search process that derives and executes further semantic queries from prior search state"
  "query expansion" ~= "semantic derivation of additional query concepts, entities, or relationships"
  "recursive search depth" ~= "level of derived search expansion from originating query"
  "recursive search path" ~= "ordered lineage of queries, relationships, and resources traversed during search"
  "recursive search provenance" ~= "provenance describing query derivation, traversal, retrieval, ranking, and termination"

  PRESERVE distinctions:
    recursive_search != repeated_identical_search
    query_text != semantic_intent
    query_expansion != semantic_equivalence
    lexical_similarity != semantic_equivalence
    vector_similarity != semantic_equivalence
    retrieval_score != factual_confidence
    ranking_score != epistemic_confidence
    high_rank != semantic_truth
    retrieved_resource != verified_fact
    repeated_query != automatically_cycle
    repeated_resource != automatically_cycle
    search_depth != confidence
    pruning != disproof
    traversal_path != endpoint
    cycle_detection != infinite_loop

# ---------- CONFIDENCE ----------
CONFIDENCE:
  explicit_recursive_search_metadata:
    score: 1.00
  explicit_query_derivation:
    score: 0.99
  validated_semantic_traversal:
    score: 0.99
  validated_cycle_detection:
    score: 0.99
  high_relevance_retrieval_with_semantic_evidence:
    score: <= 0.95
  embedding_similarity_only:
    score: <= 0.70
  lexical_similarity_only:
    score: <= 0.60
  incomplete_query_lineage:
    score: <= 0.60
  incomplete_search_provenance:
    score: <= 0.55
    action: preserve uncertainty

# ---------- UPDATE MODEL ----------
UPDATE_MODEL:
  on_search_start:
    - assign RecursiveSearchIdentifier
    - preserve originating query and semantic context
    - initialise depth
    - initialise visited queries and resources
    - load RecursiveSearchPolicy
    - initialise provenance

  on_query_expansion:
    - preserve parent query
    - identify semantic expansion relationship
    - create DerivedSearchQuery
    - assign expansion confidence
    - check visited query state
    - update provenance

  on_retrieval:
    - execute current semantic query
    - preserve retrieval method and scores
    - record retrieved resources
    - update visited resources
    - rank results according_to policy
    - update provenance

  on_recursive_expansion:
    - evaluate retrieved resources and relationships
    - generate valid child search states
    - increment depth
    - preserve semantic context
    - check cycles and stopping conditions
    - update traversal path and provenance

  on_cycle_detection:
    - identify repeated query, resource, or state
    - preserve cycle path
    - apply cycle policy
    - prune, stop, collapse, or permit limited revisit
    - update provenance

# ---------- FLOW HASH ----------
FLOW_HASH:
  inputs:
    - ontology
    - recursive_search_entities
    - relationships
    - query_derivation_rules
    - expansion_rules
    - traversal_rules
    - retrieval_rules
    - ranking_rules
    - stopping_conditions
    - cycle_policy
    - pruning_policy
    - confidence_model
    - validation
    - semantic_equivalence
    - update_model

  canonicalisation:
    - preserve_search_identifier
    - preserve_originating_query
    - preserve_query_derivation_lineage
    - preserve_semantic_context
    - preserve_relationship_direction
    - preserve_search_depth
    - preserve_visited_state_semantics
    - preserve_retrieval_and_ranking_methods
    - preserve_stopping_conditions
    - preserve_cycle_and_pruning_policies
    - preserve_confidence_lineage
    - preserve_provenance
    - preserve_rule_order

  output:
    deterministic_semantic_hash

# ---------- AI CONSUMPTION ----------
AI_CONSUMPTION:
  interpret_as:
    - AI Semantic Library metadata ontology
    - recursive semantic-search, query-expansion, traversal, retrieval, and ranking model
    - cycle-safe search-state and termination structure
    - confidence-aware and provenance-aware AI search model

  operations:
    - identify recursive searches
    - resolve originating and current queries
    - derive semantically related queries
    - preserve query lineage
    - maintain search depth
    - maintain visited query and resource state
    - traverse semantic relationships directionally
    - retrieve and rank semantic resources
    - distinguish ranking and retrieval scores from epistemic confidence
    - detect search cycles
    - apply stopping and pruning policies
    - preserve confidence lineage
    - trace search provenance
    - preserve uncertainty

  constraints:
    - do_not_equate_recursive_search_with repeated_identical_search
    - do_not_equate_query_text_with complete_semantic_intent
    - do_not_equate_query_expansion_with semantic_equivalence
    - do_not_reverse_relationships_without inverse_semantics
    - do_not_equate_retrieval_score_with factual_confidence
    - do_not_equate_ranking_score_with epistemic_confidence_without calibration
    - do_not_equate_high_rank_with semantic_truth
    - do_not_equate_retrieved_resource_with verified_fact
    - do_not_equate_search_depth_with confidence
    - do_not_equate_pruning_with disproof
    - require_stopping_or_cycle_control_for potentially_unbounded_search

# ---------- QUERY MODEL ----------
query:
  input:
    - search_identifier
    - originating_query
    - current_query
    - semantic_context
    - search_depth
    - maximum_depth
    - resource_identifier
    - termination_state

  resolve:
    1. identify RecursiveSemanticSearch
    2. resolve originating query and semantic intent
    3. resolve current and derived query lineage
    4. inspect search depth and visited state
    5. inspect traversal paths and relationship direction
    6. inspect retrieved resources and ranking
    7. detect repeated queries, resources, or states
    8. apply cycle, pruning, and stopping policies
    9. inspect confidence, validity, and provenance
    10. return recursive search state

  output:
    - recursive_search
    - search_identifier
    - originating_query
    - current_query
    - derived_queries
    - semantic_context
    - search_depth
    - visited_state
    - traversal_paths
    - retrieved_resources
    - ranking
    - cycle_state
    - stopping_condition
    - termination_state
    - confidence
    - provenance

# ---------- INFERENCE ----------
inference:
  IF semantic expansion produces valid unvisited query
  AND stopping condition is false
  THEN create child RecursiveSearchState

  IF repeated semantic search state is detected
  THEN apply cycle policy
  AND do_not continue uncontrolled recursion

  IF retrieval or ranking evidence is incomplete
  THEN preserve uncertainty
  AND do_not infer factual verification

  IF maximum depth or resource limit is reached
  THEN terminate or prune current search branch

# ---------- OUTPUT CONTRACT ----------
output:
  ontology_entity: RecursiveSearchMetadata
  search_identity: machine_interpretable
  originating_query: preserved
  derived_query_lineage: explicit
  semantic_context: preserved
  search_depth: explicit
  visited_state: maintained
  traversal_paths: ordered
  relationship_direction: preserved
  retrieval: traceable
  ranking: confidence_distinct
  cycles: detectable
  stopping_conditions: enforceable
  pruning: non_disproof
  confidence: lineage_aware
  provenance: preserved
  recursion: cycle_safe
  uncertainty: explicit
  AI_search_reasoning: enabled

end flow
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ