Skip to main content

Enterprise Context Engine (Provisional)

Welcome to the Enterprise Context Engine (ECE).

What is the Enterprise Context Engine?​

The Enterprise Context Engine (ECE) is the governed context layer for trustworthy AI. As content is ingested, it is extracted and chunked, and embeddings are created. Using ontologies, ECE extracts Global Entities and assembles them to form Business Objects. Using these constructs, ECE creates an evidence graph over enterprise content that captures entities, relationships, and provenance back to source documents.

While ingesting, the Cloud Content Repository and Knowledge Enrichment (KE) services work in unison to create this context layer. Together they represent the Enterprise Context Engine. Once the context layer is formed, it is housed within the Cloud Content Repository and is queryable through the APIs documented here. The platform combines:

  • πŸ” Metadata Search - Find documents by their properties, ingest metadata, context enrichments, and Knowledge Graph (KG) processing states with HXQL.
  • 🧠 Semantic and Hybrid Search - Search document chunks by vector similarity, optionally filtered by HXQL and chunk-text terms.
  • πŸ•ΈοΈ Knowledge Graph - Build graph databases from ontologies, and then retrieve Business Objects, related objects, and provenance from them.
  • πŸ“Ž Citations - Retrieve chunks with their page and bounding-box locations, and download the source files.
  • πŸ”’ Access Control - Searches run with the end user's token, so document Access Control Lists (ACLs) filter every result to what that user may see. The graph APIs check the permissions granted to the caller's roles.

Key Features​

  • Run HXQL queries over document properties, ingest properties (cin_ingestProperties), and context enrichments (cinctx_contextProperties).
  • Run advanced queries with parameterised predicates and server-defined named queries.
  • Use vector search over chunk embeddings, with hybrid filtering by HXQL and chunk-text terms.
  • Search by per-value counts with terms aggregation and exact match counts with totalCount.

Knowledge Graph Setup​

  • Create v2 graph databases with ACLs enforced.
  • Upload YAML ontologies and route them to content with condition expressions.
  • Submit rebuild jobs to bootstrap or reprocess the graph, and track their status.
  • Monitor per-document, per-ontology processing through cinctx_kgProcessingStates.

Retrieval and References​

  • Stream original files (with range, conditional, and digest support) or get pre-signed URLs valid for up to 3600 seconds.
  • Retrieve individual embeddings with the chunk text and its location in the source document.
  • Leverage ECE Graph Query APIs to work with Business Objects, related Business Objects, shared attributes, and provenance.

Architecture Overview​

The following diagrams show how content flows through the system from ingestion to the queryable Knowledge Graph and how agents reach it.

How the Enterprise Context Engine is built​

ECE extracts entities and relations from content, processes, and memories.

How the Enterprise Context Engine is built: documents and systems are ingested, curated and enriched into the Cloud Content Repository and Knowledge Graph, with an entity pipeline from source document to business object and a memory-consolidation loop from agent activity

How agents reach the Enterprise Context Engine​

Governed context for any agent β€” over MCP, or a CLI inside a code sandbox.

How agents reach the Enterprise Context Engine: Hyland agents, your agents and third-party MCP hosts connect through the MCP server or the CLI to the ECE capabilities, which read the Cloud Content Repository and Knowledge Graph

The Customer Journey​

These APIs support every phase of working with the ECE, from initial content ingestion through to retrieval with citations.

1. Ingest Content​

Content enters the system through CI Connectors (pre-built integrations for SharePoint, OnBase, file shares, or other content stores) or directly through the Ingestion APIs. The document lands in the Cloud Content Repository and is sent to Data Curation for processing: text extraction, normalization, chunking, optional PII redaction, and embedding generation. The curated chunks and embeddings are written back to the Cloud Content Repository.

At this point the document is searchable β€” you can run HXQL metadata queries, vector/semantic search, or hybrid search against the indexed content (see Querying with HXQL and Semantic and Hybrid Search for more information).

2. Set Up the Knowledge Graph​

To extract structured knowledge from your content, you configure the graph infrastructure (see Setting Up the Knowledge Graph):

  • Create a GraphDB β€” POST /api/graph/graphdbs creates a graph database instance to house your knowledge graph.
  • Upload an Ontology β€” POST /api/graph/ontologies uploads a YAML ontology that defines the entity types, attributes, and relationships ECE should extract from your documents.
  • Create Ontology Routes β€” PUT /api/graph/graphdbs/{graphDBId}/ontologyroutes maps which ontologies apply to which content. Each route pairs an ontologyId with a condition expression over document properties (for example, content type).
  • Build the Graph β€” POST /api/v1/graph/rebuild submits a rebuild job for bootstrap or disaster recovery. The Cloud Content Repository scrolls the documents matched by your ontology routes (or by a custom HXQL query), stamps their graph routing metadata, and sends them on for graph processing. ECE then processes them through the ontology, extracts Global Entities, assembles Business Objects, and populates the Knowledge Graph (see Rebuilding the Graph).

3. Query & Retrieve​

Once the context layer is built, you have multiple ways to search and retrieve:

  • Metadata Search β€” POST /api/query with HXQL to find documents by properties, context enrichments, ingest metadata, or KG processing states.
  • Hybrid Search β€” POST /api/query/embeddings for vector/semantic search. Send a query vector (required), optionally with an HXQL query that filters on the parent documents and chunkFTS terms to match in the chunk text. The vector must have the dimension of the environment's embedding model; for example, environments using cohere.embed-multilingual-v3 expect 1024 values, and any other length is rejected with a 400 error code.
  • Graph Data β€” retrieve Business Objects and group entities with aggregate queries (see Working with Graph Data).
  • Graph Retrieval β€” the ECE Graph Query APIs search Business Objects by their shared attributes, find related Business Objects, explore shared attributes, and return provenance (citations back to the source document and location of each fact).
  • Download References β€” retrieve the original document blobs or pre-signed URLs (valid for up to 3600 seconds), and get the chunks with their vectors for showing references in your application (see Downloading Content).
  • Counts and Aggregations β€” HXQL has no COUNT, SUM, GROUP BY or DISTINCT. Use the totalCount returned by POST /api/query (with trackTotalCountUpTo: -1 for an exact number) to count matches, and POST /api/query/termsAggregation to get approximate per-value counts (for example, how many documents have each enrichment type).

4. Ongoing Operations​

The context layer is not static. As your content and domain understanding evolve:

  • Add more graph databases for different domains or use cases.
  • Revise ontologies β€” ontologies cannot be edited in place. Upload the revised YAML as a new ontology, and then point your ontology routes at it. An ontology can only be deleted once no route references it.
  • Update ontology routes to change which content gets processed by which ontology.
  • Rebuild the graph to reprocess content after ontology changes. Use GET /api/v1/graph/rebuild/{jobId} to check the job's status.
  • Monitor processing states β€” query cinctx_kgProcessingStates via HXQL to check per-document, per-ontology processing. Each entry has an ontologyId in the form <graphDBId>_<ontologyId>, a status string written by the KG pipeline (values seen include SYNCED and SYNC_FATAL_FAILURE), and a state blob holding the processing details.
Diagnosing problems

When something is not working, the Error Reference maps each pipeline stage to what can go wrong and which API call tells you why. Start with SELECT * FROM SysContent WHERE sys_id = 'your-doc-id' to see everything about a specific document: its mixins, ingest properties, context enrichments, and KG processing states.

Use Cases​

Retrieval-Augmented Generation with Citations​

Find the passages that answer a question with vector search, ground the answer in sysembed_text, and highlight the citation using the chunk's page and bounding box.

Contract and Document Analytics​

Filter documents by ingest properties (buyer, status, jurisdiction) and enrichment results (contract type, parties, dates), and break them down per value with terms aggregation.

Domain Knowledge Graphs​

Define an ontology for your domain, route the relevant content to it, and build a graph of entities and relationships that agents can query.

Agent Context​

Give Hyland agents, your own agents, and third-party MCP hosts governed access to the Cloud Content Repository and the Knowledge Graph, with entitlements enforced inside every query.

Quick Navigation​

πŸš€ Getting Started

New to the Enterprise Context Engine? Set up your environment and make your first API calls.

πŸ” Authentication

Obtain an OAuth 2.0 token, understand its claims, and check the permissions each API needs.

πŸ“š Tutorials

Step-by-step guides for common workflows with tested examples.

πŸ“– API Reference

Every endpoint with its parameters, request and response schemas, and status codes.

❌ Error Reference

Error formats, status codes, the real error messages per API, and how to fix them.

API Overview​

All endpoints are served from your environment-specific base URL, https://{environment_id}.content-lake.ai.experience.hyland.com. The API Reference documents each operation.

API groupWhat it coversBase pathOperations
Query APIsUse HXQL search, advanced predicates, vector/semantic search, terms aggregation, and indexing status./api/query5
Download & Embeddings APIsDownload original documents, get pre-signed URLs, and retrieve individual embeddings for references./api/download, /api/documents/{docId}/embedding3
GraphDB APIsCreate, list, get, and delete graph databases, and aggregate their entities./api/graph/graphdbs5
Ontology APIsUpload and manage ontologies, read the graph configuration, and set ontology routing rules./api/graph/ontologies, /api/graph/graphdbs/{graphDBId}6
Graph Rebuild APIsSubmit graph rebuild jobs, and list or check rebuild jobs./api/v1/graph/rebuild3
ECE Graph Query APIsSearch Business Objects, find related Business Objects, explore shared attributes, and get provenance citations./api/ece/business-objects5

Named queries, blob headers (HEAD), and the graph aggregate operation are covered with tested examples in the Tutorials.