跳转到主要内容

Python的ISO-5426 (MAB2) 和 MARC (USMARC, ANSEL) 编码。

项目描述

Python的ISO-5426 (MAB2) 和 MARC (USMARC, ANSEL) 编码。这些编码用于书目信息系统和OPAC的Z.3950接口。

背景

ISO-5426和USMARC编码是历史编码,目前仍由书目信息系统使用。它们是拉丁编解码器家族的扩展,并实现了类似于UTF-8和解构Unicode (NFD) 形式的可变长度编码。

非ASCII字符以组合字符表示。例如,带重音的a(拉丁小写字母U WITH DIAERESIS)在MAB2编码中写作‘xc8u’,其中‘xc8’是组合重音的符号。与Unicode不同,组合字符以前缀形式编写,而Unicode有组合后缀。

MAB2和MARC编码都支持在字母前面最多两个组合字符,例如,为“xc5xc8u”(拉丁小写字母U WITH DIAERESIS AND MACRON)。

smc.bibencodings实现了对标准的微小偏差,因为它支持从0x00到0x7e的所有字符以及更多的组合字符。该代码已针对多个德国和瑞士OPAC进行测试。

使用方法

您只需在代码中导入“smc.bibencodings”以启用编解码器。

iso-5426, iso5426, mab2:

标准ISO-5426编码

iso-5426-xe0, iso5426-xe0, mab2-xe0:

特殊ISO-5426编码,对0xa4,0xe0-0xff具有特殊身份映射

marc, usmarc, ansel:

MARC编码

>>> import smc.bibencodings
>>> b"Abr\xc2eg\xc2e Historique De L'Origine".decode("mab2")
"Abrégé Historique De L'Origine"

数据源

编码表来自托马斯·贝格的优秀页面 http://www.gymel.com/charsets/chartab.html 以及相关页面。非常感谢!

作者

Christian Heimes

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源代码分发

smc.bibencodings-0.1.zip (63.3 kB 查看哈希)

上传时间 源代码

由以下组织支持