Neo4j unveils open ontology specification for graphs and AI agents

Neo4j has introduced the Neo4j Ontology Graph Specification, an open source format for representing domain knowledge in a machine readable form across data, applications and AI systems. The company says the specification is designed to support interoperability, automation and AI applications built on its Graph Intelligence Platform.
- Neo4j introduced an open source ontology graph specification.
- The format represents nodes, relationships, properties, constraints and business meaning in JSON or YAML.
- It includes mappings to selected RDFS and SHACL constructs and supports external references.
- SDKs for JVM, JavaScript and Go are available in the open source repository.
- The specification is released under the Apache 2.0 license.
A shared model for graph and AI applications
Neo4j describes an ontology as a shared, well defined understanding of a domain. Its new specification is intended to make entities, relationships, properties and business meaning easier to describe, share and use.
The company says its approach draws on years of work with customers using ontologies to make domain knowledge explicit, support knowledge graph construction and improve retrieval in GraphRAG applications. Neo4j has also developed software for interoperability with W3C standards including RDF, RDFS and OWL.
The specification is aimed at a wider set of uses than traditional knowledge representation alone. According to Neo4j, organizations can use ontologies to describe data consistently across operational and analytical systems and provide AI agents with the context needed to interpret and work with that data.
What the specification contains
The specification describes a graph's domain model in one JSON or YAML document. The document is validated against a published JSON Schema, with versioned schemas that Neo4j says are immutable. A current alias points to the latest version.
Its core primitives include nodes and relationships identified by stable IDs, labels, descriptions and aliases. It supports the full Neo4j type system, including temporal, spatial and vector types, as well as cardinality at each relationship end.
The format also defines existence, uniqueness, key and property type constraints. Every element can include a reference field linking it to external definitions, such as public standard ontology terms or documentation. Named extensions cover indexes, display hints and data source mappings, keeping tooling concerns separate from the domain model.
In Neo4j's example, a fraud detection ontology defines a Person node with an email property and an Account node with an IBAN property. It also describes an OWNS relationship, including the requirement that the relationship point to an account.
One ontology, several workflows
Neo4j says the same ontology can be used to enforce database constraints, drive logic that derives or enriches data, and provide context to applications and agents. This gives teams a shared way to describe the knowledge behind those workflows rather than maintaining separate definitions.
The specification uses semantic versioning. Breaking changes require a major version, while additions arrive as backwards compatible minor versions. SDKs for JVM, JavaScript and Go are available in the open source repository.
For developers, the format provides a readable YAML or JSON file for nodes, relationships, constraints and indexes. Data engineers can use it with constraints, indexes and data source mappings, while knowledge engineers can record definitions, synonyms, hierarchies and links to standard terms.
Open source release invites wider adoption
The Neo4j Ontology Graph Specification is released under the Apache 2.0 license. Neo4j invites users to model a graph they already run, validate it against the JSON Schema and contribute issues or changes through GitHub.
The company says it has not defined an RDF based serialization, although its documentation explains how RDFS and SHACL concepts map onto the specification. For AI agent builders, descriptions and aliases can clarify that a term such as Account has a specific meaning and may also be called a bank account.
For users, the release offers a versioned, open format intended to keep domain definitions readable by people, tools and agents. For the broader graph ecosystem, Neo4j is positioning the specification as a bridge between established standards and the requirements of current graph and AI architectures.


