isTyped

Generic Description

Checks whether a value matches a requested GQL-style type name. It is documented separately because explicit type boundaries prevent planner tools from inventing hidden coercions for document-style values.

Simple example:

RETURN isTyped(['a', 'b'], 'LIST<STRING>') AS value

Consumer-Level Explanation

Use it for guard rails in ingestion and assistant-authored queries where shape must be explicit. Prefer this function when the input shape is mixed or imported and the query must state the intended type before comparison or aggregation.

More Detailed Explanation

isTyped makes value shape explicit in Cypher. It is most useful around ingestion, document payloads, and assistant-generated queries where the planner should see the intended type boundary rather than relying on hidden client conversion.

Advanced Example

This example applies isTyped at the point where a semi-structured value enters typed query logic, making the conversion boundary explicit.

MATCH (d:Document)
RETURN d.title AS title,
       isTyped(properties(d.metadata), 'MAP') AS metadata_is_map,
       isTyped(properties(d).embedding, 'LIST') AS embedding_is_list
ORDER BY title

Real Use Cases

Real Limitations And Tradeoffs