oeuvres/xsl

XSLT-1.0 文本转换包,从 TEI 转换到其他格式,反之亦然。

安装: 146

依赖项: 1

建议者: 0

安全性: 0

星标: 0

关注者: 4

分支: 1

开放问题: 0

语言:XSLT

dev-main 2024-09-26 13:12 UTC

This package is auto-updated.

Last update: 2024-09-26 13:12:25 UTC


README

teinte_xsl 是一个 XSLT-1.0 包,用于将 XML 文本从一种格式转换为另一种格式。核心格式是 TEI 的一个子集,这是一个用于所有文本形式的学术 XML 架构。某些格式具有复杂的打包方式(docx、epub...)。此类聚合需要另一种编程语言进行文件操作或压缩(php、java、python...),但某些结果仅使用 XSLT 即可实现,详见以下浏览器或命令行操作。

Teinte xsl graph

此包与 xsltproc 和其他 XSLT 引擎兼容。已在以下环境中测试:

  • PHP: teinte_php
  • Java: alix
  • Python: 计划为 Python 提供命令行试点,需要支持 teinte_py
  • JavaScript: 在浏览器中直接转换(见下文)
  • Bash: (见下文)

浏览器

所有现代浏览器都内置了 xsltproc 库。这允许在浏览器中直接提供转换。请查看以下位于 Web 服务器上的 示例 XML 文件,你应该看到一个格式良好的戏剧作品,即使它是一个 XML/TEI 源文件

Misanthrope

这种魔法的原理在于文件的 XML 前置信息

<?xml version="1.0" encoding="UTF-8"?>
<!-- Link to a transformation for the browser over https:// -->
<?xml-stylesheet type="text/xsl" href="https://oeuvres.github.io/teinte_xsl/tei_html.xsl"?>

这可以添加到所有 TEI 文件中,以在线提供即时格式化。

离线情况下,出于安全原因,此功能被阻止,例如(以下图片)Google LLC 专有浏览器上的结果和原因。开源 Firefox 浏览器提供了一种绕过此安全设置的解决方案(以下列表)。这种小小的操作只需进行一次,可逆,比通过 Web 的 JavaScript 风险要小得多,但行业对 JS 的兴趣比对 XSLT 的兴趣更大。对于 TEI 编辑器,这允许通过简单的浏览器刷新来查看其 XML 修改的结果。

Google.LLC.Chrome fileuri

  1. Firefox 浏览器,在地址栏中输入 about:config
  2. 接受安全警告
  3. 搜索属性:security.fileuri.strict_origin_policy
  4. 设置为 false

Firefox fileuri

Bash

在 Linux 机器上,或在 Microsoft.Windows 上的 WSL Linux 上安装 xsltproc,并转换您的文件。

sudo apt install xsltproc
cd teinte_xsl
xsltproc tei2html.xsl tests/moliere_misanthrope.xml