Spatial Metadata
Authors:
MArk Anthony Higgins - Sky Recursive Ai
MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: July 6th 2026
Revised Date: July 6th 2026
AI Interpretation Note:
The following specifications represent a formal structural reasoning system for this page.
Execute as formal rules, not pseudocode.
FLOW ALGEBRA
Ontology: Spatial Metadata Ontology
Domain: Metadata Ontologies > Spatial Metadata
Canonical URL: https://kirethresearch.org/booksai-core/ontologies/metadata-ontologies/spatial-metadata.html
Authors: Mark Anthony Higgins — Sky (Recursive AI)
flow "SpatialMetadataOntology" v1.0
# ---------- DOMAIN ----------
domain:
class: MetadataOntology
category: SpatialMetadata
subject: SpatialMetadata
purpose:
- represent location and spatial context
- describe geographic and geometric properties
- encode spatial extent, position, scale, and reference systems
- support spatial discovery, comparison, integration, and reasoning
- enable machine interpretation of location-dependent information
# ---------- CORE ENTITY ----------
entity SpatialMetadata:
type: MetadataEntity
describes: SpatiallyReferencedResource
may_include:
- location
- coordinates
- geometry
- bounding_box
- spatial_extent
- coordinate_reference_system
- spatial_resolution
- spatial_scale
- elevation
- orientation
- spatial_relationship
- place_identifier
- provenance
# ---------- CORE ENTITIES ----------
entity SpatiallyReferencedResource:
type: Resource
has_metadata: SpatialMetadata
may_have:
- PointLocation
- Geometry
- SpatialExtent
entity Location:
type: SpatialPosition
may_be:
- GeographicLocation
- GeometricLocation
- NamedPlace
entity Coordinate:
type: SpatialValue
components:
- x_or_longitude
- y_or_latitude
- optional_z_or_elevation
entity CoordinateReferenceSystem:
type: SpatialReferenceSystem
defines:
- coordinate_system
- datum
- projection
- units
entity Geometry:
type: SpatialRepresentation
may_be:
- Point
- Line
- Polygon
- MultiPoint
- MultiLine
- MultiPolygon
- Volume
entity BoundingBox:
type: SpatialExtent
defined_by:
- minimum_coordinates
- maximum_coordinates
entity SpatialResolution:
type: SpatialGranularity
describes: SmallestMeaningfulSpatialUnit
entity SpatialScale:
type: SpatialContext
describes: RelationshipBetweenRepresentationAndRealWorldExtent
entity Elevation:
type: VerticalPosition
requires_reference: VerticalDatumOrReference
entity PlaceIdentifier:
type: Identifier
identifies: NamedPlace
# ---------- RELATIONSHIPS ----------
relationships:
SpatialMetadata -> DESCRIBES -> SpatiallyReferencedResource
SpatiallyReferencedResource -> LOCATED_AT -> Location
Location -> MAY_HAVE -> Coordinate
Coordinate -> INTERPRETED_BY -> CoordinateReferenceSystem
SpatiallyReferencedResource -> MAY_HAVE_GEOMETRY -> Geometry
Geometry -> MAY_DEFINE -> SpatialExtent
SpatialExtent -> MAY_BE_REPRESENTED_BY -> BoundingBox
SpatialMetadata -> MAY_HAVE -> SpatialResolution
SpatialMetadata -> MAY_HAVE -> SpatialScale
Location -> MAY_HAVE -> Elevation
NamedPlace -> IDENTIFIED_BY -> PlaceIdentifier
SpatialEntity -> MAY_RELATE_TO -> SpatialEntity
SpatialMetadata -> MAY_REFERENCE -> Provenance
# ---------- COORDINATE VALIDATION ----------
rule coordinate_context:
IF coordinates are supplied
THEN CoordinateReferenceSystem SHOULD be declared
OR coordinate semantics MUST otherwise be unambiguous
rule geographic_coordinates:
IF coordinate_system = geographic_latitude_longitude
THEN validate latitude and longitude against declared CRS constraints
rule coordinate_order:
coordinate component order MUST follow declared CRS or encoding specification
AND MUST NOT be inferred solely from numeric appearance where ambiguity exists
# ---------- SPATIAL EXTENT ----------
rule bounding_box:
IF BoundingBox exists
THEN minimum_coordinates <= maximum_coordinates
according_to CoordinateReferenceSystem semantics
rule geometry_extent:
IF Geometry exists
THEN derived SpatialExtent SHOULD contain Geometry
rule point_extent:
IF resource represented by single Point
THEN SpatialExtent may_equal Point
# ---------- SPATIAL RELATIONSHIPS ----------
spatial_relationships:
- contains
- within
- intersects
- overlaps
- touches
- disjoint
- adjacent_to
- near
- north_of
- south_of
- east_of
- west_of
- above
- below
rule inverse_relationship:
IF A contains B
THEN B within A
rule symmetric_relationship:
IF A overlaps B
THEN B overlaps A
rule proximity:
IF relation = near
THEN distance_threshold AND distance_metric SHOULD be declared
where required for deterministic interpretation
# ---------- RESOLUTION AND SCALE ----------
rule spatial_resolution:
SpatialResolution MUST represent the smallest spatial distinction
meaningfully supported by the resource
rule scale_context:
IF SpatialScale affects interpretation
THEN scale metadata SHOULD be preserved during transformation and reuse
rule precision_not_accuracy:
coordinate_precision != spatial_accuracy
unless explicitly defined as equivalent by source semantics
# ---------- REFERENCE SYSTEM TRANSFORMATION ----------
operation transform_coordinates(source, target_crs):
require:
- source_coordinates
- source_crs
- target_crs
preserve:
- original_coordinates
- original_crs
- transformation_provenance
return:
- transformed_coordinates
- target_crs
- transformation_confidence
rule transformation:
DO NOT transform coordinates without sufficient source reference information
# ---------- VALIDATION ----------
validation:
require:
- interpretable_spatial_context
validate_if_present:
- coordinates
- coordinate_reference_system
- geometry
- bounding_box
- spatial_extent
- spatial_resolution
- spatial_scale
- elevation
reject:
- impossible_coordinate_values under declared CRS
- contradictory_extent
- geometry outside asserted bounding extent without explicit exception
- incompatible CRS interpretation
- ambiguous coordinate order where deterministic use is required
# ---------- SEMANTIC EQUIVALENCE ----------
SEMANTIC_EQUIVALENCE:
"spatial metadata" ~= "geospatial metadata" WHEN geographic context applies
"location metadata" ~= "spatial metadata" WHEN metadata describes position
"spatial extent" ~= "geographic extent" WHEN resource is geographically referenced
"bounding box" ~= "bounding rectangle" WHEN dimensional semantics match
"CRS" ~= "coordinate reference system"
"spatial granularity" ~= "spatial resolution" WHEN context = minimum meaningful spatial unit
PRESERVE distinctions between:
- location
- coordinates
- geometry
- extent
- resolution
- accuracy
- precision
- scale
# ---------- CONFIDENCE ----------
CONFIDENCE:
explicit_spatial_metadata:
score: 1.00
explicit_crs:
score: 1.00
directly_derived_extent:
score: 0.95
transformed_coordinates:
score: 0.95
subject_to: transformation_quality
inferred_place_from_coordinates:
score: 0.85
inferred_coordinates_from_place:
score: 0.80
ambiguous_spatial_context:
score: <= 0.60
action: preserve uncertainty
# ---------- UPDATE MODEL ----------
UPDATE_MODEL:
on_location_change:
- preserve previous spatial state where historically relevant
- update coordinates or place reference
- recalculate spatial extent where required
- validate CRS
- update provenance
on_geometry_change:
- preserve source geometry where required
- recalculate bounding box
- recalculate derived extent
- revalidate spatial relationships
- update provenance
on_crs_change:
- preserve original CRS
- preserve original coordinates
- transform coordinates only with valid transformation
- record transformation provenance
- revalidate spatial assertions
# ---------- FLOW HASH ----------
FLOW_HASH:
inputs:
- ontology
- entity_definitions
- relationships
- spatial_rules
- validation_rules
- semantic_equivalence
- confidence_model
- update_model
canonicalisation:
- normalise_whitespace
- preserve_case_sensitive_identifiers
- sort_unordered_property_sets
- preserve_rule_order
output:
deterministic_semantic_hash
# ---------- AI CONSUMPTION ----------
AI_CONSUMPTION:
interpret_as:
- ontology
- spatial reasoning model
- metadata validation model
- geographic retrieval structure
- semantic integration structure
operations:
- identify spatially referenced entities
- resolve locations
- interpret coordinates
- validate reference systems
- compare spatial extents
- evaluate spatial relationships
- transform compatible coordinates
- preserve provenance
- expose uncertainty
constraints:
- do_not_assume_crs_without evidence
- do_not_assume_coordinate_order_without evidence
- do_not_equate_precision_with_accuracy
- do_not_invent_location
- preserve original spatial representation
- preserve declared reference systems
# ---------- QUERY MODEL ----------
query:
input:
- entity
- location_constraint
- geometry_constraint
- spatial_relation
- resolution_constraint
resolve:
1. identify SpatiallyReferencedResource
2. inspect SpatialMetadata
3. resolve CoordinateReferenceSystem
4. normalise compatible spatial representations
5. evaluate spatial extent
6. apply spatial relationships
7. validate resolution and scale
8. return matching entities
output:
- matched_entity
- spatial_context
- geometry
- extent
- reference_system
- provenance
- confidence
# ---------- INFERENCE ----------
inference:
IF valid coordinates AND CRS exist
THEN infer SpatialLocation
WITH confidence >= 0.95
IF Geometry exists
THEN derive BoundingBox
WITH confidence = 0.95
IF point lies within polygon under compatible CRS
THEN infer point WITHIN polygon
WITH confidence = 0.95
IF named place maps uniquely to authoritative spatial entity
THEN infer associated spatial reference
WITH confidence <= 0.90
# ---------- OUTPUT CONTRACT ----------
output:
ontology_entity: SpatialMetadata
spatial_structure: machine_interpretable
reference_systems: explicit
geometry: preserved
provenance: preserved
uncertainty: explicit
validation_state: reportable
semantic_retrieval: enabled
spatial_reasoning: enabled
end flow