как пространства имен можно прочитать из файла XML с помощью xquery - PullRequest
1 голос
/ 22 июля 2010

Я читаю XML-файлы документа Office 2007, используя xquery.В эти файлы также включены пространства имен.Мне нужно получить узел пространств имен.Я написал xquery для извлечения данных, и он работает нормально, если я удалил пространство имен из исходного XML-файла, иначе набор результатов xquery будет пустым.Хотите знать, как я могу прочитать пространства имен и значения из исходного файла XML, используя xquery 1.0.(Я не уверен, поддерживает ли xquery 1.0 пространства имен, а также мне нужно определить пространства имен в DTD для создания пользовательского выходного XML-файла путем чтения данных из нескольких XML-файлов.

1 Ответ

0 голосов
/ 22 июля 2010

Попробуйте определить пространство имен по умолчанию в прологе XQuery:

declare default element namespace "<namespace-name>";

Пример:

declare default element namespace "http://somewhere.com/foo";

Вы также можете объявить другие пространства имен, чтобы использовать их в запросе:

declare namespace <prefix> = "<namespace-name>";

Пример:

declare namespace foo = "http://somewhere.com/foo";

...