{
  "schema": "kallipolis.resource-quality.v1",
  "id": "resource.infrastructure.neo4j-cypher-current",
  "version": "1.0.0",
  "title": "Neo4j Cypher knowledge-graph boundary",
  "summary": "Official-source property-graph, Cypher version, query, mutation, access, vector/graph search, and deployment boundaries for Neo4j.",
  "content": {
    "kind": "infrastructure-boundary",
    "facts": [
      {
        "id": "fact.neo4j.cypher.model",
        "statement": "Cypher is Neo4j's declarative query language for property graph databases, and the current manual distinguishes Cypher 25 from frozen Cypher 5 behavior.",
        "normativeLevel": "informative",
        "sourceIds": [
          "source.neo4j.cypher"
        ]
      },
      {
        "id": "fact.neo4j.cypher.read",
        "statement": "Graph matching, traversal, vector indexes, and other query behavior must be bound to the selected Cypher and database version plus database access policy.",
        "normativeLevel": "informative",
        "sourceIds": [
          "source.neo4j.cypher"
        ]
      },
      {
        "id": "fact.neo4j.cypher.write",
        "statement": "Node, relationship, property, schema, and administrative mutations are different operations and require explicit transaction and authorization controls.",
        "normativeLevel": "informative",
        "sourceIds": [
          "source.neo4j.cypher"
        ]
      },
      {
        "id": "fact.neo4j.cypher.boundary",
        "statement": "A Cypher reference does not create a graph, authenticate a user, grant database privileges, validate generated queries, or prove completeness or factual truth of returned relationships.",
        "normativeLevel": "informative",
        "sourceIds": [
          "source.neo4j.cypher"
        ]
      }
    ]
  },
  "language": "en",
  "category": "data-knowledge-infrastructure",
  "state": "prepared",
  "canonicalUrl": "https://platoskallipolis.com/resources/data-knowledge-infrastructure/neo4j-cypher-current.json",
  "contentHash": "sha256:4ff6a946bc3302afe7e0e0dbafa7e34fa79f342398d46c5c1b44918ec97639e8",
  "owner": {
    "id": "platos-kallipolis",
    "name": "Plato's Kallipolis",
    "type": "organization",
    "accountabilityUrl": "https://platoskallipolis.com/about"
  },
  "access": {
    "mode": "public",
    "url": "https://platoskallipolis.com/resources/data-knowledge-infrastructure/neo4j-cypher-current.json",
    "authentication": "none",
    "robotsAllowed": true
  },
  "provenance": {
    "method": "primary-source",
    "sources": [
      {
        "id": "source.neo4j.cypher",
        "url": "https://neo4j.com/docs/cypher-manual/current/introduction/",
        "title": "Cypher Manual Introduction",
        "publisher": "Neo4j",
        "observedAt": "2026-08-27T01:40:00Z"
      }
    ]
  },
  "observedAt": "2026-08-27T01:40:00Z",
  "freshness": {
    "policy": "max-age",
    "state": "current",
    "nextReviewAt": "2026-09-03T01:40:00Z",
    "maxAgeSeconds": 604800
  },
  "license": {
    "id": "source-terms-apply",
    "url": "https://creativecommons.org/licenses/by/4.0/",
    "redistributionAllowed": false
  },
  "evidence": [
    {
      "id": "evidence.neo4j.cypher",
      "type": "source-claim",
      "url": "https://neo4j.com/docs/cypher-manual/current/introduction/",
      "observedAt": "2026-08-27T01:40:00Z"
    }
  ]
}
