5

我需要使用 URI 引用 Unicode 字符。以下 IANA 参考列出了多个方案和命名空间,但未提及任何有关 Unicode 字符标识符的内容。有谁知道这样的东西是否已经存在?

我希望能找到类似的东西

  • unicode://U+0394
  • urn:unicode://0394
  • http://unicode.org/unicode/0394

为希腊大写字母 delta Δ。

如果有人想知道,这是一个语义网之类的应用程序,它使用 URI 作为概念的标识符,包括 Unicode 字符的概念。

4

3 回答 3

3

恐怕一般来说,没有 URL 或 URN 来引用有关 Unicode 字符的权威信息。在 Unicode 标准中,有关单个字符的信息部分位于所谓的字符数据库(主要是特定格式的纯文本文件)中,部分位于代码图表(PDF 文件)中。它们都没有提供指向单个角色的方法。此外,那里的信息并不详尽:有关于散落在标准周围的个别字符信息的重要注释。

Decodeunicode站点具有单独寻址的项目,例如

http://www.decodeunicode.org/en/u+0394

但其信息内容差异很大,通常非常有限。它不是官方的,目前仅包含 Unicode 5.0。

Fileformat.info网站更加系统化,但它也是非官方的。它基本上仅限于形​​式属性和可从它们派生的数据,以及从代码图表中提取的注释,以及在 Windows 中键入字符的说明,以及有关字体支持的信息——但数量很多!例子:

http://www.fileformat.info/info/unicode/char/0394/

于 2012-07-28T10:49:56.057 回答
1

[编辑]:发现此 URL 符合您的需求:http ://unicode.org/cldr/utility/character.jsp?a=1F40F

.

好吧,有一个 URL 引用了 Unicode 数据库上的权威信息,即使它没有描述(如另一个答案中所说)一个特定字符的所有信息。

您有以下 URL,指向最新的 Unicode 数据库。这是现有有效 Unicode 字符的简单列表。缺少一些即将出现的字符 (㋿),您应该期望它是可变的。

内容如下所示,按原样使用不太实用。

$ grep -ai kangaroo UnicodeData.txt -C 7
1F991;SQUID;So;0;ON;;;;;N;;;;;
1F992;GIRAFFE FACE;So;0;ON;;;;;N;;;;;
1F993;ZEBRA FACE;So;0;ON;;;;;N;;;;;
1F994;HEDGEHOG;So;0;ON;;;;;N;;;;;
1F995;SAUROPOD;So;0;ON;;;;;N;;;;;
1F996;T-REX;So;0;ON;;;;;N;;;;;
1F997;CRICKET;So;0;ON;;;;;N;;;;;
1F998;KANGAROO;So;0;ON;;;;;N;;;;;
1F999;LLAMA;So;0;ON;;;;;N;;;;;
1F99A;PEACOCK;So;0;ON;;;;;N;;;;;
1F99B;HIPPOPOTAMUS;So;0;ON;;;;;N;;;;;
1F99C;PARROT;So;0;ON;;;;;N;;;;;
1F99D;RACCOON;So;0;ON;;;;;N;;;;;
1F99E;LOBSTER;So;0;ON;;;;;N;;;;;
1F99F;MOSQUITO;So;0;ON;;;;;N;;;;;

您可以使用这样的后缀构建一个 hacky “基于哈希”的命名空间,但这绝对是非标准的。

于 2018-12-09T07:41:15.917 回答
1

由于这也被标记为,因此我将尝试选择易于(且永久)取消引用并且不会被误认为描述该字符的文档的 URI:data:方案。这不仅可以指代 Unicode 中的字符,还可以指代任何编码及其任何字符串。

data:;charset=utf-8,%CE%94

尝试打开此 URI 应该会生成一个text/plain包含单个字符作为其内容的文件。

如果系统接受 IRI(就像许多语义 Web 应用程序一样),则可以直接包含字符:

data:;charset=utf-8,Δ

这映射到与上图相同的 URI,您的浏览器可能会直接对其进行转换。在这种情况下,必须指定 UTF-8,因为没有为其他编码定义映射。

于 2021-01-26T15:52:28.953 回答