OWL 中的 IRI 和 URI 有什么区别?

Xin*_*LYU 3 uri owl owl-api iri

例子:

http://data.doremus.org/activity/587ae689-790e-3525-9e3a-dac63f449a03
Run Code Online (Sandbox Code Playgroud)

我认为它是一个IRI,也是一个URI。(我对吗?)

我使用 OWL API 来解析它。在“IRI”类中,有一个方法getShortForm(),当我使用它时,我得到“ae689-790e-3525-9e3a-dac63f449a03”。

关于URI,我认为它的本地名称是“587ae689-790e-3525-9e3a-dac63f449a03”。我不太确定。其实我是从别人的博客上知道“土名”这个词的。我在 URI 的结构中找不到“本地名称”,如下所示。

scheme:[//[user[:password]@]host[:port]][/path][?query][#fragment]
Run Code Online (Sandbox Code Playgroud)

所以,我有两个问题:

  1. IRI 的简称是什么?为什么示例的简写形式不是“587ae689-790e-3525-9e3a-dac63f449a03”?

  2. URI 的本地名称是什么?示例的本地名称是什么?

Ign*_*zio 5

IRI 是一种 URI,其字符包含 URI 规范之外的字符。I 代表国际化,因此每个 URI 都是一个 IRI。

IRI 的本地名称只是为了方便。它从 IRI 中的最后一个字符开始,该字符不能成为 XML NCName 的一部分 - 这是由于 XML 语法对有效标记名称的限制。

NCName 不能以数字开头;这就是为什么你会在斜线之后失去三位数。