标签: tei

用html中的xslt创建一个链接到其他html

我有以下xml代码:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-model href="http://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_all.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
<?xml-model href="http://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_all.rng" type="application/xml"
        schematypens="http://purl.oclc.org/dsdl/schematron"?>
<TEI xmlns="http://www.tei-c.org/ns/1.0">
    <teiHeader/>
    <text>
        <head n="3">Capitulo primeyro</head>
        <pb facs="folio16r.jpg"/>
        <div>
            <p>... figurado <app>
                <lem>pollo</lem>
                <rdg wit="#A">pollo</rdg>
                <rdg wit="#B">pello</rdg>
            </app> Parayso ...</p>
            <p> ... <app>
                <lem>sacarõ</lem>
                <rdg wit="#A">sacarõ</rdg>
                <rdg wit="#B">ssaee</rdg>
                </app> ...</p>
        </div>
        <pb facs="folio16v.jpg"/>
        <div>
            <p> .... os fisicos <app>
                <lem>dessesperarom</lem>
                <rdg wit="#A">desseperarom</rdg>
                <rdg wit="#B">desesperõ</rdg>
                </app> ... que assy <app>
                <lem>saa</lem>
                <rdg wit="#A">sooa</rdg>
                <rdg wit="#B">saa</rdg>
                </app> ...</p>
        </div>
    </body>
</text>
Run Code Online (Sandbox Code Playgroud)

使用我的XSL,我已经获得了3个不同的HTML(一个用于A,一个用于B,一个用于引理).我在应用程序的XSL中创建了一个模板:

<xsl:template match="app">
    <xsl:variable name="appNumber" select="count(preceding::app) + 1"/> …
Run Code Online (Sandbox Code Playgroud)

xml xslt hyperlink tei

5
推荐指数
1
解决办法
164
查看次数

沿着日期排序几个XML文件,并使用XSLT将其合并为一个

我有几个单独的XML文件,包含TEI中的历史字母.现在我想将它们合并为一个文件,并以日期作为标准.

A1.xml

<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:id="1">
<teiHeader>
    <title>Letter 1</title>
    <date when="19990202" n="0"></date>
</teiHeader>
<text>
        <p>Content of letter 1</p>
</text>
</TEI>
Run Code Online (Sandbox Code Playgroud)

和第二个文件,A2.xml:

<?xml version="1.0" encoding="UTF-8"?>
    <TEI xml:id="2">
    <teiHeader>
        <title>Letter 1</title>
        <date when="20010202" n="0"></date>
    </teiHeader>
    <text>
            <p>Content of letter 2</p>
    </text>
    </TEI>
Run Code Online (Sandbox Code Playgroud)

第三个,A3.xml:

<?xml version="1.0" encoding="UTF-8"?>
    <TEI xml:id="3">
    <teiHeader>
        <title>Letter 3</title>
        <date when="18880101" n="0"></date>
    </teiHeader>
    <text>
            <p>Content of letter 3</p>
    </text>
    </TEI>
Run Code Online (Sandbox Code Playgroud)

这些文件以连续文件名"A001.xml"到"A999.xml"命名,但不是按所需顺序命名.所以我的首选输出将是单个文件letters.xml:

<?xml version="1.0" encoding="UTF-8"?>
<CORRESPONDENCE>

<TEI xml:id="3">
        <teiHeader>
            <title>Letter 3</title>
            <date when="18880101" n="0"></date>
        </teiHeader>
        <text>
                <p>Content of letter 3</p> …
Run Code Online (Sandbox Code Playgroud)

xml xslt xslt-2.0 tei

4
推荐指数
1
解决办法
617
查看次数

使用 XSLT 将 XML 转换为具有最大宽度的文本

我正在使用 XSLT(XSLT 2.0 很好)将 XML (TEI) 转换为可读的纯文本(有一些小的修改/挑战——为诗歌保留空间;使标题全部大写)。

到目前为止,一切都如我所愿,但为了可读性,我还想将通过此转换输出的一行文本的长度限制为某个值(例如 80 个字符宽),仅在空格处拆分(不要把单词分开,等等)。我想设置输出的最大长度(或者说,80 个字符),不仅仅是输出第一个,比如说,80 个字符。

有没有人对最佳方法有任何建议?模板是否匹配所有内容text()然后使用 XSLT 的内置字符串函数?我试图想象使用字符串函数(string-lengthsubstring或类似的)来做到这一点,但还没有任何运气。

(我可以很容易地使用 python 脚本单独执行此操作,所以也许“事后执行”可能是最好的答案。不过,我很想知道我是否忽略了一个简单的解决方案。)

xml xslt plaintext tei

2
推荐指数
1
解决办法
1236
查看次数

标签 统计

tei ×3

xml ×3

xslt ×3

hyperlink ×1

plaintext ×1

xslt-2.0 ×1