What should a data integration framework for knowledge engineers look like? Recent research on Knowledge Graph construction proposes the design of a fa\c{c}ade, a notion borrowed from object-oriented software engineering. This idea is applied to SPARQL Anything, a system that allows querying heterogeneous resources as-if they were in RDF, in plain SPARQL 1.1, by overloading the SERVICE clause. SPARQL Anything supports a wide variety of file formats, from popular ones (CSV, JSON, XML, Spreadsheets) to others that are not supported by alternative solutions (Markdown, YAML, DOCx, Bibtex). Features include querying Web APIs with high flexibility, parametrised queries, and chaining multiple transformations into complex pipelines. In this paper, we describe the design rationale and software architecture of the SPARQL Anything system. We provide references to an extensive set of reusable, real-world scenarios from various application domains. We report on the value-to-users of the founding assumptions of its design, compared to alternative solutions through a community survey and a field report from the industry.
翻译:知识工程师应如何设计数据集成框架?近期关于知识图谱构建的研究提出了"外观"(façade)的概念,这一概念源自面向对象软件工程。该思想被应用于 SPARQL Anything 系统——通过重载 SERVICE 子句,该系统允许用户使用纯 SPARQL 1.1 语法将异构资源视为 RDF 资源进行查询。SPARQL Anything 支持多种文件格式,既包含常见格式(CSV、JSON、XML、电子表格),也兼容其他替代方案不支持的格式(Markdown、YAML、DOCx、Bibtex)。其功能特性包括:高度灵活地查询 Web API、支持参数化查询,以及将多个转换步骤链接为复杂流水线。本文阐述了 SPARQL Anything 系统的设计理念与软件架构,提供了跨多个应用领域的大量可复用真实场景案例。通过社区调研和行业实地报告,我们报告了其设计基本假设相较于替代方案的用户价值评估结果。