The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.


Neo4j::Types - Common Neo4j type system


version 2.00


Packages in this distribution represent Cypher types for use with the Neo4j graph database system. As a user of a Neo4j driver distribution supporting these types, you can find details on the available methods for each type and their behaviour in the documentation of the individual modules.

The module Neo4j::Types itself contains no code, but you can use it as a shortcut to load all the modules listed above.

Additionally, generic implementations are offered for those types which Neo4j allows to be used as a query parameter. See Neo4j::Types::Generic for details.

Given a Perl scalar, you can determine whether it represents a specific type of Neo4j value by using the isa operator.

 use v5.36;
 $is_node = $value isa Neo4j::Types::Node;
 # Older versions of Perl:
 use Scalar::Util 'blessed';
 $is_node = blessed $value && $value->isa( 'Neo4j::Types::Node' );

Version 2 of Neo4j::Types is targeting Perl v5.16 and newer. Patches will be accepted to address issues with Perl versions as old as v5.10.1 as long as practical.


The Neo4j Cypher Manual describes a variety of types. For a discussion of typical ways to implement these in Perl, see Neo4j::Types::ImplementorNotes.



Arne Johannessen <>

If you contact me by email, please make sure you include the word "Perl" in your subject header to help beat the spam filters.


This software is Copyright (c) 2021-2023 by Arne Johannessen.

This is free software; you can redistribute it and/or modify it under the terms of the Artistic License 2.0 or (at your option) the same terms as the Perl 5 programming language system itself.