Entities in today's knowledge graphs do not only differ in their property values but also in the schematic structures they are represented by. Given their extraction-based foundation, it is quite common that in practical knowledge base instances totally unrelated graph structures describe entities of the same type. Hence, operators for handling such heterogeneity are mandatory when designing a robust query language for knowledge graphs. While SPARQL does offer optional patterns for this purpose, their query answers often suffer from an unintuitive matching behavior. In contrast, preference semantics seem to be a much more intuitive and still robust way of expressing how the optimal query result may look like. While preferences over data value domains are already applied for graph data, we argue for structural preferences to achieve fine-grained control of heterogeneity in the query answers. Therefore, we propose a new operator for SPARQL, enabling the expression of structural as well as some value preferences. Equipped with a Pareto-style semantics, we give examples of how to model preferences with the new operator. Our prototypical implementation allows for evaluating several encodings of the new construct at DBpedia's SPARQL endpoint.
|