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
Current Stage
9092 - International Standard to be revised
Completion Date
23-Jun-2024
Ref Project

Buy Standard

Standard
ISO/IEC 39075:2024 - Information technology — Database languages — GQL Released:12. 04. 2024
English language
610 pages
sale 15% off
Preview
sale 15% off
Preview
Draft
ISO/IEC FDIS 39075 - Information technology — Database languages — GQL Released:12. 01. 2024
English language
610 pages
sale 15% off
Preview
sale 15% off
Preview

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.
...


International
Standard
FINAL DRAFT
ISO/IEC FDIS
ISO/IEC JTC 1/SC 32
Information technology — Database
Secretariat: ANSI
languages — GQL
Voting begins on:
Technologies de l'information — Langages de base de données — 2024-01-26
GQL
Voting terminates on:
2024-03-22
RECIPIENTS OF THIS DRAFT ARE INVITED TO SUBMIT,
WITH THEIR COMMENTS, NOTIFICATION OF ANY
RELEVANT PATENT RIGHTS OF WHICH THEY ARE AWARE
AND TO PROVIDE SUPPOR TING DOCUMENTATION.
IN ADDITION TO THEIR EVALUATION AS
BEING ACCEPTABLE FOR INDUSTRIAL, TECHNO­
LOGICAL, COMMERCIAL AND USER PURPOSES, DRAFT
INTERNATIONAL STANDARDS MAY ON OCCASION HAVE
TO BE CONSIDERED IN THE LIGHT OF THEIR POTENTIAL
TO BECOME STAN DARDS TO WHICH REFERENCE MAY BE
MADE IN NATIONAL REGULATIONS.
Reference number
ISO/IEC FDIS 39075:2024(en) © ISO/IEC 2024

International
ISO/IEC FDIS 39075:2024(en)
Standard
FINAL DRAFT
ISO/IEC FDIS
ISO/IEC JTC 1/SC 32
Information technology — Database
Secretariat: ANSI
languages — GQL
Voting begins on:
Technologies de l'information — Langages de base de données —
GQL
Voting terminates on:
RECIPIENTS OF THIS DRAFT ARE INVITED TO SUBMIT,
WITH THEIR COMMENTS, NOTIFICATION OF ANY
RELEVANT PATENT RIGHTS OF WHICH THEY ARE AWARE
AND TO PROVIDE SUPPOR TING DOCUMENTATION.
© ISO/IEC 2024
IN ADDITION TO THEIR EVALUATION AS
All rights reserved. Unless otherwise specified, or required in the context of its implementation, no part of this publication may
BEING ACCEPTABLE FOR INDUSTRIAL, TECHNO­
LOGICAL, COMMERCIAL AND USER PURPOSES, DRAFT
be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting on
INTERNATIONAL STANDARDS MAY ON OCCASION HAVE
the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address below
TO BE CONSIDERED IN THE LIGHT OF THEIR POTENTIAL
or ISO’s member body in the country of the requester.
TO BECOME STAN DARDS TO WHICH REFERENCE MAY BE
MADE IN NATIONAL REGULATIONS.
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 Reference number
ISO/IEC FDIS 39075:2024(en) © ISO/IEC 2024

© 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 Dynamicgeneratio
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.