【发布时间】:2013-05-29 18:11:16
【问题描述】:
我正在使用 Gnome 技术编写一个桌面应用程序,并且我达到了 我开始计划语义桌面支持的阶段。
经过大量头脑风暴、草拟想法和模型、写笔记 并阅读了很多关于 RDF 和相关主题的内容,我终于想出了一个 计划草案。
我决定做的第一件事是定义我提供 URI 的方式 资源,这就是我想听听您的建议的地方。
我的程序由两部分组成:
1) 在较低级别上,定义了一个 RDF 模式。这是一套标准的 类和属性,可能由需要更多选项的用户扩展 (使用翻译成 RDF 的定义语言)。
2) 在高层次上,用户使用这些类定义资源,并且 属性。
低层没有问题,因为数据模型是 public:即使用户决定添加新内容,她也非常欢迎 分享它,让其他人的应用程序有更多的功能。问题是 与第二部分。在更高级别,用户定义任务, 会议、约会、计划和时间表。这些可能是私有的,并且 用户可能更喜欢在 URI 中包含任何信息来揭示来源 的信息。
以下是我心中的问题:
1) 我应该使用哪种 URI 方案?我没有网站或任何网络 页面,所以使用 http 没有意义。它似乎也没有 感觉使用任何其他标准 IANA 注册的 URI。我一直 考虑两个选项:使用一些自定义的、我自己的 URI 方案名称 公共资源,并为私有资源使用裸 URN,例如 这个:
urn : random_name_i_made_up : some_private_resource_uuid
但我想知道自定义 URI 方案是否是一个好的决定,我想 愿意听取您的意见:)
2) 如何隐藏私有资源?一方面,它可能非常有用 让 URI 告诉任务来自哪里,尤其是当任务来自 人们之间共享和委托。另一方面,它不 考虑隐私。然后我在想,我可以/应该使用两种不同的 URI 样式取决于用户设置?这会产生一些 不一致。我不知道在这里做什么,因为我没有 使用 URI 的经验。希望你能给我一些建议。
【问题讨论】:
标签: uri rdf language-design ontology privacy