Ora-31050 on dbms_xdb.createresource

Hi,
I´m trying to save xml output to OS file using the <dbms_xdb.createresource> command.
Executing it in sql*devloper works fine, It creats the file whithin the xbd strcuture.
But when i run the same command in a pl/sql procedure it returns:
Error report:
ORA-31050: Access denied
ORA-06512: em "XDB.DBMS_XDB", line 73
ORA-06512: em "OBERS.TESTGENXML", line 7
ORA-06512: em line 1
31050. 00000 - "Access denied"
The pl/sql command is:
create or replace PROCEDURE TESTGENXML AS
BEGIN
declare
x boolean ;
begin
x := dbms_xdb.createresource('/teste2.xml' ,'<p> 1 </p> ' );
end;
END TESTGENXML;
What can there be wrong. I´m using database 10.2.0.1
Anyone a clue?
Thanks,
Sjraar Gubbels
Patos de Minas - Brasil

This problem is described in support.oracle.com (metalink).
The issue is discussed in bug 7710668: BUG 7710668 - ORA-31050 WHEN TRYING TO CREATE AN XDB RESOURCE VIA PL/SQL

Similar Messages

  • DBMS_XDB.CREATERESOURCE from JAVA

    Hi all,
    i'm trying to load XML-data into the database with the following pseudocode:
    SQLText := "DECLARE
                  retB boolean;
                  XMLDoc XMLType;
                BEGIN
                  XMLDoc := XMLType(?);
                  retB   := DBMS_XDB.CREATERESOURCE('Resourcename', XMLDoc);
                END";
    SQLStmt := (OraclePreparedStatement) _conn.prepareStatement(SQLText);
    SQLStmt.setString(1, xml);
    SQLStmt.execute();
    It works in JAVA with one exception. All characters using more than one byte in UTF-8 are double encoded. That means, if the XML-String contains an german umlaut &auml; (U+00E4) this character is encoded as "C3 A4" in the string. After submitting the XML to the database the &auml; has the value C3 83 C2 A4 => the value C3 is encoded as C3 83 and the value A4 is encoded as C2 A4.
    Thats no problem if i query the documents from Java because the way back is the same. But if i retrieve the document over the protocoll server (WebDav or FTP) the character encoding is corrupted (2 characters for &auml;).
    I am using Ora 11.2.0.1 on Linux with ojdbc6.jar. My NLS settings are as follows:
    NLS_LANGUAGE             GERMAN
    NLS_TERRITORY            GERMANY
    NLS_CHARACTERSET         AL32UTF8
    NLS_NCHAR_CHARACTERSET   AL16UTF16
    On the client GERMAN_GERMANY.WE8MSWIN1252, but i also tried with SET NLS_LANG=GERMAN_GERMANY.AL32UTF8 because of the UTF coding of the XML string.
    What I am doing the wrong way?
    Thanks for your help,
    regards
    Frank

    Hi odie_63,
    thanks for your reply. I have extracted the relevant code of the program into a tiny test application.
    package project1;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.text.MessageFormat;
    import oracle.jdbc.OraclePreparedStatement;
    import oracle.ucp.jdbc.PoolDataSource;
    import oracle.ucp.jdbc.PoolDataSourceFactory;
    public class Application1 {
        public static void main(String[] args) {
            try {
                doSimpleTest();
            } catch (Exception e) {
                e.printStackTrace();
        public static void doSimpleTest(){
            System.out.println("doing simple test case...");
            final String insertSQL    = "  DECLARE\n" +
                                        "    retB boolean;\n" +
                                        "    XMLDoc XMLType;\n" +
                                        "  BEGIN\n" +
                                        "    XMLDoc := XMLType(?);\n" +
                                        "    retB   := DBMS_XDB.CREATERESOURCE({0},XMLDoc);         \n" +
                                        "  END;";  
            final String xml            = "<?xml version=\"1.0\" encoding=\"utf-8\"?><test xmlns=\"http://www.gfai.de/Test\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.gfai.de/Test http://www.gfai.de/Test\">äöü</test>";
            String SQL_QUERY          = null;
            PoolDataSource _pds       = null;
            Connection _conn          = null;
            OraclePreparedStatement s = null;
            try{
                DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
                //Creating a pool-enabled data source
                _pds = PoolDataSourceFactory.getPoolDataSource();
                //Setting connection properties of the data source
                _pds.setConnectionFactoryClassName("oracle.jdbc.pool.OracleDataSource");
                _pds.setURL("jdbc:oracle:thin:@10.10.182.110:1521:ORALX64");
                _pds.setUser("test");
                _pds.setPassword("tset");
                //Setting pool properties
                _pds.setInitialPoolSize(5);
                _pds.setMinPoolSize(5);
                _pds.setMaxPoolSize(10);
                // connection           
                _conn = _pds.getConnection();  
                // Insert
                SQL_QUERY = MessageFormat.format(insertSQL, new Object[]{"'/public/test/test.xml'"});
                s = (OraclePreparedStatement) _conn.prepareStatement(SQL_QUERY);
                s.setString(1, new String(xml.getBytes("UTF-8")));
                s.execute();
                System.out.println("inserted...");
            catch(Exception ex){
                ex.printStackTrace();
            finally{
                try{s.close();_conn.close();}catch(Exception ex){};
            return;
    Before running the test it's required to set up the user test and the XML-schema. I have done it with the following lines of code:
    CONNECT SYSTEM;
    CREATE USER TEST IDENTIFIED BY "tset";
    GRANT CREATE SESSION TO TEST;
    GRANT RESOURCE TO TEST;
    DECLARE
      RETB BOOLEAN;
    BEGIN
      RETB := DBMS_XDB.CREATEFOLDER('/sys/schemas/PUBLIC/www.gfai.de');
      RETB := DBMS_XDB.CREATEFOLDER('/sys/schemas/PUBLIC/www.gfai.de/test');
      RETB := DBMS_XDB.CREATEFOLDER('/public/test');
      COMMIT;
    END;
    CREATE OR REPLACE DIRECTORY TEST_DIR AS '/home/oracle';
    GRANT  READ ON DIRECTORY TEST_DIR TO test;
    BEGIN
      DBMS_XMLSCHEMA.registerSchema(
    SCHEMAURL => 'http://www.gfai.de/Test',
    SCHEMADOC => BFILENAME('TEST_DIR','Test.xsd'),
    LOCAL => FALSE,
    GENTYPES => TRUE,
    GENTABLES => TRUE);
    END;
    After executing the test case i get the following results with sqlplus:
    SQL> select dump(extractvalue(object_value,'/test')) from test_document;
    DUMP(EXTRACTVALUE(OBJECT_VALUE,'/TEST'))
    Typ=1 Len=12: 195,131,194,164,195,131,194,182,195,131,194,188
    SQL>
    The whole document is saved as
    SQL> select xdburitype('/public/test/test.xml').getblob() from dual;
    XDBURITYPE('/PUBLIC/TEST/TEST.XML').GETBLOB()
    3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554462D38223F3E0A3C
    7465737420786D6C6E733D22687474703A2F2F7777772E676661692E64652F546573742220786D6C
    6E733A7873693D22687474703A2F2F7777772E77332E6F72672F323030312F584D4C536368656D61
    2D696E7374616E636522207873693A736368656D614C6F636174696F6E3D22687474703A2F2F7777
    772E676661692E64652F5465737420687474703A2F2F7777772E676661692E64652F54657374223E
    C383C2A4C383C2B6C383C2BC3C2F746573743E0A
    SQL>
    The schema definition file is as follows:
    <?xml version="1.0" encoding="windows-1252" ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                xmlns="http://www.gfai.de/Test"
                targetNamespace="http://www.gfai.de/Test"
                elementFormDefault="qualified"
                xmlns:xdb="http://xmlns.oracle.com/xdb"
                xdb:storeVarrayAsTable="true">
      <xsd:element name="test" xdb:defaultTableSchema="TEST"
                   xdb:defaultTable="TEST_DOCUMENT">
        <xsd:complexType>
          <xsd:simpleContent>
            <xsd:extension base="xsd:string">
            </xsd:extension>
          </xsd:simpleContent>
        </xsd:complexType>
      </xsd:element>
    </xsd:Schema>
    thanks again,
    regards
    Frank

  • ORA-31050:Access denied when trying enabling the database-native Web servic

    Dear all,
    I'm trying to follow the instruction of OBE about "Using Oracle XML DB Web Services for Service-Oriented Architecture " as this url http://st-curriculum.oracle.com/obe/db/11g/r1/prod/datamgmt/xmldb2_b/xmldb2_b.htm#http .
    I would like to enable the database-native Web service end point in Oracle XML DB and I already execute the script to create Web Service Endpoint.
    Anyway, I got the following error.
    ORA-31050: Access denied
    ORA-06512: at "XDB.DBMS_XDB", line 528
    ORA-06512: at "SYSTEM.ADDSERVLETMAPPING", line 91
    I found that this procedure was created on system schema but the problem occur when I tried to call ADDSERVLETMAPPING procedure.
    This is a code that I used to enable.
    set pagesize 100
    set linesize 132
    set long 20000
    set echo on
    -- conn sys/oracle as sysdba
    create or replace procedure addServletMapping (pattern varchar2,
    servletname varchar2,
    dispname varchar2,
    servletclass varchar2,
    servletschema varchar2,
    language varchar2,
    description varchar2,
    securityRole xmltype) as
    xdbconfig xmltype;
    begin
    xdbconfig := dbms_xdb.cfg_get();
    select deleteXML
    xdbconfig,
    '/xdbconfig/sysconfig/protocolconfig/httpconfig/webappconfig/servletconfig/servlet-list/servlet[servlet-name="' || servletname || '"]'
    into xdbconfig
    from dual;
    if (language = 'C') then
    select insertChildXML
    xdbconfig,
    '/xdbconfig/sysconfig/protocolconfig/httpconfig/webappconfig/servletconfig/servlet-list',
    'servlet',
    xmlElement
    "servlet",
    xmlAttributes('http://xmlns.oracle.com/xdb/xdbconfig.xsd' as "xmlns"),
    xmlForest
    servletname as "servlet-name",
    language as "servlet-language",
    dispname as "display-name",
    description as "description"
    securityRole
    into xdbconfig
    from dual;
    else
    select insertChildXML
    xdbconfig,
    '/xdbconfig/sysconfig/protocolconfig/httpconfig/webappconfig/servletconfig/servlet-list',
    'servlet',
    xmlElement
    "servlet",
    xmlAttributes('http://xmlns.oracle.com/xdb/xdbconfig.xsd' as "xmlns"),
    xmlForest
    servletname as "servlet-name",
    language as "servlet-language",
    dispname as "display-name",
    description as "description",
    servletclass as "servlet-class",
    servletschema as "servlet-schema"
    into xdbconfig
    from dual;
    end if;
    select deleteXML
    xdbconfig,
    '/xdbconfig/sysconfig/protocolconfig/httpconfig/webappconfig/servletconfig/servlet-mappings/servlet-mapping[servlet-name="' || servletname || '"]'
    into xdbconfig
    from dual;
    select insertChildXML
    xdbconfig,
    '/xdbconfig/sysconfig/protocolconfig/httpconfig/webappconfig/servletconfig/servlet-mappings',
    'servlet-mapping',
    xmltype
    '<servlet-mapping xmlns="http://xmlns.oracle.com/xdb/xdbconfig.xsd">
    <servlet-pattern>'||pattern||'</servlet-pattern>
    <servlet-name>'||servletname||'</servlet-name>
    </servlet-mapping>'
    into xdbconfig
    from dual;
    xdb.dbms_xdb.cfg_update(xdbconfig);
    end;
    call addServletMapping(
    '/orawsv/*',
    'orawsv',
    'Oracle Query Web Service',
    null,
    null,
    'C',
    'Web Services Servlet',
    xmltype(
    '<security-role-ref>
    <role-name>XDB_WEBSERVICES</role-name>
    <role-link>XDB_WEBSERVICES</role-link>
    </security-role-ref>'
    call addServletMapping(
    '/orawsdl/*',
    'orawsdl',
    'Oracle WSDLs',
    null,
    null,
    'C',
    'WSDL Servlet',
    xmltype(
    '<security-role-ref>
    <role-name>XDB_WEBSERVICES</role-name>
    <role-link>XDB_WEBSERVICES</role-link>
    </security-role-ref>'
    --grant XDB_WEBSERVICES to oe
    grant XDB_WEBSERVICES to TESTDB
    -- For 11g only
    --grant XDB_WEBSERVICES_OVER_HTTP to oe
    grant XDB_WEBSERVICES_OVER_HTTP to TESTDB
    --grant XDB_WEBSERVICES_WITH_PUBLIC to oe
    grant XDB_WEBSERVICES_WITH_PUBLIC to TESTDB
    -- Clean up afterward
    drop procedure addServletMapping
    Regards,
    Zenoni
    Edited by: zenoni on Jan 28, 2011 10:18 AM

    Test if you can access the generic WSDL using a browser
    http://server:port/orawsv?wsdlYou should get prompted for a username and password. If you provide the username and password of a database user who was been granted the Web Services Roles you should see the query service WSDL
    <definitions name="orawsv" targetNamespace="http://xmlns.oracle.com/orawsv"
        xmlns="http://schemas.xmlsoap.org/wsdl/"
        xmlns:tns="http://xmlns.oracle.com/orawsv"
        xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
        xmlns:xsd="http://www.w3.org/2001/XMLSchema"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://schemas.xmlsoap.org/wsdl/ http://schemas.xmlsoap.org/wsdl/">
    <types>
      <xsd:schema
            targetNamespace="http://xmlns.oracle.com/orawsv"
       elementFormDefault="qualified">
       <xsd:element name="query">
        <xsd:complexType>
         <xsd:sequence>
          <xsd:element name="DDL_text" type="xsd:string"
           minOccurs="0" maxOccurs="unbounded" />
          <xsd:element name="query_text">
           <xsd:complexType>
            <xsd:simpleContent>
             <xsd:extension base="xsd:string">
              <xsd:attribute name="type">
               <xsd:simpleType>
                <xsd:restriction base="xsd:NMTOKEN">
                 <xsd:enumeration value="SQL" />
                 <xsd:enumeration value="XQUERY" />
                </xsd:restriction>
               </xsd:simpleType>
              </xsd:attribute>
             </xsd:extension>
            </xsd:simpleContent>
           </xsd:complexType>
          </xsd:element>
          <xsd:choice minOccurs="0" maxOccurs="unbounded">
           <xsd:element name="bind">
            <xsd:complexType>
             <xsd:simpleContent>
              <xsd:extension base="xsd:string">
               <xsd:attribute name="name" type="xsd:string" />
              </xsd:extension>
             </xsd:simpleContent>
            </xsd:complexType>
           </xsd:element>
           <xsd:element name="bindXML">
            <xsd:complexType>
             <xsd:sequence>
              <xsd:any/>
             </xsd:sequence>
            </xsd:complexType>
           </xsd:element>
          </xsd:choice>
          <xsd:element name="null_handling" minOccurs="0">
           <xsd:simpleType>
            <xsd:restriction base="xsd:NMTOKEN">
             <xsd:enumeration value="DROP_NULLS" />
             <xsd:enumeration value="NULL_ATTR" />
             <xsd:enumeration value="EMPTY_TAG" />
            </xsd:restriction>
           </xsd:simpleType>
          </xsd:element>
          <xsd:element name="max_rows" type="xsd:positiveInteger" minOccurs="0"/>
          <xsd:element name="skip_rows" type="xsd:positiveInteger" minOccurs="0"/>
          <xsd:element name="pretty_print" type="xsd:boolean" minOccurs="0"/>
          <xsd:element name="indentation_width" type="xsd:positiveInteger" minOccurs="0"/>
          <xsd:element name="rowset_tag" type="xsd:string" minOccurs="0"/>
          <xsd:element name="row_tag" type="xsd:string" minOccurs="0"/>
          <xsd:element name="item_tags_for_coll" type="xsd:boolean" minOccurs="0"/>
         </xsd:sequence>
        </xsd:complexType>
       </xsd:element>
       <xsd:element name="queryOut">
        <xsd:complexType>
         <xsd:sequence>
          <xsd:any/>
         </xsd:sequence>
        </xsd:complexType>
       </xsd:element>
      </xsd:schema>
    </types>
      <message name="QueryInput">
       <part name="body" element="tns:query"/>
      </message>
      <message name="XMLOutput">
       <part name="body" element="tns:queryOut"/>
      </message>
      <portType name="ORAWSVPortType">
       <operation name="XMLFromQuery">
        <input message="tns:QueryInput"/>
        <output message="tns:XMLOutput"/>
       </operation>
      </portType>
      <binding name="ORAWSVBinding" type="tns:ORAWSVPortType">
       <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
       <operation name="XMLFromQuery">
        <soap:operation soapAction="http://localhost/orawsv"/>
        <input>
         <soap:body use="literal"/>
        </input>
        <output>
         <soap:body use="literal"/>
        </output>
       </operation>
      </binding>
      <service name="ORAWSVService">
       <documentation>Oracle Web Service</documentation>
       <port name="ORAWSVPort" binding="tns:ORAWSVBinding">
        <soap:address location="http://localhost/orawsv"/>
       </port>
    </service>
    </definitions>Edited by: mdrake on Jan 27, 2011 8:42 PM

  • DBMS_XDB.createResource(path, XMLTYPE) removes the XML declaration

    Hi,
    I'm writing out XML documents to the XMLDB repository by looping through a view which has an XMLTYPE column and writing each instance of that column using the 2nd form of createresource specified in the PL/SQL Packages and Types Reference.
    DBMS_XDB.CREATERESOURCE(
    path IN VARCHAR2,
    data IN SYS.XMLTYPE)
    RETURN BOOLEAN;
    It creates the resource but the xml is missing the <?xml version="1.0" encoding="UTF-8"?> declaration.
    Any idea of why this is happening and how I can fix it, preferably without having to mess about with converting XMLTYPE to VARCHAR2 and prepending the declaration.
    Thanks,
    Chris
    Oops forgot the version info. Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 on Windows
    Edited by: chrisis on Oct 16, 2009 2:31 PM

    I had VERSION NO VALUE, STANDALONE NO VALUE on the XMLRoot function.

  • How is DefaultTable populated after dbms_xdb.createResource?

    ** 10gR2 **
    hi, I'm inheriting some XMLDB/PlSql code
    new to XMLDB, appreciate some help
    <p>
    Sample snip of registered xsd:
    <div style="color:red;">
    <xs:complexType name="OurTransactions" xdb:SQLType="OurTransaction1234_T" xdb:SQLSchema="SCOTT">
    <xs:complexContent>
    <xs:extension base="SalesTransactions">
    <xs:sequence>
    <xs:element name="OurTransaction" type="SalesOurType"
    maxOccurs="unbounded" <strong>xdb:defaultTable="OUR_TRANSACTION_TABLE</strong>" xdb:SQLInline="false"
    xdb:SQLName="OurTransaction" xdb:SQLType="SalesOur4321_T"
    xdb:SQLSchema="SCOTT" xdb:defaultTableSchema="SCOTT"
    xdb:SQLCollType="XDB$XMLTYPE_REF_LIST_T" xdb:SQLCollSchema="XDB"/>
    </xs:sequence>
    </xs:extension>
    </xs:complexContent>
    </xs:complexType>
    </div>
    </p>
    <p>
    I do see the XMLtype tables and types referenced in the annotation above.
    <strong>and XML doc is added this way: <span style="color:blue;">
    dbms_xdb.createResource('some_url', xml_clob);</span></strong>
    </p>
    <p>
    the default XMLtype table "OUR_TRANSACTION_TABLE" gets populated after dbms_xdb.createResource
    <strong>
    My question is "How ?"
    How is the default table populated when XML is added via "dbms_xdb.createResource" ?</strong>
    I haven't come across this in the documentation, appreciate if you can point out where in the doco.
    this specific topic is mentioned.
    thanks!
    </p>

    Truncate table should delete the associated resources (at least it appears to in 11g)
    If that doesn't work you can try something like this
    SQL> set timing on
    SQL> --
    SQL> select ANY_PATH
      2    from RESOURCE_VIEW, PURCHASEORDER p
      3   where extractValue(res,'/Resource/XMLRef') = ref(p)
      4  /
    /home/SCOTT/purchaseOrders/2003/Apr/AMCEWEN-20030409123336200304.xml
    /home/SCOTT/purchaseOrders/2003/Apr/EABEL-20030409123336200304.xml
    /home/SCOTT/purchaseOrders/2003/Apr/PTUCKER-20030409120030491PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/PTUCKER-20030409123336200304.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SBELL-20030409120030431PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SBELL-20030409123336200304.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SKING-200304091233363200304.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SMCCAIN-20030409120030441PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SMCCAIN-20030409120030451PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SMCCAIN-20030409123336151PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/VJONES-20030409120030401PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/VJONES-20030409123336301PDT.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/BEVERETT-2003110912343601PDT.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/BEVERETT-2003112302343802PDT.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/CDAVIES-2003100809243618PDT.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/CDAVIES-2003120809668273PDT.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/ChineseMovieTitles.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/WTAYLOR-2003082311908574PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/AWALSH-20030809123337203PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/AWALSH-20030809123337303PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/CJOHNSON-20030809123337283PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/DAUSTIN-20030809123337103PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/JCHEN-20030809123337123PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/JCHEN-20030809123337223PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/LSMITH-20030809123337323PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/SBELL-20030809123337353PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/SKING-20030809123337153PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/SMCCAIN-20030809123337173PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/TFOX-20030809123337243PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/AMCEWEN-20031209123338445PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/CJOHNSON-20031209123338595PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/DAUSTIN-20031209123338645PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/EABEL-20031209123338324PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/JCHEN-20031209123338475PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/LSMITH-20031209123338535PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/PTUCKER-20031209123338565PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/SBELL-20031209123338304PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/SBELL-20031209123338505PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/TFOX-20031209123338354PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/VJONES-20031209123338374PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/AMCEWEN-20030209123335600PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/AMCEWEN-20030209123335701PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/DAUSTIN-20030209123335811PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/EABEL-20030209123335791PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/PTUCKER-20030209123335721PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/PTUCKER-20030209123335821PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/SBELL-20030209123335771PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/SMCCAIN-20030209123335681PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/WSMITH-20030209123335650PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/WSMITH-20030209123335741PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/WSMITH-20030209123335751PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/AMCEWEN-20030109123335370PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/AWALSH-2003010912333570PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/CJOHNSON-20030109123335170PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/LSMITH-20030109123335500PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/PTUCKER-20030109123335430PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/SBELL-20030109123335280PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/SKING-20030109123335560PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/SMCCAIN-20030109123335470PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/TFOX-20030109123335520PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/VJONES-20030109123335350PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/WSMITH-20030109123335450PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/AMCEWEN-20030709123336902PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/CJOHNSON-2003070912333783PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/DAUSTIN-2003070912333702PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/DAUSTIN-2003070912333742PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/LSMITH-2003070912333722PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/SBELL-2003070912333763PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/SKING-20030709123336952PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/SMCCAIN-20030709123336972PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/TFOX-20030709123336872PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/TFOX-20030709123336912PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/VJONES-20030709123336932PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/AMCEWEN-20030609123336762PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/AWALSH-20030609123336642PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/CJOHNSON-20030609123336712PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/LSMITH-20030609123336852PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/SKING-20030609123336622PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/SKING-20030609123336822PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/SMCCAIN-20030609123336842PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/TFOX-20030609123336582PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/TFOX-20030609123336782PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/VJONES-20030609123336602PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/VJONES-20030609123336802PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/AWALSH-20030309123335871PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/AWALSH-20030309123335911PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/AWALSH-20030309123336101PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/CJOHNSON-20030309123335851PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/DAUSTIN-20030309123335931PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/JCHEN-20030309123335961PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/LSMITH-2003030912333661PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/SBELL-2003030912333601PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/SKING-20030309123336131PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/TFOX-2003030912333681PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/VJONES-20030309123335971PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/CJOHNSON-20030509123336482PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/EABEL-20030509123336382PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/JCHEN-20030509123336462PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/LSMITH-20030509123336562PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/PTUCKER-20030509123336452PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/SBELL-20030509123336362PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/SBELL-20030509123336532PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/SKING-20030509123336392PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/SMCCAIN-20030509123336512PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/VJONES-20030509123336502PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/WSMITH-20030509123336412PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/AWALSH-20031109123337954PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/AWALSH-2003110912333844PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/CJOHNSON-20031109123338124PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/CJOHNSON-2003110912333824PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/LSMITH-20031109123338234PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/SBELL-20031109123338204PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/SKING-20031109123337974PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/SKING-20031109123338294PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/SMCCAIN-2003110912333894PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/TFOX-20031109123337994PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/WSMITH-20031109123338154PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/AMCEWEN-20031009123337874PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/DAUSTIN-20031009123337613PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/JCHEN-20031009123337633PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/JCHEN-20031009123337733PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/JCHEN-20031009123337764PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/SBELL-20031009123337673PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/SKING-20031009123337703PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/TFOX-20031009123337653PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/TFOX-20031009123337784PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/VJONES-20031009123337814PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/WSMITH-20031009123337924PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/AWALSH-20030909123337483PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/DAUSTIN-20030909123337423PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/DAUSTIN-20030909123337553PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/JCHEN-20030909123337443PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/SKING-20030909123337383PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/SKING-20030909123337503PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/SMCCAIN-20030909123337403PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/TFOX-20030909123337463PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/TFOX-20030909123337563PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/VJONES-20030909123337363PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/VJONES-20030909123337583PDT.xml
    139 rows selected.
    Elapsed: 00:00:00.40
    SQL> call dbms_xdbz.DISABLE_HIERARCHY('SCOTT','PURCHASEORDER')
      2  /
    Call completed.
    Elapsed: 00:00:01.81
    SQL> select ANY_PATH
      2    from RESOURCE_VIEW, USER_XML_SCHEMAS
      3   where existsNode
      4         (
      5            res,
      6            '/Resource[SchOID="' || SCHEMA_ID || '" and ElNum="' ||
      7            extractValue
      8            (
      9              schema,
    10              '/xsd:schema/xsd:element[@name="PurchaseOrder"]/@xdb:propNumber',
    11              'xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb"'
    12            )
    13            || '"]'
    14         )  = 1
    15     and SCHEMA_URL = 'http://localhost:80/home/SCOTT/poSource/xsd/purchaseOrder.xsd'
    16  /
    /home/SCOTT/purchaseOrders/2003/Apr/AMCEWEN-20030409123336200304.xml
    /home/SCOTT/purchaseOrders/2003/Apr/EABEL-20030409123336200304.xml
    /home/SCOTT/purchaseOrders/2003/Apr/PTUCKER-20030409120030491PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/PTUCKER-20030409123336200304.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SBELL-20030409120030431PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SBELL-20030409123336200304.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SKING-200304091233363200304.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SMCCAIN-20030409120030441PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SMCCAIN-20030409120030451PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SMCCAIN-20030409123336151PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/VJONES-20030409120030401PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/VJONES-20030409123336301PDT.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/BEVERETT-2003110912343601PDT.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/BEVERETT-2003112302343802PDT.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/CDAVIES-2003100809243618PDT.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/CDAVIES-2003120809668273PDT.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/ChineseMovieTitles.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/WTAYLOR-2003082311908574PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/AWALSH-20030809123337203PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/AWALSH-20030809123337303PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/CJOHNSON-20030809123337283PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/DAUSTIN-20030809123337103PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/JCHEN-20030809123337123PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/JCHEN-20030809123337223PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/LSMITH-20030809123337323PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/SBELL-20030809123337353PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/SKING-20030809123337153PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/SMCCAIN-20030809123337173PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/TFOX-20030809123337243PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/AMCEWEN-20031209123338445PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/CJOHNSON-20031209123338595PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/DAUSTIN-20031209123338645PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/EABEL-20031209123338324PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/JCHEN-20031209123338475PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/LSMITH-20031209123338535PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/PTUCKER-20031209123338565PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/SBELL-20031209123338304PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/SBELL-20031209123338505PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/TFOX-20031209123338354PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/VJONES-20031209123338374PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/AMCEWEN-20030209123335600PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/AMCEWEN-20030209123335701PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/DAUSTIN-20030209123335811PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/EABEL-20030209123335791PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/PTUCKER-20030209123335721PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/PTUCKER-20030209123335821PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/SBELL-20030209123335771PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/SMCCAIN-20030209123335681PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/WSMITH-20030209123335650PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/WSMITH-20030209123335741PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/WSMITH-20030209123335751PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/AMCEWEN-20030109123335370PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/AWALSH-2003010912333570PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/CJOHNSON-20030109123335170PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/LSMITH-20030109123335500PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/PTUCKER-20030109123335430PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/SBELL-20030109123335280PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/SKING-20030109123335560PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/SMCCAIN-20030109123335470PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/TFOX-20030109123335520PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/VJONES-20030109123335350PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/WSMITH-20030109123335450PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/AMCEWEN-20030709123336902PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/CJOHNSON-2003070912333783PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/DAUSTIN-2003070912333702PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/DAUSTIN-2003070912333742PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/LSMITH-2003070912333722PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/SBELL-2003070912333763PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/SKING-20030709123336952PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/SMCCAIN-20030709123336972PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/TFOX-20030709123336872PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/TFOX-20030709123336912PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/VJONES-20030709123336932PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/AMCEWEN-20030609123336762PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/AWALSH-20030609123336642PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/CJOHNSON-20030609123336712PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/LSMITH-20030609123336852PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/SKING-20030609123336622PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/SKING-20030609123336822PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/SMCCAIN-20030609123336842PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/TFOX-20030609123336582PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/TFOX-20030609123336782PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/VJONES-20030609123336602PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/VJONES-20030609123336802PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/AWALSH-20030309123335871PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/AWALSH-20030309123335911PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/AWALSH-20030309123336101PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/CJOHNSON-20030309123335851PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/DAUSTIN-20030309123335931PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/JCHEN-20030309123335961PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/LSMITH-2003030912333661PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/SBELL-2003030912333601PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/SKING-20030309123336131PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/TFOX-2003030912333681PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/VJONES-20030309123335971PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/CJOHNSON-20030509123336482PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/EABEL-20030509123336382PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/JCHEN-20030509123336462PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/LSMITH-20030509123336562PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/PTUCKER-20030509123336452PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/SBELL-20030509123336362PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/SBELL-20030509123336532PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/SKING-20030509123336392PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/SMCCAIN-20030509123336512PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/VJONES-20030509123336502PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/WSMITH-20030509123336412PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/AWALSH-20031109123337954PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/AWALSH-2003110912333844PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/CJOHNSON-20031109123338124PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/CJOHNSON-2003110912333824PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/LSMITH-20031109123338234PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/SBELL-20031109123338204PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/SKING-20031109123337974PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/SKING-20031109123338294PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/SMCCAIN-2003110912333894PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/TFOX-20031109123337994PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/WSMITH-20031109123338154PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/AMCEWEN-20031009123337874PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/DAUSTIN-20031009123337613PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/JCHEN-20031009123337633PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/JCHEN-20031009123337733PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/JCHEN-20031009123337764PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/SBELL-20031009123337673PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/SKING-20031009123337703PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/TFOX-20031009123337653PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/TFOX-20031009123337784PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/VJONES-20031009123337814PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/WSMITH-20031009123337924PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/AWALSH-20030909123337483PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/DAUSTIN-20030909123337423PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/DAUSTIN-20030909123337553PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/JCHEN-20030909123337443PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/SKING-20030909123337383PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/SKING-20030909123337503PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/SMCCAIN-20030909123337403PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/TFOX-20030909123337463PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/TFOX-20030909123337563PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/VJONES-20030909123337363PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/VJONES-20030909123337583PDT.xml
    139 rows selected.
    Elapsed: 00:00:00.25
    SQL> truncate table PURCHASEORDER
      2  /
    Table truncated.
    Elapsed: 00:00:00.25
    SQL> select ANY_PATH
      2    from RESOURCE_VIEW, USER_XML_SCHEMAS
      3   where existsNode
      4         (
      5            res,
      6            '/Resource[SchOID="' || SCHEMA_ID || '" and ElNum="' ||
      7            extractValue
      8            (
      9              schema,
    10              '/xsd:schema/xsd:element[@name="PurchaseOrder"]/@xdb:propNumber',
    11              'xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb"'
    12            )
    13            || '"]'
    14         )  = 1
    15     and SCHEMA_URL = 'http://localhost:80/home/SCOTT/poSource/xsd/purchaseOrder.xsd'
    16  /
    /home/SCOTT/purchaseOrders/2003/Apr/AMCEWEN-20030409123336200304.xml
    /home/SCOTT/purchaseOrders/2003/Apr/EABEL-20030409123336200304.xml
    /home/SCOTT/purchaseOrders/2003/Apr/PTUCKER-20030409120030491PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/PTUCKER-20030409123336200304.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SBELL-20030409120030431PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SBELL-20030409123336200304.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SKING-200304091233363200304.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SMCCAIN-20030409120030441PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SMCCAIN-20030409120030451PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/SMCCAIN-20030409123336151PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/VJONES-20030409120030401PDT.xml
    /home/SCOTT/purchaseOrders/2003/Apr/VJONES-20030409123336301PDT.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/BEVERETT-2003110912343601PDT.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/BEVERETT-2003112302343802PDT.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/CDAVIES-2003100809243618PDT.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/CDAVIES-2003120809668273PDT.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/ChineseMovieTitles.xml
    /home/SCOTT/purchaseOrders/2003/AsianExamples/WTAYLOR-2003082311908574PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/AWALSH-20030809123337203PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/AWALSH-20030809123337303PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/CJOHNSON-20030809123337283PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/DAUSTIN-20030809123337103PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/JCHEN-20030809123337123PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/JCHEN-20030809123337223PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/LSMITH-20030809123337323PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/SBELL-20030809123337353PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/SKING-20030809123337153PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/SMCCAIN-20030809123337173PDT.xml
    /home/SCOTT/purchaseOrders/2003/Aug/TFOX-20030809123337243PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/AMCEWEN-20031209123338445PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/CJOHNSON-20031209123338595PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/DAUSTIN-20031209123338645PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/EABEL-20031209123338324PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/JCHEN-20031209123338475PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/LSMITH-20031209123338535PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/PTUCKER-20031209123338565PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/SBELL-20031209123338304PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/SBELL-20031209123338505PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/TFOX-20031209123338354PDT.xml
    /home/SCOTT/purchaseOrders/2003/Dec/VJONES-20031209123338374PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/AMCEWEN-20030209123335600PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/AMCEWEN-20030209123335701PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/DAUSTIN-20030209123335811PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/EABEL-20030209123335791PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/PTUCKER-20030209123335721PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/PTUCKER-20030209123335821PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/SBELL-20030209123335771PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/SMCCAIN-20030209123335681PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/WSMITH-20030209123335650PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/WSMITH-20030209123335741PDT.xml
    /home/SCOTT/purchaseOrders/2003/Feb/WSMITH-20030209123335751PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/AMCEWEN-20030109123335370PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/AWALSH-2003010912333570PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/CJOHNSON-20030109123335170PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/LSMITH-20030109123335500PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/PTUCKER-20030109123335430PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/SBELL-20030109123335280PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/SKING-20030109123335560PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/SMCCAIN-20030109123335470PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/TFOX-20030109123335520PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/VJONES-20030109123335350PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jan/WSMITH-20030109123335450PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/AMCEWEN-20030709123336902PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/CJOHNSON-2003070912333783PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/DAUSTIN-2003070912333702PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/DAUSTIN-2003070912333742PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/LSMITH-2003070912333722PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/SBELL-2003070912333763PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/SKING-20030709123336952PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/SMCCAIN-20030709123336972PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/TFOX-20030709123336872PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/TFOX-20030709123336912PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jul/VJONES-20030709123336932PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/AMCEWEN-20030609123336762PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/AWALSH-20030609123336642PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/CJOHNSON-20030609123336712PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/LSMITH-20030609123336852PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/SKING-20030609123336622PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/SKING-20030609123336822PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/SMCCAIN-20030609123336842PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/TFOX-20030609123336582PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/TFOX-20030609123336782PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/VJONES-20030609123336602PDT.xml
    /home/SCOTT/purchaseOrders/2003/Jun/VJONES-20030609123336802PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/AWALSH-20030309123335871PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/AWALSH-20030309123335911PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/AWALSH-20030309123336101PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/CJOHNSON-20030309123335851PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/DAUSTIN-20030309123335931PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/JCHEN-20030309123335961PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/LSMITH-2003030912333661PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/SBELL-2003030912333601PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/SKING-20030309123336131PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/TFOX-2003030912333681PDT.xml
    /home/SCOTT/purchaseOrders/2003/Mar/VJONES-20030309123335971PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/CJOHNSON-20030509123336482PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/EABEL-20030509123336382PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/JCHEN-20030509123336462PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/LSMITH-20030509123336562PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/PTUCKER-20030509123336452PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/SBELL-20030509123336362PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/SBELL-20030509123336532PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/SKING-20030509123336392PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/SMCCAIN-20030509123336512PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/VJONES-20030509123336502PDT.xml
    /home/SCOTT/purchaseOrders/2003/May/WSMITH-20030509123336412PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/AWALSH-20031109123337954PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/AWALSH-2003110912333844PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/CJOHNSON-20031109123338124PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/CJOHNSON-2003110912333824PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/LSMITH-20031109123338234PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/SBELL-20031109123338204PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/SKING-20031109123337974PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/SKING-20031109123338294PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/SMCCAIN-2003110912333894PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/TFOX-20031109123337994PDT.xml
    /home/SCOTT/purchaseOrders/2003/Nov/WSMITH-20031109123338154PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/AMCEWEN-20031009123337874PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/DAUSTIN-20031009123337613PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/JCHEN-20031009123337633PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/JCHEN-20031009123337733PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/JCHEN-20031009123337764PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/SBELL-20031009123337673PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/SKING-20031009123337703PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/TFOX-20031009123337653PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/TFOX-20031009123337784PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/VJONES-20031009123337814PDT.xml
    /home/SCOTT/purchaseOrders/2003/Oct/WSMITH-20031009123337924PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/AWALSH-20030909123337483PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/DAUSTIN-20030909123337423PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/DAUSTIN-20030909123337553PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/JCHEN-20030909123337443PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/SKING-20030909123337383PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/SKING-20030909123337503PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/SMCCAIN-20030909123337403PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/TFOX-20030909123337463PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/TFOX-20030909123337563PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/VJONES-20030909123337363PDT.xml
    /home/SCOTT/purchaseOrders/2003/Sep/VJONES-20030909123337583PDT.xml
    139 rows selected.
    Elapsed: 00:00:00.26
    SQL> declare
      2    cursor findDocs is
      3    select ANY_PATH
      4      from RESOURCE_VIEW, USER_XML_SCHEMAS
      5     where existsNode
      6           (
      7             res,
      8             '/Resource[SchOID="' || SCHEMA_ID || '" and ElNum="' ||
      9             extractValue
    10             (
    11               schema,
    12               '/xsd:schema/xsd:element[@name="PurchaseOrder"]/@xdb:propNumber',
    13               'xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb"'
    14             )
    15             || '"]'
    16           )  = 1
    17       and SCHEMA_URL = 'http://localhost:80/home/SCOTT/poSource/xsd/purchaseOrder.xsd';
    18  begin
    19    for d in findDocs loop
    20      dbms_xdb.deleteResource(d.ANY_PATH,4);
    21    end loop;
    22  end;
    23  /
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:01.15
    SQL>
    SQL>
    SQL>1. Disable the Hierarchy. This will prevent truncate from attempting to delete the resource before deleting the content of the table
    2. Truncate the table
    3. Delete all resources associated with the table..

  • ORA-31050: Access denied when try to register XMLSchema

    Dear All
    I got ORA-31050: Access denied
    when tried to run to load XML schema with DBMS_XMLSCHEMA.registerSchema
    Can you advise me what privilege should I grant to the user?
    I tried grant XDBADMIN role but it does nto help
    Thank you in advance
    Artem Rodin

    Dear Mark!
    I realy need you help!
    I can successfully register schema which has complexType declaration as root element, like
    <schema targetNamespace="http://www.oracle.com/PO.xsd"
         xmlns:po="http://www.oracle.com/PO.xsd"
         xmlns="http://www.w3.org/2001/XMLSchema">
    <complexType name="PurchaseOrderType">
         <sequence>
              <element name="PONum" type="decimal"/>
              <element name="Company">
                   <simpleType>
                        <restriction base="string">
                             <maxLength value="100"/>
                        </restriction>
                   </simpleType>
              </element>
              <element name="Item" maxOccurs="1000">
                   <complexType>
                        <sequence>
                             <element name="Part">
                                  <simpleType>
                                       <restriction base="string">
                                            <maxLength value="1000"/>
                                       </restriction>
                                  </simpleType>
                             </element>
                             <element name="Price" type="float"/>
                        </sequence>
                   </complexType>
              </element>
         </sequence>
    </complexType>
    <!--element name="PurchaseOrder" type="po:PurchaseOrderType"/-->
    </schema>
    But I failed if in the root there is element like
    <schema targetNamespace="http://www.oracle.com/PO.xsd"
         xmlns:po="http://www.oracle.com/PO.xsd"
         xmlns="http://www.w3.org/2001/XMLSchema">
    <complexType name="PurchaseOrderType">
         <sequence>
              <element name="PONum" type="decimal"/>
              <element name="Company">
                   <simpleType>
                        <restriction base="string">
                             <maxLength value="100"/>
                        </restriction>
                   </simpleType>
              </element>
              <element name="Item" maxOccurs="1000">
                   <complexType>
                        <sequence>
                             <element name="Part">
                                  <simpleType>
                                       <restriction base="string">
                                            <maxLength value="1000"/>
                                       </restriction>
                                  </simpleType>
                             </element>
                             <element name="Price" type="float"/>
                        </sequence>
                   </complexType>
              </element>
         </sequence>
    </complexType>
    <element name="PurchaseOrder" type="po:PurchaseOrderType"/>
    </schema>
    I got the following error stack
    ORA-01031: insufficient privileges
    ORA-06512: at “XDB.DBMS_XDBZ0”, line 218
    ORA-06512: at “XDB.DBMS_XDBZ”, line 6
    ORA-06512: at line 1
    ORA-06512: at “XDB.DBMS_XMLSCHEMA_INT”, line 0
    ORA-06512: at “XDB.DBMS_XMLSCHEMA”, line 26
    ORA-06512: at “XDB.DBMS_XMLSCHEMA”, line 131
    ORA-06512: at “DVLP.PRIME_BRIDGE”, line 73
    ORA-06512: at line 7
    I guess you can reproduce this in-house,
    It's not my schema it is taken from
    XML Database Developer’s Guide - Oracle XML DB
    Structured Mapping of XMLType 5-3
    Example 5–1 XML Schema Definition, po.xsd
    As far as I understand in the second case Oracle tries to create a table to store XML content and fails to do it.
    User that I used has DBA role. What other privileges should I grant to the user? And/or I should grant some additional privileges to "XDB" user?
    This issue has become critical for me, so I am highly appreciate any assistance
    Many thanks in advance
    Best regards
    Artem Rodin

  • Fail to execute XDB.DBMS_XDB

    Hi Expert,
    I'm having a problem on execute DBMS_XDB.CreateResource in oracle database 11g XE R2.
    I tried to grant all on DBMS_XDB to User. But problem still occurred.
    The error show as below;
    ORA-31050: Access denied
    ORA-06512: at "XDB.DBMS_XDB", line 174
    How can i solve it? Can anyone guide on it. Thanks.
    Regards,
    Monica

    Hi,
    What's the target location of the resource?
    Most likely the user doesn't have the necessary privileges to write in the repository at that location. Check the ACL.

  • ORA-30937 when validating element referenced from included schema

    I've boiled my latest problem down to a simple test case. Basically it seems as though the included schema is the problem, but I can't figure out why:
    begin
    dbms_xmlschema.deleteSchema('http://www.forensic.gov.uk/eMessages/Pnclink/NDNA/testinclude.xsd', dbms_xmlschema.DELETE_CASCADE_FORCE);
    dbms_xmlschema.registerSchema('http://www.forensic.gov.uk/eMessages/Pnclink/NDNA/testinclude.xsd',
    '<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" versionfiltered="1-00" id="NDNASimpleTypes">
    <xsd:complexType name="MessageHeaderType">
    <xsd:sequence>
    <xsd:element name="MESSAGE_NUMBER" type="xsd:long"/>
    <xsd:element name="MESSAGE_TYPE" type="MessageTypeType"/>
    <xsd:element name="MESSAGE_DATE" type="xsd:dateTime"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:simpleType name="MessageTypeType">
    <xsd:annotation>
    <xsd:documentation>The definition of the Sample Message Types</xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:string">
    <xsd:maxLength value="2"/>
    <xsd:enumeration value="CT"/>
    <xsd:enumeration value="CA"/>
    <xsd:enumeration value="CD"/>
    </xsd:restriction>
    </xsd:simpleType>
    </xsd:schema>',TRUE,FALSE,FALSE,FALSE);
    dbms_xmlschema.deleteSchema('http://www.forensic.gov.uk/eMessages/Pnclink/NDNA/Test.xsd', dbms_xmlschema.DELETE_CASCADE);
    dbms_xmlschema.registerSchema('http://www.forensic.gov.uk/eMessages/Pnclink/NDNA/Test.xsd',
    '<xsd:schema xmlns="http://www.forensic.gov.uk/eMessages/Pnclink/NDNA" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.forensic.gov.uk/eMessages/Pnclink/NDNA" elementFormDefault="qualified" attributeFormDefault="unqualified" versionfiltered="1.0" id="Test">
    <xsd:include schemaLocation="http://www.forensic.gov.uk/eMessages/Pnclink/NDNA/testinclude.xsd"/>
    <xsd:element name="SAMPLE_MESSAGE">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="MESSAGE_HEADER" type="MessageHeaderType"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:schema>',TRUE,TRUE,FALSE,FALSE);
    END;
    update xml_in
    set xml_data = xmltype ( '<?xml versionfiltered="1.0" encoding="UTF-8"?>
    <!--Sample XML file generated by XMLSpy v2005 rel. 3 U (http://www.altova.com)-->
    <SAMPLE_MESSAGE xmlns="http://www.forensic.gov.uk/eMessages/Pnclink/NDNA" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.forensic.gov.uk/eMessages/Pnclink/NDNA http://www.forensic.gov.uk/eMessages/Pnclink/NDNA/Test.xsd">
    <MESSAGE_HEADER>
    <MESSAGE_NUMBER>2147483647</MESSAGE_NUMBER>
    <MESSAGE_TYPE>CT</MESSAGE_TYPE>
    <MESSAGE_DATE>2001-12-17T09:30:47</MESSAGE_DATE>
    </MESSAGE_HEADER>
    </SAMPLE_MESSAGE>
    where msg_id = 8
    and I get the error:
    ORA-30937: No schema definition for 'MESSAGE_NUMBER' (namespace 'http://www.forensic.gov.uk/eMessages/Pnclink/NDNA') in parent 'MESSAGE_HEADER'
    ORA-06512: at "SYS.XMLTYPE", line 0
    ORA-06512: at line 27
    But if I remove the MESSAGE_NUMBER I get
    ORA-31154: invalid XML document
    ORA-19202: Error occurred in XML processing
    LSX-00213: only 0 occurrences of particle "MESSAGE_NUMBER", minimum is 1
    ORA-06512: at "SYS.XMLTYPE", line 0
    ORA-06512: at line 37
    So it knows there is supposed to be a particle called message_number if it's not there, but not what to do with it if it is.
    One other thing, which I think is significant: If I amend my test.xsd schema so I define MESSAGE_HEADER there, so the only thing being referenced from testinclude.xsd is the SIMPLE type "MessageTypeType", I don't have a problem. It seems to be only when I include COMPLEX types.
    Any suggestions?

    Dave
    I can't register the XML Schemas with XML DB, since we do think versionfiltered is a valid attribute for a schema element...
    SQL> declare
      2    res boolean;
      3    xmlSchema xmlType := xmlType(
      4  '<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" versionfilt
    ered="1-00" id="NDNASimpleTypes">
      5
      6          <xsd:complexType name="MessageHeaderType">
      7                  <xsd:sequence>
      8                          <xsd:element name="MESSAGE_NUMBER" type="xsd:long"/>
      9                          <xsd:element name="MESSAGE_TYPE" type="MessageTypeType"/>
    10                          <xsd:element name="MESSAGE_DATE" type="xsd:dateTime"/>
    11                  </xsd:sequence>
    12          </xsd:complexType>
    13          <xsd:simpleType name="MessageTypeType">
    14                  <xsd:annotation>
    15                          <xsd:documentation>The definition of the Sample Message Types</xsd:documentation>
    16                  </xsd:annotation>
    17                  <xsd:restriction base="xsd:string">
    18                          <xsd:maxLength value="2"/>
    19                          <xsd:enumeration value="CT"/>
    20                          <xsd:enumeration value="CA"/>
    21                          <xsd:enumeration value="CD"/>
    22                  </xsd:restriction>
    23          </xsd:simpleType>
    24  </xsd:schema>');
    25  begin
    26    if (dbms_xdb.existsResource(:schemaPath)) then
    27      dbms_xdb.deleteResource(:schemaPath);
    28    end if;
    29    res := dbms_xdb.createResource(:schemaPath,xmlSchema);
    30  end;
    31  /
    Queuing DELETE Event
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.04
    SQL> begin
      2    dbms_xmlschema.registerSchema
      3    (
      4      :schemaURL,
      5      xdbURIType(:schemaPath).getClob(),
      6      TRUE,TRUE,FALSE,TRUE
      7    );
      8  end;
      9  /
    begin
    ERROR at line 1:
    ORA-30937: No schema definition for 'versionfiltered' (namespace '##local') in parent '/schema'
    ORA-06512: at "XDB.DBMS_XMLSCHEMA_INT", line 20
    ORA-06512: at "XDB.DBMS_XMLSCHEMA", line 31
    ORA-06512: at line 2XMLSPY agrees with us on this...
    If I change version filtered to version I get
    SQL> var schemaURL varchar2(256)
    SQL> var schemaPath varchar2(256)
    SQL> --
    SQL> begin
      2    :schemaURL := 'http://www.forensic.gov.uk/eMessages/Pnclink/NDNA/testinclude.xsd';
      3    :schemaPath := '/public/testinclude.xsd';
      4  end;
      5  /
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.00
    SQL> call dbms_xmlSchema.deleteSchema(:schemaURL,4)
      2  /
    Queuing DELETE Event
    Call completed.
    Elapsed: 00:00:00.07
    SQL> declare
      2    res boolean;
      3    xmlSchema xmlType := xmlType(
      4  '<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1-
    00" id="NDNASimpleTypes">
      5
      6          <xsd:complexType name="MessageHeaderType">
      7                  <xsd:sequence>
      8                          <xsd:element name="MESSAGE_NUMBER" type="xsd:long"/>
      9                          <xsd:element name="MESSAGE_TYPE" type="MessageTypeType"/>
    10                          <xsd:element name="MESSAGE_DATE" type="xsd:dateTime"/>
    11                  </xsd:sequence>
    12          </xsd:complexType>
    13          <xsd:simpleType name="MessageTypeType">
    14                  <xsd:annotation>
    15                          <xsd:documentation>The definition of the Sample Message Types</xsd:documentation>
    16                  </xsd:annotation>
    17                  <xsd:restriction base="xsd:string">
    18                          <xsd:maxLength value="2"/>
    19                          <xsd:enumeration value="CT"/>
    20                          <xsd:enumeration value="CA"/>
    21                          <xsd:enumeration value="CD"/>
    22                  </xsd:restriction>
    23          </xsd:simpleType>
    24  </xsd:schema>');
    25  begin
    26    if (dbms_xdb.existsResource(:schemaPath)) then
    27      dbms_xdb.deleteResource(:schemaPath);
    28    end if;
    29    res := dbms_xdb.createResource(:schemaPath,xmlSchema);
    30  end;
    31  /
    Queuing DELETE Event
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.04
    SQL> begin
      2    dbms_xmlschema.registerSchema
      3    (
      4      :schemaURL,
      5      xdbURIType(:schemaPath).getClob(),
      6      TRUE,TRUE,FALSE,TRUE
      7    );
      8  end;
      9  /
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.20
    SQL> begin
      2    :schemaURL := 'http://www.forensic.gov.uk/eMessages/Pnclink/NDNA/Test.xsd';
      3    :schemaPath := '/public/Test.xsd';
      4  end;
      5  /
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.01
    SQL> call dbms_xmlSchema.deleteSchema(:schemaURL,4)
      2  /
    Queuing DELETE Event
    Call completed.
    Elapsed: 00:00:00.06
    SQL> declare
      2    res boolean;
      3    xmlSchema xmlType := xmlType(
      4  '<xsd:schema xmlns="http://www.forensic.gov.uk/eMessages/Pnclink/NDNA" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="ht
    tp://www.forensic.gov.uk/eMessages/Pnclink/NDNA" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0" id="Test">
      5
      6          <xsd:include schemaLocation="http://www.forensic.gov.uk/eMessages/Pnclink/NDNA/testinclude.xsd"/>
      7        <xsd:element name="SAMPLE_MESSAGE">
      8                  <xsd:complexType>
      9                          <xsd:sequence>
    10                                  <xsd:element name="MESSAGE_HEADER" type="MessageHeaderType"/>
    11                          </xsd:sequence>
    12                  </xsd:complexType>
    13          </xsd:element>
    14    </xsd:schema>');
    15  begin
    16    if (dbms_xdb.existsResource(:schemaPath)) then
    17      dbms_xdb.deleteResource(:schemaPath);
    18    end if;
    19    res := dbms_xdb.createResource(:schemaPath,xmlSchema);
    20  end;
    21  /
    Queuing DELETE Event
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.04
    SQL> begin
      2    dbms_xmlschema.registerSchema
      3    (
      4      :schemaURL,
      5      xdbURIType(:schemaPath).getClob(),
      6      TRUE,TRUE,FALSE,FALSE
      7    );
      8  end;
      9  /
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.14
    SQL> var xmltext varchar2(4000)
    SQL> --
    SQL> begin
      2    :xmltext :=
      3  '<SAMPLE_MESSAGE xmlns="http://www.forensic.gov.uk/eMessages/Pnclink/NDNA" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:sc
    hemaLocation="http://www.forensic.gov.uk/eMessages/Pnclink/NDNA http://www.forensic.gov.uk/eMessages/Pnclink/NDNA/Test.xsd">
      4     <MESSAGE_HEADER>
      5        <MESSAGE_NUMBER>2147483647</MESSAGE_NUMBER>
      6        <MESSAGE_TYPE>CT</MESSAGE_TYPE>
      7        <MESSAGE_DATE>2001-12-17T09:30:47</MESSAGE_DATE>
      8     </MESSAGE_HEADER>
      9  </SAMPLE_MESSAGE>';
    10  end;
    11  /
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.01
    SQL> drop table xml_in
      2  /
    Table dropped.
    Elapsed: 00:00:00.04
    SQL> create table xml_in
      2  (
      3    msg_id   number(4),
      4    xml_data xmltype
      5  )
      6  /
    Table created.
    Elapsed: 00:00:00.03
    SQL> insert into xml_in values ( 8, xmltype ('<FOO/>'))
      2  /
    1 row created.
    Elapsed: 00:00:00.01
    SQL> declare
      2    xmldata xmltype;
      3  begin
      4    xmldata := xmltype(:xmltext);
      5    xmldata.schemaValidate();
      6  end;
      7  /
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.09
    SQL> update xml_in
      2     set xml_data = xmltype ( :xmltext )
      3   where msg_id = 8
      4  /
    1 row updated.
    Elapsed: 00:00:00.01
    SQL> select * from xml_in
      2  /
        MSG_ID
    XML_DATA
             8
    <SAMPLE_MESSAGE xmlns="http://www.forensic.gov.uk/eMessages/Pnclink/NDNA" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLo
    cation="ht
    tp://www.forensic.gov.uk/eMessages/Pnclink/NDNA http://www.forensic.gov.uk/eMessages/Pnclink/NDNA/Test.xsd">
      <MESSAGE_HEADER>
        <MESSAGE_NUMBER>2147483647</MESSAGE_NUMBER>
        <MESSAGE_TYPE>CT</MESSAGE_TYPE>
        <MESSAGE_DATE>2001-12-17T09:30:47</MESSAGE_DATE>
      </MESSAGE_HEADER>
    </SAMPLE_MESSAGE>
    Elapsed: 00:00:00.06
    SQL>

  • URGENT HELP !!! ORA-31011: XML parsing failed

    Hi,
    Oracle 9.2.0.4
    I've run into
    ORA-31011: XML parsing failed ORA-19202: Error
    occurred in XML processing LPX-00247: invalid
    Document Type Declaration (DTD) Error at line 1
    ORA-06512: at line 15
    during updateXML operation under CLOB resource.
    It seems to me, I can't update created resource
    at all.
    Is anybody knows the workaround ?
    Please, help !!!
    Thanks,
    Viacheslav

    No, it is an html file. For test purpose I've taken
    welcome.html from ORACLE_HOME installation. Here are
    my test:
    declare
    res0 bfile := BFILENAME('TEMPDIR', 'welcome.html');
    res clob;
    Amount INTEGER := 4000;
    b BOOLEAN;
    begin
    Amount:=DBMS_LOB.getlength(res0);
    DBMS_LOB.CREATETEMPORARY(res,TRUE);
    DBMS_LOB.OPEN(res0, DBMS_LOB.LOB_READONLY);
    DBMS_LOB.OPEN(res, DBMS_LOB.LOB_READWRITE);
    DBMS_LOB.LOADFROMFILE(res, res0,Amount);
    --DBMS_LOB.CLOSE(res0);
    b:=DBMS_XDB.createresource
    ('/MyCONTENT/welcome.html',res);
    commit;
    end;
    declare
    res0 bfile := BFILENAME('TEMPDIR', 'welcome.html');
    clob1 clob;
    amt number := dbms_lob.lobmaxsize;
    src_offset number := 1 ;
    dst_offset number := 1 ;
    lang_ctx number := dbms_lob.default_lang_ctx;
    warning number;
    Amount INTEGER := 4000;
    begin
    Amount:=DBMS_LOB.getlength(res0);
    DBMS_LOB.CREATETEMPORARY(clob1 ,TRUE);
    DBMS_LOB.OPEN(res0, DBMS_LOB.LOB_READONLY);
    DBMS_LOB.OPEN(clob1 , DBMS_LOB.LOB_READWRITE);
    -- DBMS_LOB.LOADFROMFILE(clob1 , res0,Amount);
    dbms_lob.LOADCLOBFROMFILE(clob1 ,res0, amt, dst_offset,
    src_offset,dbms_lob.default_csid, lang_ctx,warning) ;
    UPDATE xdb.resource_view SET res=updatexml
    (res,'/Resource/Contents/*',
    WHERE any_path= '/MyCONTENT/welcome.html';
    commit;
    --dbms_lob.filecloseall() ;
    end;

  • Problems with createResource and deleteResource

    Hi,
    i'm creating a XML file with the following procedure:
    PROCEDURE testCreateXml(pJobId IN NUMBER)
    IS
    vResult BOOLEAN;
    vTargetResource VARCHAR2(256) := '/home/FP/eIDeAA/Test4.xml';
    vXmlref REF XMLTYPE;
    BEGIN
    dbms_output.put_line('Start Create XML File');
    fp_ss_eideaa_util_pa.setJobId(pJobId => pJobId);
    dbms_output.put_line('Delete existing XML File');
    BEGIN
    dbms_xdb.deleteResource(vTargetResource, dbms_xdb.delete_recursive_force);
    EXCEPTION
    WHEN OTHERS THEN
    NULL;
    END;
    dbms_output.put_line('Delete existing XML File: End');
    SELECT MAKE_REF(fp_ss_eideaa_xml_v, 'fp_ss_eideaa_xml')
    INTO vXmlref
    FROM fp_ss_eideaa_xml_v;
    vResult := dbms_xdb.createResource(vTargetResource, vXmlref);
    dbms_xdb.setAcl(vTargetResource, '/sys/acls/bootstrap_acl.xml');
    COMMIT;
    END testCreateXml;
    The create works fine, but when i want to open the file via WebDAV it's empty. When i do the following query it's not empty.
    SELECT xdburitype('/home/FP/eIDeAA/Test4.xml').getXML() FROM dual;
    Further, when the file exists, then the dbms_xdb.deleteResource brings the error 'ORA-31003: Parent /home/FP/eIDeAA/ already contains child entry Test4.xml' because of dbms_xdb.deleteResource before didn't work. It's not possible too to delete the Test4.xml file via WebDAV.
    Can somebody help me?
    The DB Version is 9.2.0.8
    Regards,
    Martin
    Edited by: Martin1 on Jan 8, 2009 7:12 PM
    Edited by: Martin1 on Jan 9, 2009 8:40 AM

    Hi Marco,
    thanks for your reply.
    I found a workaround.
    I changed from a REF XMLTYPE variable to a XMLTYPE and do now the select not via the
    XMLTYPE view and it works fine.
    Here the procedure which i use to create the XML file:
    PROCEDURE testCreateXml(pJobId IN NUMBER)
    IS
    vResult BOOLEAN;
    vTargetResource VARCHAR2(256) := '/home/FP/eIDeAA/Test10.xml';
    vXmlref XMLTYPE;
    BEGIN
    dbms_output.put_line('Start Create XML File');
    dbms_output.put_line('Delete existing XML File');
    IF checkResourceExists(pPath => vTargetResource) THEN
    BEGIN
    dbms_xdb.deleteResource(vTargetResource, dbms_xdb.delete_recursive);
    dbms_output.put_line('Delete: delete_recursive');
    EXCEPTION
    WHEN OTHERS THEN
    BEGIN
    IF checkResourceExists(pPath => vTargetResource) THEN
    dbms_xdb.deleteResource(vTargetResource, dbms_xdb.delete_recursive_force);
    dbms_output.put_line('Delete: delete_recursive_force');
    END IF;
    IF checkResourceExists(pPath => vTargetResource) THEN
    dbms_xdb.deleteResource(vTargetResource, dbms_xdb.delete_recursive_force);
    dbms_output.put_line('Delete: delete_recursive_force');
    END IF;
    END;
    END;
    END IF;
    dbms_output.put_line('Delete existing XML File: End');
    SELECT XMLELEMENT
    ("PRINTORDER",
    XMLELEMENT("EID",
    XMLELEMENT("PEID", dat.peid),
    XMLELEMENT("Priority", dat.priority),
    XMLELEMENT("Name1", dat.name_1),
    XMLELEMENT("Name2", dat.name_2),
    XMLELEMENT("FirstName1", dat.first_name_1),
    XMLELEMENT("DateOfBirth", dat.date_of_birth),
    XMLELEMENT("ValidUntil", dat.valid_until),
    XMLELEMENT("Sex", dat.sex),
    XMLELEMENT("Height", dat.height),
    XMLELEMENT("Name1", dat.name_1),
    XMLELEMENT("Nationality", dat.nationality),
    XMLELEMENT("PlaceAndDateOfIssue", dat.place_and_date_of_issue)
    INTO vXmlref
    FROM fp_ss_eideaa_v dat
    WHERE dat.job_id = pJobId;
    -- Create Resource.
    BEGIN
    vResult := dbms_xdb.createResource(vTargetResource, vXmlref);
    EXCEPTION
    WHEN OTHERS THEN
    dbms_output.put_line('Create - SQLERRM: ' || SQLERRM);
    END;
    dbms_xdb.setAcl(vTargetResource, '/sys/acls/bootstrap_acl.xml');
    END testCreateXml;
    Regards,
    Martin

  • ORA-30951 when registering TPoX schemas

    Hello,
    I am trying to register the schemas for TPoX benchmark of XMLType Object Relational storage.
    BEGIN
    DBMS_XMLSCHEMA.registerSchema(
    SCHEMAURL => 'http://www.fixprotocol.org/FIXML-4-4 fixml-fields-base-4-4.xsd',
    SCHEMADOC => bfilename('XML_FILES_DIR','fixml-fields-base-4-4.xsd'),
    LOCAL => TRUE,
    CSID => nls_charset_id('AL32UTF8'));
    END;
    I get the following error:
    ORA-30951: Element or attribute at Xpath /schema/simpleType[131]/annotation/appinfo[2][@] exceeds maximum length
    The element it refers to, indeed is quite large:
    <xs:appinfo xmlns:x="http://www.fixprotocol.org/fixml/metadata.xsd">
    <x:EnumDoc value="EUSUPRA" desc="EuroSupranationalCoupons"/>
    <x:EnumDoc value="FAC" desc="FederalAgencyCoupon"/>
    <x:EnumDoc value="FADN" desc="FederalAgencyDiscountNote"/>
    <x:EnumDoc value="PEF" desc="PrivateExportFunding"/>
    <x:EnumDoc value="SUPRA" desc="USDSupranationalCoupons"/>
    <x:EnumDoc value="FUT" desc="Future"/>
    <x:EnumDoc value="OPT" desc="Option"/>
    <x:EnumDoc value="CORP" desc="CorporateBond"/>
    <x:EnumDoc value="CPP" desc="CorporatePrivatePlacement"/>
    <x:EnumDoc value="CB" desc="ConvertibleBond"/>
    <x:EnumDoc value="DUAL" desc="DualCurrency"/>
    <x:EnumDoc value="EUCORP" desc="EuroCorporateBond"/>
    <x:EnumDoc value="XLINKD" desc="IndexedLinked"/>
    <x:EnumDoc value="STRUCT" desc="StructuredNotes"/>
    <x:EnumDoc value="YANK" desc="YankeeCorporateBond"/>
    <x:EnumDoc value="FOR" desc="ForeignExchangeContract"/>
    <x:EnumDoc value="CS" desc="CommonStock"/>
    <x:EnumDoc value="PS" desc="PreferredStock"/>
    <x:EnumDoc value="BRADY" desc="BradyBond"/>
    <x:EnumDoc value="EUSOV" desc="EuroSovereigns"/>
    <x:EnumDoc value="TBOND" desc="USTreasuryBond"/>
    <x:EnumDoc value="TINT" desc="InterestStripFromAnyBondOrNote"/>
    <x:EnumDoc value="TIPS" desc="TreasuryInflationProtectedSecurities"/>
    <x:EnumDoc value="TCAL" desc="PrincipalStripOfACallableBondOrNote"/>
    <x:EnumDoc value="TPRN" desc="PrincipalStripFromANoncallableBondOrNote"/>
    <x:EnumDoc value="UST" desc="USTreasuryNoteDeprecatedValueUseTNOTE"/>
    <x:EnumDoc value="USTB" desc="USTreasuryBillDeprecatedValueUseTBILL"/>
    <x:EnumDoc value="TNOTE" desc="USTreasuryNote"/>
    <x:EnumDoc value="TBILL" desc="USTreasuryBill"/>
    <x:EnumDoc value="REPO" desc="Repurchase"/>
    <x:EnumDoc value="FORWARD" desc="Forward"/>
    <x:EnumDoc value="BUYSELL" desc="BuySellback"/>
    <x:EnumDoc value="SECLOAN" desc="SecuritiesLoan"/>
    <x:EnumDoc value="SECPLEDGE" desc="SecuritiesPledge"/>
    <x:EnumDoc value="TERM" desc="TermLoan"/>
    <x:EnumDoc value="RVLV" desc="RevolverLoan"/>
    <x:EnumDoc value="RVLVTRM" desc="RevolverTermLoan"/>
    <x:EnumDoc value="BRIDGE" desc="BridgeLoan"/>
    <x:EnumDoc value="LOFC" desc="LetterOfCredit"/>
    <x:EnumDoc value="SWING" desc="SwingLineFacility"/>
    <x:EnumDoc value="DINP" desc="DebtorInPossession"/>
    <x:EnumDoc value="DEFLTED" desc="Defaulted"/>
    <x:EnumDoc value="WITHDRN" desc="Withdrawn"/>
    <x:EnumDoc value="REPLACD" desc="Replaced"/>
    <x:EnumDoc value="MATURED" desc="Matured"/>
    <x:EnumDoc value="AMENDED" desc="AmendedRestated"/>
    <x:EnumDoc value="RETIRED" desc="Retired"/>
    <x:EnumDoc value="BA" desc="BankersAcceptance"/>
    <x:EnumDoc value="BN" desc="BankNotes"/>
    <x:EnumDoc value="BOX" desc="BillOfExchanges"/>
    <x:EnumDoc value="CD" desc="CertificateOfDeposit"/>
    <x:EnumDoc value="CL" desc="CallLoans"/>
    <x:EnumDoc value="CP" desc="CommercialPaper"/>
    <x:EnumDoc value="DN" desc="DepositNotes"/>
    <x:EnumDoc value="EUCD" desc="EuroCertificateOfDeposit"/>
    <x:EnumDoc value="EUCP" desc="EuroCommercialPaper"/>
    <x:EnumDoc value="LQN" desc="LiquidityNote"/>
    <x:EnumDoc value="MTN" desc="MediumTermNotes"/>
    <x:EnumDoc value="ONITE" desc="Overnight"/>
    <x:EnumDoc value="PN" desc="PromissoryNote"/>
    <x:EnumDoc value="PZFJ" desc="PlazosFijos"/>
    <x:EnumDoc value="STN" desc="ShortTermLoanNote"/>
    <x:EnumDoc value="TD" desc="TimeDeposit"/>
    <x:EnumDoc value="XCN" desc="ExtendedCommNote"/>
    <x:EnumDoc value="YCD" desc="YankeeCertificateOfDeposit"/>
    <x:EnumDoc value="ABS" desc="AssetbackedSecurities"/>
    <x:EnumDoc value="CMBS" desc="CorpMortgagebackedSecurities"/>
    <x:EnumDoc value="CMO" desc="CollateralizedMortgageObligation"/>
    <x:EnumDoc value="IET" desc="IOETTEMortgage"/>
    <x:EnumDoc value="MBS" desc="MortgagebackedSecurities"/>
    <x:EnumDoc value="MIO" desc="MortgageInterestOnly"/>
    <x:EnumDoc value="MPO" desc="MortgagePrincipalOnly"/>
    <x:EnumDoc value="MPP" desc="MortgagePrivatePlacement"/>
    <x:EnumDoc value="MPT" desc="MiscellaneousPassthrough"/>
    <x:EnumDoc value="PFAND" desc="Pfandbriefe"/>
    <x:EnumDoc value="TBA" desc="ToBeAnnounced"/>
    <x:EnumDoc value="AN" desc="OtherAnticipationNotesBANGANEtc"/>
    <x:EnumDoc value="COFO" desc="CertificateOfObligation"/>
    <x:EnumDoc value="COFP" desc="CertificateOfParticipation"/>
    <x:EnumDoc value="GO" desc="GeneralObligationBonds"/>
    <x:EnumDoc value="MT" desc="MandatoryTender"/>
    <x:EnumDoc value="RAN" desc="RevenueAnticipationNote"/>
    <x:EnumDoc value="REV" desc="RevenueBonds"/>
    <x:EnumDoc value="SPCLA" desc="SpecialAssessment"/>
    <x:EnumDoc value="SPCLO" desc="SpecialObligation"/>
    <x:EnumDoc value="SPCLT" desc="SpecialTax"/>
    <x:EnumDoc value="TAN" desc="TaxAnticipationNote"/>
    <x:EnumDoc value="TAXA" desc="TaxAllocation"/>
    <x:EnumDoc value="TECP" desc="TaxExemptCommercialPaper"/>
    <x:EnumDoc value="TRAN" desc="TaxRevenueAnticipationNote"/>
    <x:EnumDoc value="VRDN" desc="VariableRateDemandNote"/>
    <x:EnumDoc value="WAR" desc="Warrant"/>
    <x:EnumDoc value="MF" desc="MutualFund"/>
    <x:EnumDoc value="MLEG" desc="MultilegInstrument"/>
    <x:EnumDoc value="NONE" desc="NoSecurityType"/>
    <x:EnumDoc value="WLD" desc="WildcardEntry"/>
    </xs:appinfo>
    Which parameter should I change in order to register the schema?
    Any help much appreciated!

    For example (code snippet)...
    declare
      V_FILENAME  VARCHAR2(700) := 'CMFXML.SWIFT.MT543.xsd';
      V_XMLSCHEMA XMLTYPE := xmltype(bfilename('XMLDIR',V_FILENAME),nls_charset_id('AL32UTF8'));
      -- res boolean;
    begin
      dbms_xmlschema_annotate.addXDBNamespace(V_XMLSCHEMA);
      dbms_xmlschema_annotate.setDefaultTable(V_XMLSCHEMA,'CMFXML','CMFXML_MT543_TABLE');
      dbms_xmlschema_annotate.DISABLEDEFAULTTABLECREATION(V_XMLSCHEMA);
      -- DEBUG generated xdb annotations via resource
      -- if (dbms_xdb.existsResource('/public/'||V_FILENAME)) then
      --     dbms_xdb.deleteResource('/public/'||V_FILENAME);
      -- end if;
      -- res := dbms_xdb.createResource('/public/'||V_FILENAME,V_XMLSCHEMA);
      dbms_xmlschema.registerSchema
        schemaurl       => V_FILENAME,
        schemadoc       => V_XMLSCHEMA.getClobVal(),
        local           => TRUE,
        genTypes        => TRUE,
        genBean         => FALSE,
        genTables       => TRUE,
        enablehierarchy => DBMS_XMLSCHEMA.ENABLE_HIERARCHY_NONE,
        owner           => user
    end;
    declare
      V_FILENAME  VARCHAR2(700) := 'CMFXML.SWIFT.MT544.xsd';
      V_XMLSCHEMA XMLTYPE := xmltype(bfilename('XMLDIR',V_FILENAME),nls_charset_id('AL32UTF8'));
      -- res boolean;
    begin
      dbms_xmlschema_annotate.addXDBNamespace(V_XMLSCHEMA);
      dbms_xmlschema_annotate.setDefaultTable(V_XMLSCHEMA,'CMFXML','CMFXML_MT544_TABLE');
      dbms_xmlschema_annotate.DISABLEDEFAULTTABLECREATION(V_XMLSCHEMA);
      select insertChildXML
         V_XMLSCHEMA,
         '//xsd:element[@type="TIndicator-22F-01"]',
         '@xdb:SQLInline',
         'false',
         'xmlns:xdb="http://xmlns.oracle.com/xdb" xmlns:xsd="http://www.w3.org/2001/XMLSchema"'
        into V_XMLSCHEMA
        from dual;
      select insertChildXML
         V_XMLSCHEMA,
         '//xsd:element[@type="TAmount-19A-01"]',
         '@xdb:SQLInline',
         'false',
         'xmlns:xdb="http://xmlns.oracle.com/xdb" xmlns:xsd="http://www.w3.org/2001/XMLSchema"'
        into V_XMLSCHEMA
        from dual;
      select insertChildXML
         V_XMLSCHEMA,
         '//xsd:element[@type="TDate-98A-01"]',
         '@xdb:SQLInline',
         'false',
         'xmlns:xdb="http://xmlns.oracle.com/xdb" xmlns:xsd="http://www.w3.org/2001/XMLSchema"'
        into V_XMLSCHEMA
        from dual;
      select insertChildXML
         V_XMLSCHEMA,
         '//xsd:element[@type="TRate-92A-01"]',
         '@xdb:SQLInline',
         'false',
         'xmlns:xdb="http://xmlns.oracle.com/xdb" xmlns:xsd="http://www.w3.org/2001/XMLSchema"'
        into V_XMLSCHEMA
        from dual;
      select insertChildXML
         V_XMLSCHEMA,
         '//xsd:element[@type="TFlag-17B-01"]',
         '@xdb:SQLInline',
         'false',
         'xmlns:xdb="http://xmlns.oracle.com/xdb" xmlns:xsd="http://www.w3.org/2001/XMLSchema"'
        into V_XMLSCHEMA
        from dual;
      select insertChildXML
         V_XMLSCHEMA,
         '//xsd:element[@type="TQuantityOfFinancialInstrument-36B-01"]',
         '@xdb:SQLInline',
         'false',
         'xmlns:xdb="http://xmlns.oracle.com/xdb" xmlns:xsd="http://www.w3.org/2001/XMLSchema"'
        into V_XMLSCHEMA
        from dual;
      select insertChildXML
         V_XMLSCHEMA,
         '//xsd:element[@type="TReference-20C-01"]',
         '@xdb:SQLInline',
         'false',
         'xmlns:xdb="http://xmlns.oracle.com/xdb" xmlns:xsd="http://www.w3.org/2001/XMLSchema"'
        into V_XMLSCHEMA
        from dual;
      select insertChildXML
         V_XMLSCHEMA,
         '//xsd:element[@type="TParty-95PQR-01"]',
         '@xdb:SQLInline',
         'false',
         'xmlns:xdb="http://xmlns.oracle.com/xdb" xmlns:xsd="http://www.w3.org/2001/XMLSchema"'
        into V_XMLSCHEMA
        from dual;
      dbms_xmlschema_annotate.setOutOfLine(V_XMLSCHEMA,'element','ReceiveFreeConfirmationType','TwoLegTransactionDetails','MT544_TWO_LEG_TRANS_TABLE');
      dbms_xmlschema_annotate.setOutOfLine(V_XMLSCHEMA,'element','ReceiveFreeConfirmationType','TradeDetails','MT544_TRADE_DETAILS_TABLE');
      dbms_xmlschema_annotate.setOutOfLine(V_XMLSCHEMA,'complexType','TTradeDetails','FinancialInstrumentAttributes','MT544_FIN_INST_ATTRS_TABLE');
      -- DEBUG generated xdb annotations via resource
      -- if (dbms_xdb.existsResource('/public/'||V_FILENAME)) then
      --     dbms_xdb.deleteResource('/public/'||V_FILENAME);
      -- end if;
      -- res := dbms_xdb.createResource('/public/'||V_FILENAME,V_XMLSCHEMA);
      dbms_xmlschema.registerSchema
       schemaurl       => V_FILENAME,
        schemadoc       => V_XMLSCHEMA.getClobVal(),
        local           => TRUE,
        genTypes        => TRUE,
        genBean         => FALSE,
        genTables       => TRUE,
        enablehierarchy => DBMS_XMLSCHEMA.ENABLE_HIERARCHY_NONE,
        owner           => user
    end;
    --

  • DBMS_XMLSCHEMA.CopyEvolve produces ORA-30945: Could not create mapping tabl

    Hi,
    I am trying to update a XML Schema concerning the documents relaties.xsd (the old one) and relaties_v2.xsd (the new one containing only a minor change).
    The document relaties.xsd looks like this:
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xdb="http://xmlns.oracle.com/xdb"
    elementFormDefault="unqualified"
    attributeFormDefault="unqualified"
    version="1.0">
         <xsd:element name="Relatie" xdb:defaultTable="">
              <xsd:complexType>
                   <xsd:sequence>
                        <xsd:element name="Voornaam" type="xsd:string"/>
                        <xsd:element name="Achternaam" type="xsd:string"/>
                        <xsd:element name="Tussenvoegsel" type="xsd:string"/>
                        <xsd:element name="Geboortedatum" type="xsd:date"/>
                        <xsd:element name="Geslacht">
    <xsd:simpleType>
    <xsd:restriction base="xsd:string">
    <xsd:enumeration value="M"/>
    <xsd:enumeration value="V"/>
    </xsd:restriction>
    </xsd:simpleType>
    </xsd:element>
                        <xsd:element name="Sofinummer">
    <xsd:simpleType>
    <xsd:restriction base="xsd:string">
    <xsd:pattern value="\d{9}"/>
    </xsd:restriction>
    </xsd:simpleType>
    </xsd:element>
                        <xsd:element name="Straatnaam" type="xsd:string"/>
                        <xsd:element name="Huisnummer" type="xsd:string"/>
                        <xsd:element name="Woonplaats" type="xsd:string"/>
                        <!--xsd:element name="Postcode" type="xsd:string"/-->
                        <xsd:element name="Postcode">
    <xsd:simpleType>
    <xsd:restriction base="xsd:string">
    <xsd:pattern value="\d{4} [A-Z]{2}"/>
    </xsd:restriction>
    </xsd:simpleType>
    </xsd:element>
                        <xsd:element name="Zrn">
    <xsd:simpleType>
    <xsd:restriction base="xsd:integer">
    <xsd:minInclusive value="1000000"/>
    <xsd:maxInclusive value="99999999999999"/>
    </xsd:restriction>
    </xsd:simpleType>
    </xsd:element>
                   </xsd:sequence>
              </xsd:complexType>
         </xsd:element>
    </xsd:schema>
    Here are the steps I took.
    DECLARE
    res BOOLEAN;
    BEGIN
    res := DBMS_XDB.createResource('/xsd/relaties.xsd',
    bfilename('XSDDIR', 'relaties.xsd')
    END;
    DECLARE
    res BOOLEAN;
    BEGIN
    res := DBMS_XDB.createResource('/xsd/relaties_v2.xsd',
    bfilename('XSDDIR', 'relaties_v2.xsd')
    END;
    BEGIN
    DBMS_XMLSCHEMA.registerSchema(
    'http://localhost:8080/xsd/relaties.xsd',
    XDBURIType('/xsd/relaties.xsd').getClob(),
    TRUE,
    FALSE,
    FALSE,
    TRUE);
    END;
    CREATE
    TABLE relatie_documenten OF XMLTYPE
    XMLSCHEMA "http://localhost:8080/xsd/relaties.xsd"
    ELEMENT "Relatie"
    CREATE OR REPLACE
    TRIGGER upo_rdt_ai
    AFTER INSERT ON relatie_documenten
    FOR EACH ROW
    DECLARE
    doc XMLType;
    BEGIN
    doc := :new.SYS_NC_ROWINFO$;
    XMLType.schemaValidate(doc);
    END;
    Then I inserted some xml documents into the table relatie_documenten. The XSD worked fine.
    Then I executed the following statement:
    BEGIN
    DBMS_XMLSCHEMA.copyEvolve
    ( schemaURLs => xdb$string_list_t('http://localhost:8080/xsd/relaties.xsd')
    , newSchemas => XMLSequenceType(XDBURIType('/xsd/relaties_v2.xsd').getXML())
    , preserveOldDocs => TRUE
    , mapTabName => 'RELATIE_DOCUMENTEN_TEMP'
    , generateTables => FALSE
    END;
    This resulted in:
    ERROR at line 1:
    ORA-30945: Could not create mapping table 'RELATIE_DOCUMENTEN_TEMP'
    ORA-00600: internal error code, arguments: [kqludp2], [0x66AB407C], [0], [],
    ORA-06512: at "XDB.DBMS_XMLSCHEMA_INT", line 113
    ORA-06512: at "XDB.DBMS_XMLSCHEMA", line 210
    ORA-06512: at line 2
    I checked system priviliges as documented in XML DB Developers Guide, Chapter 8 XML Schema Evolution. No other users were connected. The mapping table RELATIE_DOCUMENTEN_TEMP nor any other object named RELATIE_DOCUMENTEN_TEMP did not exist.
    Anyone an idea why I cannot create my mapping table ?
    Gregor

    Which release / platform are you working with
    With 10.2.0.2.1 on Widows I get
    SQL> var schemaURL varchar2(256)
    SQL> var schemaPath varchar2(256)
    SQL> --
    SQL> begin
      2    :schemaURL := 'http://localhost:8080/xsd/relaties.xsd';
      3    :schemaPath := '/public/relaties.xsd';
      4  end;
      5  /
    PL/SQL procedure successfully completed.
    SQL> call dbms_xmlSchema.deleteSchema(:schemaURL,4)
      2  /
    Call completed.
    SQL> declare
      2    res boolean;
      3    xmlSchema xmlType := xmlType(
      4  '<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      5              xmlns:xdb="http://xmlns.oracle.com/xdb"
      6                 elementFormDefault="unqualified"
      7                 attributeFormDefault="unqualified"
      8                 version="1.0">
      9     <xsd:element name="Relatie" xdb:defaultTable="">
    10             <xsd:complexType>
    11                     <xsd:sequence>
    12                             <xsd:element name="Voornaam" type="xsd:string"/>
    13                             <xsd:element name="Achternaam" type="xsd:string"/>
    14                             <xsd:element name="Tussenvoegsel" type="xsd:string"/>
    15                             <xsd:element name="Geboortedatum" type="xsd:date"/>
    16                             <xsd:element name="Geslacht">
    17                 <xsd:simpleType>
    18                    <xsd:restriction base="xsd:string">
    19                       <xsd:enumeration value="M"/>
    20                       <xsd:enumeration value="V"/>
    21                    </xsd:restriction>
    22                 </xsd:simpleType>
    23              </xsd:element>
    24                     <xsd:element name="Sofinummer">
    25                 <xsd:simpleType>
    26                    <xsd:restriction base="xsd:string">
    27                       <xsd:pattern value="\d{9}"/>
    28                    </xsd:restriction>
    29                 </xsd:simpleType>
    30              </xsd:element>
    31                             <xsd:element name="Straatnaam" type="xsd:string"/>
    32                             <xsd:element name="Huisnummer" type="xsd:string"/>
    33                             <xsd:element name="Woonplaats" type="xsd:string"/>
    34                             <!--xsd:element name="Postcode" type="xsd:string"/-->
    35                             <xsd:element name="Postcode">
    36                 <xsd:simpleType>
    37                    <xsd:restriction base="xsd:string">
    38                       <xsd:pattern value="\d{4} [A-Z]{2}"/>
    39                    </xsd:restriction>
    40                 </xsd:simpleType>
    41              </xsd:element>
    42                             <xsd:element name="Zrn">
    43                 <xsd:simpleType>
    44                    <xsd:restriction base="xsd:integer">
    45                       <xsd:minInclusive value="1000000"/>
    46                       <xsd:maxInclusive value="99999999999999"/>
    47                    </xsd:restriction>
    48                 </xsd:simpleType>
    49              </xsd:element>
    50                     </xsd:sequence>
    51             </xsd:complexType>
    52     </xsd:element>
    53  </xsd:schema>');
    54  begin
    55    if (dbms_xdb.existsResource(:schemaPath)) then
    56      dbms_xdb.deleteResource(:schemaPath);
    57    end if;
    58    res := dbms_xdb.createResource(:schemaPath,xmlSchema);
    59  end;
    60  /
    PL/SQL procedure successfully completed.
    SQL> BEGIN
      2    DBMS_XMLSCHEMA.registerSchema(
      3      :schemaURL,
      4      XDBURIType(:schemaPath).getClob(),
      5      TRUE,
      6      FALSE,
      7      FALSE,
      8      TRUE);
      9  END;
    10  /
    PL/SQL procedure successfully completed.
    SQL> DROP TABLE relatie_documenten FORCE
      2  /
    Table dropped.
    SQL> CREATE TABLE relatie_documenten OF XMLTYPE
      2         XMLSCHEMA "http://localhost:8080/xsd/relaties.xsd"
      3         ELEMENT "Relatie"
      4  /
    Table created.
    SQL> CREATE OR REPLACE TRIGGER upo_rdt_ai
      2  AFTER INSERT ON relatie_documenten
      3  FOR EACH ROW
      4  DECLARE
      5     doc XMLType;
      6  BEGIN
      7     doc := :new.SYS_NC_ROWINFO$;
      8     XMLType.schemaValidate(doc);
      9  END;
    10  /
    Trigger created.
    SQL> INSERT
      2  INTO   relatie_documenten
      3  VALUES (XMLType
      4           ('<Relatie>
      5                <Voornaam>Johan</Voornaam>
      6                <Achternaam>Hermans</Achternaam>
      7                <Tussenvoegsel/>
      8                <Geboortedatum>1978-01-02</Geboortedatum>
      9                <Geslacht>M</Geslacht>
    10                <Sofinummer>233300417</Sofinummer>
    11                <Straatnaam>Stationstraat</Straatnaam>
    12                <Huisnummer>10</Huisnummer>
    13                <Woonplaats>Weesp</Woonplaats>
    14                <Postcode>1383 AK</Postcode>
    15                <Zrn>1234567</Zrn>
    16             </Relatie>'
    17          ).CreateSchemaBasedXML(:schemaURL))
    18  /
    1 row created.
    SQL> commit
      2  /
    Commit complete.
    SQL> INSERT
      2  INTO   relatie_documenten
      3  VALUES (XMLType
      4           ('<Relatie>
      5                <Voornaam>Johanna</Voornaam>
      6                <Achternaam>Gurts</Achternaam>
      7                <Tussenvoegsel/>
      8                <Geboortedatum>1975-11-12</Geboortedatum>
      9                <Geslacht>V</Geslacht>
    10                <Sofinummer>234109807</Sofinummer>
    11                <Straatnaam>Stationstraat</Straatnaam>
    12                <Huisnummer>10</Huisnummer>
    13                <Woonplaats>Weesp</Woonplaats>
    14                <Postcode>1383 AK</Postcode>
    15                <Zrn>7654321</Zrn>
    16             </Relatie>').CreateSchemaBasedXML(:schemaURL))
    17  /
    1 row created.
    SQL> commit
      2  /
    Commit complete.
    SQL> INSERT
      2  INTO   relatie_documenten
      3  VALUES (XMLType
      4           ('<Relatie>
      5                <Voornaam>Johanna</Voornaam>
      6                <Achternaam>Gurts</Achternaam>
      7                <Tussenvoegsel/>
      8                <Geboortedatum>1975-11-12</Geboortedatum>
      9                <Geslacht>O</Geslacht>
    10                <Sofinummer>234109807</Sofinummer>
    11                <Straatnaam>Stationstraat</Straatnaam>
    12                <Huisnummer>10</Huisnummer>
    13                <Woonplaats>Weesp</Woonplaats>
    14                <Postcode>1383 AK</Postcode>
    15                <Zrn>7654321</Zrn>
    16             </Relatie>').CreateSchemaBasedXML(:schemaURL))
    17  /
    VALUES (XMLType
    ERROR at line 3:
    ORA-31038: Invalid enumeration value: "O"
    ORA-06512: at "SYS.XMLTYPE", line 345
    ORA-06512: at "SCOTT.UPO_RDT_AI", line 5
    ORA-04088: error during execution of trigger 'SCOTT.UPO_RDT_AI'
    SQL> commit
      2  /
    Commit complete.
    SQL> declare
      2    xmlschema xmltype;
      3    res       boolean;
      4  begin
      5    select xdburitype(:schemaPath).getXML()
      6      into xmlSchema
      7      from dual;
      8    dbms_xdb.deleteResource(:schemaPath);
      9    select insertChildXML
    10           (
    11             xmlschema,
    12             '/xsd:schema//xsd:element[@name="Geslacht"]/xsd:simpleType/xsd:restriction',
    13             'xsd:enumeration',
    14             xmltype('<xsd:enumeration xmlns:xsd="http://www.w3.org/2001/XMLSchema" value="O"/>'),
    15             'xmlns:xsd="http://www.w3.org/2001/XMLSchema"'
    16           )
    17    into xmlSchema
    18    from dual;
    19    res := dbms_xdb.createResource(:schemaPath,xmlSchema);
    20  end;
    21  /
    PL/SQL procedure successfully completed.
    SQL> commit
      2  /
    Commit complete.
    SQL> set long 100000 pages 200 lines 140
    SQL> --
    SQL> select xdburitype(:schemaPath).getXML()
      2    from dual
      3  /
    XDBURITYPE(:SCHEMAPATH).GETXML()
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb" elementFormDefault="unqualified" attributeF
    ormDefault="unqualified" version="1.0">
      <xsd:element name="Relatie" xdb:defaultTable="">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="Voornaam" type="xsd:string"/>
            <xsd:element name="Achternaam" type="xsd:string"/>
            <xsd:element name="Tussenvoegsel" type="xsd:string"/>
            <xsd:element name="Geboortedatum" type="xsd:date"/>
            <xsd:element name="Geslacht">
              <xsd:simpleType>
                <xsd:restriction base="xsd:string">
                  <xsd:enumeration value="M"/>
                  <xsd:enumeration value="V"/>
                  <xsd:enumeration xmlns:xsd="http://www.w3.org/2001/XMLSchema" value="O"/>
                </xsd:restriction>
              </xsd:simpleType>
            </xsd:element>
            <xsd:element name="Sofinummer">
              <xsd:simpleType>
                <xsd:restriction base="xsd:string">
                  <xsd:pattern value="\d{9}"/>
                </xsd:restriction>
              </xsd:simpleType>
            </xsd:element>
            <xsd:element name="Straatnaam" type="xsd:string"/>
            <xsd:element name="Huisnummer" type="xsd:string"/>
            <xsd:element name="Woonplaats" type="xsd:string"/>
            <!--xsd:element name="Postcode" type="xsd:string"/-->
            <xsd:element name="Postcode">
              <xsd:simpleType>
                <xsd:restriction base="xsd:string">
                  <xsd:pattern value="\d{4} [A-Z]{2}"/>
                </xsd:restriction>
              </xsd:simpleType>
            </xsd:element>
            <xsd:element name="Zrn">
              <xsd:simpleType>
                <xsd:restriction base="xsd:integer">
                  <xsd:minInclusive value="1000000"/>
                  <xsd:maxInclusive value="99999999999999"/>
                </xsd:restriction>
              </xsd:simpleType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:schema>
    SQL> DROP TABLE RELATIE_DOCUMENTEN_TEMP
      2  /
    Table dropped.
    SQL> BEGIN
      2    DBMS_XMLSCHEMA.copyEvolve
      3      ( schemaURLs      => xdb$string_list_t(:schemaURL)
      4      , newSchemas      => XMLSequenceType(XDBURIType(:schemaPath).getXML())
      5      , preserveOldDocs => TRUE
      6      , mapTabName      => 'RELATIE_DOCUMENTEN_TEMP'
      7      , generateTables  => FALSE
      8      );
      9  END;
    10  /
    PL/SQL procedure successfully completed.
    SQL> CREATE TABLE relatie_documenten OF XMLTYPE
      2         XMLSCHEMA "http://localhost:8080/xsd/relaties.xsd"
      3         ELEMENT "Relatie"
      4  /
    Table created.
    SQL> CREATE OR REPLACE TRIGGER upo_rdt_ai
      2  AFTER INSERT ON relatie_documenten
      3  FOR EACH ROW
      4  DECLARE
      5     doc XMLType;
      6  BEGIN
      7     doc := :new.SYS_NC_ROWINFO$;
      8     XMLType.schemaValidate(doc);
      9  END;
    10  /
    Trigger created.
    SQL> declare
      2    tablename varchar2(2000);
      3  begin
      4    select temp_tabname
      5      into tablename
      6      from RELATIE_DOCUMENTEN_TEMP
      7     where table_name = USER || '.' || upper('relatie_documenten');
      8    execute immediate 'insert into relatie_documenten select xmltype(data) from ' || tablename;
      9    commit;
    10  end;
    11  /
    PL/SQL procedure successfully completed.
    SQL> select *
      2    from relatie_documenten
      3  /
    SYS_NC_ROWINFO$
    <Relatie>
      <Voornaam>Johan</Voornaam>
      <Achternaam>Hermans</Achternaam>
      <Tussenvoegsel/>
      <Geboortedatum>1978-01-02</Geboortedatum>
      <Geslacht>M</Geslacht>
      <Sofinummer>233300417</Sofinummer>
      <Straatnaam>Stationstraat</Straatnaam>
      <Huisnummer>10</Huisnummer>
      <Woonplaats>Weesp</Woonplaats>
      <Postcode>1383 AK</Postcode>
      <Zrn>1234567</Zrn>
    </Relatie>
    <Relatie>
      <Voornaam>Johanna</Voornaam>
      <Achternaam>Gurts</Achternaam>
      <Tussenvoegsel/>
      <Geboortedatum>1975-11-12</Geboortedatum>
      <Geslacht>V</Geslacht>
      <Sofinummer>234109807</Sofinummer>
      <Straatnaam>Stationstraat</Straatnaam>
      <Huisnummer>10</Huisnummer>
      <Woonplaats>Weesp</Woonplaats>
      <Postcode>1383 AK</Postcode>
      <Zrn>7654321</Zrn>
    </Relatie>
    SQL> INSERT
      2  INTO   relatie_documenten
      3  VALUES (XMLType
      4           ('<Relatie>
      5                <Voornaam>Johanna</Voornaam>
      6                <Achternaam>Gurts</Achternaam>
      7                <Tussenvoegsel/>
      8                <Geboortedatum>1975-11-12</Geboortedatum>
      9                <Geslacht>O</Geslacht>
    10                <Sofinummer>234109807</Sofinummer>
    11                <Straatnaam>Stationstraat</Straatnaam>
    12                <Huisnummer>10</Huisnummer>
    13                <Woonplaats>Weesp</Woonplaats>
    14                <Postcode>1383 AK</Postcode>
    15                <Zrn>7654321</Zrn>
    16             </Relatie>').CreateSchemaBasedXML(:schemaURL))
    17  /
    1 row created.
    SQL> commit
      2  /
    Commit complete.
    SQL> select *
      2    from relatie_documenten
      3  /
    SYS_NC_ROWINFO$
    <Relatie>
      <Voornaam>Johan</Voornaam>
      <Achternaam>Hermans</Achternaam>
      <Tussenvoegsel/>
      <Geboortedatum>1978-01-02</Geboortedatum>
      <Geslacht>M</Geslacht>
      <Sofinummer>233300417</Sofinummer>
      <Straatnaam>Stationstraat</Straatnaam>
      <Huisnummer>10</Huisnummer>
      <Woonplaats>Weesp</Woonplaats>
      <Postcode>1383 AK</Postcode>
      <Zrn>1234567</Zrn>
    </Relatie>
    <Relatie>
      <Voornaam>Johanna</Voornaam>
      <Achternaam>Gurts</Achternaam>
      <Tussenvoegsel/>
      <Geboortedatum>1975-11-12</Geboortedatum>
      <Geslacht>V</Geslacht>
      <Sofinummer>234109807</Sofinummer>
      <Straatnaam>Stationstraat</Straatnaam>
      <Huisnummer>10</Huisnummer>
      <Woonplaats>Weesp</Woonplaats>
      <Postcode>1383 AK</Postcode>
      <Zrn>7654321</Zrn>
    </Relatie>
    <Relatie>
      <Voornaam>Johanna</Voornaam>
      <Achternaam>Gurts</Achternaam>
      <Tussenvoegsel/>
      <Geboortedatum>1975-11-12</Geboortedatum>
      <Geslacht>O</Geslacht>
      <Sofinummer>234109807</Sofinummer>
      <Straatnaam>Stationstraat</Straatnaam>
      <Huisnummer>10</Huisnummer>
      <Woonplaats>Weesp</Woonplaats>
      <Postcode>1383 AK</Postcode>
      <Zrn>7654321</Zrn>
    </Relatie>
    SQL>Here's the SQL, can you cut'n'paste and run the whole thing as XML_OWNER
    var schemaURL varchar2(256)
    var schemaPath varchar2(256)
    begin
      :schemaURL := 'http://localhost:8080/xsd/relaties.xsd';
      :schemaPath := '/public/relaties.xsd';
    end;
    call dbms_xmlSchema.deleteSchema(:schemaURL,4)
    declare
      res boolean;
      xmlSchema xmlType := xmlType(
    '<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                xmlns:xdb="http://xmlns.oracle.com/xdb"
                   elementFormDefault="unqualified"
                   attributeFormDefault="unqualified"
                   version="1.0">
         <xsd:element name="Relatie" xdb:defaultTable="">
              <xsd:complexType>
                   <xsd:sequence>
                        <xsd:element name="Voornaam" type="xsd:string"/>
                        <xsd:element name="Achternaam" type="xsd:string"/>
                        <xsd:element name="Tussenvoegsel" type="xsd:string"/>
                        <xsd:element name="Geboortedatum" type="xsd:date"/>
                        <xsd:element name="Geslacht">
                   <xsd:simpleType>
                      <xsd:restriction base="xsd:string">
                         <xsd:enumeration value="M"/>
                         <xsd:enumeration value="V"/>
                      </xsd:restriction>
                   </xsd:simpleType>
                </xsd:element>
                     <xsd:element name="Sofinummer">
                   <xsd:simpleType>
                      <xsd:restriction base="xsd:string">
                         <xsd:pattern value="\d{9}"/>
                      </xsd:restriction>
                   </xsd:simpleType>
                </xsd:element>
                        <xsd:element name="Straatnaam" type="xsd:string"/>
                        <xsd:element name="Huisnummer" type="xsd:string"/>
                        <xsd:element name="Woonplaats" type="xsd:string"/>
                        <!--xsd:element name="Postcode" type="xsd:string"/-->
                        <xsd:element name="Postcode">
                   <xsd:simpleType>
                      <xsd:restriction base="xsd:string">
                         <xsd:pattern value="\d{4} [A-Z]{2}"/>
                      </xsd:restriction>
                   </xsd:simpleType>
                </xsd:element>
                        <xsd:element name="Zrn">
                   <xsd:simpleType>
                      <xsd:restriction base="xsd:integer">
                         <xsd:minInclusive value="1000000"/>
                         <xsd:maxInclusive value="99999999999999"/>
                      </xsd:restriction>
                   </xsd:simpleType>
                </xsd:element>
                   </xsd:sequence>
              </xsd:complexType>
         </xsd:element>
    </xsd:schema>');
    begin
      if (dbms_xdb.existsResource(:schemaPath)) then
        dbms_xdb.deleteResource(:schemaPath);
      end if;
      res := dbms_xdb.createResource(:schemaPath,xmlSchema);
    end;
    BEGIN
      DBMS_XMLSCHEMA.registerSchema(
        :schemaURL,
        XDBURIType(:schemaPath).getClob(),
        TRUE,
        FALSE,
        FALSE,
        TRUE);
    END;
    DROP TABLE relatie_documenten FORCE
    CREATE TABLE relatie_documenten OF XMLTYPE
           XMLSCHEMA "http://localhost:8080/xsd/relaties.xsd"
           ELEMENT "Relatie"
    CREATE OR REPLACE TRIGGER upo_rdt_ai
    AFTER INSERT ON relatie_documenten
    FOR EACH ROW
    DECLARE
       doc XMLType;
    BEGIN
       doc := :new.SYS_NC_ROWINFO$;
       XMLType.schemaValidate(doc);
    END;
    INSERT
    INTO   relatie_documenten
    VALUES (XMLType
             ('<Relatie>
                  <Voornaam>Johan</Voornaam>
                  <Achternaam>Hermans</Achternaam>
                  <Tussenvoegsel/>
                  <Geboortedatum>1978-01-02</Geboortedatum>
                  <Geslacht>M</Geslacht>
                  <Sofinummer>233300417</Sofinummer>
                  <Straatnaam>Stationstraat</Straatnaam>
                  <Huisnummer>10</Huisnummer>
                  <Woonplaats>Weesp</Woonplaats>
                  <Postcode>1383 AK</Postcode>
                  <Zrn>1234567</Zrn>
               </Relatie>'
            ).CreateSchemaBasedXML(:schemaURL))
    commit
    INSERT
    INTO   relatie_documenten
    VALUES (XMLType
             ('<Relatie>
                  <Voornaam>Johanna</Voornaam>
                  <Achternaam>Gurts</Achternaam>
                  <Tussenvoegsel/>
                  <Geboortedatum>1975-11-12</Geboortedatum>
                  <Geslacht>V</Geslacht>
                  <Sofinummer>234109807</Sofinummer>
                  <Straatnaam>Stationstraat</Straatnaam>
                  <Huisnummer>10</Huisnummer>
                  <Woonplaats>Weesp</Woonplaats>
                  <Postcode>1383 AK</Postcode>
                  <Zrn>7654321</Zrn>
               </Relatie>').CreateSchemaBasedXML(:schemaURL))
    commit
    INSERT
    INTO   relatie_documenten
    VALUES (XMLType
             ('<Relatie>
                  <Voornaam>Johanna</Voornaam>
                  <Achternaam>Gurts</Achternaam>
                  <Tussenvoegsel/>
                  <Geboortedatum>1975-11-12</Geboortedatum>
                  <Geslacht>O</Geslacht>
                  <Sofinummer>234109807</Sofinummer>
                  <Straatnaam>Stationstraat</Straatnaam>
                  <Huisnummer>10</Huisnummer>
                  <Woonplaats>Weesp</Woonplaats>
                  <Postcode>1383 AK</Postcode>
                  <Zrn>7654321</Zrn>
               </Relatie>').CreateSchemaBasedXML(:schemaURL))
    commit
    declare
      xmlschema xmltype;
      res       boolean;
    begin
      select xdburitype(:schemaPath).getXML()
        into xmlSchema
        from dual;
      dbms_xdb.deleteResource(:schemaPath);
      select insertChildXML
               xmlschema,
               '/xsd:schema//xsd:element[@name="Geslacht"]/xsd:simpleType/xsd:restriction',
               'xsd:enumeration',
               xmltype('<xsd:enumeration xmlns:xsd="http://www.w3.org/2001/XMLSchema" value="O"/>'),
               'xmlns:xsd="http://www.w3.org/2001/XMLSchema"'
      into xmlSchema
      from dual;
      res := dbms_xdb.createResource(:schemaPath,xmlSchema);
    end;
    commit
    set long 100000 pages 200 lines 140
    select xdburitype(:schemaPath).getXML()
      from dual
    DROP TABLE RELATIE_DOCUMENTEN_TEMP
    BEGIN
      DBMS_XMLSCHEMA.copyEvolve
        ( schemaURLs      => xdb$string_list_t(:schemaURL)
        , newSchemas      => XMLSequenceType(XDBURIType(:schemaPath).getXML())
        , preserveOldDocs => TRUE
        , mapTabName      => 'RELATIE_DOCUMENTEN_TEMP'
        , generateTables  => FALSE
    END;
    CREATE TABLE relatie_documenten OF XMLTYPE
           XMLSCHEMA "http://localhost:8080/xsd/relaties.xsd"
           ELEMENT "Relatie"
    CREATE OR REPLACE TRIGGER upo_rdt_ai
    AFTER INSERT ON relatie_documenten
    FOR EACH ROW
    DECLARE
       doc XMLType;
    BEGIN
       doc := :new.SYS_NC_ROWINFO$;
       XMLType.schemaValidate(doc);
    END;
    declare
      tablename varchar2(2000);
    begin
      select temp_tabname
        into tablename
        from RELATIE_DOCUMENTEN_TEMP
       where table_name = USER || '.' || upper('relatie_documenten');
      execute immediate 'insert into relatie_documenten select xmltype(data) from ' || tablename;
      commit;
    end;
    select *
      from relatie_documenten
    INSERT
    INTO   relatie_documenten
    VALUES (XMLType
             ('<Relatie>
                  <Voornaam>Johanna</Voornaam>
                  <Achternaam>Gurts</Achternaam>
                  <Tussenvoegsel/>
                  <Geboortedatum>1975-11-12</Geboortedatum>
                  <Geslacht>O</Geslacht>
                  <Sofinummer>234109807</Sofinummer>
                  <Straatnaam>Stationstraat</Straatnaam>
                  <Huisnummer>10</Huisnummer>
                  <Woonplaats>Weesp</Woonplaats>
                  <Postcode>1383 AK</Postcode>
                  <Zrn>7654321</Zrn>
               </Relatie>').CreateSchemaBasedXML(:schemaURL))
    commit
    select *
      from relatie_documenten
    /

  • ORA-19007: Schema - does not match expected T0090.xsd for non xsd owner

    I have registered an xsd in /home/divload/xsd/T0090.xsd. User "prmt" is the owner of this resource. User prmt can schemavalidate xml against this xsd just as it is now. However, I have package code in "prmt_app" user account that will actually do the schemavalidate - not prmt user. When I run the exact same code using the exact same xml with the T0090.xsd above I am getting ORA-19007: Schema - does not match expected T0090.xsd. prmt_app has "all" privs on "/home", "/home/divload", "/home/divload/xsd", and "/home/divload/xsd/T0090.xsd". What am I missing?
    XSD header info
    <?xml version="1.0" encoding="utf-8"?>
    <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb">
         <xs:element name="T0090" xdb:defaultTable="T0090">
    ...XML header info
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <T0090 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="T0090.xsd">
    <PERMIT>
    ...The error occurs when I am inserting into this table off disk..
    create table prmt.cview_xml (filename varchar2(256), xmldoc xmltype) xmltype xmldoc xmlschema "T0090.xsd" element "T0090";
    Edited by: Mark Reichman on Jun 28, 2010 2:42 PM

    I did all that before posting the orignial post..
    declare
      v_schema_exists varchar2(1) := 'N';
      res             boolean;
      schemaURL       varchar2(100) := 'T0090.xsd';
      schemaPath      varchar2(100) :=  '/prmt/xsd/T0090.xsd'; --'/public/T0090.xsd';
      xmlSchema xmlType := XMLTYPE(bfilename('DIR_PRMT_OUT_CVIEW','T0090.xsd'),NLS_CHARSET_ID('AL32UTF8'));
    begin
      begin
        select 'Y'
          into v_schema_exists
          from sys.all_xml_schemas  -- changed from user_xml_schemas
         where schema_url = schemaURL;
        dbms_xmlSchema.deleteSchema(schemaURL,4);
        exception
          when NO_DATA_FOUND then
            null;
      end;
      if (dbms_xdb.existsResource(schemaPath)) then
        dbms_xdb.deleteResource(schemaPath);
      end if;
      res := dbms_xdb.createResource(schemaPath,xmlSchema);   
      dbms_xmlschema.registerSchema ( schemaURL, xdbURIType(schemaPath).getClob(), TRUE, TRUE, FALSE, TRUE );
    end;
    / I guess my understanding was that I could grant another oracle user access to my registered schema just like I can grant a single user access to a table. Evidently I only have two options. Only the schema owner can use the schema or everyone can use the schema and I cannot grant access to a single user other than myself.
    Edited by: Mark Reichman on Jul 2, 2010 9:08 AM
    Edited by: Mark Reichman on Jul 2, 2010 9:09 AM

  • Why my XML is not loading ?? (ORA-19007: Schema - does not match expected )

    Hi,
    I want to load a XML document in structured XMLType. You can run my code on your database if you have a directory object called LOG_DIR. I am on Oracle 10.1 .
    The schema is a simple example which describe a database table(like it will have 1 or more columns and 0 or more indexes). My schema looks like,
    <xs:schema elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="Tables" type="Table">
    <xs:annotation>
    <xs:documentation>Table defination</xs:documentation>
    </xs:annotation>
    </xs:element>
    <xs:element name="table_name" type="xs:string"/>
    <xs:complexType name="Table">
    <xs:sequence>
    <xs:element name="Column" type="Column" minOccurs="1"/>
    <xs:element name="Index" type="Index" minOccurs="0"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="Column">
    <xs:annotation>
    <xs:documentation>Column of the table</xs:documentation>
    </xs:annotation>
    <xs:sequence>
    <xs:element name="Name" type="xs:string" minOccurs="1"/>
    <xs:element name="Type" type="xs:string" minOccurs="1"/>
    <xs:element name="Capacity" type="xs:decimal" minOccurs="1"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="Index">
    <xs:annotation>
    <xs:documentation>Index on the table</xs:documentation>
    </xs:annotation>
    <xs:sequence>
    <xs:element name="Name" type="xs:string" minOccurs="1"/>
    <xs:element name="Type" type="xs:string" minOccurs="0"/>
    </xs:sequence>
    </xs:complexType>
    </xs:schema>
    I registered the schema,
    BEGIN
    DBMS_XMLSCHEMA.registerSchema(
    SCHEMAURL => 'tables.xsd',
    SCHEMADOC => bfilename('LOG_DIR','tables.xsd'),
    CSID => nls_charset_id('AL32UTF8')
    END;
    This was successfull, also the following create table was ok,
    CREATE TABLE TMP_XML_TABLES
    file_name VARCHAR2(2000),
    load_date DATE,
    xml_document XMLType
    XMLType COLUMN xml_document
    XMLSchema "http://xmlns.oracle.com/xdb/schemas/TDB/tables.xsd"
    ELEMENT "Tables";
    Now I have a XML document,
    <Tables xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xmlns.oracle.com/xdb/schemas/TDB/tables.xsd">
    <table_name>trades</table_name>
    <Column><Name>trade_id</Name><Type>varchar2</Type><Capacity>50</Capacity></Column>
    <Column><Name>source</Name><Type>varchar2</Type><Capacity>100</Capacity></Column>
    <Column><Name>trade_date</Name><Type>date</Type></Column>
    <Column><Name>trader</Name><Type>varchar2</Type><Capacity>200</Capacity></Column>
    <Index><Name>trades_pk</Name><Type>btree</Type></Index>
    <Index><Name>trades_idx1</Name><Type>bitmap</Type></Index>
    </Tables>
    When I am trying to load this, I get the error,
    SQL> INSERT INTO TMP_XML_TABLES
    2 VALUES
    3 ('tables1.xml',
    4 sysdate,
    5 XMLType
    6 (
    7 bfilename('LOG_DIR','tables1.xml'),
    8 nls_charset_id('AL32UTF8')
    9 )
    10 );
    INSERT INTO TMP_XML_TABLES
    ERROR at line 1:
    ORA-19007: Schema - does not match expected tables.xsd.
    Can somebody please explain the cause ???
    Thanks and Regards

    A quick search of the forum for ORA-19007 should have allowed you to find the answer to your problem. Since you XML Schema does not declare a target namespace you need to use the xsi:noNamespaceSchemaLocation tag rather than the schemaLocation tag..
    Also please do not use URLs starting http://xmlns.oracle.com for your schemaLocation hint. If you do no own your own domain I'd suggest example.org...
    Finally please make sure that your XML Instance is valid per your XML Schema before posting. You can do this using tools like JDeveloper or XMLSpy. What should have been a 5 min repsonse took me over 20 mins to work through due to the errors in the XML Schema...
    Anyway here's a working example for you
    SQL>
    SQL>
    SQL> var schemaURL varchar2(256)
    SQL> var schemaPath varchar2(256)
    SQL> --
    SQL> begin
      2    :schemaURL := 'http://xmlns.examples.org/xdb/schemas/TDB/tables.xsd';
      3    :schemaPath := '/public/testcase.xsd';
      4  end;
      5  /
    PL/SQL procedure successfully completed.
    SQL> DROP TABLE TMP_XML_TABLES
      2  /
    Table dropped.
    SQL> call dbms_xmlSchema.deleteSchema(:schemaURL,4)
      2  /
    Call completed.
    SQL> declare
      2    res boolean;
      3    xmlSchema xmlType := xmlType(
      4  '<xs:schema elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xdb="
    tp://xmlns.oracle.com/xdb">
      5     <xs:element name="Tables" xdb:defaultTable="TABLES_TABLE">
      6     <xs:annotation>
      7                     <xs:documentation>Table defination</xs:documentation>
      8             </xs:annotation>
      9             <xs:complexType>
    10                     <xs:complexContent>
    11                             <xs:extension base="Table"/>
    12                     </xs:complexContent>
    13             </xs:complexType>
    14     </xs:element>
    15     <xs:complexType name="Table">
    16             <xs:sequence>
    17                     <xs:element name="table_name" type="xs:string"/>
    18                     <xs:element name="Column" type="Column" maxOccurs="unbounded"/>
    19                     <xs:element name="Index" type="Index" minOccurs="0" maxOccurs="unbounded"/>
    20             </xs:sequence>
    21     </xs:complexType>
    22     <xs:complexType name="Column">
    23             <xs:annotation>
    24                     <xs:documentation>Column of the table</xs:documentation>
    25             </xs:annotation>
    26             <xs:sequence>
    27                     <xs:element name="Name" type="xs:string"/>
    28                     <xs:element name="Type" type="xs:string"/>
    29                     <xs:element name="Capacity" type="xs:decimal"/>
    30             </xs:sequence>
    31     </xs:complexType>
    32     <xs:complexType name="Index">
    33             <xs:annotation>
    34                     <xs:documentation>Index on the table</xs:documentation>
    35             </xs:annotation>
    36             <xs:sequence>
    37                     <xs:element name="Name" type="xs:string"/>
    38                     <xs:element name="Type" type="xs:string" minOccurs="0"/>
    39             </xs:sequence>
    40     </xs:complexType>
    41  </xs:schema>
    42  ');
    43  begin
    44    if (dbms_xdb.existsResource(:schemaPath)) then
    45      dbms_xdb.deleteResource(:schemaPath);
    46    end if;
    47    res := dbms_xdb.createResource(:schemaPath,xmlSchema);
    48  end;
    49  /
    PL/SQL procedure successfully completed.
    SQL> begin
      2    dbms_xmlschema.registerSchema
      3    (
      4      :schemaURL,
      5      xdbURIType(:schemaPath).getClob(),
      6      TRUE,TRUE,FALSE,TRUE
      7    );
      8  end;
      9  /
    PL/SQL procedure successfully completed.
    SQL> CREATE TABLE TMP_XML_TABLES
      2  (
      3  file_name VARCHAR2(2000),
      4  load_date DATE,
      5  xml_document XMLType
      6  )
      7  XMLType COLUMN xml_document
      8  XMLSchema "http://xmlns.examples.org/xdb/schemas/TDB/tables.xsd"
      9  ELEMENT "Tables"
    10  /
    Table created.
    SQL> insert into TMP_XML_TABLES values ('testcase1.xml',sysdate,xmltype(
      2  '<Tables xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://xmlns.examples.org/xdb/schemas/T
    /tables.xsd">
      3     <table_name>trades</table_name>
      4     <Column>
      5             <Name>trade_id</Name>
      6             <Type>varchar2</Type>
      7             <Capacity>50</Capacity>
      8     </Column>
      9     <Column>
    10             <Name>source</Name>
    11             <Type>varchar2</Type>
    12             <Capacity>100</Capacity>
    13     </Column>
    14     <Column>
    15             <Name>trade_date</Name>
    16             <Type>date</Type>
    17     </Column>
    18     <Column>
    19             <Name>trader</Name>
    20             <Type>varchar2</Type>
    21             <Capacity>200</Capacity>
    22     </Column>
    23     <Index>
    24             <Name>trades_pk</Name>
    25             <Type>btree</Type>
    26     </Index>
    27     <Index>
    28             <Name>trades_idx1</Name>
    29             <Type>bitmap</Type>
    30     </Index>
    31  </Tables>'))
    32  /
    1 row created.
    SQL> set long 10000 pages 0 lines 160
    SQL> /
    1 row created.
    SQL> select * from TMP_XML_TABLES
      2  /
    testcase1.xml
    21-APR-06
    <Tables xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://xmlns.examples.org/xdb/schemas/TDB/tab
    s.xsd">
      <table_name>trades</table_name>
      <Column>
        <Name>trade_id</Name>
        <Type>varchar2</Type>
        <Capacity>50</Capacity>
      </Column>
      <Column>
        <Name>source</Name>
        <Type>varchar2</Type>
        <Capacity>100</Capacity>
      </Column>
      <Column>
        <Name>trade_date</Name>
        <Type>date</Type>
      </Column>
      <Column>
        <Name>trader</Name>
        <Type>varchar2</Type>
        <Capacity>200</Capacity>
      </Column>
      <Index>
        <Name>trades_pk</Name>
        <Type>btree</Type>
      </Index>
      <Index>
        <Name>trades_idx1</Name>
        <Type>bitmap</Type>
      </Index>
    </Tables>
    testcase1.xml
    21-APR-06
    <Tables xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://xmlns.examples.org/xdb/schemas/TDB/tab
    s.xsd">
      <table_name>trades</table_name>
      <Column>
        <Name>trade_id</Name>
        <Type>varchar2</Type>
        <Capacity>50</Capacity>
      </Column>
      <Column>
        <Name>source</Name>
        <Type>varchar2</Type>
        <Capacity>100</Capacity>
      </Column>
      <Column>
        <Name>trade_date</Name>
        <Type>date</Type>
      </Column>
      <Column>
        <Name>trader</Name>
        <Type>varchar2</Type>
        <Capacity>200</Capacity>
      </Column>
      <Index>
        <Name>trades_pk</Name>
        <Type>btree</Type>
      </Index>
      <Index>
        <Name>trades_idx1</Name>
        <Type>bitmap</Type>
      </Index>
    </Tables>Since you are tracking metadata about the documents (name, date loaded) you might want to consider using the XDB repository to load the documents. The folllowing shows how you can do this from SQL and then create a view which contains the metadata and document content. The advantage of this approach is you can now load the documents using FTP or WebDAV.
    SQL> declare
      2    res boolean;
      3    document xmltype := xmltype(
      4  '<Tables xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://xmlns.examples.org/xdb/schemas/T
    /tables.xsd">
      5     <table_name>trades</table_name>
      6     <Column>
      7             <Name>trade_id</Name>
      8             <Type>varchar2</Type>
      9             <Capacity>50</Capacity>
    10     </Column>
    11     <Column>
    12             <Name>source</Name>
    13             <Type>varchar2</Type>
    14             <Capacity>100</Capacity>
    15     </Column>
    16     <Column>
    17             <Name>trade_date</Name>
    18             <Type>date</Type>
    19     </Column>
    20     <Column>
    21             <Name>trader</Name>
    22             <Type>varchar2</Type>
    23             <Capacity>200</Capacity>
    24     </Column>
    25     <Index>
    26             <Name>trades_pk</Name>
    27             <Type>btree</Type>
    28     </Index>
    29     <Index>
    30             <Name>trades_idx1</Name>
    31             <Type>bitmap</Type>
    32     </Index>
    33  </Tables>');
    34  begin
    35    res := dbms_xdb.createResource('/public/testcase.xml',document);
    36  end;
    37  /
    PL/SQL procedure successfully completed.
    SQL> create or replace view TMP_XML_TABLES_VIEW as
      2  select extractValue(res,'/Resource/DisplayName') FILENAME,
      3         extractValue(res,'/Resource/CreationDate') LOAD_DATE,
      4         object_value XML_DOCUMENT
      5    from RESOURCE_VIEW, TABLES_TABLE t
      6   where extractValue(res,'/Resource/XMLRef')= ref(t)
      7  /
    View created.
    SQL> select * from TABLES_TABLE
      2  /
    <Tables xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://xmlns.examples.org/xdb/schemas/TDB/tab
    s.xsd">
      <table_name>trades</table_name>
      <Column>
        <Name>trade_id</Name>
        <Type>varchar2</Type>
        <Capacity>50</Capacity>
      </Column>
      <Column>
        <Name>source</Name>
        <Type>varchar2</Type>
        <Capacity>100</Capacity>
      </Column>
      <Column>
        <Name>trade_date</Name>
        <Type>date</Type>
      </Column>
      <Column>
        <Name>trader</Name>
        <Type>varchar2</Type>
        <Capacity>200</Capacity>
      </Column>
      <Index>
        <Name>trades_pk</Name>
        <Type>btree</Type>
      </Index>
      <Index>
        <Name>trades_idx1</Name>
        <Type>bitmap</Type>
      </Index>
    </Tables>
    SQL> select * from TMP_XML_TABLES_VIEW
      2  /
    testcase.xml
    21-APR-06 02.21.37.031000 PM
    <Tables xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://xmlns.examples.org/xdb/schemas/TDB/tab
    s.xsd">
      <table_name>trades</table_name>
      <Column>
        <Name>trade_id</Name>
        <Type>varchar2</Type>
        <Capacity>50</Capacity>
      </Column>
      <Column>
        <Name>source</Name>
        <Type>varchar2</Type>
        <Capacity>100</Capacity>
      </Column>
      <Column>
        <Name>trade_date</Name>
        <Type>date</Type>
      </Column>
      <Column>
        <Name>trader</Name>
        <Type>varchar2</Type>
        <Capacity>200</Capacity>
      </Column>
      <Index>
        <Name>trades_pk</Name>
        <Type>btree</Type>
      </Index>
      <Index>
        <Name>trades_idx1</Name>
        <Type>bitmap</Type>
      </Index>
    </Tables>
    SQL>
    SQL>
    SQL>

  • ORA-04030: out of process memory Loading Large XML File

    Experts: I am trying to load a 2.1G XML file into an Object Relational table . The xml schema document xsd is already registered successfully. It fails with the following error :
    ORA-04030: out of process memory when trying to allocate 4032 bytes
    (qmxtgCreateBuf,kghsseg: kolaslCreateCtx)
    ORA-06512: at "SYS.XMLTYPE", line 296
    ORA-06512: at line 1I am able to load the document successfully in SECUREFILE BINARY XML table but that would not work as I need to create relational view on top of this table which does not work with SECUREFILE BINARY XML storage.
    Please suggest what may be the workaround here?
    Thanks
    Kevin

    MDrake: I am trying to load like this:
    insert into TEST_HUGE_XML
        values(
          xmltype(
            bfilename('XMLDIR', 'huge_xmldoc.xml')
          , nls_charset_id('AL32UTF8')
          , 'huge_xmldoc.xsd'
    db version: 11.2.0.3I saw an example of loading using createresource API here:
    http://www.oracle-developer.net/display.php?id=416
    SQL> DECLARE
      2     v_return BOOLEAN;
      3  BEGIN
      4     v_return := DBMS_XDB.CREATERESOURCE(
      5                    abspath => '/public/demo/xml/db_objects.xml',
      6                    data    => BFILENAME('XML_DIR', 'db_objects.xml')
      7                    );
      8     COMMIT;
      9  END;
    10  /
    PL/SQL procedure successfully completed.How do i load the huge xml document in my custom object relational table which was created like this:
    CREATE TABLE HUGE_XML OF XMLTYPE
        XMLTYPE STORE AS OBJECT RELATIONAL
        XMLSCHEMA "huge_xmldoc.xsd"
        ELEMENT "root_element"
    Thanks
    Edited by: Kevin_K on Feb 8, 2013 9:35 AM                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

Maybe you are looking for