powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / простейший XPath запрос.
7 сообщений из 7, страница 1 из 1
простейший XPath запрос.
    #34570323
MrHankey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хочу построить простой запрос XPath который вернёт количество суб-элементов конкретного элемента.

<Parent>
<child>first</child>
<child>second</child>
<child>third</child>
</Parent>

подскажите пжлста. и еще хотелось бы чтоб в запросе можно было ставить условие.

я думаю как то так надо.
/*[local-name()='Parent' and namespace-uri()='']/*[local-name()='child' and namespace-uri()='']

но куда дальше прилепить функцию number() низнаю.
...
Рейтинг: 0 / 0
простейший XPath запрос.
    #34570924
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
count(//Parent/*)
...
Рейтинг: 0 / 0
простейший XPath запрос.
    #34571318
MrHankey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо
...
Рейтинг: 0 / 0
простейший XPath запрос.
    #34571689
Yury Kovshov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Использование '//' - признак непроффессионализма.

Правильно:
count(/Parent/*)
...
Рейтинг: 0 / 0
простейший XPath запрос.
    #34571740
dejavew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yury KovshovИспользование '//' - признак непроффессионализма.

Правильно:
count(/Parent/*)
С точки зрения сравнения адекватности сокращений: '//' и '*' - ничем друг от друга не отличаются, потому что и то, и другое - суть заменители для "правильных" спецификаторов XPath.
Поэтому ваш пример с '/Parent/*' не намного "профессиональнее"...
...
Рейтинг: 0 / 0
простейший XPath запрос.
    #34572411
MrHankey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я и не собирался использовать //

всегда делаю так

/*[local-name()='Parent' and namespace-uri()='']/*[local-name()='child' and namespace-uri()='']
...
Рейтинг: 0 / 0
простейший XPath запрос.
    #34572414
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yury KovshovИспользование '//' - признак непроффессионализма.

Правильно:
count(/Parent/*)

Вообще-то мой запрос соответсвует исходной задаче. Ибо Parent может быть вложен ниже в какой-то ещё элемент.

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


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