2

我正在计划一个结合各种数据源并让用户对这些数据源进行简单查询的系统。系统的一部分需要充当了解所有连接数据源的抽象层:用户不应该[需要]了解底层数据“提供者”。数据提供者可以是任何东西:关系 DBMS、错误跟踪系统、……、气象站。它们通过定义如何“提供”数据的通用 API 连接到查询系统。某个数据提供者理解的查询类型由它的“提议”给出(例如,我知道这些实体,我可以为您提供关系 Y 的 X 类型的聚合,...)。

我现在关心的是数据的统一:不同的数据提供者需要就一个通用的词汇表达成一致(例如,实体“客户”的名称可能因不同的系统而异)。因此,需要定义实体及其关系的高级表示。

到目前为止,我有以下要求:
我需要能够定义对象及其属性/属性。此外,需要表示这些对象之间的任意关系:定义关系性质的动词(例如“知道”)、多重性(例如 1:n)和关系的方向/可导航性。

我突然想到 RDF 是一个可行的选择,但它是这项工作的“正确工具”吗?

对于具有机器可读表示的语义数据建模,确实存在哪些其他解决方案/框架,为什么它们更适合这项任务?

我感谢每一个意见和指向有用资源的指针。

4

2 回答 2

2

我还会考虑 XML 数据库和 xquery,也许还有主题图(与 RDF 非常相似,但鲜为人知)。

还有很多标准化程度较低的工具需要考虑,比如 couchdb(使用 json)。

很少有“正确的工具”,但根据您的要求,RDF 是一个非常强大的竞争者。

于 2010-03-03T21:24:27.647 回答
2

如果您需要对关系进行基数限制(例如“一个人知道 1:n 语言”),那么 RDF 是不够的(参见http://www.w3.org/TR/2004/REC-rdf-primer-20040210/ #richerschemas)。您将需要本体语言(对于大于 1 的基数,至少需要 OWL-DL:http: //www.w3.org/TR/owl-guide/#owl_cardinality

于 2010-04-07T15:51:02.307 回答