如果您参与过一个存储数据以用于语义网的项目,您是否使用 RDF 甚至 OWL 作为内部数据格式,或者您是否拥有映射到 RDF 以实现互操作性的自己的数据模型/本体?
如果您使用 RDF,您在实现诸如循环类层次结构之类的各种事情方面有什么经验?
如果你做你自己的事,它和 RDF/OWL 有什么区别?
最佳答案
我与 HP 的 Jena 团队一起工作(实际上,我本人也为 Jena 做出了贡献),因此在我们的团队中使用 Jena 是一个相当简单的选择。然而,不仅仅是“下一个工作台”的便利,还有更多的原因。语义网的各种标准包含相当多的细节和复杂性,要做到这一点,靠自己并不是一件容易的事。我遇到了许多可下载的本体和其他数据集,例如,不符合 IRI 规范。在一个完全独立的应用程序中,如果您违反标准走捷径可能没有太大关系,但在这种情况下,您首先需要问为什么要使用语义 Web 技术。对我来说,应用程序的 semweb 方法的一个重要值(value)是数据互操作和开放数据链接,在这种情况下,标准一致性非常重要。
我的大部分数据都在一个三元组中,但我确实使用自定义表作为常见查询的索引。如果您提前知道查询模式,那么对于通用的无模式三元组存储来说,一个好的数据库引擎中索引良好的表将是难以匹敌的。
显然,使用 Jena 的一个缺点是它是 Java 特定的。我确实将 Jena 与 jruby 一起使用,但我期待着一个好的原生 Ruby RDF 库(工作是 underway)。当我们处理复杂的富客户端界面时,我还希望在 Javascript 和 Flex 中提供更完整的 RDF/OWL 支持。
伊恩
关于rdf - 对于您的语义 Web 类型应用程序,您是否使用 RDF 或专有模型进行内部表示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/138292/