我正在研究一个文本,我想通过一个样式表XSLT得到一个特定的函数(具体来说,@ phr function =“inciso”type =“absolute”),只要它后面跟着一个句号。 (@pc)。 如何将此条件放在XSLT样式表上? 以下是样式表XSLT和我创建的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"?>
<?xml-stylesheet type="text/xsl" href="PRUEBA_PUNTOS.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="006">
<pb n="003r"/>
<cb n="b"/>
<head>De <name type="Antropónimo">abel</name> et de su hermano que nascio con el<pc>.</pc></head>
<ab><phr function="inciso" type="absolute">ANdados <phr type="syntagm"
function="copulative">treynta annos & seys dias</phr> de quando el mundo fue
criado</phr><pc>.</pc> <phr function="inciso" type="source" n="luchas y otros">assi como dize
<phr type="syntagm" function="copulative">mahestre <name type="Antropónimo"
>luchas</name> obispo de <name type="place">thuy</name> & otros <phr
function="adjetive" type="restrictive">que acuerdan con el</phr></phr></phr><pc>.</pc>
fizieron <phr type="syntagm" function="copulative"><name type="Antropónimo">adam</name>
& <name type="Antropónimo">eua</name></phr> otro fijo<pc>.</pc> ¶ Et a este segundo fijo
dixieron <name type="Antropónimo">abel</name><pc>.</pc> Et <name type="Antropónimo">abel</name>
<phr function="inciso" type="source" n="esponimientos">segund los esponimientos dela
<name type="book">biblia</name></phr> quiere dezir en el nuestro lenguage
castellano<pc>.</pc> <phr function="comparative" type="name" n="abel">tanto como lloro o cosa
<phr function="adjetive" type="restrictive">que non es duradera</phr></phr><pc>.</pc> ¶ <phr
function="adjetive" type="explanatory">Onde dize otrossi <name type="Antropónimo"
>gregorio</name> enla glosa del <name type="book">genesis</name> sobre este logar<pc>.</pc>
que <phr function="comparative" type="name" n="abel"><name type="Antropónimo"
>abel</name> tanto quiere dezir como baho<pc>.</pc> <phr function="causal">por que <phr
type="sub" function="comparative">assi como el baho <phr type="coord"
function="copulative">se ua ayna & se esparze por ell ayre & non
paresçe</phr></phr></phr></phr></phr><pc>.</pc> <pb n="003v"/>
<cb n="a"/>assi fallescio ayna <name type="Antropónimo">abel</name><pc>.</pc> <phr
function="inciso" type="cataphoric">& fues commo oyredes & non parescio
mas</phr><pc>.</pc> ¶ Et con este <name type="Antropónimo">abel</name> naçio otra hermana de un
parto commo <name type="Antropónimo">cayn</name> et la suya<pc>.</pc> Et esta ouo nombre <name
type="Antropónimo">delbora</name>
<phr function="adjetive" type="restrictive">que muestra <phr function="comparative"
type="name" n="delbora">tanto como seguydora</phr>
<phr function="causal">por que siguio asu hermano <name type="Antropónimo"
>abel</name></phr></phr><pc>.</pc> <phr function="causal">Ca <phr function="inciso"
type="source" n="unos">asi commo dizen unos</phr>
<phr type="sub" function="comparative">uisco poco como el</phr></phr><pc>.</pc> <phr
function="concessive">Pero otros cuentan <phr type="coord" function="copulative">que
uisco mucho<pc>.</pc> & que <phr function="comparative" type="name" n="delbora">tanto
commo seguidora quiere dezir <name type="Antropónimo"
>delbora</name></phr></phr></phr><pc>.</pc> <phr function="adversative">Non <phr
function="causal">por que de muerte ella siguiesse assu hermano</phr><pc>.</pc> mas por quel
siguio <phr type="syntagm" function="copulative">en iusticia & en bondat</phr>
amando a <name type="Antropónimo">dios</name></phr><pc>.</pc> Ca departen que tanto uisco que
alcanço asu hermano <name type="Antropónimo">seth</name><pc>.</pc> que nasçio muchos annos
despues que <name type="Antropónimo">delbora</name><pc>.</pc> & que ella caso con el<pc>.</pc> <phr
function="inciso" type="cataphoric">Et desto diremos adelante</phr><pc>.</pc> </ab>
</div2>
</div1>
</body>
</text>
</TEI>
<?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>INCISO</b>
</h3>
<table width="750" border="1" align="center">
<tr>
<th scope="col" bgcolor="#00CCFF">
<div align="center">Inciso (absoluto)</div>
</th>
</tr>
<tr>
<td>
<xsl:for-each
select="//tei:div1//tei:phr[@function = 'inciso' and @type = 'absolute']">
<div align="center">
<xsl:value-of select="."/>
</div>
</xsl:for-each>
</td>
</tr>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
答案 0 :(得分:0)
我想通过样式表XSLT获得某个函数(特别是@phr函数=&#34; inciso&#34; type =&#34;绝对&#34;)只有在它之后是一个完整的句点(@pc)。如何将此条件放在XSLT样式表上?
apt XPath表达式可能是
count(descendant::tei:pc) > 0
检查当前元素是否有一个或多个<pc>
子元素。在整个xsl:for-each
中,这看起来像
<xsl:for-each select="//tei:div1//tei:phr[@function = 'inciso' and @type = 'absolute' and count(descendant::tei:pc) > 0]">
另一种解释是,如果函数紧跟 <pc>
元素,您只需要一个肯定的结果:
descendant::*[1]=tei:pc
在整个xsl:for-each
中,这看起来像
<xsl:for-each select="//tei:div1//tei:phr[@function = 'inciso' and @type = 'absolute' and descendant::*[1]=tei:pc]">
答案 1 :(得分:0)
如果您希望找到<phr function="inciso" type="absolute">ANdados <phr type="syntagm"
function="copulative">treynta annos & seys dias</phr> de quando el mundo fue
criado</phr><pc>.</pc>
等内容,请使用//tei:div1//tei:phr[@function = 'inciso' and @type = 'absolute' and following-sibling::node()[1][self::tei:pc]
。