У меня есть XML-файл, который необходимо преобразовать в HTML с использованием кода XSLT
Пожалуйста, обратитесь к XML-файлу:
<?xml version="1.0" encoding="UTF-8"?><Lesson><Title>Merged Words_G1L5</Title><IntroBlock><ParaBlock><RichText>Materials: Exercise books and pencils</RichText></ParaBlock></IntroBlock><Topic><Title>Underlines – 15 minutes</Title><ParaBlock><CustomNote><SimpleBlock><RichText>
<Underline>ACHIEVE</Underline>
Fill in the Blank: go, wear, quiet, bus, I
1. the pupils are _____.
2. My parents are _____.
3. This school is a _____.
4. ____ am very tall.
5. They _____ sandals.</RichText></SimpleBlock></CustomNote></ParaBlock></Topic></Lesson>
Обычно перевод строки () преобразуется в тег <br/>
из моего существующего кода
Существующий код: 1. При проверке перевода строки и заменить тегом <br/>
:
<xsl:template match="text()">
<xsl:param name="text" select="."/>
<xsl:variable name="starttext" select="substring-before(concat($text,' '),' ')" />
<xsl:variable name="nexttext" select="substring-after($text,' ')"/>
<xsl:if test="normalize-space($starttext)">
<xsl:value-of select="$starttext"/>
<xsl:if test="normalize-space($nexttext)">
<br />
</xsl:if>
</xsl:if>
<xsl:if test="contains($text,' ')">
<xsl:apply-templates select=".">
<xsl:with-param name="text" select="$nexttext"/>
</xsl:apply-templates>
</xsl:if>
</xsl:template>
Существующий код: 2. Относится к подчеркиванию:
<xsl:template match="Underline">
<xsl:if test="text() or *">
<u>
<xsl:apply-templates/>
</u>
</xsl:if>
</xsl:template>
Существующий код: 3. Относящийся к форматированному тексту:
<xsl:template match="RichText">
<xsl:if test="text() or *">
<p>
<xsl:apply-templates/>
</p>
</xsl:if>
</xsl:template>
Выше упомянутое упоминание является моим существующимкод. Мне нужно решение для того, как проверить перевод строки () после тега </Underline>
и тега </UnderLine>
под <RichText>
, потому что нормальный сценарий - мой код работает нормально, но вызывается только при </UnderLine>
тег под <RichText>
любым, пожалуйста, предложите, как я могу проверить перевод строки () после тега </UnderLine>
в моем коде ?????.
Текущая проблема: Текущий выпуск
Требуемый выход: Требуемый выход