powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / ошибка при распарсе
8 сообщений из 8, страница 1 из 1
ошибка при распарсе
    #39682748
Wisky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Почему то при распарсе не находит запрашиваемого тэга?

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
declare  
  l_clob        clob;  
  OrganizationName  varchar2(30);  
begin    
  l_clob := '<?xml version="1.0" encoding="UTF-8"?>
<Envelope>
    <Body>
        <qfscrl:QFSC xmlns:cat_ru="urn:customers.ru:CommonAggregateTypes:5.8.0" xmlns:qfscrl="urn:customers.ru:Information:SQDocuments:QFSC:5.9.0">
            <qfscrl:Exporter xmlns:cat_ru="urn:customers.ru:CommonAggregateTypes:5.8.0">
                <cat_ru:OrganizationName xmlns:cat_ru="urn:customers.ru:CommonAggregateTypes:5.8.0">456</cat_ru:OrganizationName>               
            </qfscrl:Exporter>
        </qfscrl:QFSC>
    </Body>
</Envelope>';  
  

  select OrganizationName  
  into OrganizationName  
  from xmltable(  
         xmlnamespaces(  
           'http://schemas.xmlsoap.org/soap/qfscrl/' as "qfscrl"  
         ,  'http://schemas.xmlsoap.org/soap/cat_ru/' as "cat_ru"  
         , default 'http://www.fu.gov.si/'  
         )  
       , '/Envelope/Body/qfscrl:QFSC/qfscrl:Exporter'  
         passing xmlparse(document l_clob)  
         columns OrganizationName varchar2(30) path 'OrganizationName'  
       ) ;  
  
  dbms_output.put_line(OrganizationName);  
    
end; 
/
...
Рейтинг: 0 / 0
ошибка при распарсе
    #39682752
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Потому что ты выдумал namespace-ы и не указал его в столбце.
...
Рейтинг: 0 / 0
ошибка при распарсе
    #39682765
Wisky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
namespace не влияет.

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
declare  
  l_clob        clob;  
  OrganizationName  varchar2(30);  
begin    
  l_clob := '<?xml version="1.0" encoding="UTF-8"?>
<Envelope>
    <Body>
        <QFSC>
            <Exporter>
                <OrganizationName>456</OrganizationName>               
            </Exporter>
        </QFSC>
    </Body>
</Envelope>';  
  

  select OrganizationName  into OrganizationName  
  from xmltable(  
         xmlnamespaces(   
          'http://schemas.xmlsoap.org/soap/envelope/' as "env"  
         ,  default 'http://www.fu.gov.si/'  
         )  
       , '/Envelope/Body/QFSC/Exporter'  
         passing xmlparse(document l_clob)  
         columns OrganizationName varchar2(30) path 'OrganizationName'  
       ) ;  
  
  dbms_output.put_line(OrganizationName);  
    
end; 
/
...
Рейтинг: 0 / 0
ошибка при распарсе
    #39682767
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Wiskynamespace не влияет.Чудак, не воинствуй. Убери дичайший default.
...
Рейтинг: 0 / 0
ошибка при распарсе
    #39683110
Wisky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ElicЧудак, не воинствуй. Убери дичайший default.
Спасибо, действительно при удаление default все работает.
Но как заполнять активные namespace

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
declare  
  l_clob        clob;  
  OrganizationName  varchar2(30);  
begin    
  l_clob := '<?xml version="1.0" encoding="UTF-8"?>
<Envelope>
    <Body>
        <qfscrl:QFSC xmlns:cat_ru="urn:customers.ru:CommonAggregateTypes:5.8.0" xmlns:qfscrl="urn:customers.ru:Information:SQDocuments:QFSC:5.9.0">
            <qfscrl:Exporter xmlns:cat_ru="urn:customers.ru:CommonAggregateTypes:5.8.0">
                <cat_ru:OrganizationName xmlns:cat_ru="urn:customers.ru:CommonAggregateTypes:5.8.0">456</cat_ru:OrganizationName>               
            </qfscrl:Exporter>
        </qfscrl:QFSC>
    </Body>
</Envelope>';  
  
  select OrganizationName  
  into OrganizationName  
  from xmltable(  
         xmlnamespaces(  
           'http://XXXXX/' as "qfscrl"  
         ,  'http://XXXXX/' as "cat_ru"  
          
         )  
       , '/Envelope/Body/qfscrl:QFSC/qfscrl:Exporter'  
         passing xmlparse(document l_clob)  
         columns OrganizationName varchar2(30) path 'OrganizationName'  
       ) ;  
  
  dbms_output.put_line(OrganizationName);     
end; 
/
...
Рейтинг: 0 / 0
ошибка при распарсе
    #39683116
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WiskyНо как заполнять активные namespaceНе методом тыка.
Wisky
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
declare  
  l_clob        clob;  
  OrganizationName  varchar2(30);  
begin    
  l_clob := '<?xml version="1.0" encoding="UTF-8"?>
<Envelope>
    <Body>
        <qfscrl:QFSC xmlns:cat_ru="urn:customers.ru:CommonAggregateTypes:5.8.0" xmlns:qfscrl="urn:customers.ru:Information:SQDocuments:QFSC:5.9.0">
            <qfscrl:Exporter xmlns:cat_ru="urn:customers.ru:CommonAggregateTypes:5.8.0">
                <cat_ru:OrganizationName xmlns:cat_ru="urn:customers.ru:CommonAggregateTypes:5.8.0">456</cat_ru:OrganizationName>               
            </qfscrl:Exporter>
        </qfscrl:QFSC>
    </Body>
</Envelope>';  

...
Рейтинг: 0 / 0
ошибка при распарсе
    #39683157
Wisky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Elic, спасибо еще раз.
В columns забыл 'cat_ru:OrganizationName'.
Пойду на w3.org читать, но там английский очень тяжелый.
...
Рейтинг: 0 / 0
ошибка при распарсе
    #39683220
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
SQL> 
  select OrganizationName
  from xmltable(
         xmlnamespaces(
           'urn:customers.ru:Information:SQDocuments:QFSC:5.9.0' as "MyNameSpace1Alias"
         ,  'urn:customers.ru:CommonAggregateTypes:5.8.0' as "MyFavoriteNamespace2"
         )
       , '/Envelope/Body/MyNameSpace1Alias:QFSC/MyNameSpace1Alias:Exporter'
         passing xmltype('<?xml version="1.0" encoding="UTF-8"?>
                          <Envelope>
                              <Body>
                                  <qfscrl:QFSC xmlns:cat_ru="urn:customers.ru:CommonAggregateTypes:5.8.0" xmlns:qfscrl="urn:customers.ru:Information:SQDocuments:QFSC:5.9.0">
                                      <qfscrl:Exporter xmlns:cat_ru="urn:customers.ru:CommonAggregateTypes:5.8.0">
                                          <cat_ru:OrganizationName xmlns:cat_ru="urn:customers.ru:CommonAggregateTypes:5.8.0">456</cat_ru:OrganizationName>
                                      </qfscrl:Exporter>
                                  </qfscrl:QFSC>
                              </Body>
                          </Envelope>')
         columns OrganizationName varchar2(30) path 'MyFavoriteNamespace2:OrganizationName'
       ) ;
ORGANIZATIONNAME
------------------------------
456

SQL> 
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / ошибка при распарсе
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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