Проблема с XSLT, когда исходный XML-документ использует пространство имен по умолчанию - PullRequest
6 голосов
/ 28 августа 2009

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

Когда я удаляю «пространство имен по умолчанию» из исходного XML-документа, преобразование работает как положено.

Вопрос: есть ли способ решить проблему без необходимости редактировать пространство имен по умолчанию из исходного XML-документа? То есть добавьте решение в документ XSLT.

XML-документ:

<MyElement xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xmlns:xsd="http://www.w3.org/2001/XMLSchema"
           xmlns="http://www.zolldata.com/UDX">

где проблемным пространством имен по умолчанию является xmlns = "http://www.zolldata.com/UDX"

1 Ответ

4 голосов
/ 28 августа 2009

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

...