powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / XPath получить родителя с потомками по условию
6 сообщений из 6, страница 1 из 1
XPath получить родителя с потомками по условию
    #38515292
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть такой примерный XML
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
<?xml version="1.0" encoding="UTF-8"?>
<urlset>
  <url>
    <domainname>aaa</domainname>
  </url>
  <url>
    <domainname>aaa</domainname>
  </url>
  <url>
    <domainname>aaa</domainname>
  </url>
  <url>
    <domainname>bbb</domainname>
  </url>
  <url>
    <domainname>bbb</domainname>
  </url>
  <url>
    <domainname>bbb</domainname>
  </url>
</urlset>



условие domainname='aaa'
нужно получить XML такой конструкции без лишних нодов влючая parent
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
<urlset>
  <url>
    <domainname>aaa</domainname>
  </url>
  <url>
    <domainname>aaa</domainname>
  </url>
  <url>
    <domainname>aaa</domainname>
  </url>



то что я пытаюсь выдаёт все ноды
как вставить такой фильтр ?
спасибо
...
Рейтинг: 0 / 0
XPath получить родителя с потомками по условию
    #38515311
petalvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
michael R,

что-то вроде
Код: xml
1.
url[domainname='aaa']
...
Рейтинг: 0 / 0
XPath получить родителя с потомками по условию
    #38515316
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petalvik
так возращается 3 нода без родителя
...
Рейтинг: 0 / 0
XPath получить родителя с потомками по условию
    #38515338
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml"/>
<xsl:template match="//*[descendant-or-self::*/text()='aaa']">
  <xsl:copy>
    <xsl:copy-of select="@*" />
    <xsl:apply-templates/>
  </xsl:copy>
</xsl:template>
<xsl:template match="text()[.!='aaa']"/>
</xsl:stylesheet>


?
...
Рейтинг: 0 / 0
XPath получить родителя с потомками по условию
    #38515340
petalvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
michael R,

xpath не существует сам по себе, он используется внутри какого-то API для работы с xml. Что именно используется: xslt, какие-то xml-классы языков общего назначения (c#, java), что-то ещё?
Если будет полный контекст, можно будет дать полное решение.
...
Рейтинг: 0 / 0
XPath получить родителя с потомками по условию
    #38515343
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
то есть напрямую в виде единичого нода никак
я просто хотел анулировать использование цикла который пробегает по XmlNodeList

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


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