Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > XML, XSL > Ошибка в Опере non-whitespace text ...


Автор: abrasum 16.10.2009, 14:23
Имею документ xml-документ:
Код

<?xml version="1.0"?>
<?stylesheet type="text/xsl" href="style.xsl"?>
<supertag>
<tag1>value1</tag1>
<tag2>value2</tag2>
</supertag>


Документ в Опере (версия 10) отражается нормально.
а файл
Код

<?xml version="1.0"?>
<?stylesheet type="text/xsl" href="style.xsl"?>
<supertag xmlns="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:ns="D:\tmp\ns" 
schemaLocal="D:\tmp\ns.xsd"> 
<tag1>value1</tag1>
<tag2>value2</tag2>
</supertag>


не отбражается с ошибкой 

This document had an invalid XSLT stylesheet. Error message from the XSLT engine:
Error: invalid XML output: unexpected text (non-whitespace text outside root element)

В чем может быть проблема? В опере?

Автор: diadiavova 16.10.2009, 16:30
Цитата(abrasum @  16.10.2009,  15:23 Найти цитируемый пост)
This document had an invalid XSLT stylesheet. Error message from the XSLT engine:
Error: invalid XML output: unexpected text (non-whitespace text outside root element)

Документ имеет некорректный XSLT стиль. Сообщение об ошибке от XSLT-движка:

Ошибка: неверный вывод: неожиданный текст(не содержащий пробелов текст за пределами корневого элемента документа)

Попросту говоря: в результате преобразования какой-то текст оказался за пределами корневого элемента, а в XML это недопустимо.

Автор: abrasum 16.10.2009, 16:47
Цитата(diadiavova @ 16.10.2009,  16:30)
Цитата(abrasum @  16.10.2009,  15:23 Найти цитируемый пост)
This document had an invalid XSLT stylesheet. Error message from the XSLT engine:
Error: invalid XML output: unexpected text (non-whitespace text outside root element)

Документ имеет некорректный XSLT стиль. Сообщение об ошибке от XSLT-движка:

Ошибка: неверный вывод: неожиданный текст(не содержащий пробелов текст за пределами корневого элемента документа)

Попросту говоря: в результате преобразования какой-то текст оказался за пределами корневого элемента, а в XML это недопустимо.

Спасибо за перевод, но это ни как не проливает свет на мой вопрос. Почему выдается ошибка,
если в корневой элемент добавить атрибуты:
Код

xmlns:ns="D:\tmp\ns" schemaLocal="D:\tmp\ns.xsd"

?
Я проверил если в корневой элемент добавить только один атрибут (к примеру xmlns) то все работает, но когда добавляешь второй то уже не работает. Вот я хочу выяснитьто ли это опера так обрабатывает текст, то ли это на уровне спецификации XSLT выдается ошибка.

Автор: diadiavova 16.10.2009, 18:45
Цитата(abrasum @  16.10.2009,  17:47 Найти цитируемый пост)
schemaLocal

Я могу ошибаться, но такого атрибута у XMLSchema-instance чойт не припомню. По-моему он называется 
schemaLocation.

И кстати, в переводе немного ошибся, там речь шла не о тексте не содержащем пробелов, а о непробельном тексте, то есть состоящем не только из пробелов(это было бы допустимо)

Автор: skyboy 16.10.2009, 18:56
Цитата(abrasum @  16.10.2009,  15:47 Найти цитируемый пост)
D:\tmp\ns

это не является корректным URI.
возможно, это и есть источник ошибки.
скорее всего, парсер обрабтывает "\t" и "\n" в windows-style нотации пути по сишным правилам - как таблуляцию и символ новой строки.

Добавлено через 3 минуты и 46 секунд
а "non-whitespace", если не путаю, это не "не-пробельный", а "непечатаемый". то есть, не занимающий пространства(whitespace) при печати.

Автор: abrasum 19.10.2009, 09:45
Цитата(skyboy @ 16.10.2009,  18:56)
это не является корректным URI.
возможно, это и есть источник ошибки.
скорее всего, парсер обрабтывает "\t" и "\n" в windows-style нотации пути по сишным правилам - как таблуляцию и символ новой строки.

Добавлено @ 19:00
а "non-whitespace", если не путаю, это не "не-пробельный", а "непечатаемый". то есть, не занимающий пространства(whitespace) при печати.

Именнто так и есть!!! 
Я переформировал URL в вид
file://localhost/D:/tmp/ns
И все заработало!

Автор: skyboy 19.10.2009, 09:56
abrasum, тогда пометь вопрос решенным(ссылка справа вверху над твоим первым сообщением в теме)  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)