У меня есть XML-файл с 25 элементами. Я просто хочу преобразовать 2 элемента и сохранить оставшийся XML. Может ли кто-нибудь сказать мне, как это сделать. Все примеры онлайн изменяют XML-документ в целом, я не хочу этого. Я просто хочу изменить значения двух элементов.Как изменить небольшую часть XML с помощью XSL
ответ
Практический пример ниже, где я разбираю файл xsd и удаляю из него все аннотации.
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<!-- copy all nodes and attributes -->
<xsl:template match="node() | @*">
<xsl:copy>
<xsl:apply-templates select="node() | @*"/>
</xsl:copy>
</xsl:template>
<!-- but remove annotations -->
<xsl:template match="xs:annotation"/>
Такие задачи решаются с помощью шаблона тождественного преобразования, которое
<xsl:template match="@* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
</xsl:copy>
</xsl:template>
, а затем путем добавления шаблонов для элементов, чтобы быть изменено, например,
<xsl:template match="foo">
<bar>
<xsl:apply-templates select="@* | node()"/>
</bar>
</xsl:template>
изменяет foo
к bar
элементов и/или
<xsl:template match="foobar"/>
удаляет foobar
элементы.
Чтобы дать вам еще один пример, например, если мы хотим скопировать baz
элементов с их содержанием, но хотим добавить new
элемент можно добавить шаблон
<xsl:template match="baz">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
<new>...</new>
</xsl:copy>
</xsl:template>
До тех пор, пока вы сохраняете тождественное преобразование живой (с применением шаблонов) для всего, что вы не хотите менять, вы можете очень хорошо структурировать свою таблицу стилей, написав шаблон для каждого элемента, который нужно изменить.
Спасибо тонну! работает. – Chandu
- 1. Как изменить определенную часть файла XML с помощью XSL.?
- 2. Как изменить значение XML с помощью XSL
- 3. Как отсортировать часть XML-файла с помощью XSL
- 4. Заменить часть строки в XML с помощью XSL
- 5. Как отрезать небольшую часть изображения с помощью ginput?
- 6. Преобразование XML с помощью XSL
- 7. XML Сортировка с помощью XSL
- 8. преобразование XML с помощью XSL
- 9. Преобразование XML с помощью XSL
- 10. Преобразование XML в XML с помощью XSL
- 11. PHP: Как изменить часть XML с помощью DomElement
- 12. преобразования XML в XML с помощью XSL
- 13. ввода вывода XML XML с помощью XSL
- 14. Как редактировать XML с помощью XSL?
- 15. Как удалить элементы xml с помощью xsl?
- 16. как цикл через XML с помощью XSL
- 17. Как изменить XSL без наличия XML?
- 18. изменяет атрибут XML с помощью XSL
- 19. содержание тега Изменить с помощью XSL
- 20. изменить формат XML с XSL или другой
- 21. Как изменить XSL для изменения формата xml
- 22. Показать только небольшую часть изображения
- 23. Как переопределить небольшую часть большого стороннего API?
- 24. Как загрузить только небольшую часть большого файла?
- 25. Преобразование XML с помощью XSL таблицы стилей
- 26. Как создать XML из XML с помощью XSL?
- 27. Как показать XSL-преобразованный XML как часть HTML-страницы?
- 28. Преобразование XMI в XML с помощью XSL
- 29. xslt скопировать часть xml без использования xsl: copy
- 30. XML разбора с помощью XSL без XSL: для-каждого
Как эти два элемента уникально идентифицированы ?, выставить образец xml. – Kristofer
Опубликовать образец XML и что вы хотите, чтобы эти 2 элемента были преобразованы? –