Dropping a column in composite xmltype table with virtual column
Hello,
i found some interesting behavior. I have a table with xmltype column and a virtual column. If i drop a column, which has an index smaller than the index for the xmltype column, than the virtual column reference for xmltype column is not changed.
select * from v$version;
drop table t_xml purge;
create table t_xml( c1 number,
c2 number,
cxml xmltype,
c3 number,
xmlflag number as (nvl2(cxml,1,0)));
select * from t_xml;
alter table t_xml drop column c2;
select * from t_xml; The 2nd select will result in error:
SQL> select * from v$version;
BANNER
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE 11.2.0.1.0 Production
TNS for IBM/AIX RISC System/6000: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production
SQL> alter table t_xml drop column c2;
Tabelle wurde geändert.
SQL>
SQL> select * from t_xml;
select * from t_xml
FEHLER in Zeile 1:
ORA-00904: "SYS_NC00004$": ungültiger BezeichnerNow the virtual column xmlflag references still the old hidden column for cxml (SYS_NC00004$). It not references the new hidden column, which is now SYS_NC00003$.
I think, it is a bug! Can someone inform oracle? I have no access to metalink.
Hi,
Please try this code:
loop at int_inv into wa_inv.
lv_count = lv_count + 1.
AT END OF posnr. <------- The field you want to sum..
gs_total-posnr = wa_inv-posnr.
gs_total-cov_total = lv_count.
APPEND gs_total TO gt_total.
CLEAR : gs_total,
lv_count,
wa_inv.
ENDAT.
ENDLOOP.
Similar Messages
-
ORA-31061 error while creating XMLType table with virtual column
I'm not calling it frustration ;)
but still... what about this one :
SQL> select * from v$version;
BANNER
Oracle Database 11g Express Edition Release 11.2.0.2.0 - Production
PL/SQL Release 11.2.0.2.0 - Production
CORE 11.2.0.2.0 Production
TNS for 32-bit Windows: Version 11.2.0.2.0 - Production
NLSRTL Version 11.2.0.2.0 - Production
SQL> create table test_virtual of xmltype
2 xmltype store as binary xml
3 virtual columns (
4 doc_id as (
5 xmlcast(
6 xmlquery('/root/@id'
7 passing object_value returning content)
8 as number
9 )
10 )
11 )
12 ;
Table created.Now, on the latest version :
SQL> select * from v$version;
BANNER
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
PL/SQL Release 11.2.0.3.0 - Production
CORE 11.2.0.3.0 Production
TNS for 32-bit Windows: Version 11.2.0.3.0 - Production
NLSRTL Version 11.2.0.3.0 - Production
SQL> create table test_virtual of xmltype
2 xmltype store as binary xml
3 virtual columns (
4 doc_id as (
5 xmlcast(
6 xmlquery('/root/@id'
7 passing object_value returning content)
8 as number
9 )
10 )
11 )
12 ;
passing object_value returning content)
ERROR at line 7:
ORA-00604: error occurred at recursive SQL level 1
ORA-31061: XDB error: dbms_xdbutil_int.get_tablespace_tab
ORA-06512: at "XDB.DBMS_XDBUTIL_INT", line 1002Is there something I should be aware of?
Right now, I'm just evaluating the version so I can't submit any SR.
Thanks for anyone trying to reproduce the issue.Just tested again on a new installation (64-bit server).
It works :
SQL> select * from v$version;
BANNER
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
PL/SQL Release 11.2.0.3.0 - Production
CORE 11.2.0.3.0 Production
TNS for 64-bit Windows: Version 11.2.0.3.0 - Production
NLSRTL Version 11.2.0.3.0 - Production
SQL>
SQL> create table test_virtual of xmltype
2 xmltype store as binary xml
3 virtual columns (
4 doc_id as (
5 xmlcast(
6 xmlquery('/root/@id'
7 passing object_value returning content)
8 as number
9 )
10 )
11 );
Table created
Now I'll try to see what are the differences between the two installations.
Thanks Dan and Marco for looking into this.
Edited by: odie_63 on 2 mai 2012 15:51 -
ORA-00939 when creating XML table with Virtual Columns
Getting error on creating table with VIRTUAL COLUMNS:
Error at Command Line:4 Column:31
Error report:
SQL Error: ORA-00939: too many arguments for function
00939. 00000 - "too many arguments for function"
Without VIRTUAL COLUMNS works fine.
Where to start?
Is it possible to add Virtual Columns after a table is created?
CREATE TABLE TDS_XML OF XMLType
XMLSCHEMA "http://xmlns.abc.com/tds/TDSSchemaGen2.xsd"
ELEMENT "TDSTestData"
VIRTUAL COLUMNS
TESTID AS (
XMLCast(
XMLQuery('declare default element namespace "http://xmlns.abc.com/tds/TDSSchemaGen2.xsd"; /TDSTestData/TestID' PASSING OBJECT_VALUE RETURNING CONTENT) AS VARCHAR2(32)
)SQL*Plus: Release 11.2.0.2.0 Production on Mon Apr 30 20:17:29 2012
Copyright (c) 1982, 2010, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> select * from v$version;
BANNER
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
PL/SQL Release 11.2.0.2.0 - Production
CORE 11.2.0.2.0 Production
TNS for 64-bit Windows: Version 11.2.0.2.0 - Production
NLSRTL Version 11.2.0.2.0 - Production
SQL>victor_shostak wrote:
Figured, Virtual Columns work only for Binary XML.They are only supported, currently, for Binary XML. -
Adding a document to XMLTYPE table with schema
Hi all:
I am doing an example to create a table with a
registered schema associated (in Oracle9ir2), and i am
trying to insert a document that fits to schema into the
table.
The example is very simple:
I have the following schema:
<schema xmlns="http://www.w3.org/2001/XMLSchema">
<element name="items">
<complexType>
<sequence>
<element name="item" type="string" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
</schema>
I succeed in registering the schema:
begin
DBMS_XMLSCHEMA.registerSchema(
'http://localhost/items.xsd',
getDocument('items.xsd'),
TRUE, TRUE, FALSE, FALSE
end;
I succeed in creating a table with this schema:
CREATE TABLE items of XMLType
XMLSCHEMA "http://localhost/items.xsd"
ELEMENT "items";
And i have the following document:
<?xml version="1.0"?>
<items xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://localhost/items.xsd">
<item>Item1</item>
<item>Item2</item>
</items>
But when i try to insert it into the table with:
INSERT INTO items VALUES (XMLTYPE(getDocument('items1.xml')));
(getDocument is exactly the same as in XML Database
Developer's Guid[i]Long postings are being truncated to ~1 kB at this time.truncated mail continuation...
(getDocument is exactly the same as in XML Database
Developer's Guide - Oracle XML DB Release 2 (9.2))
I get:
SQL> INSERT INTO items VALUES (XMLTYPE(getDocument('items1.xml')));
INSERT INTO items VALUES (XMLTYPE(getDocument('items1.xml')))
ERROR at line 1:
ORA-19007: Schema and element do not match
Do you know which is the problem?
I have proved changing the headers of the xml document
and schema in severals way, but it doesn't work.
Could be a problem with Oracle configuration?
Thanks in advance,
Mario Barcala -
ORA-00600 problem when create XMLType table with registerd schema
Hi,
I am using Oracle9i Enterprise Edition Release 9.2.0.4.0 on RedHat Linux 7.2
I found a problem when I create table with registered schema with follow content:
<xs:element name="body">
<xs:complexType>
<xs:sequence>
</xs:sequence>
<xs:attribute name="id" type="xs:ID"/>
<xs:attribute name="class" type="xs:NMTOKENS"/>
<xs:attribute name="style" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="body.content">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="p"/>
<xs:element ref="hl2"/>
<xs:element ref="nitf-table"/>
<xs:element ref="ol"/>
</xs:choice>
<xs:attribute name="id" type="xs:ID"/>
</xs:complexType>
</xs:element>
Does Oracle not support element reference to other element with dot?
For instance, body -> body.content
Thanks for your attention.Sorry, amendment on the schema
<xs:element name="body">
<xs:complexType>
<xs:sequence>
<xs:element ref="body.head" minOccurs="0"/>
<xs:element ref="body.content" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="body.end" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="id" type="xs:ID"/>
<xs:attribute name="class" type="xs:NMTOKENS"/>
<xs:attribute name="style" type="xs:string"/>
</xs:complexType>
</xs:element> -
ORA-00904 on CREATE TABLE with virtual column based on XMLTYPE content
Hello,
this is another one for the syntax gurus...
Trying the following, fails with ORA-00904: "MESSAGE"."GETROOTELEMENT": invalid identifier
CREATE TABLE XML_TEST_VIRT
MSG_TYPE GENERATED ALWAYS AS (MESSAGE.GETROOTELEMENT()) VIRTUAL,
MESSAGE XMLTYPE NOT NULL,
IE906 XMLTYPE DEFAULT NULL
XMLTYPE COLUMN MESSAGE STORE AS SECUREFILE BINARY XML
XMLTYPE COLUMN IE906 STORE AS SECUREFILE BINARY XML
/while this one succeeds
CREATE TABLE XML_TEST_VIRT
MSG_TYPE GENERATED ALWAYS AS (EXTRACT(MESSAGE, '/*').GETROOTELEMENT()) VIRTUAL,
MESSAGE XMLTYPE NOT NULL,
IE906 XMLTYPE DEFAULT NULL
XMLTYPE COLUMN MESSAGE STORE AS SECUREFILE BINARY XML
XMLTYPE COLUMN IE906 STORE AS SECUREFILE BINARY XML
/The GETROOTELEMENT member function of SYS.XMLTYPE is declared as "DETERMINISTIC PARALLEL_ENABLE" so the method getting called is not the problem as the 2nd case proves.
Using the column MESSAGE which is of type XMLTYPE directly seems to be the problem. But the question is "why". The EXTRACT function result is of type XMLTYPE and calling its member works, the column is also of type XMLTYPE yet calling its member fails...
Thanks in advance for any insights on this.
Best Regards
PhilipHmmmm ... I don't know if I should smile or frown with the implication that I am an OO guy :D :D
Most of my colleagues when I started working as a software engineer, treated me as too low-level because of my C background (started doing C in 1985).
In my last job, my colleagues hated my guts because I was asking them to squeeze every bit of performance out of C++ by using STL which is definitely not OO (although C++ is).
My current colleagues treat me as a DB guru (which I most definitely am not) and they overlook/forget the fact that most of them use Java libraries in their projects, that I wrote for them !
I am inclined to believe that I do not fall into any category in the end...
The only thing I am for sure - and I am proud of it - is inquisitive. I want to know everything there is about the tools I use, and so I end up spending hours and hours investigating... (Microsoft found that out the hard way when I filed 16 bug reports in 8 days when Visual C++ 6 came out ! Not that it hurt them though...)
This is where my confession ends (and my working on the XML validator starts...)
Καληνύχτα Marco
Philip (Φίλιππος in Greek)
PS: I did not follow the last solution anyway. I just wanted to verify its operability ;) -
Insertion in Table with Virtual Column
Hi,
I am using 11.1.0.7.0 on Solaris 10.
I created following table:
test@mytest> create table mytest (c1 number, c2 number generated always as (1) virtual);
Table created.
test@mytest> create unique index idx on mytest(c2);
Index created.
test@mytest> insert into mytest values(1);
insert into mytest values(1)
ERROR at line 1:
ORA-00947: not enough values
test@mytest> Why it is not letting me insert into the table, because we cannot insert value in a virtual column?
regards
Edited by: Panicked DBA on Aug 28, 2010 3:59 AMThis works a little bit better but not really as expected:
SQL> select * from v$version;
BANNER
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
PL/SQL Release 11.2.0.1.0 - Production
CORE 11.2.0.1.0 Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production
SQL>
SQL> drop table mytest purge;
Table dropped.
SQL>
SQL> create table mytest (c1 number, c2 number generated always as (1) virtual);
Table created.
SQL> create unique index idx on mytest(c2);
Index created.
SQL> insert into mytest(c1) values(1);
1 row created.
SQL> commit;
Commit complete.
SQL> set null IS_NULL
SQL> select c1, c2 from mytest ;
C1 C2
1It looks like there is a bug if you specify C2 NUMBER data type:
SQL> select * from v$version;
BANNER
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
PL/SQL Release 11.2.0.1.0 - Production
CORE 11.2.0.1.0 Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production
SQL>
SQL> drop table mytestok purge;
Table dropped.
SQL> drop table mytestko purge;
Table dropped.
SQL>
SQL> create table mytestok (c1 number, c2 generated always as (1) virtual);
Table created.
SQL> insert into mytestok(c1) values(1);
1 row created.
SQL> commit;
Commit complete.
SQL> select c1, c2 from mytestok ;
C1 C2
1 1
SQL> select * from mytestok where c2 = 1;
C1 C2
1 1
SQL>
SQL> create table mytestko (c1 number, c2 number generated always as (1) virtual);
Table created.
SQL> insert into mytestko(c1) values(1);
1 row created.
SQL> commit;
Commit complete.
SQL> set null IS_NULL
SQL> select c1, c2 from mytestko ;
C1 C2
1
SQL> select * from mytestko where c2 = 1;
no rows selected
SQL> exit -
How to improve performance of a query that is based on an xmltype table
Dear Friends,
I have a query that is pulling records from an xmltype table with 9000 rows and it is running very slow.
I am using XMLTABLE command to retreive the rows. It is taking upto 30 minutes to finish.
Would you be able to suggest how I can make it faster. Thanks.
Below is the query.....
INSERT INTO temp_sap_po_receipt_history_t
(po_number, po_line_number, doc_year,
material_doc, material_doc_item, quantity, sap_ref_doc_no_long,
reference_doc, movement_type_code,
sap_ref_doc_no, posting_date, entry_date, entry_time, hist_type)
SELECT :pin_po_number po_number,
b.po_line_number, b.doc_year,
b.material_doc, b.material_doc_item, b.quantity, b.sap_ref_doc_no_long,
b.reference_doc, b.movement_type_code,
b.sap_ref_doc_no, to_date(b.posting_date,'rrrr-mm-dd'),
to_date(b.entry_date,'rrrr-mm-dd'), b.entry_time, b.hist_type
FROM temp_xml t,
XMLTABLE(XMLNAMESPACES('urn:sap-com:document:sap:rfc:functions' AS "n0"),
'/n0:BAPI_PO_GETDETAIL1Response/POHISTORY/item'
PASSING t.object_value
COLUMNS PO_LINE_NUMBER VARCHAR2(20) PATH 'PO_ITEM',
DOC_YEAR varchar2(4) PATH 'DOC_YEAR',
MATERIAL_DOC varchar2(30) PATH 'MAT_DOC',
MATERIAL_DOC_ITEM VARCHAR2(10) PATH 'MATDOC_ITEM',
QUANTITY NUMBER(20,6) PATH 'QUANTITY',
SAP_REF_DOC_NO_LONG VARCHAR2(20) PATH 'REF_DOC_NO_LONG',
REFERENCE_DOC VARCHAR2(20) PATH 'REF_DOC',
MOVEMENT_TYPE_CODE VARCHAR2(4) PATH 'MOVE_TYPE',
SAP_REF_DOC_NO VARCHAR2(20) PATH 'REF_DOC_NO',
POSTING_DATE VARCHAR2(10) PATH 'PSTNG_DATE',
ENTRY_DATE VARCHAR2(10) PATH 'ENTRY_DATE',
ENTRY_TIME VARCHAR2(8) PATH 'ENTRY_TIME',
HIST_TYPE VARCHAR2(5) PATH 'HIST_TYPE') b;Based on response from mdrake on this thread:
Re: XML file processing into oracle
For large XML's, you can speed up the processing of XMLTABLE by using a registered schema...
declare
SCHEMAURL VARCHAR2(256) := 'http://xmlns.example.org/xsd/testcase.xsd';
XMLSCHEMA VARCHAR2(4000) := '<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb" xdb:storeVarrayAsTable="true">
<xs:element name="cust_order" type="cust_orderType" xdb:defaultTable="CUST_ORDER_TBL"/>
<xs:complexType name="groupType" xdb:maintainDOM="false">
<xs:sequence>
<xs:element name="item" type="itemType" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="id" type="xs:byte" use="required"/>
</xs:complexType>
<xs:complexType name="itemType" xdb:maintainDOM="false">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="id" type="xs:short" use="required"/>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="cust_orderType" xdb:maintainDOM="false">
<xs:sequence>
<xs:element name="group" type="groupType" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="cust_id" type="xs:short" use="required"/>
</xs:complexType>
</xs:schema>';
INSTANCE CLOB :=
'<cust_order cust_id="12345">
<group id="1">
<item id="1" name="Standard Mouse">100</item>
<item id="2" name="Keyboard">100</item>
<item id="3" name="Memory Module 2Gb">200</item>
<item id="4" name="Processor 3Ghz">25</item>
<item id="5" name="Processor 2.4Ghz">75</item>
</group>
<group id="2">
<item id="1" name="Graphics Tablet">15</item>
<item id="2" name="Keyboard">15</item>
<item id="3" name="Memory Module 4Gb">15</item>
<item id="4" name="Processor Quad Core 2.8Ghz">15</item>
</group>
<group id="3">
<item id="1" name="Optical Mouse">5</item>
<item id="2" name="Ergo Keyboard">5</item>
<item id="3" name="Memory Module 2Gb">10</item>
<item id="4" name="Processor Dual Core 2.4Ghz">5</item>
<item id="5" name="Dual Output Graphics Card">5</item>
<item id="6" name="28inch LED Monitor">10</item>
<item id="7" name="Webcam">5</item>
<item id="8" name="A3 1200dpi Laser Printer">2</item>
</group>
</cust_order>';
begin
dbms_xmlschema.registerSchema
schemaurl => SCHEMAURL
,schemadoc => XMLSCHEMA
,local => TRUE
,genTypes => TRUE
,genBean => FALSE
,genTables => TRUE
,ENABLEHIERARCHY => DBMS_XMLSCHEMA.ENABLE_HIERARCHY_NONE
execute immediate 'insert into CUST_ORDER_TBL values (XMLTYPE(:INSTANCE))' using INSTANCE;
end;
SQL> desc CUST_ORDER_TBL
Name Null? Type
TABLE of SYS.XMLTYPE(XMLSchema "http://xmlns.example.org/xsd/testcase.xsd" Element "cust_order") STORAGE Object-relational TYPE "cust_orderType222_T"
SQL> set autotrace on explain
SQL> set pages 60 lines 164 heading on
SQL> col cust_id format a8
SQL> select extract(object_value,'/cust_order/@cust_id') as cust_id
2 ,grp.id as group_id, itm.id as item_id, itm.inm as item_name, itm.qty as item_qty
3 from CUST_ORDER_TBL
4 ,XMLTABLE('/cust_order/group'
5 passing object_value
6 columns id number path '@id'
7 ,item xmltype path 'item'
8 ) grp
9 ,XMLTABLE('/item'
10 passing grp.item
11 columns id number path '@id'
12 ,inm varchar2(30) path '@name'
13 ,qty number path '.'
14 ) itm
15 /
CUST_ID GROUP_ID ITEM_ID ITEM_NAME ITEM_QTY
12345 1 1 Standard Mouse 100
12345 1 2 Keyboard 100
12345 1 3 Memory Module 2Gb 200
12345 1 4 Processor 3Ghz 25
12345 1 5 Processor 2.4Ghz 75
12345 2 1 Graphics Tablet 15
12345 2 2 Keyboard 15
12345 2 3 Memory Module 4Gb 15
12345 2 4 Processor Quad Core 2.8Ghz 15
12345 3 1 Optical Mouse 5
12345 3 2 Ergo Keyboard 5
12345 3 3 Memory Module 2Gb 10
12345 3 4 Processor Dual Core 2.4Ghz 5
12345 3 5 Dual Output Graphics Card 5
12345 3 6 28inch LED Monitor 10
12345 3 7 Webcam 5
12345 3 8 A3 1200dpi Laser Printer 2
17 rows selected.Need at least 10.2.0.3 for performance i.e. to avoid COLLECTION ITERATOR PICKLER FETCH in execution plan...
On 10.2.0.1:
Execution Plan
Plan hash value: 3741473841
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 24504 | 89M| 873 (1)| 00:00:11 |
| 1 | NESTED LOOPS | | 24504 | 89M| 873 (1)| 00:00:11 |
| 2 | NESTED LOOPS | | 3 | 11460 | 805 (1)| 00:00:10 |
| 3 | TABLE ACCESS FULL | CUST_ORDER_TBL | 1 | 3777 | 3 (0)| 00:00:01 |
|* 4 | INDEX RANGE SCAN | SYS_IOT_TOP_774117 | 3 | 129 | 1 (0)| 00:00:01 |
| 5 | COLLECTION ITERATOR PICKLER FETCH| XMLSEQUENCEFROMXMLTYPE | | | | |
Predicate Information (identified by operation id):
4 - access("NESTED_TABLE_ID"="CUST_ORDER_TBL"."SYS_NC0000900010$")
filter("SYS_NC_TYPEID$" IS NOT NULL)
Note
- dynamic sampling used for this statementOn 10.2.0.3:
Execution Plan
Plan hash value: 1048233240
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 17 | 132K| 839 (0)| 00:00:11 |
| 1 | NESTED LOOPS | | 17 | 132K| 839 (0)| 00:00:11 |
| 2 | MERGE JOIN CARTESIAN | | 17 | 131K| 805 (0)| 00:00:10 |
| 3 | TABLE ACCESS FULL | CUST_ORDER_TBL | 1 | 3781 | 3 (0)| 00:00:01 |
| 4 | BUFFER SORT | | 17 | 70839 | 802 (0)| 00:00:10 |
|* 5 | INDEX FAST FULL SCAN| SYS_IOT_TOP_56154 | 17 | 70839 | 802 (0)| 00:00:10 |
|* 6 | INDEX UNIQUE SCAN | SYS_IOT_TOP_56152 | 1 | 43 | 2 (0)| 00:00:01 |
|* 7 | INDEX RANGE SCAN | SYS_C006701 | 1 | | 0 (0)| 00:00:01 |
Predicate Information (identified by operation id):
5 - filter("SYS_NC_TYPEID$" IS NOT NULL)
6 - access("SYS_NTpzENS1H/RwSSC7TVzvlqmQ=="."NESTED_TABLE_ID"="SYS_NTnN5b8Q+8Txi9V
w5Ysl6x9w=="."SYS_NC0000600007$")
filter("SYS_NC_TYPEID$" IS NOT NULL AND
"NESTED_TABLE_ID"="CUST_ORDER_TBL"."SYS_NC0000900010$")
7 - access("SYS_NTpzENS1H/RwSSC7TVzvlqmQ=="."NESTED_TABLE_ID"="SYS_NTnN5b8Q+8Txi9V
w5Ysl6x9w=="."SYS_NC0000600007$")
Note
- dynamic sampling used for this statement----------------------------------------------------------------------------------------------------------
-- CLEAN UP
DROP TABLE CUST_ORDER_TBL purge;
exec dbms_xmlschema.deleteschema('http://xmlns.example.org/xsd/testcase.xsd'); -
Problem in select of xmltype table
Hi,
i have a xmltype table with an object type/atrribute of datatype CLOB. When i now do a query i get the error ORA-22835 - what's going wrong? The datatype of the source attribute and the declared variable is CLOB.
DECLARE
vFoto CLOB;
BEGIN
SELECT SUBSTR(pe.foto_pass, 1, 100) INTO vFoto
FROM fp_epass_pass_antraege pa
, XMLTABLE('/PassAntrag'
PASSING pa.sys_nc_rowinfo$
COLUMNS antrag XMLTYPE PATH '/PassAntrag/Antrag'
, person XMLTYPE PATH '/PassAntrag/Person') paan
, XMLTABLE('/'
PASSING paan.antrag
COLUMNS uuid VARCHAR2(38) PATH 'UUID') an
, XMLTABLE('/'
PASSING paan.person
COLUMNS foto_pass CLOB PATH 'FotoPass') pe
WHERE an.uuid = '84239536904120131828493266953553299522';
END;Many thanks in advance.
Regards,
MartinHi Odie,
i thoght taht's a PL/SQL problem ;-)
Versions:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
PL/SQL Release 11.2.0.2.0 - Production
CORE 11.2.0.2.0 Production
TNS for IBM/AIX RISC System/6000: Version 11.2.0.2.0 - Production
NLSRTL Version 11.2.0.2.0 - Production
<?xml version="1.0" encoding="ISO-8859-15" standalone='no'?>
<PassAntrag>
<Antrag>
<UUID>53075802924980786961041180181729965505</UUID>
<DocTyp>ID</DocTyp>
<Antragsgrund>EAN</Antragsgrund>
<AntragDatum>06.02.2013</AntragDatum>
<AntragOrt/>
</Antrag>
<Person>
<Name>Zillweger</Name>
<Vorname>Michel</Vorname>
<Geburtsdatum>16.06.1964</Geburtsdatum>
<Geschlecht>M</Geschlecht>
<Passtitel/>
<Groesse>178</Groesse>
<Strasse>Riverside Ave</Strasse>
<Hausnummer>4</Hausnummer>
<PLZ>23413454</PLZ>
<Ort>New York</Ort>
<LandIso316613>USA</LandIso316613>
<Telefon>2314132413</Telefon>
<Email/>
<Versand>EDA</Versand>
<Lieferadresse>Switzerland Embassy , United States
20008-3499
Washington DC
District of Columbia
USA</Lieferadresse>
<BesKennz/>
<NameVornameVater>Zillweger André</NameVornameVater>
<LedNameVornameMutter>Voirol Odile</LedNameVornameMutter>
<NameVornameEhepartner>Zillweger Françoise</NameVornameEhepartner>
<NameVornameVertreter/>
<FotoID></FotoID>
<FotoPass xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
<SignID>LzlqLzRBQVFTa1pKUmdBQkFnQUFBUUFCQUFELzJ3QkRBQWdHQmdjR0JRZ0hCd2NKQ1FnS0RCUU5EQXNMREJrU0V3OFVIUm9mSGgwYUhCd2dKQzRuSUNJc0l4d2NLRGNwTERBeE5EUTBIeWM1UFRneVBDNHpOREwvMndCREFRa0pDUXdMREJnTkRSZ3lJUndoTWpJeU1qSXlNakl5TWpJeU1qSXlNakl5TWpJeU1qSXlNakl5TWpJeU1qSXlNakl5TWpJeU1qSXlNakl5TWpJeU1qTC93QUFSQ0FEWkFrOERBU0lBQWhFQkF4RUIvOFFBSHdBQUFRVUJBUUVCQVFFQUFBQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTC84UUF0UkFBQWdFREF3SUVBd1VGQkFRQUFBRjlBUUlEQUFRUkJSSWhNVUVHRTFGaEJ5SnhGREtCa2FFSUkwS3h3UlZTMGZBa00ySnlnZ2tLRmhjWUdSb2xKaWNvS1NvME5UWTNPRGs2UTBSRlJrZElTVXBUVkZWV1YxaFpXbU5rWldabmFHbHFjM1IxZG5kNGVYcURoSVdHaDRpSmlwS1RsSldXbDVpWm1xS2pwS1dtcDZpcHFyS3p0TFcydDdpNXVzTER4TVhHeDhqSnl0TFQxTlhXMTlqWjJ1SGk0K1RsNXVmbzZlcng4dlAwOWZiMytQbjYvOFFBSHdFQUF3RUJBUUVCQVFFQkFRQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTC84UUF0UkVBQWdFQ0JBUURCQWNGQkFRQUFRSjNBQUVDQXhFRUJTRXhCaEpCVVFkaGNSTWlNb0VJRkVLUm9iSEJDU016VXZBVlluTFJDaFlrTk9FbDhSY1lHUm9tSnlncEtqVTJOemc1T2tORVJVWkhTRWxLVTFSVlZsZFlXVnBqWkdWbVoyaHBhbk4wZFhaM2VIbDZnb09FaFlhSGlJbUtrcE9VbFphWG1KbWFvcU9rcGFhbnFLbXFzck8wdGJhM3VMbTZ3c1BFeGNiSHlNbkswdFBVMWRiWDJObmE0dVBrNWVibjZPbnE4dlAwOWZiMytQbjYvOW9BREFNQkFBSVJBeEVBUHdEMytpaWlnQW9vb29BS0tLS0FDaWlpZ0Fvb29vQUtLS0tBQ2lpaWdBb29vb0FLS0tLQURvS2htdW9MZUNXZWVWSW9JbEx5U3lIYWlLQmtzU2VBQUIxcmovaU44UUxmd0xvOGNnakZ4cUY1dVcwaEtrb1NvRzVtSS9oRzVlT3B5QjZrZU1XZWgrTi9qUHFhWDJvUytUcGtaSml1SllXU0NOR2ZETENvKyszRGNrL3dBTXcrVTBBZXkyM3hmOENYVndrRWV1cUhkd2dNbHRNaTVQY3N5QUFlNUlBNzEzQU9hOEs4Wi9CN3czNGI4RlgrcFcxM2VpNXRjTWozTWdLdnVaQjViQlU2ZGNjRGwvbU9QdTlaOERwTHh2aDc1ZDE1bmxSWGtxV3hkTm9NZUZZNE9QbUc5cE9jbm5JenhnQUhwTkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGRkZGQUJXUDRrOFI2WjRZMFdYVXRVdVBKaFg1VVZlWkpIT2NJZzdzY0hqMkpPQUNScmtnZFNCM3I1aThjNnZxL3hPK0l6Nk5vaG5uMDZHUllJQkh2ZUViV0t0Y3NFTEx0M09mM21QdWJlTTlRQ0xROUUxYjQxK1BiN1U3NjRrZzA2SmxNNUxCekJDeFBsd1JqR004SG5HUHZNY2s0UDAvYjI4VnJieHdRUnBIREdvU09ORkNxaWdZQUFIQUFBNlZuK0hkQnNQRE9nMm1qNmFqcmEycWJVOHh0ekhKTEVrK3BKSjQ0NTRBSEZhbEFIbmZ4Ymx1YnJSTERRclFTTlBxVjJxN0ZDNGtWU01LUzNUNXloei9zbmtWMldnYVZEb2VnV09sd2JObHJDc1pLSnNETUJ5MjNuQkp5VHllU2VUMXE4OXZCSk5GTThNYlN4Wjh0MlVGa3lNSEI3WnFRREF3T2xBQlJSUlFBVVVVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJWSFY5U2gwalJyM1VwdzdRMmNFbHhJc2VOeFZGTEVESkF6eDNJb0E4citPL2paOUswdVB3dFpFTGRhbEZ2dUpBV0RSdzdzQURBd2Q1VmxQUFFFRWZOa2F2d2Q4Qy84STE0YUYvcU5uNU9zMytXazN4NGtpaHo4c2ZKT004T2VGT1NBd3l0ZWMrR05QdS9peDhXYnJXcjkydU5Gc1poTVk3Z3J4Q1N6UVFCTUVFSGI4Mk9DQStUa2duNlRvQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVWhPS1U5SzhtK0xIeExrOE93eTZEcFJ6cXNzWDc2WFBFRWJxdzRaWERKS1BsWVpIUWc5NkFQVnc0SndNZE05YWRYekw4RHRRMUMxK0lTV2RzcnRhWGNFZ3VsRzRoVlVGbGM4NEJEYlZERWZ4a2RXcjZhb0FLS0tLQUNpaWlnQW9vb29BS0tLS0FDaWlpZ0Fvb29vQUtLS0tBQ2lpaWdBb29vb0FLS0tLQUNpaWlnQW9vb29BS0tLS0FDaWszRDE5cXFhaHErbTZUYkM1MUxVTFd6Z1p3Z2x1WmxqVXRnbkdXSUdjQW44S0FMRTg4VnJieVhFOHFSUXhLWGVTUmdxb29HU1NUMEFIZXZQYno0MitFYkxXbjA1M3U1RlNYeTJ1NFl3MEh1UWM1SUhxQWM0NHlNR3ZQOEE0cWZGZTExcTFoMG53NWZ5U1dMQXZjM0VmbVJNL0RLWWlyQmNwZzVPY2c1SFRhYzhEWndQNHgxSFJ2RG1pYVZCYjNPWkJMY1NTNWFlUTRMdXpZRzFGVk1oUUNSZzQzTWFBUHIrM3VJYnFDT2Uza1NXR1JROGNpTUdWMUl5R0JIQkJIZXBhcDZYcDhlazZYWjZkQThqUVdrQ1FSdElRV0lWUW9KSUE1d093RlhLQUNpaWlnQW9vb29BS0tLS0FDaWlpZ0Fvb29vQUtLS0tBQ2lpaWdBb29vb0FLS0tLQUNpaWlnQXJ3ejQvK0xiZGJHMThNV3M1YTZNbjJpOFdLVWpZaXI4aU9BTUhjU0d3VHhzVTQ1QnIydSt2cmZUYkc0dmJ1UXgyMXZFMDBzbTBrS2lnbGp4endBYStiL0J1bm40dC9GcTkxN1U3VVFXVUpTNmxoUlBNamZac1dLRml3d2NxdVR4ODIxc0FaNEFQWC9oUDRVbDhLZUJMVzJ1ZzZYbDB4dTU0MjQ4dG5VQUxnZ0VFS0Z5RC9GdTU2VjNOSUJqclMwQUZGRkZBQlJSU0ZnQ00wQUxSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVoSUZBR0Q0eDhWV3ZnL3dBT1hHcjNTZWFJOEpGQUhDdE5JeHdxalA0azljQUU0T0s4QTBHdzhydy9ySHhJMTJiL0FFa3l1Tk15dmx2TGZGd3l6QVpWV1ZXejh1R0hFbkh5NE92NC93Qld2L2lIOFRiZndaWXp4clkyMTRZMWFOV0IzQkI1ck9HWUs1ajJTNHhqaklHY2cwdnhjdW9OT3R0RStIT2lXaVRXOW9zVW1Jc1BNMHAzS3FsVkgzanUzbmpMRjFQR2VRRGYrQW5obnlOTnVmRTg2anpMek1GcmpvSWxQemtZUDhUcUJ5QVI1ZWVqVjdQV1I0WTBHTHd6NGNzZEhnY1NKYXhoVElGMitZeDVac1pPTXNXT004WnJYb0FLS0tLQUNpaWlnQW9wQ1FDQWUvU3ZOby9qUG9OMTRyc2RIMDIzdWIyRzZuV0UzYXJzVldjZ0x0VS9NdzNIRFoyNEFKRzZnRDBxaWtWZzJjZHFXZ0Fvb29vQUtLS0tBQ2lpaWdBb29vb0FLS0tLQUNpaWlnQW9vb29BS0tLQ2NEcFFBSG9hOC84QUhYeFowZndWUDloOGlUVU5TMkJqYnhPRldMSkdCSXg1VWtFa0FBbmpuQUlOY1o4ZFBIS0NNZUZOT2FaYmxaRWx2SkFTaWdiZHl4LzdXZHl0bm9NREdUbmJMOE92Z3ZOYVhVT3QrTEZqa3VGTW8vc3lVTE1wemtCcEd5eXR3V09Cbm5hZDNHS0FNZytKdmlqOFJybkdpd1hHbDZWY2pDVFFMNU1hSXN2M3ZQUHpNdzRCMkVaQ25DOVJYT2VNL2h6cmVnVzAycStLUEVkcGNYYzRDUVJyUExQUGN1Q29PUzRYNVZUSnllbTFSL0VLK29vb0lyVzBqZ2dpU0tHSkFpUnhyaFZVREFBQTZBRGdDdm4zeDllVGZFUDRxMm5oYXhiYmJXa3JXdS9nWWJPWjN3ZHBPMExqYm5COHZJKzhLQUxQd28rRkdrYTVvamEzNGhna3VFdU1wYXdpVW91Rk9Ha3lqYnM3Z3lnY0Rnbm5JSTl2MGpROU0wR3dTeTBteGhzN2RjZkpFdU54Q2hjc2VyTmhSbGprbkF5YXQyOXZGYXdSd1FScEZCRWdTT05CaFVVREFBSFlBQ3BhQUNpaWlnQW9vb29BS0tLS0FDaWlpZ0Fvb29vQUtLS0tBQ2lpaWdBb29vb0FLS0tLQUNpaWlnQW9vcEQwT2FBUEl2ajU0cHQ3RHd4RjRkUmxhNjFGbGtrN21LR05nMlRnNUJMS0FDUVFkcjl4V3o4Ry9Cdi9BQWl2ZytPNXU3U2UyMWZVZjN0M0hNM0tLR2J5MTI5RitVNUlQelpZNTZZSGwrdUxEOFJQMmhGMHE2bFpkUGduTnFFZEFwTWNDbHBFQlVnNFoxZkRaeUF3UGJGZlN0QUJSUlJRQVVVVmsrSS9FZW0rRnRIbDFQVkpTa0tmS3FxTXZJMk9FVWQyT1A2bkFCSUFKdGIxaTAwSFJielZieVFMYjJrVFNQeU10aitFWklCWW5BQXp5U0JYaFd1ZkdEeEw0cDhUV2VtZUNZWnJhTi9rVkhoamtsbVlqTE0yUXlxb0dlaDZCaVQyWGl2Ry9qZldQSEY3TmZTTGRXK2xJOGFKWmh6SkZBMjFzYmlBQnVQNzBna2JzQWdaQXIwdjREK0NVUzAvNFM2OVVtVnpKRFl4c2lrS3ZBYVVISklKSVpCMHdBM1VNTUFIdDlGRkZBQlJSUlFBVVVVVUFGRkZGQUJYQ2ZGbnhjUENuZ3VmeUp0bW8zMmJlMjJ2aDB5UG5rR0NHK1VkQ000Wmt5T2E3dXZuRHhWUEw4VHZpN2JhUHBrN1hta1d6SkY1bG8zeXBCbFROS0MyVnpra2JnTU50akEzWjVBT3krQ25oaVBRUENsejRsMUpVZ252a0xMSk1ObmsyeTg1TE1BVkRFRmp5VktoRFhHZkNuVHB2SG54SXZ2RW1zR1NjV2ppOE95VGFxVGwvd0J5b3lTMndCV3dBZUFnVW5Cd2R6NDIrSXJIU2ZEdGo0SDBreGdCWTF1WWxiZVlZWXdwaWpPUVRrbmEzWElDRFBEWnIwajRjZUYvK0VTOEcydW55Z2k5a0p1THpKeVJLd0dSMUkrVUJWeURnN2M5NkFPc0hRVVVVVUFGRkZGQUJWVFU5VHNkRzA2ZlVOUnVZN2EwZ1hmSks1NFVmMUpQQUE1SjRGV21PMFpyNXY4QUZ2aXk4K0szanl5OE42RGQzVU9qeU1JZHBPMVpnRHVlWmtKWGNBRkJWVzUrVVl3V0lvQW4xZnh0NG8rSzJyeStHZERzMXQ5TW1iT3hsRzR4cXlrU1RQZzdjTW9PRnh5MjNMbkdmVXZDUHd3MEh3emJXclMyc045cVVNbm1mYm5qWldKQmJiaFN4QXdHNkRxUXA2Z0VhM2hEd2JwWGc3U2haNmZBZ21kVSsxWEFEQnAzQ2diamtrZ2NFN1FjREp4MU9laW9BUUFBWUZMUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGYzc0MzhVdytFZkNWN3E3R05wa1haYlJ1UmlTVnZ1akdRU1A0aUJ6dFZpT2xkRlh6WjhhUEV4MXZ4bkZvRVdwZVhwMWhzam5HN01RbkpKZVFoQXhPMVNGT1JsU0h3UFVBOCs4TTZSSnIzaUd3MDJOcGQxMU9zVzVFTGxGSitadG83QVpKOWhYMm1veG12bkQ0S2FMTnFYang5WWlWTGEwMDhQSThTWktocFZaRmpHNWl3R0N4Qk9UOG1DZWNuNlFvQTVmeC80b2o4SitFcnkrTXJwY3lxWUxQWWdZK2V5bmFjSGpBeHVPZU1BOWVCWG5md1A4T3RkU2FsNHIxSzFFdHhQSjVkcmN6YjJjazVNempjTUhjU0ZMQWtrcTQ0NXpVK05HcHgrSXZGV2plRDdHNGxXNVNjSmNCeVZoRWsyd1I1OVNGSk9RT0EzQis4QjdQb2VrMnVoYUxhYVZaSUZndFl4R3ZBQk9PckhBQUxIcVRqa2ttZ0RRb29vb0FLS0tLQUNpaWlnQW9vb29BS0tLS0FDaWlpZ0Fvb29vQUtLS0tBQ2lpaWdBb29vb0FLS0tLQUN1WStJbXNmMkg4UGRjdmxrbmprVzFhS09TQTRkSkpNUm93T1JqRE1EblBHT0s2ZXZCUDJpOWJYZm91aHJQa2Z2THllRFoySHlSdHVJLzY3REFQMUgzYUFJdjJlL0NzTXIzM2ltWlVjeE9iTzBYQWJZY0JuZmtjSERLQVFRY0Z3UnlLK2dLd1BCR2ludzk0STBiU25nTUUwRnFubnhsOTIyVmh1azVCSSsrVzZISHB4Vy9RQVVVVkZjWEVWcmJ5VHp1c2NNYWxuZDJDcWlnWkpKUFFEMW9BWmUzdHJwOW5KZFhsMURhMjZZM1RUdUVSY25BeVNRT3BBcjVxMXJYTC80d2VOb3JTR2FUVDlGaFV1Uk83R0szaWozRnA1UUcyaDhFak9RT1ZYZC9FYkhqVHhMcS93QVdQRXNPaCtIOU5sa3RiVnBaSVZqa0lFNEJ3SjMzYkFueWdBQnVSdkl5U3dGZFQ0OHVkSStHSHcxWHdubzhzWTFQVlZ4TnRZN21VcUZsbUtuZHREQmRvQUkrOGR2M1RRQjU1WjJVZnhHK0lWcm8yajJUNmJvU1NBcmJSNEJoZ1ZWRWtqRUtmM3JoUjh6WkpPeFN4QVUxOVRXRmpiNlpwOXRZMmtmbDIxdEVzTVNiaTIxRkFDako1T0FCeWE4NCtCL2hrYU40TFRWSFNSYnJWbjgyVHpGS2tSS1dFZlU4ZzhzRzR5SkIxd0RYcUZBQlJSUlFBVVVVVUFGRkZGQUJSUlFUZ1pvQTVMNGwrSkxqd3I0RTFEVTdLNGhodmdFaXRqTGc1ZG1BTzBIN3pCZHpBYy9kNUJBTmVZZkN6K3p2QS93NjFUeHBxcXFzOXl4aHM5N0tES0Y0RWFiUVdVdElIRGUwWWJBQzVxbDhadFFtOFllUE5NOE5hSVB0czFtclJtTzNCeUozUHpxeloyNFZVWDB4bHNucnRxK0pSL3duWGpPdzhGZUVQbDhQYWFWalg3Tjg4S2MvdkxnNXh1STNFWkxIY2VRY3lISUJkK0V1ajNmalh4OWZlTWRhaTN4MnNwZEF3SlF6c01xcTdnZmxqWGtESUs0aUk0cjZGQUE2Q3Nmd3Y0ZXQvREhodXcwZTJZTkhheGJTMk1iM1BMdHlUakxFbkdlTTQ2WXJab0FLS0tLQUNrTEtCa2tENm1na2djRE5lUWZHVDRseTZCQ3VnNkhjeHJxZHdwKzB5eGttUzFqd0NBT3dkZ2VEbklHRGdibElBT1grS3Z4Tms4UTNLK0dQREV0eEpBSmZMbXViVm1KdTJiY25sSUZQenB6anZ2UFRBQUxlcGZEZndERDRFMFZveko1K28zZTFyeVVINWNybmFpZFBsWGMzT01ra25nWVVZdndoK0hNZmhYVFJyRjg3dnE5OUFOeUhLL1o0MnczbGtFQTd1RkpKSEJHQmpCTGVuZ1lBRkFDMFVVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFCUjFmVW90STBpOTFHY09ZclNCNTNDQUZpcUtXT0FTQm5BOVJYeDlaemFnbW42bHJSZEpIdTJOb1o1bUxUTTBuN3lSbzI3bmFOam5QM1pnQ0NIcjZMK05sN2Iydnd4MUdHZVRhOTFKRkRDdTNPOXc0a3g3ZkxHNXlmVDgvbmJ3YjRjbjhUK0piTFNvWVpaSUhsVnJsb2lGTVVHUUhiSkdCd2U0NmtER1RpZ0Q2UytFV2tuU2ZoenBwZUF4VFhtNjdrRzdkdURuNUc2a0RNWVRqOCtjMTErcTZuWmFOcGsrbzZqZEpiV2tDN3BKWE9Bb3pqOFNTUUFCeVNRQm1yU2tiVDF4azlhOG4rUEhpQ0swOEsyK2l4WGlMZFhzNlBMYnFBek5BdVRrOGNEekFtRHhuQkE3MEFjajhLTE9meHQ4VGIvQU1TNnNubmZaQ2Jsc3R1UkoyT0kxMnZrNFZkeFhISytXdlBhdmVOWjFCZEkwcTR2MlRlc0s1MkJ0dVNUNjloenlmeHJtZmhYNGRidzM0RHNiZWUzOG04dWQxMWNCdHdiZS9RTUdBSVlJRVVqQTVYdjFycE5lK3lEUU5TZStoYWEwVzFrTTBhOEZrQ2trQTlqanB6UUJtK0NQRWorS05BRjlMR3NjNlN0REtxS1FwSXdRVnlTY2JXWHIzelhTVjUvOEh6Y253VVRQNW5sbTZrOGpmbkd6QzUyNTdidC9Udm52bXZRS0FDaWlpZ0Fvb29vQUtLS0tBQ2lpaWdBb29vb0FLS0tLQUNpaWlnQW9vb29BS0tLS0FDaWlpZ0FKeFh5L2Mzc0h4SCtQMXExazV1dE9lNmk4dEwxVHNNRUtocEZDbk9GYlk1Q2tEbC9tQUpOZStlUGZFTVhoandYcWVvdmVKYVhBdDVFdEhZQWt6bFQ1WUM4N2puMk9BQ1R3RFhrL3dDemhvd0oxdlhXZ3lQa3RJSml3NC9qa1hhRC93QmNUa2oySGVnRDN0UmdVdEZSM0U4VnJieVR6eUpIREdwZDVIWUtxcUJra2s4QUFVQUpjWE1GckJKUGNTcEZERWhra2trYmFxS09TU1R3QUIzTmZQZnhGOGUzUGovVW9mQ2ZoVkpMMnlsZU5zcEc4Y2x4S054STVJSGxnYlNkeWdBcVd6Z0FsL3hIOGNUL0FCQTFhMThLZUdJN21XRVhEeHpCR1FpOFpXd3BVZ2tlV05wWU1XQUkrWWdiUWE5VThDL0QzU3ZCVm4rNlZMblU1RktUMzVRcTBpN2lRTnBadHZCVUhCK2JhQ2FBSnZBbmd1eThGK0hvclNHSlB0MHFxOTdPRHZNc29IWTdSOG9KSVVZSEhKR1N4UGdzYVgveGgrS3N6bzBxV0pjTzZNMnd3V2FNQnhrc0E1QjZBRWIySjRHU1BWZmpkNHYvQU9FZDhLalM0bFlYT3NMSkNzdVJ0U01iZk15Q0Rra01GSCs4VGtFREx2Z2Y0Vmw4UCtEcEwrN2lqVzUxVjFuUmtrTEUyKzM5MEQyQitaMjQvdkRQUEFBUFRnT2hPTSt0TFJXZHFtdmFUb2hpL3RUVTdPeTg3UGwvYVoxajM0NjQzRVp4a1orb29BMGFLS0tBQ2lpcTE5ZjJ1bTJrbDNlM0VOdGJSNDN6VFNCRVhKQUdTZUJ5UVB4RkFGZ2tEclMxODlhcjhadkZmaWpXcmZTL0IybmZaSGxtMnc1VkpaNWNGdXU3S0l1M0JJd2R1MG5kaXZvVUhJQkhTZ0FySDhVYS9iK0dmRFYvckZ3QXlXc1pZSVNSNWprNFZNZ0hHNWlGempqTmJGZUkvdERhekdtazZSb2lsRFBMT2J0OFNqTWFvcFZkeVl5UXhkc0hwbU05YUFQRDVOWHVwdFF2NytRNzd1ODNsN25KallOSVQ1allVZ2ZNQ3lrRUZkcnR4MEkrbS9oVjhQaDRPMFUzR29SMjc2MWRMaVowRzR4SnhpSU5uQndSa2tjRTRISVVHdU0rQjN3L2xoWmZGdXIycnhQcy93Q0pZalBnbEdCRFNNdU9oQnd1VHlDVGo3cHIzVURIYy9pYUFGb29vb0FLS0todWJpTzB0NWJpZVJJb0lrTHlTU050VkZBeVNTZWdBR1NhQU9TK0l2eEJzUEFtakxKS3J5NmhkTEl0bEVxYmxMcXZWeVNBRURGQWNIUHpjRHJqeTc0Uy9EMmJ4TmV5ZU52RXJRM2NGeExNOFVFa1NPdHpJeFpaSGRjWTJoaTJCZ0VubmdENXNLNHVOUytObnhPanQ0amNRNlBDUTZ3dktGTnZhcXloM0hCSG1NY2RtNVpSa3F1UjlMMkZqYjZmcHR0WTJzWml0cmFKWVlvOXhiYWlqQ2pKeVRnQWRhQUxXQjZVbTRBNHFPNG5qdG9Ibm1ramloalV2SkpJd1ZVVURKSko2QWV0ZUErTC9pTnFmeEExbUh3cjRUTnhiMk4zS2JaNXh1emRJMjNMRUJkMGFMdGNubmxTZHdIU2dEdlBHdnhlMGJ3MmJxdzA4blVOWGlMUmxFVStUREp4L3JHNHpqSitWY25LbFR0UE5jVkd2eGE4ZHlXZW9MTytsYWZjS1hnYUs0K3lSS01EcXFreXNHMjVCT2Z2WkdGUEhXZUJmZzVwdmh5NWcxVFZMZzZqcWtXSFZkb0VNTDRISUI1WmxPY01jREJCMmdnR3ZRZFUxWFR0RnMydTlTdW9yYTNYSTN5dGpKd1RoUjFMY0hBR1Nld29BOHMrSDNpSFhkRThiWDNnenhMYzNkOWNPZDBNejNCbEVUS204L01mbUtzdUNQUTQrVUV0ajJLdkdmaGJadzYzNDQ4UWVLNDRtUzJlU1EyM21SOTVXTFpEQTREQlJ5Qi9mNjg4K3pVQUZGRkZBQlJSUlFBVVVWRmNYRVZyQkpQUElrVU1hbDNra1lLcUtPU1NUd0FCUUJMU2JoNjE1SjRrK09WbmE2aStsK0d0TmJXTHJjMEN6YmlJbWw0QytXRkJhVWJpUnh0emdiU2R3TmNuQjhXL0hlbFhrZXRhM283eWFOZEJWaXR6YXRCQXhaY3FZNVNwT1RndHlXQkdjQWNFQUgwUlJWVFM5UWkxYlNyUFVZRWRJYnVCSjQxa0dHQ3VvWVp4M3dhdDBBRkZGRkFCUlJSUUI4L2Z0RTZoRkpyR2lhY3FQNXNGdkxPN25oY1NNb0FCejEvZEhJNDZqMTR0ZnMrZUhpUDdUOFJtVEs0K3dSSUd6bmxaSEo0LzNBQ0R6ODNIUTF3dnhrSC9BQmRqVytuL0FDdzdmOU1JNittUEN1Z3crR1BET242TmJuY2xwRUVNbkk4eGp5ellKT056RW5HZU00b0EyRGtJY0Ruc0JYemg0dU1QeEsrTjl0b2thUGJSMnpOWVN1ekFNNnhOSThqTHdjRWpkdHpub0NldUI3YjQ3MTUvRGZnblY5VWpaa21odHlzRG9vWXJLNTJSbkRjWURzcE9ld1BYcFhsZjdQWGgwTU5UOFJ5eWNqL1FJNGxKQS9oa2NzTWMvd0RMUEdEL0FIc2pwUUI3dGdmalhKZkU2V1NINGQ2dTBVam94UkZKVTRPR2tVRWZRZ2tIMkpycmdNQUQwcmovQUlwZjhrNDFiNlJmK2pVb0FUNFduUHc2MHJqSCt1LzlIUFhZMXgzd3MvNUp6cFgxbS84QVJ6MTJOQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGRkZGQUJRZUJtaWc5RFFCNEorMFg0anovWlhocUpRcEgvRXdsZGdQOXVOQXB6L0FOZE04ZjNjSHFLOWI4RmVIUDhBaEZQQjJsNkswdm1TMjBYNzV3MlFaR0pkOXB3UGwzTWNjWnhqUE5mUG5pNjVYeHo4ZTRkUGxnbnViS0cvaTA4d0NQNWhERy83N2xEbmJ1ODF0MmNoVG5qR0I5UWxzSVRrWkhXZ0JTY0hGZUNmRkw0aTNtczZ2SjRJOE5NNm1TYzJsektTRWE0bExiUEpYZGpDYnNoaWV2VDd1ZDI1OFZQaVZjMlVpK0YvRFQrZHFkMW1PVzV0bkR2QVN4VHlrQ2tuemNnK2hYNWNBc1JqWCtGbnd6LzRReUNUVXRRa0w2dmRSZVc4YVA4QXU3ZU1rSFlNY00zeWpMZE9BQnhrc0FYL0FJYi9BQS90UEIra0pjU1JidFp1bzFOMU0rQ1kraDhwY1pBVWR5RDh4R2VnQUhjTjBIUFBibnJUZ01kSzRMNHQrTUY4S2VDWi9zOHdUVWIvQURiMjIxOE9tUjgwZ3dRdzJqb1JuRE1uclFCNDU0aHViLzRxL0Y0YVBCZkxGWkpQSmIyY2hmeklralFFdklnR0EyOElXR2V1Vkc3QUJIMDFiUVJXZHZGYlFSSkZERWdTT09OUXFxbzRBQUdBQVBRVjRsOEdMTFRQQ1hoQzc4WmEzcUZuYnc2aG1LQnBNYmtXTm4zS0QxTE1VSjJLQ1NFVTg5cTNpWDQ1NmhxcjIxajRQc0o0Slp3Rk10eENyeitZV0FDeHFDeW5QVG5KTzdnREhJQjJmeEYrS2RwNE9tR25XTUtYMnJzaFlvemtKYlpIeW1USFVrNE96Z2tjNVg1YytHYUJEZmZFbjRoMkZscnVxWE1qM1RTYjVpMjVrVlZhUXFnUENqZ2dBRGFwUFE5RDFGejhOMThEK0M3dnhKNGxhR1hVa0tMWTZla3FtSlpYQUE4emNwRWpJVHZLQUZTSXprc0dPT1E4QWVJdGI4TmVJRGM2RFlwZTM5ekEwSGtHM2tsTExrT2Rxb1Fjalo3OFpOQUgySFVVMXpEYlcwbHpjU0pEQkVoa2tsa1lLcUtCa2trOEFBY2sxODdSNjM4YTlYYzJDd2F1bjJnRmR6NmZIYkJSZ2svdkdSZHB3T0RrSE9NYzRxeC93b2Z4WHFtcmZhZGI4UVdVZ20vMTl6dmx1SnVGd3Yzd3U3c09XR0IrVkFIYWVLdmpoNGQwZlpEbzRHdFhJbFpKUkd6UnhvRkI1RGxTSHlRTWJjZ2pKeU9NK0srTS9HWGlueGhiV3Mrc0I0ZE9rSmt0SW9yZG83ZG1YQ015ay9mSTVHU1R0TEVER2NWN3ZwSHdYOEY2U3NiUzJNK29UTElKVmx2Sm1icGc3U3E3Vkl5TTRZSEpKem12Si9GTTl4OFV2akF1aldlb2h0UFdWb0xWbXdZNDFSY3l1b1VrTVdLTVFlNDJna0RvQWVpL0Jqd0ZGb21neCtJTGdQOEEyanFVQUtvWEcyR0FrTXVOcElPN0NzYzlPQmdZT2ZWODdWeWUxUjI4TVZyYngyOEVTUlF4SUVTTkZDcWlnWUFBSEFBQTZDdWY4YWVNTEx3Ym9NOS9kdkcwMjBtM3RmTVZYbmJLakNnbk9BV0JKQU9CazQ3RUFoOGUrT2JId05vZjIrNFZKN3AzQ1cxbVgyTk9jamNRY0hBVUhKT01kQjFJcjV3OEdXMnBlTy9pYlpTM3hOOU5KZHJkWHIzQ2wxTVNFRmd3d1FGSUd3REFIekFjQ202cFA0aThkd2FwNHcxaUVTV2VuUmVUNWtTaUJVWjMvZHhvZHAzYlhsREhPVHQ0TEFrRStpZnM2YU1DZFoxeVMzL3VXa0UvbVovMnBWMjUvd0N1SnlSOU85QUh1VnZGRGEyOFZ2YnhKRkJFb2pqampVQlVVREFVQWRBQU1ZcXRiNjVwTjVmVFdOcnFkbFBkdzd2TmdpdUVhU1BhY051VUhJd2VEbm9hNUw0cCtPQjRMOE5mNkhKczFXOURKWi91dDZyZ3J2YzhnRGFEeG5QSlhnZ0d1Qy9aNTBSMnVOVzhRU0s0UlVXeGhZTU5ybkllVEk2Z2pFZU8zSjY5Z0QzbWlrQUFBQTZDbG9BQ2NETmVML3RBK0s0YlRRYmZ3eEJMS0wyOWVPZWRBZzIrUXJOZ0ZqMEpkUVJ0NStRNTRPRDY1cTJwUTZSbzE5cWR3cnREWjI4bHhJc2VDeFZGTEVESkF6Z2V0Zk5YaGF3dS9qRDhVYmpVTlk4K1RTNGlaWjQyYzRpaUJQbDI2a0xqa24vWkxBU05uZHpRQjY5OEgvQlNlRXZDTVU5eEc2YXRxU0pOZGhpUnNBenNUYVFNRlEzUEdkeGJrakZlaEZnQmtuQTk2TUJlZUIycnp6NHcrTVArRVg4SXRiMnR6TkRxbW8vdTdSNFY1VlZLK1lkMzhQeW5HUnpsZ1IwSkFCd3Z4SytKYy9pWFVCNFE4SlRDV0c1bUZ0TmRSc1A5SlppRjhwRGtEWVNjRnY0dVJ3dVMzb1h3L3dEaG5wM2d5eGpubWpndTlaUHp5WGJSNThvNEkyUlo1VmNNUm5ndGs1d01LT2ErQ1BnUzMwL1NJL0Urb1dvL3RHNzNHMERnL3VZU051NERHQXpZUEl6bFN1RHljOWg0eCtJK2hlRHJlZGJpNlNmVUkxekhZd3R1a1pzQWdQZ0h5d1F3T1c3WkkzZEtBT2wxUFU3TFNOT24xRFVKMXQ3UzNVdkpLK2NLQitwSjZBRGtrZ0RrMThvK0pQRStvK05kZmx2THNzcUZpYmUyOHhqSGJyZ0E0QjZaQ2dzUUJrODRIQURmRm54RThRZU1FTnZxVnhFTE5aVm5TMmdnQ0pHNnFWQkRITEhxeDVZOWZZWTlUK0dQdzd0Tk8wNVBFbXZlVWthb3R4YmxwV2pFZXhpeGxmT09NS3BIT01ISjdVQWR2NFMwNnkrSHZnQ01hcGNwYmlKVGMzc3JkRmRzZkx3VGtqNVVHUHZFREF5Y1Z3L2liNDVTcnFNT24rRWRQWFVIZGxWWjVvcFAzckhqWWtRMnNUa2prNDVCQUI2MXp1cjZsclh4aThicnBPbkdTSFFMV1loSlVqZG8wWEJJbWs0SHpzRk8wTmpydDRKWW4yYndsNEgwVHdoYUdMVDdYZk8yNFNYYzREVFNBa0hhV0FHRjRIeWpBNDduSm9BOG91WVBqVnJTelQ3TG0yaHUxUmhGQmNRUWVXb1lzcWo1ZzZINWdEMFlnQU5uR0tQQW54UTFuU2RmaThJK0pJNTcyWnIvQU95ZmFKSmcwc0VoWXJ0WS93RExSZCtBRG5qSnh1K1VWNzV0WDBIclhnUHg3OEpXOXROYStLYmNsSkxtUVd0MkN4TzU5bjd0MUdNZmRqWlNNaitIamtrZ0h2eW5JelMxaCtFdkVVWGl2d3hZNjFGYnZiTGNxeE1Ua0VveXNWWVo3amNwd2UvSFRwVzVRQWg2ZHZ4cjUvOEFpMzRrdWZGdmlXejhJK0czdXJobzJraHVZb21kRmxtRGo1R1JzQWhQTDNiamtBRW5JeG12WnZGdXZRZUcvREYvcVVrMXJITEZESWJkTG1RS3Nzb1FzcWNrWkp4MEhKN1Y4dWVHUEhMZUhkVzFQeEpMWlJYL0FJaHVYekE4NktJWXk3RnBwQ0JnN3o5MWRwQXd6WjdBZ0h2WGhQNFdlRy9CZG45dnZ6RGZYMXZ1bGJVTHBRcVJLQ0dES2hKVk5vUUhlZVFkeHlBY0R5THhkcjJyL0Z6eGhGcG1oYWVseGJXRFRHek1RSU1rUjJobmtkeUFvT3dFWkM0M0JlVGpQQTNtcDNPdDYxSmY2dmV6eVQzRW02NHVBb1p3T2h3dVZIQTRDNUF3QU9BSyt0ZkJQZ3Z3OTRUMDFtMEV2TWw0cU85MjgvbUdkUnVLSGo1Y1ljZ0ZRTWpHYzBBYnVrYVpEbzJrMldtMjdPME5uYnBibzBuTE1xS0FDVDY4VmRvb29BS0tLS0FDb2JxZUcydHBKN2lhT0dDSlM4a3NqQlZSUU1ra25nQWVwcWF1QitNSGlKdkQzdzd2dHNSa2sxRC9BRUJDVnlGOHhXM0U4Zy9jRFk2OGtjRVpvQThZOEphVmErT3ZqWGR5cW4yblNqZjNHb1NmS0FHaUVoS0ZsZnFwWXFwWEdjTWVuVWZVdGVGZnM1UXpMRDRpdVdobDhsM3QwV1ZoOHJNb2tMS0Q2amNEajBZZXRlNm1nRHhyOW9YVjVyYncvcG1rUjcwanZwMmxtY1NGUVVqQStVanVDWkZQUFFvTzVHTzcrSE9neGVIdkFXa1dpVzhrRThsdWx4Y3JLbTJUem5BWjkzQU9RVHQ1NUFVRHRYaHQxZVcveEgrUEZsSlpTaTYwNTdtTFlsNGhLTkRDb1oxQUlPRmJiSVFwQUh6YzRMR3ZwcEFRT2FBSFZ3SHhpdnZzbmdLU0RadUY1Y1JRWnpqWmdtVFB2L3E4ZHV1ZTJEMzllYWZHL2p3WlpmOEFZUmovQVBSY2xBSFMvRDZ3L3M3d0ZvMFBtYjkxdUpzNHhqekQ1bVB3M1k5OFpycHF4dkNQL0ltYUgvMkQ0UDhBMFd0Yk5BQ2Joam5qNjB0ZVJlTVBFVjU4Ti9HMGQrQTl4cG1zYlh1dk9Lc3dLTjh3ajVVamFoRzNQSFBmSEhyRnZORmMyMFU4RWlTeFNJSFI0MkRLeWtaQkJIVWU5QUV0RkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVmorS1BFRnY0WDhOYWhyVnl1Nk8waUxCTWtiM09BaTVBT056RlJuSEdjbmdWc1Y0NyswSnJ6V1BoT3owWkM0YlVyamMveXFWTVVRQks1NUlPOW95TUQrRTg0NElCem43UC9BSWZuMUhYdFU4WTNyQ2ZabTNpa2x4STd6dmhwSDNFN2d3QkFKeHo1cDU0SXJyZml6OFRJTkRzTHJRTklublhYSk5xU3lSZ3A5bFJsVnM3aU9XWld3TnZJeVRrRURQR1cvaTIxK0hud25zTkEwNlZIMS9WcmMzazhzRHZpMldZWlZ5ZUNKUEsyQUt1TUVidlRmMEh3aStGb3MxaDhTK0liWi90dTRtMHNwNG1Rd0ZXSUVqcVFNdnhsZU1EaHVTUmdBcy9DUDRkUzI3eCtOTmNtZVhVYnRUTmFvWDNFTElPWlpHL2lkZ3g0N0E4OC9kOWlvd0IwRkZBR1I0bDhSV25oWFFibldMNk9WN1czMmJ4RHRMbmM0UVlCSUhWdld2bDM0bitPSXZIUGlpSzVzNHJ1UFQ3V0FReFJUa2ZlSkpkOW9PRkp5bzZuSVFFK2c5WC9BR2dkZnU5TzBEVDlKZ1pCYjZpMGhuQlVFdjVaaktxTTlCbHNudjhBS08yYXlmMmZmQ0RwOXE4VlhzUnhnMnRsdlhIL0FGMGNBcjlGREEvODlBYUFPZThQL0R6eHQ0NlRUSmRXdTU3WFJVdFFMV2E1WVBzUlZWRkNRaGg5NEtwejh1NVJ1eVNSbjNudzc0TDBMd3Rhd3hhVllRUnl4eEdJM0xScVpwQVRrN254azVJQngwNEdBQUFCMEdLYTV3UGIxb0E4Ry9hQjFHYTcxalEvRDFxTGw1dHJYRFJJQ3l5RjJDUjRWVHk0S3YxSEcvZy9NYXgvSC9oRzcrSGErR2ZFV2p5SmFYTWR2RGEzVXRvZmtGeWtlQzR6OTRPQTJSc3dkcDNaTDFTOE4zWitJbngzZzFieUo0N1kzWDJ3ZVVuTWNjS2Z1dCtOd0dTa1liM1lnRVpGZWtmSDJTQmZBTnR2REZ2N1JpRVJSOW9WdGtuM2hna2phRHdNYzRPZU1FQTlJMFRXYlB4Qm8xbnF0aSs2MnU0VmxUSkJLNTZxMkNRR0J5Q004RUVkcTBLNEw0TUJ2K0ZVNktTT29uSVB0NThtSzcyZ0RoL2k3cnE2RjhOOVRPWS9Pdmwrd3hMSXBJWXlBaGh4ME96ZVJuaklIMHJsZmdKNFkvczd3OU40am5rZ2xrMUllWEJpUE1rVVNPeXNDMyswd0J3UDdpbm5vdkkvSEx4RGM2MTR5dGZDdHJITTZXT3dtQlZZbWVlUlFSaFZKM1lWbEM4QnNzL3FLN0h4RjQ1cy9oVDRKMHZ3L1lwWXplSUliV09ONFlkclJSU0FSbDJsQVpXRzhNektjWllqSjcwQWR0NDQ4YjZYNEkwVTM5OGQ5dzVaTFcxVmdIbmZIUWRjS01nbHUzSEJKQVBnSGhYd3g0aStNdmlaOVUxdTltTmhEdGp1YjNhRjRISWlpVURhR09jOU1ESlk1SkFiUzhLL0R2eFA4VGIxdGI4Vlg5OUJaY0ZKN2hUNWx3ckhkaUpUZ0ltR1lnNDJnc0FBUmtENk5zN0cxMDZ6anRiRzBndG9JODdJb0l4R2k1Skp3QndPU1QrTkFIalB4dHQ5SjhLL0Q3VGZEK2t4SllyZDNnYzI4S2tDZU9OQ0daeVB2a0V4Y3NTU1FEempqcC9BUXMvQkh3YnROUzFIeWtqVzFmVUoyaTI3cFRKbGtHVHQzU0ZXUkFEM3d1Y0FWNVg0N21iNG1mR1NIUkxDRjdkb0gvczFuazJzVDVUeU5KSmpJR0FDNUFEWklYc1d4VnZ4L3dDSTcvNG9lTXJmdzE0ZnQzbHNMTzRhTVNJelNJN2xnaG5jcGtDTlNlRGc0R1RuNXRvQU9JOFc2N3Ezakc4dnZFRjZjMjBjcTJxQXNuN2xYTXJ4UmpBQmJBV1Q1c1pPT2NIZys4ZkFXd2xzL2h5SjVDaFcrdTVMaVBhVGtLQXNlR3ozekdlbWVDSzVuNHArRVl2Q3Z3WDAzUzdCSkowdGRTU1c2dVBLQUxNeVNneVBnY0RjeXFNOUJ0R1R4WGEvQlM0aG0rRldsUnh6SThrTHpwS3FzQ1VZek8yR0hZN1dVNFBZZzk2QVBRYVFuRlV0UjFuUzlKRVoxTFVyU3o4elBsL2FKMWozNHhuR1R6akkvT3VESGl2Vi9ITjdIYStHbzU3RFRzWXVMMjRoRzVTUHZLcEJLNXd5RVl3MmNjZ0FtZ0NoOGVmRU5uWWVDRG94dzk5cVVpYkV5UXlSbzZ1WDZIdUZVRGpPNDR6ZzFlK0NYaGg5QzhBdzNWeWtZdWRUZjdXVDVhaGhFUVBMVXNDY2pIempwamVSajE0SDQ4K0g0ZEYwcncwTEdCekdqWEtTM0xKeXpOc1pRN2dBWitWc0E5bFBvYTlaK0htdTZQZWVEdERzTFRWYkdlOGcwdTM4NjNpdVVlU0xiR2luY29KSXdjQTU3MEFkZ1Jtdm5ENHplRGZGRjc0N3VOVHR0UHZkUnNicUZGdHpiSTB3aENJb0tFQVpUNXR6ZWgzRWc1M0N2ZXJ2eE5vTmpkdGFYZXVhYmIzS1kzUXpYYUk0eU1qS2s1R1J6WEQ2bjhiUENscGtXYTNlb1NHTGVqUnhlWEh2T2NLUytDT2c1Q25nOStsQUhuVmxvWHhqMXhMR1ZYMURUclRZdHZHaTNDMkN3eHF4R1doUXF3QTUvaEp4akdSZ1ZXMVQ0ZmFMNGQxVCt4VTFHWFc5WmxkSVlZZklOdkZiczQrVXUyVHVKM0lRQXdBd1MyUjhwN0dPYng1OFRaWGoydG9taHVxc2ZrWkZrallzQmh2dlNrb2VRTUljRDd2RmVnZUdQQU9oK0ZkN1drTDNFN05rWEYwRmVSQmpHMVNBQUJna0hISnp6N0FIejc0MjhMNjU0UDFQU05ZMUcxaXViWmlzZ2hNSU50QzRrTG0zS3Fkb1UvZUlBVUhjMk00SnJwZmlWOFVUNHN0OVAwUHdzOXlJYnRWYTRNWWRaWGtjTW4yY29QdmNIa0RjR0pYQjQ1OXY4VGVIN1R4UDRmdXRGdlduUzF1UXZtRzNZSzR3NGNZSkJIVmZUdWE4OCtHL3dmazhJK0paOVcxYTVodkh0OHJwelFzeTRCM0t6dWhIREZTQUFHSUc1dXB3UUFkTjhNdkJTZURQQ2NWdkxodFJ1Y1RYYkZWeWo0LzFZSzlRdkk2bmtzUmpPQjJ0QUFBd0Jpa2J0UUF0YzM0NDBHMzhVZURkVDAxclNPN3VUQTcyaUZnQ2s0VnZMWU1mdW5QR2VtQ1FlQ1JYQS9FZjR6TG9jMTVvdmg0R1RWb0pmS2x1SFJYaGpHdzUySGRuekZZcU1NdUFRd0lPT2VMaCtGWHhGOFcyVUY1ck9vQ1BZTjBFT3JYa2p5SXJBRWtLQTIzUEdRY0hJNUZBRVh3dytLRWZnL1F0VnNkVU4xZHh4b3NtbTIwWStVUHVPNU4zVkFTUWVoSHl1UmtuRFdkYitPZmlmV3JxSzE4TzJVV21zenFGUkZGMU5LNXlBcTVYR0NTdUJ0em52emlzUHh4OE1MendGTmFYZy80bkduRTc1WkJBNktoVmxHeVRZZmxEYmdBUXdKK1lEQkF6NzU4TXRaMGpYZkIwTjdwTmphMlRGOXQ3RGEyd2hRWElWZDVBSFVIZ2c1SnhnSGtFQUE4bjA3NFcrT3ZIZHo5dThZYXJjMlVDcVpvRGN0NXpaa3dXVllndzhvWUhJTzNHRkczcmp6YVh3VjRtdDlhdDlIbTBTOGp2cm1ab29JekdRSldHTnhSajhyS001TEE3UU9jNHI3VHdNNXh6U2JWeUR0R1I3VUFlRC9FWDRTMm1pZkRTeW0wcGZQdnRISmE2bkVRVjdtTmo4N01GVWs3VGdqSndxaHNrOTluNGEvRlh3L0I0STAzVHRhMU40ZFF0RU1HMTdkanVqVS9JVktBZ2dMdFhubktucmtFK3QzTUVOMWJ5UVhFS1RReXFVa2prVU1yS1JnZ2c4RUVFZ2l1VG0rRm5nbTR1bnVXMENCSGNna1F2SkVvSTlFVmdvL0FkZWFBTmZTdkZtaTYzT0lkT3ZQdEVoWGRoSW53QjZrbFFCMUg1aXRxcTlwcDlsWVJlVloybHZiUjd0MnlHTUlNNHhuQUhYRldLQUNpaWlnQXI1My9hRzFhN2JYOUwwWHpDdG5GYWk3MmdrYjVIZDBKWVp3ZG9RWU9PTnpjODE5RVY1NTQ2K0UrbitPZFp0TlV1TlF1YlNlRlVoa1dOVlpYaFZtWWdaNVZ5Vys5a2dZKzZhQUUrQ2Vud1dud3VzSllsS1NYY3MwMDdaUHpPSkdqeU05UGxSUng2WjZtdW44WjZtK2plRGRZMUdLNFMybnQ3T1Y0SlhBd3N1dzdPdkdkMkJnOWM0NzFvNlJwME9qNk5ZNlpibHpCWjI4ZHZHWkNDeFZGQ2pKR09jRDByeXI5b1hWRmc4RzJHbHJjT2sxNWViMmpVc0JKSEdqRnQzWWdNMFJ3ZStEMnlBREUvWjAwNVhuMXpWcGJhUXVxdzIwRTVEQmNIY3pvT3hQRVpQVWpqMTU5OHJpUGhQb3gwWDRiYVBHNlFyUGNSbTdsZUpjYi9BRENYWGNjRExCQ2lrLzdPT2dGZFJxV3Q2Vm8vbC8ybHFkbFplYnU4djdUY0xGdnhqT054R2NaR2ZyUUJmcnpQNDQvOGlWWmNnZjhBRXhUci93QmM1YXl0WS9hQTBPS0M2WFJySzh1cnRReXdQTWdTQnpuRzRuZHUyNDV4dEJQQU8zcU9EMXo0eTZ0NGw4TVhPa2FocGxrcHVOdjc2QXNtMEIwWmNCaTM5MXdlZWQ0NmJUdUFQb0x3YzI3d1ZvUjQvd0NRZmJqZy93RFROYTI2NFA0TzNNTno4Tk5NRUxveGphWkhDa0hZM211MkQ2SERBL1FpdThvQTQ3NG1lSEkvRWZnZTlnMk85M2JLYnEwRWFsbU1xS1R0VlFSa3N1NWNjNDNad2NWelh3TDFuVTlROExYVmplcFBKYldNaUphWExuTzVDUDhBVmpnWjJZSFBvNEdBQUs5V0lCR0RSakZBQlJSUlFBVVVVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUl6YlZ6WHlKOFhOZWs4US9FdlV6bGhGWlA5aGlEcUFVRVdRK01kUVpESXdKNXdSMDZEM3I0c2VQN0x3ajRhdUxPTzRjNnpmUVBIYXhRdnRlTGNDdm1ramxRcDVIY2tZSFFrZWIvQUFYK0dVZXFHSHhWckVOdkxwM3pwYTJraXJJSmo4eU03Z2dqQU9RQjFKR2VBQnVBTkQ0U2ZEbVcvdWs4WGE3Wm9rTE1zOWhBcStVZk1EaHhNRlFnQk1naFZ4Z2c1d0JndDcwT2xGRkFCU0U0cGE1RDRsK0pyZnd6NEYxRzVlNGxodWJpSjdhemFISWZ6MlJncEJIM2NZSnprZE9PY0NnRHhUNHdYSThaZkZLejB2dytyMzExREI5aGVKSTJCRTZ5eUYxTzdBd0J6dSs2T1RuQXlQb0h3cm9NSGhqd3hwK2kyeDNSMnNJVXZnanpISnk3NEpPTnpGbXhuak9LOE4rQlBoYWZXUEVWMTR5dnJpVnpaeXVrVGtnbTRuZFQ1aFk1SjRWd2VuSmNIUEJCK2k2QUNzN1h0VEdqYUJxR3BtTHp2c2x0TGNlVnYyK1pzVXR0ejJ6aXRHcVdyYWREckdrWHVtWEJrV0c4dDVMZVJveUF5cTZsU1JualBQb2FBUG5qNEVTV0drM3ZpSHhKcVdvUjIxcHA5b2tNcGRUajk0MjRIUHFQS3dBQVNTM0hiTkRWTlIxTDQyZkVhenRMRld0Tk9qVXJDSkM3K1JFcHkwcnFEZ094d093enNVdC9FZFAvQUlaMThSRFVQTFhXTk0rd0dYQmx6SjVnanoxMmJjYnNjN2QrTThaNzE3VDRIOEVhYjRIMFQ3RFpqemJpVWhycTdkUUhuY2QvWlJrNFhQR1QzSkpBTjZ3c2JmVExHM3NyU1B5N2EzaVdHSk1rN1VVQUFaUEo0SGVyTkZGQUh5ZDhRdFA4VjNmeFkxaVNEU3J6KzBGbEZ6Yi9BR0dPUjI4aENGaW1VcmtqaFYrWVl3MlJ3UVJYWitCUGdMdFpML3hpU1Z5eWpUSTMrZ1Zua1J2Yy9LdnQ4M1ZhOSt3UFNqQUhhZ0JBTVZpK01wNWJYd1JyOXhCSzhNMFduWER4eVJ0dFpHRWJFRUhzUWNjMXQxaWVML0RjWGk3d3JmNkZOY1NXeTNTQUNhTVpLTXJCbE9PNDNLTWpqSXlNanJRQjhlYVBkVFJSM1ZyWldyU1gxOHEya1RSbjVsVm1HNVVVREpaK0V6bkcxblhCM2NmUnZ3ZytIRGVFckdUVmRWaWROY3VWYUpvaTZsWUl0L0NqYXhERTdWT2UzQUdNSEo4TlBoSEg0TG4vQUxYMUc0anVkWTh0NDBTTERRd3FjWUtrcUczWUJHN2poaU1kejZqaWdERDhYZUdvdkZ2aGUrME9lNGUzUzZWUUpVWEpSbFlPcHdlbzNLTWpqSTR5T3RmUDBmaGI0ci9EZDVSb3EzY2xxekFmNkJpNWlrWmdDVzhvZ2tIQ2dGeWdPUmpPRHo5TzBnQUhRQVVBZUQrRC9ncHF0M2VycW5pKzc4dmRLWkpiV09VdkpPZHpidk1rQndDVGc1QllrRThnOVBjYlN5Z3NiU0MxdGwyUVFSckZHbVNkcXFNQVpQUFFDckdCNlVVQVkzaVR3dnBmaXpSWnRLMWVEenJlVDVsSXdIaWNkSFE5bUdmeEdRY2drSHg2L3dEMmN4SDlwZXc4VEFBNzJnaXVMUURvRHNWblZ2b0N3WDFJSGF2ZXFLQVBHdEYvWi8wNnp2bGsxVFc1NzYzVWgvSmhnOGplUXdPR2JleDJrWkJBd2VlQ08vb1doK0EvRFBoMjZOMXBta3d3M0pHQkt4YVJsNElPMHVTVnlDUWNZejN6WFIwVUFJQmpwakZMUlJRQVVVVVVBRkl5aGhnZ0g2MHRGQUhoSHhCK0VXdXY0bm04UStFNVhsbHVyZ3pQYnJMNVVrRDRERjBkbXdjdnVQVWJTVkFCR1NNWmRjK05WbkE4Q3c2cTYyYkNGbU5oSE16ZmV4aGloTW4zZVc1SFE1K1pTZnBDaWdENW1Id3UrSlBpYlVMT0R4QTl3dHNwSU54ZVg2M0FnQndXS2dPeHljQWNkVGpKQTVyM2Z3VjRSc3ZCWGg1TktzbmVYTG1XZVp1UE5sSUFZZ2Z3akFBQTdBRGtuSlBRN1JuT0JuMXBhQUNpaWlnQW9vb29BS0tLS0FDaWlpZ0Fvb29vQUs4eStNM2dQVVBHT2gyVStsSVo5UXNaR3hBWFZBOGJnQnNidU53S29lU0JnTjN4WHB0RkFIekpMNEwrTWQzYnlXMDl4cThzTXFtT1NPVFdsWU1wR0NDREx5TUhHRDYxcDZMK3p6cWx4cGtjMnE2NURZWFRZUGtSVy9uN0FRRGd0dVVCZ1NRUXVSeHdUbXZvakFIYWpBOUtBT04wRDRXK0VmRDA5dmRXbWtvOTVDaXFMaTVjeXNXR0R2d1R0VnNqT1ZBeHpqQXJyWjdhSzVna2duUlpJcFZLUEc0eXJLZW9JOTZsb29BcldOaGFhYmFwYTJOdEJhMnlaMlF3UmhFWEp5Y0tPQmtrbjhhczBVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVnpYalR4dHBuZ25TUHRsODIrZVRLMnRxcCtlZHZiMFVaR1dQQXlPcElCcytLL0U5bDRUOFBYR3JYcnB0alUrVEd6YlRQSmc3WTF3Q2NuSFhCd01rOEFrZktYamp4WHFmalBWQnJsN2FtQ0p5MXZheHhxVEdpb2R4WGRnYm1HOEVuL2JCd0JnQUFwTzJ0L0VIeGxGSEpNYnJWTlJsamlNaFRhRGdCZHhDTHdxcU1rZ2NBRTE5ZytHOUVnOFBlRzlPMGlEeXlsbkFrUmVPSVJpUmdQbWZhT2hac3NldkpQSnJ5UDluM3djOXJZeitMcmlTUlpMeFh0cmFJYmRyUmhsTFNIdmt1aFVBNCs2VHprVjdpTTQ1NjBBRkZGRkFCWHpIOFp2R0V2aXp4VGJhRHBUcGQ2ZGFsUEpObktaaGRUU0JlUUY0SkdTZ0F5UWQzUE9CN3Y0KzhSeStFL0JXcDYxQkFrODl2R29pamtZaFN6dXFBbkhKd1dCd01aeGpJem12RXZnWjRDdU5TMXFMeFRxRnJ0MDYxeTFyNWdINzZiT053QkhLcjh4M2NZY0xnbkRDZ0QyN3dQNFR0UEIvaGUxMHlDSkVtTWFQZU1rak9zayt4VmR3VzV3ZHZBd0I3Q3VrcEJuSE5MUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGVnIrK3RkTnRKTHU5dW9MVzNUYUdtbmRVUmNrQVpKSUE1SUZXVHgyelh6NThidkdVMnM2dkI0UTBhZDVvWTIyM2NWc1N4dUxnc0FrV0FNc1ZPTWdFamN3QkdWRkFITCtQZkdVdnhHOFJwSmJKY1E2SHA4SmtHNk5Ga2hqSVh6WGJMaFdZa0FLdTRaT3dERE56WDhNZUdaUGlQNDFnc0xTTzZoOE82Y3BpV2NJb2todHd6TXU0azQ4MTJaajNBWm1LcnRYQVpyOXpid3gybmdYd2pPYjhTM1FqdnIySlJDdXAzQmZFU2NzZmtUSUErWUlXSllEb3grZ3ZocDRKaDhGK0VyYTJlM2pUVTdoUkxmU0JSdWFUcUVKQklJUUhhTWNIazlXT1FEckxHeHR0TjArMnNiU1B5N2EyaVdHSk54YmFpZ0JSazhuZ0RyVmlpaWdBb29vb0FRZ0hyU0tnWHBucVQxcDFGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQUZGRkZBQlJSUlFBVVVVVUFGRkZGQUJSUlJRQVVVVVVBRkZGRkFCUlJSUUFVVVVVQWN2NC84QUVpZUZmQk9wNm41NWl1ZkxNVm9SdExHZGdRbUZiZzRQekVjOEt4d2NZcjVMZzFlZTBFK3BwcU00MWlhVnRraVNTaWFMUEx6R1JXSExaS1krYklaODdTRkxkNThldkVFK29lT3pwTGZKYmFYR3FSaklJWjVGVjJicGtjRkJqSkh5NUhVMXBmQ1g0U2YybTBQaVR4SkJpdzRlMHM1Ri93Q1BqUElkeC9jOUFmdmRUOHYzd0RxUGdoOE9wTkd0bjhTNjNaN05SbjNKYXd6d3NzdHNnTEJtTzdHR2Y2ZmQ3L09SWHMxSUFCMHBhQUNpaWlnQW9vb29BS0tLS0FDaWlpZ0Fvb29vQUtLS0tBQ2lpaWdBb29vb0FLS0tLQUNpaWlnQW9vb29BS0tLS0FDaWlpZ0Fvb29vQUtLS0tBQ2lpaWdBb29vb0FLS0tLQUNpaWlnQW9vb29BS0tLS0FDaWlpZ0Fvb29vQUtLS0tBQ2lpaWdBb29vb0FLS0tLQUNpaWlnQW9vb29BS0tLS0FDaWlpZ0Fvb29vQUtLS0tBQ2lpaWdBb29vb0E0L1gvaG40YThSK0pMWFhyK3kzWGtHTjZyZ1IzT1B1K2FwQjNZd1BxQUFkeWpGZGNpN1Z4Z1U2aWdBb29vb0FLS0tLQUNpaWlnQW9vb29BS0tLS0FDaWlpZ0Fvb29vQUtLS0tBQ2lpaWdBb29vb0FLS0tLQUNpaWlnQW9vb29BS0tLS0FDaWlpZ0Fvb29vQUtLS0tBQ2lpaWdBb29vb0FLS0tLQUNpaWlnQW9vb29BS0tLS0FDaWlpZ0Fvb29vQUtLS0tBQ2lpaWdBb29vb0FLS0tLQUNpaWlnQW9vb29BS0tLS0FDaWlpZ0QvMlE9PQ==</SignID>
<SignPass xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
<SignVertreter/>
<FpDG3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
<FpFinger1 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
<FpQualitaet1 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
<FpCaptureDevice1 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
<FpWSQ1 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
<FpFinger2 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
<FpQualitaet2 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
<FpCaptureDevice2 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
<FpWSQ2 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
</Person>
</PassAntrag>Regards,
Martin -
Referential constraints on XMLType tables
Hi all,
I'm trying to create an XMLType table with a foreign key that references another XMLType table. Shouldn't be a big deal, i thought.
CREATE TABLE datasets (
ID NUMBER,
XML XMLTYPE )
XMLTYPE COLUMN XML XMLSCHEMA "dataset_schema.xsd" ELEMENT "root";
CREATE TABLE categories OF XMLTYPE XMLSCHEMA "categories.xsd" ELEMENT "categories";
ALTER TABLE datasets
2 ADD CONSTRAINT dataset_isvalid
3 FOREIGN KEY(XML.XMLDATA."dataset"."metaInformation"."referenceFunction"."category")
4 REFERENCES categories(XMLDATA."category"."name");
FOREIGN KEY(XML.XMLDATA."dataset"."metaInformation"."referenceFunction"."category")
ERROR at line 3:
ORA-22809: nonexistent attribute
I've then been reading through the postings regarding foreign key and unique constraints and i've managed to understand the concept of nested tables. To my dismay, trying to establish referential constraints my nested tables would throw an ORA-30730 stating this cannot be done.
I've simplified my schemas a little so it won't get to complicated: one table will store datasets and the other will hold category names.
The schema for the categories is
<?xml version="1.0" encoding="UTF-8"?>
<!-- schema for categories -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xs:element name="categories">
<xs:complexType>
<xs:sequence>
<xs:element name="category" type="categoryType" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="categoryType">
<xs:sequence>
<xs:element name="subCategory" type="subCategoryType" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="localName" type="xs:string" use="required"/>
<xs:attribute name="type" type="xs:byte" use="required"/>
</xs:complexType>
<xs:complexType name="subCategoryType">
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="localName" type="xs:string" use="required"/>
</xs:complexType>
</xs:schema>
and the schema for the dataset table is
<?xml version="1.0" encoding="UTF-8"?>
<!- dataset schema-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xs:complexType name="datasetType">
<xs:sequence>
<xs:element name="metaInformation" type="metaInformationType"/>
<xs:element ref="otherInformation"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="metaInformationType">
<xs:sequence>
<xs:element name="referenceFunction" type="referenceFunctionType"/>
</xs:sequence>
</xs:complexType>
<xs:element name="otherInformation" type="xs:string"/>
<xs:complexType name="referenceFunctionType">
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="category" type="xs:string" use="required"/>
<xs:attribute name="subCategory" type="xs:string" use="required"/>
</xs:complexType>
<xs:element name="root">
<xs:complexType>
<xs:sequence>
<xs:element name="dataset" type="datasetType" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Now I want to define the referenceFunction/@category attribute of the dataset to be a foreign key to the categories table. Is it possible at all to do that with constraints? After failing with the nested table approach I really do not have any clue I would greatly appreciate any hints.
Thanks,
oliNested tables do not currently support referential integrity.
Foreign Keys on elements with maxOccurs > 0 -
HI Gentlemen,
Given a schema-based XMLTYPE table with one big XML instance stored in it. I would like to select a subtree like <gnr V="12345" ...> ... </gnr> where the attribute could be a bind parameter dynamically changing. As an output I would like to have the whole subtree with XML tags, for which I already have a perfectly good XSL stylesheet to display contents. It is working well when the subtree is stored in an .xml file which references the .xsl stylesheet. My question is: How can I organize that the ADF view is connected to the stylesheet and how can I apply all that to a .jspx ADF page? Updating the table is not a matter. Please help if you can.
Thanks, regards
Miklos HERBOLYIf you already have the correct xsl file to use, you might consider creating a xsql page instead of a jspx page:
http://people.cis.ksu.edu/~hankley/d764/tut05/Kamath_XSQL.html
NA
http://nickaiva.blogspot.com -
ORA-07445 in the alert log when inserting into table with XMLType column
I'm trying to insert an xml-document into a table with a schema-based XMLType column. When I try to insert a row (using plsql-developer) - oracle is busy for a few seconds and then the connection to oracle is lost.
Below you''ll find the following to recreate the problem:
a) contents from the alert log
b) create script for the table
c) the before-insert trigger
d) the xml-schema
e) code for registering the schema
f) the test program
g) platform information
Alert Log:
Fri Aug 17 00:44:11 2007
Errors in file /oracle/app/oracle/product/10.2.0/db_1/admin/dntspilot2/udump/dntspilot2_ora_13807.trc:
ORA-07445: exception encountered: core dump [SIGSEGV] [Address not mapped to object] [475177] [] [] []
Create script for the table:
CREATE TABLE "DNTSB"."SIGNATURETABLE"
( "XML_DOCUMENT" "SYS"."XMLTYPE" ,
"TS" TIMESTAMP (6) WITH TIME ZONE NOT NULL ENABLE
) XMLTYPE COLUMN "XML_DOCUMENT" XMLSCHEMA "http://www.sporfori.fo/schemas/www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd" ELEMENT "Object"
ROWDEPENDENCIES ;
Before-insert trigger:
create or replace trigger BIS_SIGNATURETABLE
before insert on signaturetable
for each row
declare
-- local variables here
l_sigtab_rec signaturetable%rowtype;
begin
if (:new.xml_document is not null) then
:new.xml_document.schemavalidate();
end if;
l_sigtab_rec.xml_document := :new.xml_document;
end BIS_SIGNATURETABLE2;
XML-Schema (xmldsig-core-schema.xsd):
=====================================================================================
<?xml version="1.0" encoding="utf-8"?>
<!-- Schema for XML Signatures
http://www.w3.org/2000/09/xmldsig#
$Revision: 1.1 $ on $Date: 2002/02/08 20:32:26 $ by $Author: reagle $
Copyright 2001 The Internet Society and W3C (Massachusetts Institute
of Technology, Institut National de Recherche en Informatique et en
Automatique, Keio University). All Rights Reserved.
http://www.w3.org/Consortium/Legal/
This document is governed by the W3C Software License [1] as described
in the FAQ [2].
[1] http://www.w3.org/Consortium/Legal/copyright-software-19980720
[2] http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620.html#DTD
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xdb="http://xmlns.oracle.com/xdb"
targetNamespace="http://www.w3.org/2000/09/xmldsig#" version="0.1" elementFormDefault="qualified">
<!-- Basic Types Defined for Signatures -->
<xs:simpleType name="CryptoBinary">
<xs:restriction base="xs:base64Binary">
</xs:restriction>
</xs:simpleType>
<!-- Start Signature -->
<xs:element name="Signature" type="ds:SignatureType"/>
<xs:complexType name="SignatureType">
<xs:sequence>
<xs:element ref="ds:SignedInfo"/>
<xs:element ref="ds:SignatureValue"/>
<xs:element ref="ds:KeyInfo" minOccurs="0"/>
<xs:element ref="ds:Object" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:complexType>
<xs:element name="SignatureValue" type="ds:SignatureValueType"/>
<xs:complexType name="SignatureValueType">
<xs:simpleContent>
<xs:extension base="xs:base64Binary">
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Start SignedInfo -->
<xs:element name="SignedInfo" type="ds:SignedInfoType"/>
<xs:complexType name="SignedInfoType">
<xs:sequence>
<xs:element ref="ds:CanonicalizationMethod"/>
<xs:element ref="ds:SignatureMethod"/>
<xs:element ref="ds:Reference" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:complexType>
<xs:element name="CanonicalizationMethod" type="ds:CanonicalizationMethodType"/>
<xs:complexType name="CanonicalizationMethodType" mixed="true">
<xs:sequence>
<xs:any namespace="##any" minOccurs="0" maxOccurs="unbounded"/>
<!-- (0,unbounded) elements from (1,1) namespace -->
</xs:sequence>
<xs:attribute name="Algorithm" type="xs:anyURI" use="required"/>
</xs:complexType>
<xs:element name="SignatureMethod" type="ds:SignatureMethodType"/>
<xs:complexType name="SignatureMethodType" mixed="true">
<xs:sequence>
<xs:element name="HMACOutputLength" minOccurs="0" type="ds:HMACOutputLengthType"/>
<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
<!-- (0,unbounded) elements from (1,1) external namespace -->
</xs:sequence>
<xs:attribute name="Algorithm" type="xs:anyURI" use="required"/>
</xs:complexType>
<!-- Start Reference -->
<xs:element name="Reference" type="ds:ReferenceType"/>
<xs:complexType name="ReferenceType">
<xs:sequence>
<xs:element ref="ds:Transforms" minOccurs="0"/>
<xs:element ref="ds:DigestMethod"/>
<xs:element ref="ds:DigestValue"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
<xs:attribute name="URI" type="xs:anyURI" use="optional"/>
<xs:attribute name="Type" type="xs:anyURI" use="optional"/>
</xs:complexType>
<xs:element name="Transforms" type="ds:TransformsType"/>
<xs:complexType name="TransformsType">
<xs:sequence>
<xs:element ref="ds:Transform" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="Transform" type="ds:TransformType"/>
<xs:complexType name="TransformType" mixed="true">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:any namespace="##other" processContents="lax"/>
<!-- (1,1) elements from (0,unbounded) namespaces -->
<xs:element name="XPath" type="xs:string"/>
</xs:choice>
<xs:attribute name="Algorithm" type="xs:anyURI" use="required"/>
</xs:complexType>
<!-- End Reference -->
<xs:element name="DigestMethod" type="ds:DigestMethodType"/>
<xs:complexType name="DigestMethodType" mixed="true">
<xs:sequence>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Algorithm" type="xs:anyURI" use="required"/>
</xs:complexType>
<xs:element name="DigestValue" type="ds:DigestValueType"/>
<xs:simpleType name="DigestValueType">
<xs:restriction base="xs:base64Binary"/>
</xs:simpleType>
<!-- End SignedInfo -->
<!-- Start KeyInfo -->
<xs:element name="KeyInfo" type="ds:KeyInfoType"/>
<xs:complexType name="KeyInfoType" mixed="true">
<xs:choice maxOccurs="unbounded">
<xs:element ref="ds:KeyName"/>
<xs:element ref="ds:KeyValue"/>
<xs:element ref="ds:RetrievalMethod"/>
<xs:element ref="ds:X509Data"/>
<xs:element ref="ds:PGPData"/>
<xs:element ref="ds:SPKIData"/>
<xs:element ref="ds:MgmtData"/>
<xs:any processContents="lax" namespace="##other"/>
<!-- (1,1) elements from (0,unbounded) namespaces -->
</xs:choice>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:complexType>
<xs:element name="KeyName" type="xs:string"/>
<xs:element name="MgmtData" type="xs:string"/>
<xs:element name="KeyValue" type="ds:KeyValueType"/>
<xs:complexType name="KeyValueType" mixed="true">
<xs:choice>
<xs:element ref="ds:DSAKeyValue"/>
<xs:element ref="ds:RSAKeyValue"/>
<xs:any namespace="##other" processContents="lax"/>
</xs:choice>
</xs:complexType>
<xs:element name="RetrievalMethod" type="ds:RetrievalMethodType"/>
<xs:complexType name="RetrievalMethodType">
<xs:sequence>
<xs:element ref="ds:Transforms" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="URI" type="xs:anyURI"/>
<xs:attribute name="Type" type="xs:anyURI" use="optional"/>
</xs:complexType>
<!-- Start X509Data -->
<xs:element name="X509Data" type="ds:X509DataType"/>
<xs:complexType name="X509DataType">
<xs:sequence maxOccurs="unbounded">
<xs:choice>
<xs:element name="X509IssuerSerial" type="ds:X509IssuerSerialType"/>
<xs:element name="X509SKI" type="xs:base64Binary"/>
<xs:element name="X509SubjectName" type="xs:string"/>
<xs:element name="X509Certificate" type="xs:base64Binary"/>
<xs:element name="X509CRL" type="xs:base64Binary"/>
<xs:any namespace="##other" processContents="lax"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
<xs:complexType name="X509IssuerSerialType">
<xs:sequence>
<xs:element name="X509IssuerName" type="xs:string"/>
<xs:element name="X509SerialNumber" type="xs:integer"/>
</xs:sequence>
</xs:complexType>
<!-- End X509Data -->
<!-- Begin PGPData -->
<xs:element name="PGPData" type="ds:PGPDataType"/>
<xs:complexType name="PGPDataType">
<xs:choice>
<xs:sequence>
<xs:element name="PGPKeyID" type="xs:base64Binary"/>
<xs:element name="PGPKeyPacket" type="xs:base64Binary" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
<xs:sequence>
<xs:element name="PGPKeyPacket" type="xs:base64Binary"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:choice>
</xs:complexType>
<!-- End PGPData -->
<!-- Begin SPKIData -->
<xs:element name="SPKIData" type="ds:SPKIDataType"/>
<xs:complexType name="SPKIDataType">
<xs:sequence maxOccurs="unbounded">
<xs:element name="SPKISexp" type="xs:base64Binary"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<!-- End SPKIData -->
<!-- End KeyInfo -->
<!-- Start Object (Manifest, SignatureProperty) -->
<xs:element name="Object" type="ds:ObjectType"/>
<xs:complexType name="ObjectType" mixed="true">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:any namespace="##any" processContents="lax"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
<xs:attribute name="MimeType" type="xs:string" use="optional"/> <!-- add a grep facet -->
<xs:attribute name="Encoding" type="xs:anyURI" use="optional"/>
</xs:complexType>
<xs:element name="Manifest" type="ds:ManifestType"/>
<xs:complexType name="ManifestType">
<xs:sequence>
<xs:element ref="ds:Reference" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:complexType>
<xs:element name="SignatureProperties" type="ds:SignaturePropertiesType"/>
<xs:complexType name="SignaturePropertiesType">
<xs:sequence>
<xs:element ref="ds:SignatureProperty" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:complexType>
<xs:element name="SignatureProperty" type="ds:SignaturePropertyType"/>
<xs:complexType name="SignaturePropertyType" mixed="true">
<xs:choice maxOccurs="unbounded">
<xs:any namespace="##other" processContents="lax"/>
<!-- (1,1) elements from (1,unbounded) namespaces -->
</xs:choice>
<xs:attribute name="Target" type="xs:anyURI" use="required"/>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:complexType>
<!-- End Object (Manifest, SignatureProperty) -->
<!-- Start Algorithm Parameters -->
<xs:simpleType name="HMACOutputLengthType">
<xs:restriction base="xs:integer"/>
</xs:simpleType>
<!-- Start KeyValue Element-types -->
<xs:element name="DSAKeyValue" type="ds:DSAKeyValueType"/>
<xs:complexType name="DSAKeyValueType">
<xs:sequence>
<xs:sequence minOccurs="0">
<xs:element name="P" type="ds:CryptoBinary"/>
<xs:element name="Q" type="ds:CryptoBinary"/>
</xs:sequence>
<xs:element name="G" type="ds:CryptoBinary" minOccurs="0"/>
<xs:element name="Y" type="ds:CryptoBinary"/>
<xs:element name="J" type="ds:CryptoBinary" minOccurs="0"/>
<xs:sequence minOccurs="0">
<xs:element name="Seed" type="ds:CryptoBinary"/>
<xs:element name="PgenCounter" type="ds:CryptoBinary"/>
</xs:sequence>
</xs:sequence>
</xs:complexType>
<xs:element name="RSAKeyValue" type="ds:RSAKeyValueType"/>
<xs:complexType name="RSAKeyValueType">
<xs:sequence>
<xs:element name="Modulus" type="ds:CryptoBinary"/>
<xs:element name="Exponent" type="ds:CryptoBinary"/>
</xs:sequence>
</xs:complexType>
<!-- End KeyValue Element-types -->
<!-- End Signature -->
</xs:schema>
===============================================================================
Code for registering the xml-schema
begin
dbms_xmlschema.deleteSchema('http://xmlns.oracle.com/xdb/schemas/DNTSB/www.sporfori.fo/schemas/www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd',
dbms_xmlschema.DELETE_CASCADE_FORCE);
end;
begin
DBMS_XMLSCHEMA.REGISTERURI(
schemaurl => 'http://www.sporfori.fo/schemas/www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd',
schemadocuri => 'http://www.sporfori.fo/schemas/www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd',
local => TRUE,
gentypes => TRUE,
genbean => FALSE,
gentables => TRUE,
force => FALSE,
owner => 'DNTSB',
options => 0);
end;
Test program
-- Created on 17-07-2006 by EEJ
declare
XML_TEXT3 CLOB := '<Object xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignatureProperties>
<SignatureProperty Target="">
<Timestamp xmlns="http://www.sporfori.fo/schemas/dnts/general/2006/11/14">2007-05-10T12:00:00-05:00</Timestamp>
</SignatureProperty>
</SignatureProperties>
</Object>';
xmldoc xmltype;
begin
xmldoc := xmltype(xml_text3);
insert into signaturetable
(xml_document, ts)
values
(xmldoc, current_timestamp);
end;
Platform information
Operating system:
-bash-3.00$ uname -a
SunOS dntsdb 5.10 Generic_125101-09 i86pc i386 i86pc
SQLPlus:
SQL*Plus: Release 10.2.0.3.0 - Production on Fri Aug 17 00:15:13 2007
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Enter password:
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
With the Partitioning and Data Mining options
Kind Regards,
EyðunYou should report this in a service request on http://metalink.oracle.com.
It is a shame that you put all the effort here to describe your problem, but on the other hand you can now also copy & paste the question to Oracle Support.
Because you are using 10.2.0.3; I am guessing that you have a valid service contract... -
Problem deleting from table with xmltype column
Hi,
Using a standard, simple screen (generated from JHeadstart), I don't seem to be able to delete from a table including an xmltype column. I have tried it even with a very simple mock table with only one column, an xmltype column, and every time I check the "delete" box and click "save", I get the following error:
oracle.jbo.RowInconsistentException: JBO-25014: Another user has changed the row with primary key oracle.jbo.Key[33 ].
I have tried this in the JDeveloper application module tester too and the result is the same.
Is it possible to delete a row from a table with an xmltype column? Am I doing something wrong? Is there something special needs done?
As I say, I did this with a one-xmltype-column table using the "Business Components from Tables" wizard, accepting all the defaults.
Thanks,
DarrenIn short you want
SELECT extractvalue(myxml, '/PurchaseOrder/Reference')
FROM dab_test;This difference is that for dab_xml, there are no columns defined for the table, therefore you are [OBJECT_VALUE|http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/pseudocolumns006.htm#sthref830] as an alias for a non existent column.
With dab_test, you have a column that contains the XML so you need to use that column name instead of OBJECT_VALUE. -
ORA-00904 on create table with xmltype column
Hi,
I am trying to create a table with syntax
CREATE TABLE ss_test(docid integer primary key, content varchar2(4000),acl XMLType)
XMLType column acl store as object relational
XMLSchema "acl.xsd" element "acl"
varray xmldata."ace" store as table ace_tab;
and getting ORA-00904.
acl.xsd is registered as
begin
dbms_xmlschema.registerschema('acl.xsd',
' <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xdb="http://xmlns.oracle.com/xdb">
<xs:element name="acl" xdb:SQLType="ACL_TYPE">
<xs:complexType>
<xs:sequence>
<xs:element name="ace" maxOccurs="100">
<xs:complexType>
<xs:attribute name="id" type="xs:integer"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>',true,true,false,false);
end;
Couldnt figure out whats wrong with the syntax. Any pointers ?
Thanks,
RakeshHmmmm ... I don't know if I should smile or frown with the implication that I am an OO guy :D :D
Most of my colleagues when I started working as a software engineer, treated me as too low-level because of my C background (started doing C in 1985).
In my last job, my colleagues hated my guts because I was asking them to squeeze every bit of performance out of C++ by using STL which is definitely not OO (although C++ is).
My current colleagues treat me as a DB guru (which I most definitely am not) and they overlook/forget the fact that most of them use Java libraries in their projects, that I wrote for them !
I am inclined to believe that I do not fall into any category in the end...
The only thing I am for sure - and I am proud of it - is inquisitive. I want to know everything there is about the tools I use, and so I end up spending hours and hours investigating... (Microsoft found that out the hard way when I filed 16 bug reports in 8 days when Visual C++ 6 came out ! Not that it hurt them though...)
This is where my confession ends (and my working on the XML validator starts...)
Καληνύχτα Marco
Philip (Φίλιππος in Greek)
PS: I did not follow the last solution anyway. I just wanted to verify its operability ;) -
Find size of table with XMLTYPE column STORE AS BINARY XML
Hi,
I have a table with structure as:
CREATE TABLE XML_TABLE_1
ID NUMBER NOT NULL,
SOURCE VARCHAR2(255 CHAR) NOT NULL,
XML_TEXT SYS.XMLTYPE,
CREATION_DATE TIMESTAMP(6) NOT NULL
XMLTYPE XML_TEXT STORE AS BINARY XML (
TABLESPACE Tablespace1_LOB
DISABLE STORAGE IN ROW
CHUNK 16384
RETENTION
CACHE READS
NOLOGGING)
ALLOW NONSCHEMA
DISALLOW ANYSCHEMA
TABLESPACE Tablespace2_DATA
- So HOW do I find the total size occupied by this table. Does BINARY storage work as LOB storage. i.e. I need to consider USER_LOBS as well for this.
OR foll. will work
select segment_name as tablename, sum(bytes/ (1024 * 1024 * 1024 )) as tablesize_in_GB
From dba_segments
where segment_name = 'XML_TABLE_1'
and OWNER = 'SCHEMANAME'
group by segment_name ;
- Also if I am copying it to another table of same structure as:
Insert /*+ append */ into XML_TABLE_2 Select * from XML_TABLE_1.
Then how much space in ROllbackSegment do I need. Is it equal to the size of the table XML_TABLE_1?
Thanks..I think foll query calculates it right while including the LOB storage as:
SELECT SUM(bytes)/1024/1024/1024 gb
FROM dba_segments
WHERE (owner = 'SCHEMA_NAME' and
segment_name = 'TABLE_NAME')
OR (owner, segment_name) IN (
SELECT owner, segment_name
FROM dba_lobs
WHERE owner = 'SCHEMA_NAME'
AND table_name = 'TABLE_NAME')
It's 80 GB for our Table with XMLType Column.
But for the second point:
Do we need 80GB of UNDO/ROLLBACK Segment for performing:
Insert /*+ append */ into TableName1 Select * from TableName;
Thanks..
Maybe you are looking for
-
USB 2.0 not functioning properly after upgrading to 3.10.3-1 kernel
After upgrading to the 3.10.3-1 kernel USB 2.0 is not working anymore on my ASrock ION330 nettop. I just did a system upgrade (including a kernel upgrade to 3.10.5-1), but the problem remains... Here's the relevant messages that I extracted with jour
-
How do I add and remove custom mail sounds
I have a custom mail sound that I would like to remove from Apple mail. I have another sound that I would like to add to mail. There was a web site that explained how to do this for 10.4 but I cannot find a procedure for doing it with 10.5.
-
How do I download a 37 minute video recorded on my iphone to my computer or Youtube?
I recorded a training session on my iPhone and need to share it with others. How do I share this 37 minute video?
-
2008 macbook overheating problems. SOS!
I have had macbook 2008 aluminum body since November 2008. It was a dream for two years until it started overheating & slowing down whenever I'd be browsing the internet on safari, firefox or opera with the cooling fans working overtime. It also occu
-
So, I'm looking to upgrade from flash 8, and I was downloading the trial for CS3, but it won't install for me. I get through the system check fine, but then when it actually begins to install, it asks me to insert the disk. I don't have a disk, seein