ISO/IEC 39075:2024
(Main)Information technology - Database languages - GQL
Information technology - Database languages - GQL
This document defines data structures and basic operations on property graphs. It provides capabilities for creating, accessing, querying, maintaining, and controlling property graphs and the data they comprise. This document specifies the syntax and semantics of a data management language for specifying and modifying the structure of property graphs and collections thereof. This document provides a vehicle for portability of data definitions and manipulation among GQL-implementations. Implementations of this document can exist in environments that also support application programming languages, end-user query facilities, and various tools for database design, data administration, and performance optimization.
Technologies de l'information — Langages de base de données — GQL
General Information
- Status
- Published
- Publication Date
- 11-Apr-2024
- Technical Committee
- ISO/IEC JTC 1/SC 32 - Data management and interchange
- Drafting Committee
- ISO/IEC JTC 1/SC 32/WG 3 - Database language
- Current Stage
- 9092 - International Standard to be revised
- Start Date
- 23-Jun-2024
- Completion Date
- 30-Oct-2025
Overview
ISO/IEC 39075:2024 - Information technology - Database languages - GQL defines a standardized data management language for property graphs. The standard specifies the syntax and semantics for data structures and core operations on property graphs, including creating, accessing, querying, maintaining, and controlling graphs and collections of graphs. ISO/IEC 39075:2024 is intended to enable portability of graph data definitions and manipulation across different GQL implementations and to operate alongside application programming languages, end‑user query tools, and database administration and optimization tooling.
Key topics and technical scope
ISO/IEC 39075:2024 covers comprehensive language and runtime concepts relevant to property-graph databases. Major topics include:
- Graph data model: descriptors for graphs, nodes, edges, properties, and key/label sets.
- Syntax and semantics: formal language rules for defining and manipulating graph structures and values.
- Graph pattern matching: path patterns, match modes, path search and pattern variables for expressive graph queries.
- Data types and values: predefined and constructed value types, temporal types, numeric, string and reference types, and nullability rules.
- Schema and catalog: GQL catalog, schemas, directories and object references for organizing graph definitions.
- Session and transaction management: session commands, transaction demarcation, isolation and control commands (start, commit, rollback).
- Procedures and commands: procedure specification, execution contexts, statements, and diagnostics for programmable graph operations.
- Execution and security: execution contexts, authorization identifiers, principals and basic security model.
- Portability and interoperability: language constructs intended to support consistent behavior across different GQL implementations.
Practical applications and users
ISO/IEC 39075:2024 is valuable for:
- Database vendors and engine implementers building GQL-compliant property-graph databases or adding graph capabilities to existing systems.
- Enterprise architects and data modelers designing graph schemas and standardized data definitions for interoperability.
- Application developers and data scientists who query and manipulate graph data via standardized GQL syntax and APIs.
- Tool vendors creating IDEs, query UIs, migration utilities, and performance tools that target multiple GQL implementations.
- Standards bodies and researchers benchmarking and comparing graph language features and portability.
Adopting ISO/IEC 39075 helps organizations achieve predictable graph-query behavior, reduce vendor lock‑in, and simplify integration of graph databases into broader data ecosystems.
Related standards
- Related ISO/IEC database language families (for example, ISO SQL standards) and other graph query language initiatives inform GQL design and interoperability considerations. For procurement or implementation, consult the official ISO catalog for the full published standard.
Frequently Asked Questions
ISO/IEC 39075:2024 is a standard published by the International Organization for Standardization (ISO). Its full title is "Information technology - Database languages - GQL". This standard covers: This document defines data structures and basic operations on property graphs. It provides capabilities for creating, accessing, querying, maintaining, and controlling property graphs and the data they comprise. This document specifies the syntax and semantics of a data management language for specifying and modifying the structure of property graphs and collections thereof. This document provides a vehicle for portability of data definitions and manipulation among GQL-implementations. Implementations of this document can exist in environments that also support application programming languages, end-user query facilities, and various tools for database design, data administration, and performance optimization.
This document defines data structures and basic operations on property graphs. It provides capabilities for creating, accessing, querying, maintaining, and controlling property graphs and the data they comprise. This document specifies the syntax and semantics of a data management language for specifying and modifying the structure of property graphs and collections thereof. This document provides a vehicle for portability of data definitions and manipulation among GQL-implementations. Implementations of this document can exist in environments that also support application programming languages, end-user query facilities, and various tools for database design, data administration, and performance optimization.
ISO/IEC 39075:2024 is classified under the following ICS (International Classification for Standards) categories: 35.060 - Languages used in information technology. The ICS classification helps identify the subject area and facilitates finding related standards.
ISO/IEC 39075:2024 is available in PDF format for immediate download after purchase. The document can be added to your cart and obtained through the secure checkout process. Digital delivery ensures instant access to the complete standard document.
Standards Content (Sample)
International
Standard
ISO/IEC 39075
First edition
Information technology — Database
2024-04
languages — GQL
Technologies de l'information — Langages de base de
données — GQL
Reference number
© ISO/IEC 2024
All rights reserved. Unless otherwise specified, or required in the context of its implementation, no part of this publication may
be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting on
the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address below
or ISO’s member body in the country of the requester.
ISO copyright office
CP 401 • Ch. de Blandonnet 8
CH-1214 Vernier, Geneva
Phone: +41 22 749 01 11
Email: copyright@iso.org
Website: www.iso.org
Published in Switzerland
© ISO/IEC 2024 – All rights reserved
ii
ISO/IEC39075:2024(en)
Contents Page
Foreword.xiv
Introduction.xv
1 Scope.1
2 Normativereferences.2
3 Termsanddefinitions.3
3.1 Generaltermsanddefinitions.3
3.2 GQL-environmenttermsanddefinitions.4
3.3 GQL-catalogtermsanddefinitions.6
3.4 Graphtermsanddefinitions.7
3.5 Procedureandcommandtermsanddefinitions.9
3.6 Generalsyntaxtermsanddefinitions.12
3.7 Graphpatterntermsanddefinitions.14
3.8 Valuetermsanddefinitions.15
3.9 Typetermsanddefinitions.17
3.10 Temporaltermsanddefinitions.19
4 Concepts.21
4.1 Useofterms.21
4.2 GQL-environmentsandtheircomponents.21
4.2.1 GeneraldescriptionofGQL-environments.21
4.2.2 GQL-agents.22
4.2.3 GQL-implementations.22
4.2.3.1 IntroductiontoGQL-implementations.22
4.2.3.2 GQL-clients.23
4.2.3.3 GQL-servers.23
4.2.4 Basicsecuritymodel.24
4.2.4.1 Principals.24
4.2.4.2 Authorizationidentifiersandprivileges.24
4.2.5 GQL-catalog.24
4.2.5.1 GeneraldescriptionoftheGQL-catalog.24
4.2.5.2 GQL-directories.25
4.2.5.3 GQL-schemas.26
4.2.6 GQL-data.27
4.3 GQL-objects.27
4.3.1 GeneralintroductiontoGQL-objects.27
4.3.2 ReferencestoGQL-schemasandGQL-objects.27
4.3.3 Primaryobjectsandsecondaryobjects.28
4.3.4 Propertiesandsupportedpropertyvaluetypes.28
4.3.5 Graphs.29
©ISO/IEC2024–Allrightsreserved
iii
ISO/IEC39075:2024(en)
4.3.5.1 Introductiontographs.29
4.3.5.2 Graphdescriptors.30
4.3.6 Bindingtables.30
4.4 Values.32
4.4.1 Generalinformationaboutvalues.32
4.4.2 Comparable values.32
4.4.3 Propertiesofdistinctvalues.32
4.4.4 Referencevalues.33
4.4.5 Materialvaluesandthenullvalue.33
4.5 GQL-sessions.33
4.5.1 GeneraldescriptionofGQL-sessions.33
4.5.2 Session contexts.34
4.5.2.1 Introductiontosessioncontexts.34
4.5.2.2 Sessioncontextcreation.35
4.5.2.3 Sessioncontextmodification.35
4.6 GQL-transactions.35
4.6.1 GeneraldescriptionofGQL-transactions.35
4.6.2 Transactiondemarcation.36
4.6.3 Transaction isolation.37
4.6.4 Encompassingtransactionbelongingtoanexternalagent.37
4.7 GQL-requestsandGQL-programs.38
4.7.1 GeneraldescriptionofGQL-requestsandGQL-programs.38
4.7.2 GQL-requestcontexts.38
4.7.2.1 IntroductiontoGQL-requestcontexts.38
4.7.2.2 GQL-requestcontextcreation.38
4.7.2.3 GQL-requestcontextmodification.39
4.7.3 ExecutionofGQL-requests.39
4.7.4 Workingschemareferences.40
4.7.5 Workinggraphsite.41
4.7.6 Executionstack.41
4.7.7 Operations.41
4.8 Execution contexts.42
4.8.1 Generaldescriptionofexecutioncontexts.42
4.8.2 Executioncontextcreationandinitialization.44
4.8.3 Executioncontextmodification.45
4.8.4 Execution outcomes.45
4.9 Diagnosticinformation.46
4.9.1 Introductiontodiagnosticinformation.46
4.9.2 GQL-status objects.46
4.9.3 Conditions.47
4.10 Proceduresandcommands.49
4.10.1 Generaldescriptionofproceduresandcommands.49
4.10.2 Procedures.49
4.10.2.1 Generaldescriptionofprocedures.49
4.10.2.2 Namedproceduredescriptors.50
4.10.2.3 Procedureexecution.50
4.10.2.4 Proceduresclassifiedbykindofsideeffects.50
©ISO/IEC2024–Allrightsreserved
iv
ISO/IEC39075:2024(en)
4.10.3 Commands.51
4.10.4 GQL-procedures.51
4.10.4.1 IntroductiontoGQL-procedures.51
4.10.4.2 Bindingvariablesandgeneralparameters.51
4.10.4.3 Statements.52
4.10.4.4 Statementsclassifiedbyuseofworkinggraphsites.52
4.10.4.5 Statementsclassifiedbyfunction.52
4.11 Graphpatternmatching.53
4.11.1 Summaryofgraphpatternmatching.53
4.11.2 Paths.53
4.11.3 Pathpatterns.54
4.11.4 Graphpatternvariables.55
4.11.5 Referencestographpatternvariables.56
4.11.6 Pathpatternmatching.57
4.11.7 Path modes.58
4.11.8 Selectivepathsearchprefixes.59
4.11.9 Matchmodes.59
4.12 Data types.59
4.12.1 Generalintroductiontodatatypesandbasetypes.59
4.12.2 Majorclassesofdatatypes.60
4.12.3 Datatypedescriptors.62
4.12.4 Namingofdatatypesandbasetypes.62
4.12.5 Material,nullable,andimmaterialdatatypes.63
4.12.6 Mostspecificstaticvaluetypeandstaticbasetype.63
4.12.7 Openandcloseddatatypes.63
4.12.8 Additionalterminologyrelatedtodatatypes.64
4.13 GQL-objecttypes.64
4.13.1 IntroductiontoGQL-objecttypesandrelatedbasetypes.64
4.13.2 Graphtypesandgraphelementtypes.65
4.13.2.1 Introductiontographtypesandgraphelementtypes.65
4.13.2.2 Graphtypedescriptors.65
4.13.2.3 Node types.66
4.13.2.4 Edgetypes.67
4.13.2.5 Property types.68
4.13.2.6 Keylabelsets.69
4.13.2.7 Structuralconsistencyofelementtypes.69
4.13.3 Bindingtabletypes.70
4.14 Dynamicuniontypes.71
4.14.1 Introductiontodynamicuniontypesandthedynamicbasetype.71
4.14.2 Dynamicuniondatatypedescriptors.71
4.14.3 Characteristicsofdynamicuniontypes.71
4.14.4 Dynamicgenerationoftypetestsandcasts.72
4.14.4.1 Introductiontodynamicgenerationoftypetestsandcastsfors.72
4.14.4.2 Dynamicgenerationoftypetestsandstrictcastsforawithoutoperands.72
4.14.4.3 Dynamicgenerationoftypetestsandstrictcastsforawithoperands.73
4.14.4.4 Dynamicgenerationofadditionaltypetestsandlaxcastsfora.75
4.15 Constructedvaluetypes.75
©ISO/IEC2024–Allrightsreserved
v
ISO/IEC39075:2024(en)
4.15.1 Introductiontoconstructedvaluetypesandrelatedbasetypes.75
4.15.2 Pathvaluetypes.76
4.15.3 Listvaluetypes.76
4.15.4 Record types.77
4.16 Predefinedvaluetypes.79
4.16.1 Introductiontopredefinedvaluetypesandrelatedbasetypes.79
4.16.2 Boolean types.81
4.16.3 Characterstringtypes.82
4.16.3.1 Introductiontocharacterstrings.82
4.16.3.2 Collations.83
4.16.4 Bytestringtypes.84
4.16.5 Numerictypes.85
4.16.5.1 Introductiontonumbers.85
4.16.5.2 Characteristicsofnumbers.85
4.16.5.3 Binaryexactnumerictypes.87
4.16.5.4 Decimalexactnumerictypes.88
4.16.5.5 Approximatenumerictypes.89
4.16.6 Temporaltypes.90
4.16.6.1 Introductiontotemporaldata.90
4.16.6.2 Temporalinstanttypes.90
4.16.6.3 Temporaldurationtypes.91
4.16.6.4 Operatorsinvolvingvaluesoftemporaltypes.92
4.16.7 Referencevaluetypes.93
4.16.8 Immaterialvaluetypes:nulltypeandemptytype.94
4.17 Sites.94
4.17.1 Generaldescriptionofsites.94
4.17.2 Staticanddynamicsites.95
4.17.3 Assignmentandstoreassignment.95
4.17.4 Nullability.95
4.17.4.1 Introductiontonullability.95
4.17.4.2 Nullability requirements.96
4.17.4.3 Nullabilityinference.96
5 Notationandconventions.97
5.1 NotationtakenfromTheUnicode®Standard.97
5.2 Notation.97
5.3 Conventions.98
5.3.1 Specificationofsyntacticelements.98
5.3.2 Useofterms.99
5.3.2.1 Syntactic containment.99
5.3.2.2 Keywordsands.100
5.3.2.3 Termsdenotingrulerequirements.100
5.3.2.4 Ruleevaluationorder.100
5.3.2.5 Conditional rules.101
5.3.2.6 Syntactic substitution.102
5.3.3 Descriptors.102
5.3.4 Subclausesusedassubroutines.103
5.3.5 Document typography.103
©ISO/IEC2024–Allrightsreserved
vi
ISO/IEC39075:2024(en)
5.3.6 Index typography.103
5.3.7 FeatureIDandFeatureName.104
6 .105
7 Sessionmanagement.107
7.1 .107
7.2 .111
7.3 .113
7.4 .114
8 Transaction management.115
8.1 .115
8.2 .116
8.3 .117
8.4 .118
9 Procedure specification.119
9.1 .119
9.2 .121
10 Variable definitions.125
10.1 .125
10.2 .127
10.3 .129
11 Object expressions.131
11.1 .131
11.2 .133
11.3 .135
12 Catalog-modifyingstatements.136
12.1 .136
12.2 .137
12.3 .138
12.4 .139
12.5 .142
12.6 .143
12.7 .145
12.8 .146
13 Data-modifyingstatements.147
13.1 .147
13.2 .149
13.3 .154
13.4 .158
13.5 .160
13.6 .162
14 Query statements.163
14.1 .163
14.2 .164
14.3 and.168
14.4 .170
©ISO/IEC2024–Allrightsreserved
vii
ISO/IEC39075:2024(en)
14.5 .173
14.6 .174
14.7 .175
14.8 .177
14.9 .180
14.10 .182
14.11 .185
14.12 .190
15 Procedure calling.199
15.1 and.199
15.2 .201
15.3 .203
16 Common elements.205
16.1 .205
16.2 .206
16.3 .208
16.4 .213
16.5 .219
16.6 .222
16.7 .226
16.8










Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.
Loading comments...