							Property Graphs need a Schema

Authors:
	Renzo Angles (U. Talca)
	Angela Bonifati (Lyon 1 University)
	Alberto De Lazzari (Larus)
	George Fletcher (TU Eindhoven)
	Thomas Frisendal (Consultant)
	Brian Hall (Expero)
	Jan Hidders (Vrije Universiteit Brussel)
	Colin Leister (OrientDB)
	Leonid Libkin (U. Edinburgh)
	Wim Martens (U. Bayreuth)
	Filip Murlak (U. Warsaw)
	Dmitry Novikov (Neueda)
	Josh Perryman (Expero)
	Clark Richey (FactGem)
	Mats Rydberg (Neo4j)
	Petra Selmer (Neo4j)
	Juan Sequeda (Capsenta)
	Gabor Szarnyas (Hungarian Academy of Sciences and TU Budapest)
	Dominik Tomaszuk (U. Bialystok)
	Oskar van Rest (Oracle)
	Hannes Voigt (Neo4j)
	Mingxi Wu (TigerGraph)


The Graph Database industry has grown to the point where standardization is appropriate and necessary. From the two main graph models, RDF and Property Graphs, only RDF has a rich history of standardization. Sponsored by the World Wide Web Consortium (W3C), RDF graph standards include schema and ontology languages (RDF Schema, OWL), a query language (SPARQL) and recently a constraint language (SHACL). On the other hand, Property Graphs have grown in an organic way with every Property Graph Database introducing their own query language, for example, Cypher, Gremlin, PGQL, GSQL. The idea of a standalone Property Graph query language to complement SQL was raised by ISO SC32/ WG3 members in early 2017, and is echoed in the GQL manifesto of May 2018 [1]. This process has now started with the GQL standard [2].

Providing a schema model and language for Property Graphs is a key part of the GQL effort to create a fully-featured standard for graph querying.

That is why the authors of this submission, who are members of industry and academia, have come together to create an informal working group: Property Graph Schema Working Group (PGSWG). 

Our position is simple: 

			Property Graphs should have a well-defined schema language 

in order to make the structure of the graph explicit. Furthermore, it is well known that schemas bring numerous advantages, such as allowing the definition of constraints, helping the database optimize queries, allowing data exchange among different data sources and so on.

The PGSWG is inspired by the success of G-CORE [3], a community effort between industry and academia which presented a proposal of the core features that a property graph query language should consider. G-CORE is input to the ongoing GQL standards effort. 

The initial tasks of the PGSWG consist of 
	1) surveying the state of the art and 
	2) understanding use cases and requirements for graph schemas. 

We discuss these two points next.

We need to invest effort in surveying the state of the art, because schemas for graphs are not a new thing. As previously mentioned, RDF graphs have RDF Schema and OWL. Furthermore, there exist schema approaches for Property Graphs implemented by Gremlin, TigerGraph, Cypher for Apache Spark and SQL Server, to name a few. Therefore it is important to understand the landscape of current industry graph schema languages and their overlapping features. 

Even though Graph Databases have gained popularity in the last decade, their history goes back much further. It is important to survey academic literature on graph schemas but also object-oriented database schemas and XML schemas. Much of the academic research focuses on the pros and contras of features in schema languages and therefore serves as a useful guide for their design. Furthermore, the simplified but formal definitions that academics use for their research can serve as a foundation for a formal definition of a full-fledged schema language.

Finally, understanding the use cases and requirements of different personas will help us to identify necessary components of a graph schema language and understand the importance and priority of its features.

The members of the PGSWG have the goal of delivering an academic and industry survey together with a use case and requirement document by the time of this workshop. These deliverables will be the starting point for a design proposal of a Property Graph Schema, which will be input to the GQL standard.

REFERENCES
[1] The GQL Manifesto - One Property Graph Query Language. https://gql.today/
[2] Graph Query Language GQL https://www.gqlstandards.org/ 
[3] G-CORE: A Core for Future Graph Query Languages http://g-core.org/ 