Я хочу создать следующую структуру с XSL:Xsl, Xpath следующие отпрыски Еогеасп
<div class="helloclass">C
<div class="hellomethod"><p>test</p></div>
<div class="hellomethod"><p>test</p></div>
</div>
<div class="helloclass">
</div>
У меня есть следующий XML:
<?xml version="1.0"?>
<hello id="C"></hello>
<hello id="M"></hello>
<hello id="M"></hello>
<hello id="C"></hello>
</xml>
С XSL и Xpath Я попытался следующие:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:foo="http://www.foo.org/" xmlns:bar="http://www.bar.org">
<xsl:template match="/">
<xsl:for-each select="hello">
<xsl:if test="current()[contains(@id,'C')]">
<xsl:for-each select="following-sibling">
<xsl:if test="current()[[email protected],'M']">
<p>Test</p>
</xsl:if>
</xsl:for-each>
</xsl:if>
</xsl:for-each>
</xsl:template>
</xsl:styleshet>
У меня есть структура xml. Для этого xml я хочу создать на основе структуры id.
ID = "C" означает, что он должен быть преобразован в < сНу класс = "helloclass" > ID = "M" означает, что он должен быть преобразован в < сНу класс = "hellomethod" >
Мои Первая цель - показать текст: «тест» в правильных узлах.
Также M должен быть вложен в C и не быть родным братом, как в xml.
Последовательности могут также отображаться: CMMCCMMMC, или CCCCCCCCCCMM, или CM, ... В принципе мне нужно «общее» решение.
XLST 1.0 Процессор доступен только.
Пожалуйста, объясните логику ** словами **. - Заметим также, что вход не является корректным XML (не имеет корневого элемента), что затрудняет запись XSLT, поскольку контекст неизвестен. –
Я попытался объяснить свою проблему. В основном у меня есть проблема с плоской структурой «xml». –
Может быть две или более последовательностей, например. CMMCCMMMC на одном и том же входе? –