解决问题的标准:uuid(和其他)?

Ste*_*ini 7 uri resolution

我的应用程序使用urn:uuid作为实体的URI.当然,当我得到有关资源的RDF信息时,被引用的实体(主题或对象)将在urn:uuid模式中包含URI.为了获取新实体的表示,可能是以REST方式,我需要一个"解析器",类似于dx.doi.org的DOIs.另一种情况可能是解析isbn:URI,因此要获得此URI的合理表示.

我的问题是关于URI-to-representation-URL解析的建议标准的相关内容.

lwh*_*who 6

已结束的 IETF URN 工作组也在解决 URN 方面做了一些工作,并就此主题发布了相当多的 RFC。集团章程中包含参考文献列表。也许其中一些对您有帮助。


Ber*_*ben 5

UUID是一个通用的唯一标识符,所以我不知道你怎么能够解决我刚刚生成的uuid(例如3136aa1a-fec8-11de-a55f-00003925d394).

只有在某处管理某个uuids数据库时,才能从中检索更多数据库.或者你必须问每个人/一切"你知道这个uuid吗?"

urn:uuid定义定义了唯一标识符的空白区域.你可以用来定义真正独特的东西.但是,由于没有其他人能够猜出它的价值,你无法从中获取信息.


MZB*_*MZB 5

没有用于解析 URN 的标准(建议的或其他的)。它只是一个名称(统一资源名称)并且可以具有任意含义。

XML/RDF 通过使用确实可以解析的 URN 造成了一些混乱,因为它们碰巧也是 URL(统一资源定位器),指向描述其含义的对象,但这只是一种约定。它们只需要是唯一的并且始终意味着相同的事情。

如果您正在开发应用程序,您可能需要考虑使用 URN,它们也是具有固定含义的项目的可解析 URL,并在 urn:uuid 命名空间中随机生成 URN 来标识对象的实例。

这听起来和 RDF 规范一样令人困惑:-)

快速示例:

Tiger: http://www.example.com/animals/tiger
Instance of a Tiger: urn:uuid:9a652678-4616-475d-af12-aca21cfbe06d
Run Code Online (Sandbox Code Playgroud)

http://www.example.com/animals/tiger可能有一个 HTML 页面,但不一定有。这只是一个约定。

[添加额外说明]

这里的区别在于 URN(名称)和 URL(位置)之间。

URN 只是命名一些东西。它不是任何东西的位置。

URL 是有效的 URN,因此您可以根据需要使用 URN 的 URL。

在上面的示例中,我可以使用http://www.example.com/tigers/9a652678-4616-475d-af12-aca21cfbe06d作为我的老虎的名称。我可以在那个地址放一些东西。但我会在那里放什么?你无法使用 http 下载 Tiger 的实例!

RDF 中的约定是,如果 URN 也是 URL,它将指向一些定义该名称含义的文档。

RDF 试图为您提供一种命名事物的约定,以确保当两个人使用相同的名称时,他们表示相同的事物。UUID 规范允许您为某些内容生成一个唯一的名称,该名称不可能被其他任何东西使用。但这只是一个名字,并没有办法把它变成一个东西。

希望这可以帮助。