Abstract
Knowledge graphs such as Wikidata are created by a diversity of contributors and a range of sources leaving them prone to two types of errors. The first type of error, falsity of facts, is addressed by property graphs through the representation of provenance and validity, making triples occur as first-order objects in subject position of metadata triples. The second type of error, violation of domain constraints, has not been addressed with regard to property graphs so far. In RDF representations, this error can be addressed by shape languages such as SHACL or ShEx, which allow for checking whether graphs are valid with respect to a set of domain constraints. Borrowing ideas from the syntax and semantics definitions of SHACL, we design a shape language for property graphs, ProGS, which allows for formulating shape constraints on property graphs including their specific constructs, such as edges with identities and key-value annotations to both nodes and edges. We define a formal semantics of ProGS, investigate the resulting complexity of validating property graphs against sets of ProGS shapes, compare with corresponding results for SHACL, and implement a prototypical validator that utilizes answer set programming.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Angles, R.: The property graph database model. In: Proceedings of International Workshop on Foundations of Data Management. CEUR, vol. 2100 (2018). http://ceur-ws.org/Vol-2100/paper26.pdf
Angles, R., et al.: G-CORE: a core for future graph query languages. In: Proceedings of SIGMOD, pp. 1421–1432. ACM (2018). https://doi.org/10.1145/3183713.3190654
Angles, R., Thakkar, H., Tomaszuk, D.: Mapping RDF databases to property graph databases. IEEE Access 8, 86091–86110 (2020). https://doi.org/10.1109/ACCESS.2020.2993117
Apache: Gremlin Property Graph Model (2016). https://github.com/tinkerpop/blueprints/wiki/Property-Graph-Model
Corman, J., Florenzano, F., Reutter, J.L., Savković, O.: Validating shacl constraints over a sparql endpoint. In: Ghidini, C., et al. (eds.) ISWC 2019. LNCS, vol. 11778, pp. 145–163. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-30793-6_9
Corman, J., Reutter, J.L., Savković, O.: Semantics and validation of recursive SHACL. In: Vrandečić, D., et al. (eds.) ISWC 2018. LNCS, vol. 11136, pp. 318–336. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-00671-6_19
Deutsch, A., Xu, Y., Wu, M., Lee, V.E.: TigerGraph: a native MPP graph database. CoRR abs/1901.08248 (2019)
Facebook: GraphQL Spec. (2018). https://graphql.github.io/graphql-spec/
Francis, N., et al.: Cypher: an evolving query language for property graphs. In: Proceedings of SIGMOD, pp. 1433–1445. ACM (2018). https://doi.org/10.1145/3183713.3190657
Hartig, O.: Rdf* and sparql*: an alternative approach to annotate statements in RDF. In: Proceedings of ISWC, Posters & Demonstrations and Industry Tracks. CEUR Workshop Proceedings, vol. 1963. CEUR-WS.org (2017). http://ceur-ws.org/Vol-1963/paper593.pdf
Hartig, O., Hidders, J.: Defining schemas for property graphs by using the graphql schema definition language. In: GRADES/NDA@SIGMOD/PODS, pp. 6:1–6:11. ACM (2019). https://doi.org/10.1145/3327964.3328495
ISO/IEC JTC1 SC32 WG3: GQL Standardization Project (2020). https://www.gqlstandards.org/
Knublauch, H.: DASH Reification Support for SHACL (2021). http://datashapes.org/reification.html
Neo4j: Neo4j Constraints (2020). https://neo4j.com/docs/cypher-manual/4.2/administration/constraints/
Neosemantics: Neo4j Neosemantics Validation (2020). https://neo4j.com/labs/neosemantics/4.0/validation/
openCypher: openCypher Project (2020). http://www.opencypher.org/
Oracle: PGQL 1.3 Specification (2020). https://pgql-lang.org/spec/1.3/
Seifer, P., Härtel, J., Leinberger, M., Lämmel, R., Staab, S.: Empirical study on the usage of graph query languages in open source Java projects. In: Proceedings of Software Language Engineering, pp. 152–166. ACM (2019). https://doi.org/10.1145/3357766.3359541
Udrea, O., Recupero, D.R., Subrahmanian, V.S.: Annotated RDF. ACM Trans. Comput. Log. 11(2), 10:1–10:41 (2010). https://doi.org/10.1145/1656242.1656245
Vrandecic, D., Krötzsch, M.: Wikidata: a free collaborative knowledgebase. Commun. ACM 57(10), 78–85 (2014). https://doi.org/10.1145/2629489
W3C: RDF Concepts and Abstract Syntax (2014). https://www.w3.org/TR/rdf11-concepts/
W3C: Shapes constraint language (SHACL) (2017). https://www.w3.org/TR/shacl/
W3C: Shapes expressions language (ShEx) (2019). http://shex.io/shex-semantics/
WESO: Shaclex (2021). https://github.com/weso/shaclex
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Seifer, P., Lämmel, R., Staab, S. (2021). ProGS: Property Graph Shapes Language. In: Hotho, A., et al. The Semantic Web – ISWC 2021. ISWC 2021. Lecture Notes in Computer Science(), vol 12922. Springer, Cham. https://doi.org/10.1007/978-3-030-88361-4_23
Download citation
DOI: https://doi.org/10.1007/978-3-030-88361-4_23
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-88360-7
Online ISBN: 978-3-030-88361-4
eBook Packages: Computer ScienceComputer Science (R0)