sparql - 如何限制在语义网上发布 RDF 图?
问题描述
我正在尝试使用 protege 5.5 创建一个包含一些虚拟数据的示例本体。但是在它生成的 owl 文件中,它显示的是这样的:
<?xml version="1.0"?>
<rdf:RDF xmlns="http://www.semanticweb.org/hs/ontologies/2019/3/untitled-ontology-3#"
xml:base="http://www.semanticweb.org/hs/ontologies/2019/3/untitled-ontology-3"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
<owl:Ontology rdf:about="http://www.semanticweb.org/hs/ontologies/2019/3/untitled-ontology-3"/>
似乎这些数据可以公开访问(http://www.semanticweb.org/hs/ontologies/2019/3/untitled-ontology-3)。我不想在语义网上发布我的数据。有没有办法将这些数据私有化?在网上找不到答案。
解决方案
- 不,仅仅因为 URI 出现在 OWL 或 RDF 文件中并不意味着数据可以公开访问。您计算机上的本地文件只是一个本地文件,直到您将其上传到某处的服务器。
- OWL 和 RDF 主要将 URI 用作标识符——也就是说,作为允许不同程序和人们判断他们是否在谈论同一事物的名称。所以,如果你的本体和我的本体对某个实体使用相同的 URI,我们就知道我们在谈论同一个实体。这并不意味着您的本体或我的本体是可公开访问的,即使我们将这两个本体都保密也可以工作。
- 按照惯例,URI 的所有者可以决定将 URI 用于哪个实体。这样可以确保不会发生意外碰撞。URI 的所有权基于域名。例如,域的所有者
dbpedia.org
(DBpedia 项目)决定http://dbpedia.org/resource/London是一个命名伦敦市的 URI。他们还碰巧在该 URI 上发布了一些关于伦敦的数据,这是让世界知道 URI 标识的内容的好方法。 - Protégé 实际上是网络的坏公民,鼓励人们在他们不拥有的域上使用 URI (
www.semanticweb.org
)。 - 如果您没有域,则可以将
http://example.org/
其用于本地实验和私人使用,因为该域明确允许任何人使用。但是,如果您真的决定在某个时候发布您的本体/数据,那么您应该更改为一个真实的域。
推荐阅读
- python-3.x - 使局部变量成为全局变量
- ruby-on-rails - 使用 ruby on rails (>=6) ORM 的左外连接?
- express - 带生成的 Nuxt 服务器中间件
- c++ - 如何正确使用带有子目录的 automake/autoconf?
- ruby-on-rails - active admin many to many show index PG::UndefinedColumn: ERROR: column cases.product_id does not exist
- javascript - 未捕获的类型错误:无法读取未定义的属性“toLowerCase”(WordPress)
- java - 使用 Spring Data JPA 时如何避免 DETACHED 对象或未初始化的 Hibernate 代理?
- numpy - 如何在 keras lambda 层中使用 tf.py_func 来包装 python 代码。ValueError:应定义 Dense 输入的最后一个维度。没有找到
- java - 应用程序崩溃卡在启动画面上 - 返回按钮显示错误
- css - 如何在 Google Page Speed Insights 中删除“预加载密钥请求错误”