Crate oxirs_geosparql

Crate oxirs_geosparql 

Source
Expand description

§OxiRS GeoSPARQL

Version docs.rs

Status: Production Release (v0.1.0) Stability: Public APIs are stable. Production-ready with comprehensive testing.

GeoSPARQL implementation for spatial data and queries in RDF/SPARQL.

This crate provides:

  • GeoSPARQL vocabulary and datatypes
  • WKT (Well-Known Text) geometry parsing and serialization
  • Simple Features topological relations (sfEquals, sfContains, sfIntersects, etc.)
  • Geometric operations (buffer, convex hull, intersection, etc.)
  • Geometric properties (dimension, SRID, isEmpty, etc.)
  • Spatial indexing with R-tree for efficient queries
  • SIMD-accelerated distance calculations (2-4x speedup)
  • Parallel batch processing for large datasets

§Example

use oxirs_geosparql::geometry::Geometry;
use oxirs_geosparql::functions::simple_features;

// Parse WKT geometries
let point = Geometry::from_wkt("POINT(1.0 2.0)").unwrap();
let polygon = Geometry::from_wkt("POLYGON((0 0, 4 0, 4 4, 0 4, 0 0))").unwrap();

// Test spatial relations
let contains = simple_features::sf_contains(&polygon, &point).unwrap();
assert!(contains);

§GeoSPARQL Compliance

This implementation follows the OGC GeoSPARQL 1.0/1.1 specification:

  • Core: Geometry classes and properties
  • Topology Vocabulary: Simple Features relations
  • Geometry Extension: WKT and GML support
  • Query Rewrite Extension: Spatial indexing

§Features

  • wkt-support (default): WKT parsing and serialization
  • geojson-support: GeoJSON support
  • geos-backend: Use GEOS library for geometric operations
  • proj-support: Coordinate transformation support
  • parallel: Parallel processing for large datasets

Re-exports§

pub use error::GeoSparqlError;
pub use error::Result;
pub use geometry::Crs;
pub use geometry::Geometry;
pub use index::SpatialIndex;
pub use performance::BatchProcessor;

Modules§

analysis
Advanced Spatial Analysis
error
Error types for GeoSPARQL operations
functions
GeoSPARQL filter and property functions
geometry
Geometry types and operations
index
Spatial indexing for efficient GeoSPARQL queries
performance
Performance utilities for large-scale geometric operations
sparql_integration
SPARQL Function Integration
validation
Geometry validation and quality checks
vocabulary
GeoSPARQL vocabulary and namespace definitions

Macros§

profile_scope
Macro for convenient profiling scope creation

Structs§

GeoSparqlRegistry
GeoSPARQL function registry

Functions§

init
Initialize GeoSPARQL support in a SPARQL engine