Skip to main content

arango-query-core

Shared conceptual-model and NL substrate for the ArangoDB query transpilers — arango-cypher-py (Cypher→AQL) and arango-sparql-py (SPARQL→AQL) — and, through them, the contextual-data-fabric's federated query engine.

Carved out of arango-cypher-py (which previously shipped arango_query_core inside its own wheel) so both transpilers and the fabric pin one artifact instead of forking the same code three ways.

What's here

Subpackage / module Purpose
arango_query_core.mapping MappingBundle — the conceptual↔physical model contract (entities, relationships, physical annotations) shared by both transpilers and the analyzers' CSI pipeline
arango_query_core.owl_turtle / owl_rdflib OWL/Turtle ⇄ MappingBundle round-trip (rdflib optional, via the owl extra)
arango_query_core.aql / exec / extensions / errors AQL fragment types, safe execution helpers, extension registry, error base
arango_query_core.nl Language-agnostic NL→query engine: LLM providers (OpenAI / OpenRouter / Anthropic with prompt caching), BM25/dense few-shot retrieval, caller-supplied semantic postconditions, and the generate→validate→repair loop
arango_query_core.nl.seams QueryLanguageAdapter — the eight language-specific seams an adapter implements (grammar prompt, corpus, validator, repair rules, guardrails, entity/predicate/path grounding)
arango_query_core.nl.grounding / pathindex Entity, predicate, and relationship-path grounding retrieval (seams 6-8) — inject known IDs, schema conventions, and navigation hints into the prompt
arango_query_core.nl.postconditions Caller-supplied semantic invariants enforced through the same generate→validate→retry budget, failing closed on exhaustion
arango_query_core.nl.synthbank Ontology-agnostic query-shape template catalog for synthetic few-shot bank generation

What's deliberately NOT here

The per-language adapters. nl2cypher (in arango-cypher-py) and nl2sparql (in arango-sparql-py) implement QueryLanguageAdapter next to their transpilers, because validating a generated query requires the transpiler stack — importing one here would create a dependency cycle or force consumers to install both query languages. Dependencies point one way: transpilers → this package.

Install

pip install arango-query-core            # mapping/aql core, zero deps
pip install "arango-query-core[owl]"     # + rdflib OWL round-trip
pip install "arango-query-core[nl]"      # + NL engine runtime deps
pip install "arango-query-core[dense]"   # + dense-embedding few-shot retrieval

Versioning

Consumed as a pinned artifact (contextual-data-fabric CC-9): consumers pin exact versions and re-run their golden suites on every bump. On PyPI since v0.1.0.

Release files for arango-query-core 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for arango-query-core 0.2.0
File Size Uploaded
arango_query_core-0.2.0.tar.gz 79.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for arango-query-core 0.2.0
File Interpreter ABI Platform
arango_query_core-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 139.2 kB

Release files / arango_query_core-0.2.0.tar.gz

Download URL arango_query_core-0.2.0.tar.gz
Size 79.4 kB
Tags Source
SHA-256 checksum
How to use checksums
9f81366eded22167a2a04bce3d918f25f1b7fa59b8bfddd32d86cb4a3665b970
BLAKE2b-256 checksum
How to use checksums
d11a2f4e183e963fef036180bad454348c401c1863361d10c25bd419823bd1f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.15

Release files / arango_query_core-0.2.0-py3-none-any.whl

Download URL arango_query_core-0.2.0-py3-none-any.whl
Size 59.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
428c754f0b563a42828b55fa42c7a63b6b307e5099dcc6d0971d0d901f215d14
BLAKE2b-256 checksum
How to use checksums
cbd282266793d0ee2876c5b751622d0fe599b35da5e2b97e7f3f8b38fa938b73
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.15

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page