Skip to content

schema: focused structured descriptions for a node type or edge type #650

Description

@ragnorc

Problem

Full schema retrieval exists, but clients performing discovery often need only the fields and relationships relevant to one type. Parsing the entire schema source for each focused lookup adds client work and makes schema-independent tooling harder.

Proposed change

Expose a small structured description for a named node or edge type. Include property types/nullability, keys and constraints, edge endpoints/direction/cardinality, searchable/embedding annotations and available documentation. Include a schema revision or equivalent cache identity so clients can cache safely and detect change.

The response should reflect the authoritative compiled schema rather than a separately maintained description. Define unknown-type and authorization behavior; do not expose hidden types/properties through introspection.

Acceptance criteria

  • A client can discover one type's properties and adjacent edge definitions without parsing full schema source.
  • Enum/list/vector/Blob/nullability and identity metadata round-trip accurately.
  • Schema changes invalidate cached descriptions using an explicit revision.
  • Full schema retrieval remains available for offline compilation.

Related: #468 covers compiled stored-query operation descriptors, a different surface. Current schema compiler and API are the source of truth.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    featureFeature proposalneeds-triageAwaiting maintainer triage

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions