powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / XSD валидация даты
6 сообщений из 6, страница 1 из 1
XSD валидация даты
    #39598709
xsd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xsd
Гость
Код: 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.
procedure test_reg
is
 l_xsd_test varchar2(4000) :=    
  '<xsd:schema targetNamespace="urn:TEST" 
  xmlns="urn:TEST" 
  xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
  xmlns:xdb="http://xmlns.oracle.com/xdb">      
          <xsd:element name="issueDate" type="xsd:dateTime" xdb:SQLType="TIMESTAMP WITH TIME ZONE" form="qualified"/>[
   </xsd:schema>';
BEGIN

DBMS_XMLSCHEMA.registerSchema (
     SCHEMAURL => 'http://test.com/xsd/TEST.xsd'
    ,SCHEMADOC => l_xsd_test
  );
END;

procedure test_validate
is
  l_xml xmltype;                                                                  
  l_txt clob := '<?xml version="1.0" encoding="UTF-8"?>   
   <ns0:issueDate xmlns:ns0="urn:TEST">2018-02-06T12:07:25.141+03:00</ns0:issueDate>';
begin

  l_xml := xmltype(xmlData => l_txt, schema => 'http://test.com/xsd/TEST.xsd');

  l_xml.schemavalidate();
exception
when OTHERS then
  log(sqlerrm);
end;



пытаюсь валидировать дату в формате 2018-02-06T12:07:25.141+03:00
выдает ошибку

ORA-30992: возникла ошибка на Xpath /issueDate[@SYS_XDBBODY$]
ORA-01858: вместо ожидаемой цифры обнаружен нецифровой символ

Код: plaintext
 type="xsd:dateTime" xdb:SQLType="TIMESTAMP WITH TIME ZONE" 
есть

чего ей еще не хватает ?
...
Рейтинг: 0 / 0
XSD валидация даты
    #39598878
Фотография env
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xsd,

Код: plsql
1.
TIME ZONE" form="qualified"/> [


так задумано?
...
Рейтинг: 0 / 0
XSD валидация даты
    #39598905
xsd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xsd
Гость
envxsd,

Код: plsql
1.
TIME ZONE" form="qualified"/> [


так задумано?

нет, это опечатка не в исходном коде, а при постинге на сей форум
просто пытался докинуть тегов, но не вышло, удалил, но один символ затерялся
так что проблема не в этом
...
Рейтинг: 0 / 0
XSD валидация даты
    #39598978
merch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xsd, возьми свой xml, xsd, открой ресурс "валидация xml по xsd online" и посмотри, ок или нет.
Если нет - то тебе явно не на эту ветку форума.
...
Рейтинг: 0 / 0
XSD валидация даты
    #39599077
xsd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xsd
Гость
merchxsd, возьми свой xml, xsd, открой ресурс "валидация xml по xsd online" и посмотри, ок или нет.
Если нет - то тебе явно не на эту ветку форума.

в джаве у меня всё валидируется отлично
...
Рейтинг: 0 / 0
XSD валидация даты
    #39599121
xsd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xsd
Гость
опа....

таки решение само нашлось
https://www.eehelp.com/question/validate-the-xml-datetime-ora-01830-01858/

Код: plsql
1.
ALTER SESSION SET nls_numeric_characters = '.,'



и всё валидируется

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


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