Xpath difference between Oracle 10g and Oracle 11g

All,
I'm working on moving our existing stored functions from Oracle 10g (10.2.0.4.0) to Oracle 11g (11.2.0.1.0) and so far, everything has worked just fine on Oracle 11g...execpt for one xpath statement.
The statement below works fine in Oracle 10g (10.2.0.4.0):
extractValue(inv_dtl_img, '/service//ground/sortKeyCode') AS "srt_key_cd",
Please note: I need to use the double slash "//" in order to ignore the two different elements in the schema.
However, in Oracle 11g (11.2.0.1.0), when this statement is executed in the stored function, I get this:
ERROR at line 1:
ORA-00932: inconsistent datatypes: expected - got -
The extractValue command is pulling data out of an XMLType column, and the corresponding XML schema looks like:
<service>
<trans>
<ground>
<sortKeyCode>
</sortKeyCode>
</ground>
</trans>
<nontrans>
<ground minOccurs=0>
<sortKeyCode>
</sortKeyCode>
</ground>
</nontrans>
</service>
Please note: In the XML message, the "trans" and "nontrans" elements are exclusive, so both will never be populated at the same time. A typical XML message would look like this:
<service><trans><ground><sortKeyCode>3</sortKeyCode></ground></trans></service>
or this:
<service><nontrans><ground><sortKeyCode>5</sortKeyCode></ground></nontrans></service>
In the schema, the sortKeyCode has been defined in both places as "string maxlen=3", so the datatype of that element is exactly the same in both the "trans" and "nontrans" sections of the schema. The only difference in the schema (outside of the trans and nontrans tags) is the fact that the second "ground" tag is defined with a "minOccurs=0". Could Oracle 11g be treating the schema differently than Oracle 10g, resulting in the error?
Any thoughts would be appreciated.

The only way to get an quick answer to that one is to file a service request with Oracle support. It could be a bug or a correct change regarding W3C behavior. Despite this, you moving to 11.2, the extract/extractvalue etc propriety Oracle solutions are deprecated from 11.2 and onwards. The more sensible way to move forward, although, I know more work intensive, is to apply the XQuery alternatives like xmlexist, xquery or xmltable functions.
Moving to EXTRACT is a bad idea, because this alway will be treated as an XML fragment. If you unlucky then Oracle will deal with this in memory via DOM (the standard solution regarding XML parsing if every smart thing within Oracle can not be applied) and this will result in a performance downgrade due to high CPU and Memory consumption/overhead...
Your pick...

Similar Messages

  • Difference Between OBIEE 10g and OBIEE 11g

    Hi everyone,
    I have a doubt when choosing two versions of OBIEE, 10g and 11g.
    Actually, is there any big difference between 10g and 11 version ?
    From the point of view of easiness finding tutorial in internet, simplicity of using the tool, and other considerations, which one is better ?
    I hope you guys could also explain with your arguments.
    Thanks

    Hi,
    Few differences..
    Architectures-
    OBIEE 11g architecture...http://www.rittmanmead.com/2010/07/09/obiee-11gr1-architecture-and-use-of-weblogic-server/
    OBIEE 10g architecture....http://gerardnico.com/wiki/dat/obiee/obiee_overview
    Features-
    New features in OBIEE11g...Re: OBIEE 11g
    http://blogs.oracle.com/robreynolds/2010/07/new_administration_features_of.html
    I have a doubt when choosing two versions of OBIEE, 10g and 11g.If you are new to OBIEE its best to start with 10g,there are lot changes in 11g.It takes time to get used to it and you many not get enough docs or material to read,may face some new issues also.
    Actually, is there any big difference between 10g and 11 version ? Yes there are some differences between them...you can see them in above links.(many things like graphs,server)
    From the point of view of easiness finding tutorial in internet, simplicity of using the tool, and other considerations, which one is better ?For sure obiee 10g as 11g is new many of them just started using it,so you may get less help on this if you face issues & may not get enough tutorial in internet and OBIEE10g is bit easy to use.
    Its best to you go for OBIEE10g,parallely you can try 11g.
    Regards,
    Srikanth
    Edited by: Srikanth Mandadi on Oct 7, 2010 11:08 AM

  • Differences between OCA 10g and OCA 11g

    Hi,
    I am currently studying the OCA 10g Administration I but I have not taken the exam yet. I am also taking the SQL Expert exam but I dont think that is version specific.
    I would like to know how different or what the differences are between the OCA 10g and 11g exams are as I fear that 10g will be out of date soon. I am considering just taking the 11g exam even though I have only studied 10g.
    I had a look at both the syllabuses and they look pretty similar and was hoping someone could add some personal notations of their experience. I suspect and hope that the major differences would come at the OCP level.
    I don't want to go to do OCP as I am only doing to obtain a good foundation for working on the functional side of financials.
    Thanks in advance.
    Luke

    differences are between the OCA 10g and 11g exams
    Different version different new features discussed. example : no ADR in the 10g, no invisible index in 10g, DRA etc.
    Syllabus maybe the same, but features is different.
    I suspect and hope that the major differences would come at the OCP level.
    OCP is deeper than OCA. mostly OCA cover all features of the Oracle, and the OCP discussed about more advanced technique like RMAN, ASM, Memory Management, etc. but again 10g and 11g have different features.
    That's why for 10g OCP who wants to upgrade become 11g OCP, has to follow 11g new features exam.
    HTH
    Edited by: HGDBA on Jan 14, 2011 1:17 PM

  • What are the major differences between oracle 10g and oracle express 10g

    Hi
    Can anyone tell, What are the major differences between[b] oracle 10g and oracle express 10g.
    Or if you know any URL, then please do let me know.
    Advance Thanks
    JC

    Dear sir,
    here it is.
    http://www.oracle.com/database/product_editions.html

  • What are major differences between SAP BI and Oracle BI?

    Hi Experts,
    I am new to Oracle BI. But I want to know about major differences between SAP BI and Oracle BI?.
    Please help me....
    Thanks & Regards,
    A. kavya kumari.

    There are at least five major differences :
    S P O r c l e
    but important to also be aware of the minor difference:
    A/a

  • What is Difference between ANSI SQL and ORACLE SQL

    Hi,
    I am going to take the assesment test for ANSI SQL Programming before that i want to know any difference between ANSI SQL and ORACLE SQL?
    I am studying for SQL but the test will be ANSI SQL please let me give an idea about the both.
    Thanks
    Merina Roslin

    Basically there is syntax difference between both of them.
    Lets say i want to join two table EMP and DEPT based on DEPTNO.
    With Oracle SQL format its like this.
    select e.*
      from emp e, dept d
    where e.deptno = d.deptnoHere the joining condition goes in the WHERE clause.
    With ANSI SQL format its like this.
    select e.*
      from emp e
      join dept d
        on e.deptno = d.deptnoHere the join condition is mentioned separately and not in WHERE clause.
    Oracle supports ANSI SQL starting from 9i version.
    You can read more about the syntax difference Here

  • What is the difference between Open-Script and Oracle functional testing

    Hi All,
    Please help me in spotting out the difference between the Openscript and Oracle Functional Testing for Web Application.
    Does Oracle Functional Testing for Web Application have any special features when compared with Open-Script.
    Please help me out.
    Thanks in Advance,
    Nishanth Soundararajan.

    Nishanth
    OFT is the old version of OpenScript, which will no longer be part of ATS as per the next major realize 9.20.
    I would recommend to to spend any time looking at it.
    Regards
    Alex

  • Will Oracle 10g and Oracle XE happily co-exist on same machine?

    I can't seem to find anything specifically saying that Oracle 10g and Oracle XE can be installed on the same Windows machine. The only reason I'd want to do this is that I originally had the free version on my Windows machine. The uninstaller nevers seems to run a complete job and always leaves bits over. So I'd like to install Oracle 10g alongside Oracle XE.
    Wondered if anybody had done this already?

    to uninstall Oracle, do the following:
    1. Uninstall all Oracle components using the Oracle Universal Installer (OUI).
    2. Run regedit.exe and delete the HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE key. This contains registry entires for all Oracle products.
    Delete any references to Oracle services left behind in the following part of the registry:
    HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Ora*
    It should be pretty obvious which ones relate to Oracle.
    4. Reboot your machine.
    5. Delete the "C:\Oracle" directory, or whatever directory is your ORACLE_BASE.
    6. Delete the "C:\Program Files\Oracle" directory.
    7. Empty the contents of your "c:\temp" directory.
    8. Empty your recycle bin.
    At this point your machine will be as clean of Oracle components as it can be.
    Remember, manually editing your registry can be very destructive and force an OS reinstall so only do it as a last resort.

  • Differences between ANSI SQL and Oracle 8/9

    Hallo,
    i'm looking for good online texts or books concerning the problem "Differences between ANSI SQL and different database implementations (ORACLE, Informix, MySQL...)" I want to check a program written in C (with ESQL) that works with an Informix-DB. In this code i want to find code that is specific to the Informix-DB. I want to change the database, so all the code should be independent from a DB. Does anybody know texts or books concerning this problem?
    thx
    Marco Seum

    Basically there is syntax difference between both of them.
    Lets say i want to join two table EMP and DEPT based on DEPTNO.
    With Oracle SQL format its like this.
    select e.*
      from emp e, dept d
    where e.deptno = d.deptnoHere the joining condition goes in the WHERE clause.
    With ANSI SQL format its like this.
    select e.*
      from emp e
      join dept d
        on e.deptno = d.deptnoHere the join condition is mentioned separately and not in WHERE clause.
    Oracle supports ANSI SQL starting from 9i version.
    You can read more about the syntax difference Here

  • Is there Any difference Between OBPM 10g And AlBPM 6.0

    Hello Friends
    I would like know is There any difference between the Oracle BPM 10g and ALBPM 6.0 . ??
    The second one is Difference between AlBPM5.7 and ALBPM 6.0
    Thanks In Advance
    with Regards
    Sandeep
    Edited by: user12036530 on Oct 18, 2009 9:08 PM

    For 10g Differences, check out: http://download.oracle.com/docs/cd/E13154_01/bpm/docs65/upgradeguide/deliverables/upgrade_guide/c_Head_Reference.html
    And other 10g Documentation: http://download.oracle.com/docs/cd/E13154_01/bpm/docs65/index.html Specifically: Upgrade Guide, Process API Differences (if you use PAPI)
    For 6.0 Differences, check out the Documentation: http://download.oracle.com/docs/cd/E13165_01/albsi/docs60/index.html Specifically: ALBPM 6.0 New Features Overview
    Hope this helps,
    -Kevin

  • ORACLE 10g and ORACLE 9i on same machine

    Hi All,
    I want to install oracle 10g and oracle9i database on same windows machine.
    As far as i know i have install oracle10g and 9i on different oracle_home.
    Any thing is required.
    Regards,
    Umair

    umair,
    Install 9i into an ORACLE_HOME.
    Install 10g into an other ORACLE_HOME.
    Nothing more is required, only the Oracle requirements for each version.
    Your attention when you will connect, set always the good ORACLE_HOME before connection.
    Nicolas.

  • Difference between Oracle 10g and Oracle 11g when using Distinct in SQL

    Hi All,
    When I use Distinct in Oracle 10g, the result would be sorted in ascending order automatically, while there is no sorting in the result set in Oracle 11g.
    I was using plsql developer to run my sql.
    May I know if anyone have the same experience before?
    Is there any kind of setting in 11g that I can make the result in order? Thanks!
    Edited by: user5810051 on 2011/4/6 下午 8:47

    As acadet says, if you want your result ordered you must specify an ORDER BY clause in your query. Just because previous versions of oracle included some ordering as part of the processing of a query, that was not a guaranteed ordering, but just a side-effect. Now that Oracle have improved the internal workings, they've removed the side-effect, and that's why you're not getting the ordering you want, because you were relying on that side-effect rather than explicitly stating the order you wanted.

  • Differences between BEA's and Oracle's own drivers

    I am trying to understand the various ways and technical differences to
    connect to an Oracle database from WLS 6.1. As far as I can tell, here
    is the list of drivers:
    THIN:
    1. the bundled, old Oracle thin driver in weblogic.jar
    2. the latest Oracle thin driver to prepend to my classpath
    OCI:
    3. the bundled, old Oracle OCI driver in weblogic.jar
    (+ matching Oracle DLL in PATH)
    4. the latest Oracle OCI driver to prepend to my classpath
    (+ latest Oracle DLL in PATH)
    5. Weblogic's own OCI driver in weblogic.jar
    (+ WebLogic's own DLL in PATH)
    I understand that (1) and (3) are 'obsolete'. But what about the others?
    Especially, what are the advantages of (5) over (4) or (2) ?
    Can Joe^H^H^H anybody share some light on this? ;-)
    Thanks,
    Christophe

    Hi Christophe!
    Basically, weblogic bundles 817 thin driver from oracle in 6.1
    For using oracle oci driver, you have to add ocijdbc8.dll in your path.
    Weblogic has its own set of jDrivers(OCI Drivers)
    You need to install oracle client for that. You should use the same driver
    as your client install from weblogic. As per say, if you have 817 oracle
    client installed then you can use weblogic 817 driver. It is OCI driver,
    hence ultimately all calls are diverted to oracle DB thorugh their oracle
    oci API from weblogic driver.
    If you use lots of oracle extensions in your application it is recommended
    to use oracle thin driver.
    However, weblogic jDrivers perform better and more XA compliant then oracle
    thin driver.
    Thanks,
    Mitesh
    Christophe Warland wrote:
    I am trying to understand the various ways and technical differences to
    connect to an Oracle database from WLS 6.1. As far as I can tell, here
    is the list of drivers:
    THIN:
    1. the bundled, old Oracle thin driver in weblogic.jar
    2. the latest Oracle thin driver to prepend to my classpath
    OCI:
    3. the bundled, old Oracle OCI driver in weblogic.jar
    (+ matching Oracle DLL in PATH)
    4. the latest Oracle OCI driver to prepend to my classpath
    (+ latest Oracle DLL in PATH)
    5. Weblogic's own OCI driver in weblogic.jar
    (+ WebLogic's own DLL in PATH)
    I understand that (1) and (3) are 'obsolete'. But what about the others?
    Especially, what are the advantages of (5) over (4) or (2) ?
    Can Joe^H^H^H anybody share some light on this? ;-)
    Thanks,
    Christophe

  • Difference between OBIA 10g and 11g

    hi all
    Can anyone tell me the new modules which are added in OBIA 11g  as compared to 10g.
    Any help deeply appreciated.
    Thanks
    Bivin

    Check all 4 links from New Features for Oracle Business Intelligence Users - 11g Release 1 (11.1.1)
    If helps mark
    ~ http://cool-bi.com

  • DB Link between Oracle 10g and Oracle 9i for CLOB data type

    How do I transport XMLType or CLOB from oracle 9i to Oracle 10G using DBLink?
    Is any restrction to DBLink, while transfering CLOB with XML data from oracle 9i to Oracle 10G?
    Please let me know how i resolve this issue.
    Thanks in advance.
    DK

    Well... it depends on what type of link you wish to create.
    If you have same user with same password on both databases (9i and 10G), then you can create a public database link as
    CREATE PUBLIC DATABASE LINK dblink USING 'dbalias';
    Note: dbalias is the value from your TNSNAMES.ORA. The database from which you are creating the db link has to have the entry in TNS for other database.
    Other method is to create a private db link
    CREATE DATABASE LINK dblink CONNECT TO user IDENTIFIED by pwd using 'dbalias';
    The number of open connections from a particular database is governed by init parameter DB_LINKS (this was in 8i.. not sure about higher versions)
    HTH...
    Message was edited by:
    satishkandi

Maybe you are looking for

  • LSMW BOM

    Is it possible to use batch recording method when uploading the BOM throughthe LSMW or is it more ideal to use the Direct Input method?

  • Find not working without Administrator group

    Operating System : Windows 2000 SP4 Adobe Reader Version : 8.1.2 Has anyone else experienced the following: I installed Adobe Reader using the Administrator account. Users of the machine run with normal user accounts. When users attempt to do a 'Find

  • BDC and Function Pool

    Hi, Had some questions, would appreciate if somebody could help answer. 1) If I want to do a BDC on TCode T1 and if BDC is successful on T1 then do a BDC on Tcode T2 (all in the same program), Can we do a BDC using session method on multiple transact

  • Recovering clips from Trash - can't drag out

    I recorded some clips using the built in camera, hadn't saved the project and it shut down on me. I reopened the project, and they were all in the trash. But I can't seem to get them out of the trash... can any one help or should I just empty the tra

  • Can't import Java Netbeans libraries

    Hi, I've inherited some code and cannot get it to compile. I get errors that the required import functions for various netbean classes cannot be found. These are for imports such as "import org.netbeans.spi.Wizard " which all fail stating that the cl