Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / msxml & namespace, как прикрутить, и что дальше? / 8 сообщений из 8, страница 1 из 1
01.03.2008, 12:06
    #35164821
Eric-S
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
msxml & namespace, как прикрутить, и что дальше?
Никогда не заморачивался с пространством имён. А вот тут потребовалось прочитать xml файл, но из-за namespace я застрял.

Вообще не врубаюсь как указывать намеспейс.
Код: plaintext
1.
2.
3.
xmlDoc.setProperty "SelectionLanguage", "XPath"
xmlDoc.setProperty "SelectionNamespaces", "xmlns:xsl='http://www.gribuser.ru/xml/fictionbook/2.0' xmlns:fb:='http://...' xmlns:default=''"
Set objListOfNodes = xmlDoc.selectNodes("/*")
А главное, как теперь называються нужные мне элементы?

Речь идёт о формате fb2

Вот корневой узел, прямо не знаю, что с ним делать.
Код: plaintext
1.
<FictionBook xmlns="http://www.gribuser.ru/xml/fictionbook/2.0" xmlns:l="http://www.w3.org/1999/xlink">

Я спросил на форуме , и мне ответил автор этого формата, что не помнит, как это делается в msxml. И послал на свой сайт, где я ничего конкретного не нашел.

Надеюсь, на вашу помощь. Объясните, что мне с этим намеспейсом делать?!
...
Рейтинг: 0 / 0
01.03.2008, 17:14
    #35165097
PA
PA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
msxml & namespace, как прикрутить, и что дальше?
Ну вот тут ты назначил для default namespace префикс xsl :
Код: plaintext
xmlDoc.setProperty "SelectionNamespaces", "xmlns:xsl='http://www.gribuser.ru/xml/fictionbook/2.0'"
Этот префикс и надо использовать в xpath запросах:
Код: plaintext
Set objRoot = xmlDoc.selectSingleNode("//xsl:FictionBook")
...
Рейтинг: 0 / 0
01.03.2008, 17:46
    #35165127
Eric-S
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
msxml & namespace, как прикрутить, и что дальше?
Да!? Я оказывается уже, что-то назначил? Искренне удивлён!

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

Я хотел сделать префиксом "fb:". Но все эти параметры для меня совершенно непонятны.

И что у меня теперь все элементы из моего xml будут с префиксами?
...
Рейтинг: 0 / 0
01.03.2008, 17:58
    #35165137
Eric-S
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
msxml & namespace, как прикрутить, и что дальше?
Здорово! Спасибо. Теперь у меня заработало, а это значит, что я понял.
Целый день мучался! А всё было так просто.
...
Рейтинг: 0 / 0
06.03.2008, 11:12
    #35174806
Eric-S
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
msxml & namespace, как прикрутить, и что дальше?
Тут вылезла непонятка.
Даже не знаю, что это ошибка или последствия ошибки.


Мне понадобилось создать узел в этом документе.
Ну я по старой привычке указал имя без префикса, просто "description". В файле у всех моих новых узлов появился атрибут xmlns="".


Я решил, что нужно было просто указать ещё и мой префикс, так и сделал.

Вышло ещё страшнее. У всех моих узлов оказались те же атрибуты, что и у корневого.

И как мне теперь создавать узлы, без лишних атрибутов непонятно.
...
Рейтинг: 0 / 0
06.03.2008, 13:13
    #35175407
Eric-S
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
msxml & namespace, как прикрутить, и что дальше?
Да, забыл ещё добавить, что когда я создаю узел указывая префикс, например fb:description, то именно с таким элемент и создаётся.

попытался удалить атрибуты, но это у меня не получилось.
(Возможно что из-за неправильного пременения метода removeAttrib.)

Выходит, что я не могу создать новый элемент в документе с объявленным пространством имён?
...
Рейтинг: 0 / 0
06.03.2008, 15:14
    #35176020
Eric-S
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
msxml & namespace, как прикрутить, и что дальше?
Отдохнул. Потом открыл яндекс и нашел
http://sql.ru/forum/actualthread.aspx?tid=490392
Очень похоже, но c builder
Ща попробую createNode сделать, только непонятно, что в него подставлять.

Мысль в том, чтоновому элементу нужно как-то задавать пространство имён.
...
Рейтинг: 0 / 0
12.03.2008, 11:21
    #35184446
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
msxml & namespace, как прикрутить, и что дальше?
...
Рейтинг: 0 / 0
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / msxml & namespace, как прикрутить, и что дальше? / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]