Основные результаты запросов XML XQuery

Я здесь с вопросом, на который, я надеюсь, можно ответить, который действительно довольно глупый и простой.

У меня есть файл авторов в формате:

<authorRoot>
<author>
<info tags on author>
</author>
etc
</authorRoot>

и все, что я хочу сделать, это через FLWOR возвращать список, в котором каждый "автор" и его информация имеют разные значения, поэтому, когда я запускаю запрос, результат должен выглядеть примерно так

1. <author><info>.....</info></author>
2. <author><info>.....</info></author>
etc

и я уверен, что что-то простое должно быть следующим кодом

xquery version "1.0";
for $x in //author
return $x

тем не менее, когда я делаю это, результат запроса выглядит как

1.<author><info>...</info></author><author><info>...</info></author><author><info>...</info></author><author><info>...</info></author><author><info>...</info></author>....etc

Я относительно новичок в XQuery, и я использую AltovaSpy. Я задал схожие базовые вопросы (где у меня есть файл с похожей разметкой, и я использую, по сути, один и тот же код, в результате чего страница результатов xquery имеет несколько значений, а не только одно длинное), но для этого файла это просто не похоже на работу! Что-то с моим кодом я просто не вижу? Или это может быть файл?

Спасибо за ваш вклад в ситуацию.

2 ответа

Решение

Ну, твои рассуждения верны.,

Это просто проблема форматирования, кажется, что Altova печатает всю последовательность в одну строку без разрывов строк.

Вы также можете попробовать это в моем онлайн-тестере XQuery, там вы можете видеть, что последовательность соответствует ожидаемой.

Если вы посмотрите это демонстрационное видео Altova XMLSpy и перейдете к 2:35, вы увидите, как нажатие на одну из кнопок панели инструментов (которая называется "Pretty-print") отформатирует результаты вашего XQuery в виде XML с хорошим отступом.

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