Гость
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Синтаксис запроса / 10 сообщений из 10, страница 1 из 1
29.03.2010, 18:02
    #36548845
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синтаксис запроса
Есть экселевский xml-файл, в нем узел:
Код: plaintext
<Worksheet ss:Name="Лист1">
Хочу этот узел получить с помощью запроса:
Код: plaintext
doc.selectSingleNode("//Worksheet[@ss:Name = ""Лист1""]")
Ошибку не выдает, но и ничего не возвращает. Так же не подходит и просто @Name. Как правильно сделать запрос по значению атрибута с неймспейсом?
...
Рейтинг: 0 / 0
30.03.2010, 00:45
    #36549465
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синтаксис запроса
Код: plaintext
1.
doc.setProperty( "SelectionNamespaces", "xmlns:ss='your-name-space");
doc.selectSingleNode("//Worksheet[@ss:Name = 'Лист1']")
или
Код: plaintext
doc.selectSingleNode("//Worksheet[@your-name-space:Name = 'Лист1']")

С уважением, Vasilisk
...
Рейтинг: 0 / 0
30.03.2010, 11:23
    #36550006
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синтаксис запроса
_Vasilisk_
Код: plaintext
doc.selectSingleNode("//Worksheet[@your-name-space:Name = 'Лист1']")
С уважением, VasiliskНо ведь именно этот запрос и не работает, вид кавычек роли не играет. Я делал запрос
Код: plaintext
 selectSingleNode("//*[@xmlns=""urn:schemas-microsoft-com:office:office""]")
и получил соответственно ветку <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">.

_Vasilisk_
Код: plaintext
1.
doc.setProperty( "SelectionNamespaces", "xmlns:ss='your-name-space");
doc.selectSingleNode("//Worksheet[@ss:Name = 'Лист1']")

Корневой элемент выглядит так:
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">Несмотря на это я все же поюзал setProperty с параметром "xmlns:ss=""urn:schemas-microsoft-com:office:spreadsheet""", однако и это результата не дало.
...
Рейтинг: 0 / 0
30.03.2010, 12:25
    #36550210
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синтаксис запроса
Разобрался, с кодировкой проблема была. Файл в юникоде, а запрос в 1251 делал, вот "Лист1" и не проходил.
...
Рейтинг: 0 / 0
30.03.2010, 13:29
    #36550395
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синтаксис запроса
Теперь другая проблема.
Код: plaintext
<Table><Row /><Row />…</Table>
Хочу получить последнюю Row, делаю (по образцу ) запрос с уровня таблицы: selectSingleNode("Row[last()]"), пишет:
Неизвестный метод.

Row[-->last()<--]
...
Рейтинг: 0 / 0
30.03.2010, 16:37
    #36550977
Anton_Demin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синтаксис запроса
Antonariy,

position()=last()
...
Рейтинг: 0 / 0
30.03.2010, 17:01
    #36551061
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синтаксис запроса
Теперь:
Код: plaintext
Row[-->position()<--=last()]
...
Рейтинг: 0 / 0
30.03.2010, 17:18
    #36551125
Anton_Demin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синтаксис запроса
Antonariy,

пришли кусок кода, подробнее хотца посмотреть.
...
Рейтинг: 0 / 0
30.03.2010, 18:12
    #36551274
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синтаксис запроса
Пришла тут в голову мысль, что ссылка на последнюю строку a) lastChild б) мне никак не поможет, нужно просто знать их количество. childNodes.length тоже не поможет, потому что перед первой Row может быть произвольное количество Column. selectNodes("Row").length поможет, но мне кажется, это будет медленно.

Jah loves you.
...
Рейтинг: 0 / 0
30.03.2010, 23:28
    #36551710
К
К
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синтаксис запроса
Antonariy,

Какая вообще задача?
Сформулируйте пожалуйста и желательно с исходником.
Или вопрос уже отпал?
...
Рейтинг: 0 / 0
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Синтаксис запроса / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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