我正在研究一个用XML语言标记的旧文本。我想在书中获得正确的名称和他们的确切位置。我得到了对开页(@pb),章节(@ div2),列(@cb),但我无法得到行号( @lb )。它返回一个与实线不对应的数字(31)。我不知道是不是因为路线失败了。我该如何解决? 以下是样式表XSLT和我创建的XML:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
xmlns:tei="http://www.tei-c.org/ns/1.0">
<xsl:output method="html"/>
<xsl:template match="/">
<html lang="es">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
</head>
<body>
<h3 align="center">
<b>Antropónimos</b>
</h3>
<table width="750" border="1" align="center">
<tr>
<th scope="col" bgcolor="#00CCFF">
<div align="center">Nombre</div>
</th>
<th scope="col" bgcolor="#00CCFF">
<div align="center">Libro</div>
</th>
<th scope="col" bgcolor="#00CCFF">
<div align="center">Capítulo</div>
</th>
<th scope="col" bgcolor="#00CCFF">
<div align="center">Folio</div>
</th>
<th scope="col" bgcolor="#00CCFF">
<div align="center">Columna</div>
</th>
<th scope="col" bgcolor="#00CCFF">
<div align="center">Línea</div>
</th>
</tr>
<tr>
<td>
<xsl:for-each select="//tei:div1//tei:name">
<div align="center">
<xsl:value-of select="."/>
</div>
</xsl:for-each>
</td>
<td>
<xsl:for-each select="//tei:div1//tei:name">
<div align="center">
<xsl:value-of select="ancestor::tei:div1/@n"/>
</div>
</xsl:for-each>
</td>
<td>
<xsl:for-each select="//tei:div1//tei:name">
<div align="center">
<xsl:value-of select="ancestor::tei:div2/@n"/>
</div>
</xsl:for-each>
</td>
<td>
<xsl:for-each select="//tei:div1//tei:name">
<div align="center">
<xsl:value-of select="ancestor::tei:div2//tei:pb/@n"/>
</div>
</xsl:for-each>
</td>
<td>
<xsl:for-each select="//tei:div1//tei:name">
<div align="center">
<xsl:value-of select="ancestor::tei:div2//tei:cb/@n"/>
</div>
</xsl:for-each>
</td>
<td>
<xsl:for-each select="//tei:div1//tei:name">
<div align="center">
<xsl:value-of select="ancestor::tei:div2//tei:lb/@n"/>
</div>
</xsl:for-each>
</td>
</tr>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
<?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"?>
<?xml-stylesheet type="text/xsl" href="1.antroponimos_prueba.xsl"?>
<TEI xmlns="http://www.tei-c.org/ns/1.0">
<teiHeader>
<fileDesc>
<titleStmt>
<title>Title</title>
</titleStmt>
<publicationStmt>
<p>Publication Information</p>
</publicationStmt>
<sourceDesc>
<p>Information about the source</p>
</sourceDesc>
</fileDesc>
</teiHeader>
<text>
<body>
<div1 type="book" n="01">
<div2 type="chapter" n="001">
<pb n="001r"/>
<cb n="b"/>
<head>
<hi rend="red">Delas obras que <name type="Antropónimo">dios</name> fizo en los prime<lb
n="31"/>ros <num><pc>.</pc>vj<pc>.</pc></num> dias<pc>.</pc></hi>
</head>
<ab><add place="margin">I</add>
<phr function="time">Quando nuestro sennor <lb n="32"/><name type="Antropónimo"
>dios</name> crio enel comienço <phr type="syntagm" function="copulative">el
çielo<lb n="33"/>et la tierra & todas las cosas <phr function="adjetive"
type="restrictive">que<lb n="34"/>enellos son</phr></phr></phr><pc>.</pc>
<phr function="inciso" type="source" n="moysen">segund quelo cuenta <name
type="Antropónimo">moysen</name>
<phr function="adjetive" type="restrictive">que fue<lb n="35"/><phr type="syntagm"
function="copulative"><phr type="syntagm" function="copulative" n="1">santo</phr>
& <phr type="syntagm" function="copulative" n="2"
>sabio</phr></phr></phr><pc>.</pc> & otros muchos <phr function="adjetive"
type="restrictive">que acordaron con el</phr></phr><pc>.</pc>
<lb n="36"/>departiolo & fizo lo todo en seys dias <phr function="cataphoric"
>desta<lb n="37"/>guisa</phr><pc>.</pc>
<phr function="list">¶ <phr function="list" n="1">El primero dia crio <phr
type="syntagm" function="copulative"><phr type="syntagm" function="copulative"
n="1">la luz</phr><pc>.</pc> & <phr type="syntagm" function="copulative"
n="2">todas<lb n="38"/>las naturas delos angeles buenos et malos<pc>.</pc><lb
n="39"/><phr function="adjetive" type="explanatory">que son las criaturas
spiritales</phr></phr></phr></phr><pc>.</pc> ¶ Et partio<lb n="40"/>esse dia
la luz delas tiniebras<pc>.</pc> Et <phr type="coord" function="copulative">ala luz<lb
n="41"/>
<pb n="001v"/>
<cb n="a"/><lb n="1"/> llamo dia<pc>.</pc> & alas tiniebras
noche</phr><pc>.</pc> ¶ <phr function="list" n="1">El<lb n="2"/> segundo dia <phr
type="coord" function="copulative">fizo el firmamento<pc>.</pc> & partio con
el<lb n="3"/> las aguas de suso delas de deyuso</phr></phr><pc>.</pc> ¶ <phr
function="list" n="4">El terce<lb n="3"/>ro dia ayunto todas las aguas <phr
function="adjetive" type="restrictive">que so el çielo<lb n="5"/> son<pc>.</pc>
<phr function="explicative"><phr type="syntagm" function="copulative">los mares
& las otras aguas dulces</phr><pc>.</pc>
<phr function="explicative"><phr type="syntagm" function="copulative">de<lb
n="6"/> rios & de fuentes</phr></phr></phr></phr><pc>.</pc> & <phr
function="time">quando las aguas fueron <phr type="syntagm" function="copulative"
>a<lb n="7"/>partadas & <phr type="syntagm" function="copulative" n="1"
>ayuntadas en un logar</phr></phr><pc>.</pc> paresçio<lb n="8"/> lo seco que
es dicho tierra<pc>.</pc> Et crio estonçes <name type="Antropónimo">dios</name>
en<lb n="9"/> la tierra <phr type="syntagm" function="copulative">las yeruas
& los aruoles de todas<lb n="10"/> naturas</phr></phr><pc>.</pc> ¶ <phr
function="list" n="4">El quarto alumbro <phr type="syntagm" function="copulative"
>los çielos & la ti<lb n="11"/>erra</phr>
<phr type="syntagm" function="copulative">con el sol & con la luna & con
las estrellas</phr><pc>.</pc><lb n="12"/> & puso las enel
firmamento<pc>.</pc>
<phr type="coord" function="copulative">El sol pora el dia<pc>.</pc><lb n="13"/>
& la luna & las estrellas pora la noche</phr></phr><pc>.</pc> ¶ <phr
function="list" n="5">El<lb n="14"/> quinto dia fizo <phr type="syntagm"
function="copulative">los peçes & las aues de todas<lb n="15"/>
maneras</phr><pc>.</pc> Et <phr type="coord" function="copulative">bendixo los
& dixo que <phr type="coord" function="copulative">creçiessen<lb n="16"/>
& amuchiguassen<pc>.</pc> & enchiessen <phr type="syntagm"
function="copulative">las aguas<lb n="17"/> & la
tierra</phr></phr></phr></phr><pc>.</pc> ¶ El sexto dia crio <phr type="syntagm"
function="copulative">las bestias<lb n="18"/> grandes & las pequennas de todas
naturas</phr></phr><pc>.</pc></phr> ¶ Et<lb n="19"/> esse dia mesmo formo all omne
<phr type="syntagm" function="copulative">a su yma<lb n="20"/> gen & asu
semeiança</phr> que fuesse adelantado & se<lb n="21"/>nnor de todas las otras
criaturas <phr function="adjetive" type="restrictive">que so el cielo
son</phr><pc>.</pc><lb n="22"/>
<add place="margin"> ¶</add>
<phr function="inciso" type="absolute">Et faziendol <phr type="syntagm"
function="copulative">asu ymagen & asu semeiança</phr></phr><pc>.</pc> crio<lb
n="23"/>
<phr type="syntagm" function="copulative">los maslo & fenbra</phr><pc>.</pc>
<phr function="inciso" type="source" n="moysen y iheronimo">assi como lo departen<lb
n="24"/>
<phr type="syntagm" function="copulative"><name type="Antropónimo">moysen</name></phr>
& <phr type="syntagm" function="copulative" n="2"><name type="Antropónimo"
>iheronimo</name></phr></phr> enel primero capitulo<lb n="25"/> del <name
type="book">genesis</name><pc>.</pc>
<phr function="list" n="2">Et <name type="Antropónimo">iosepho</name> otrossi enel
primero<lb n="26"/> dela estoria dela antiguedat delos iudios</phr><pc>.</pc><lb
n="27"/>
<phr function="list" n="final"><add place="margin"> Et</add> otros muchos quelo affirman
con ellos</phr><pc>.</pc> Et desi<lb n="28"/> bendixo los <name type="Antropónimo"
>dios</name> & dixo les <quote type="indirect" source="Dios"><phr type="coord"
function="copulative">que creçiessen &<lb n="29"/> amuchiguassen</phr> &
enchiessen la tierra<pc>.</pc> & quela<lb n="30"/> assennoreassen so el su
poder</quote><pc>.</pc>
<phr function="incise" type="absolute">bendiziendo a<lb n="31"/> ellos</phr><pc>.</pc>
bendixo alas animalias dela tierra<lb n="32"/> en ellos<pc>.</pc> ¶ Et mando que<phr
type="syntagm" function="copulative">los omnes & </phr><lb n="33"
/>animalias<pc>.</pc>
<phr type="coord" function="copulative">comiessen & uisquiessen <phr type="syntagm"
function="copulative">delas yeruas<lb n="34"/> dela tierra & <phr
function="list" n="3">delas simientes della</phr><pc>.</pc> & delas<lb n="35"
/> fruytas delos aruoles</phr></phr><pc>.</pc> ¶ <phr type="syntagm" function="cc"
>Enpos esto to<lb n="36"/>do</phr> cato nuestro sennor <name type="Antropónimo"
>dios</name> todas las cosas <phr function="adjetive" type="restrictive">que<lb n="37"
/> auie fechas</phr>:' & uio que eran muy buenas<pc>.</pc><lb n="38"/>
<add place="margin"> Et</add> fue todo acabado de fazer<pc>.</pc>
<phr type="syntagm" function="atypical">enel sexto di<lb n="39"/> a</phr><pc>.</pc>
<phr function="cataphoric"><phr function="inciso" type="source" n="Moises">Como oyredes
que diz <name type="Antropónimo">moysen</name> adelante</phr></phr><pc>.</pc><lb
n="40"/>
</ab>
</div2>
</div1>
</body>
</text>
</TEI>
答案 0 :(得分:0)
我仍然不确定我是否已经分别了解了您想要的值,但是不能在评论中交换代码我将此尝试作为答案发布:
<td>
<xsl:for-each select="//tei:div1//tei:name">
<div align="center">
<xsl:value-of select="preceding::tei:lb[@n][1]/@n"/>
</div>
</xsl:for-each>
</td>
在https://xsltfiddle.liberty-development.net/nbUY4ky/1给出了结果
<td>
<div align="center"></div>
<div align="center">32</div>
<div align="center">34</div>
<div align="center">8</div>
<div align="center">24</div>
<div align="center">24</div>
<div align="center">25</div>
<div align="center">25</div>
<div align="center">28</div>
<div align="center">36</div>
<div align="center">39</div>
</td>
这是否有正确的数字,当然除了前一个div
的第一个lb
之外?