Обратитесь к текущему XML-документу в xslt-1.0

Я хочу добавить корень в XML-документ с помощью XSLT и добавить к нему дочерний узел. Для меня это сложно, потому что у меня нет имени XML-документа, когда я делаю XSLT. XSL будет выполняться на разных XML-файлах.

Я видел, как люди добавляют корни в XML-документы следующим образом:

doc.AppendChild(rootNode);

Где «doc» — их XML-документ.

Однако я не знаю, как называется мой XML-документ, поэтому я не могу ссылаться на «doc». Любые идеи?

Кстати, работает в xslt-1.0.

С уважением

редактировать:

Более подробно, когда мы получаем XML-документы, нам нужно запускать для них код xslt. Иногда документы XML пусты (таким образом, корневой элемент пуст), и поэтому нам нужно добавить корневой элемент с дочерним элементом.

Для этого все, что мне сейчас нужно, — это способ сослаться на документ XML внутри кода xslt.

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
31
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Из Спецификация XPath 1.0:

/ selects the document root (which is always the parent of the document element)

Однако это не поможет вам в ситуации, которую вы описываете:

Sometimes the XML documents are empty (thus, they do not have a root element), and therefore, we need to add a root element to it.

потому что документ без корневого элемента не является XML-документом правильного формата и не может быть обработан XSLT.

Большое спасибо за комментарий. Единственное, что есть в моем документе, это <Conversion/> . Но все равно пишет, что корневой элемент пуст. Я могу запустить XSLT на этом XML.

Zebraboard 10.05.2022 12:30

Пустой корневой элемент очень отличается от отсутствия корневого элемента вообще.

michael.hor257k 10.05.2022 12:35

ох ладно... это мой плохой :(

Zebraboard 10.05.2022 12:38

Кажется, это повторение вашего предыдущего вопроса: stackoverflow.com/q/72113053/3016153

michael.hor257k 10.05.2022 12:38

Нет это не так. Я только что объяснил контекст :) Что я хочу выяснить с этим вопросом, так это то, как ссылаться на текущий XML-документ, как вы можете прочитать в заголовке.

Zebraboard 10.05.2022 12:39

Я не могу сказать, что понимаю контекст (вы не опубликовали код). Но, как я уже сказал, вы всегда можете обратиться к текущему XML-документу как /.

michael.hor257k 10.05.2022 12:44

Другие вопросы по теме