Shape Expressions with Inheritance
This work provides a modular and reusable data modeling approach for users of Shape Expressions, but it is incremental as it builds directly on prior ShEx semantics.
The paper tackles the problem of enhancing data modeling flexibility and reuse in the Shape Expressions language by introducing an inheritance mechanism, resulting in a formal extension that maintains existing algorithmic complexity.
We formally introduce an inheritance mechanism for the Shape Expressions language (ShEx). It is inspired by inheritance in object-oriented programming languages, and provides similar advantages such as reuse, modularity, and more flexible data modelling. Using an example, we explain the main features of the inheritance mechanism. We present its syntax and formal semantics. The semantics is an extension of the semantics of ShEx 2.1. It also directly yields a validation algorithm as an extension of the previous ShEx validation algorithms, while maintaining the same algorithmic complexity.