Multiple Namespaces in XSD

Dear SCN users,
I have requirement where there are multiple XSDs that need to be clubbed.(XSDs are with different target namespaces)
I succesfully clubbed them all,But when I use the same in message mapping I am getting only one target namespace(ns0) because of which I am getting error when I test with the sample XML given
So how to handle this multiple namespaces in XSD

Hi,
This blog will definitely help
GS1 Integration - SAP PI 7.1 – PART - I
GS1 Integration - SAP PI 7.1 – PART - II
Part 1 consists of loading the entire schema. Part 2 is about creating the business document header, but in your case, you need to remove it, so just a little modification is required.
Regards,
Mark

Similar Messages

  • How to add multiple namespaces in XSD ?

    Can anyone tell me how to add multiple namespaces inside an XSD. Or how to import XSD into another XSD ??
    Thanks

    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://xml.ibridge.nl/nl/rsg/domein/3/company" xmlns:alg="http://mynamespace/generic" targetNamespace="http://xml.ibridge.nl/nl/rsg/domein/3/company" elementFormDefault="qualified" attributeFormDefault="unqualified" version="2.1">
         <xs:import namespace="http://mynamespace/generic" schemaLocation="algemeen.xsd"/>
    you define xmlns:alg with a namespace
    and after that use the namespace itself to import a xsd for it

  • XSD validation with multiple namespaces

    Hi All,
    I'm trying to validate some XML using an XSD that contains multiple namespace schema descriptions, as such, the main XSD file must import an XSD for each namespace.
    The difficulty is that I cannot seem to find a way (in Oracle) to run a XSD validation using this (multi-XSD file) method.
    Has anyone out there tackled a similar problem?
    Cheers,
    Ben

    check out the class
    CL_XML_SCHEMA
    Regards
    Raja

  • Multiple namespaces in an XML document

    I have an XML document that I am trying to use within a data flow (XML Source)--the problem is that I keep getting an error message stating that the XML document has multiple namespaces and therefore, SSIS will not create the XSD for me.  If I take out the second namespace, I am able to successfully get the task to execute, but this XML is created with 2 namespaces and there is no way to get around this (I cannot get the report server to change these parameters)--my question is: does anyone know of a way to get SSIS to handle multiple namespaces so that I can process this XML document and extract the necessary data elements from it.
    Any assistance would be greatly appreciated.
    Thank you!!!!

    I am replying too much late..........thinking might be useful for someone !!!!
    SSIS does not handle multiple namespaces in the XML source file. You can find examples where you see the format
    <Namespace:Element>.
    The first step to avoid multiple namespaces is to transform your source file to a format that doesn’t refer to the namespaces.
    SSIS has an XML task that can do the transformation. Add the XML task to an SSIS Control Flow and edit it.
    Change the OperationType property value to XSLT, the SourceType to File connection and the Source to your source file that has the problem.
    Set the SaveOperationResult property to True.
    Expand the OperationResult branch and Set DestinationType to File Connection and the Destination to a new XML file.
    Add the following to a new file and save it with an xslt file extension.
    <?xml version="1.0" encoding="utf-8" ?> 
    <xsl:stylesheet version="1.0"         xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
      <xsl:output method="xml" indent="no" /> 
      <xsl:template match="/|comment()|processing-instruction()"> 
        <xsl:copy> 
          <xsl:apply-templates /> 
        </xsl:copy> 
      </xsl:template> 
      <xsl:template match="*"> 
        <xsl:element name="{local-name()}"> 
          <xsl:apply-templates select="@*|node()" /> 
        </xsl:element> 
      </xsl:template> 
      <xsl:template match="@*"> 
        <xsl:attribute name="{local-name()}"> 
          <xsl:value-of select="." /> 
        </xsl:attribute> 
      </xsl:template> 
    </xsl:stylesheet> 
    Back in the XML task, set the SecondOperandType to File connection and the Second Operand to your new XSLT file.
    When you run the XML task, it will take your original file and apply the transformation rules defined in the XSLT file. The results will be saved in your new XML file.
    This task only needs to be run once for the original XML file. When you look at the new file, you’ll see the same data as in the original, but without namespace references.
    Now you can return to your data flow and alter the XML Source to reference the new XML file.
    Click on the Generate XSD and you should be able to avoid your error.
    When you click on the Columns tab in your XML Source, you will probably see a warning. This is because the data types may not be fully defined (for example there’s no mention of string lengths). This shouldn’t be a problem as long as the default data type
    (255-character Unicode string) meets your needs.
    =================life is beatiful..so !!===========
           Rahul Vairagi
    =================================== Rahul Vairagi =================================== My Blogs: www.sqlserver2005forum.blogspot.com www.knwhub.blogspot.com

  • XML Structured Index with multiple namespaces

    Hi,
    I'm having some trouble creating an xmlindex with structured component on a clob xmltype column without registered schema, whose data uses multiple namespaces.
    The code I'm using atm:
    CREATE TABLE "DECLARATIONS"
        "ID" NUMBER(19,0),
        "XML" "SYS"."XMLTYPE"
    CREATE INDEX decl_header_ix ON "DECLARATIONS"(xml) INDEXTYPE IS XDB.XMLINDEX
      PARAMETERS ('PATHS (INCLUDE (/emcs:emcsDeclaration/emcs:header//*)
                          NAMESPACE MAPPING (xmlns:emcs="http://www.myurl.eu/myapp/schema/emcs/nl"))');
    INSERT INTO "DECLARATIONS" VALUES (1,'
    <?xml version = ''1.0'' encoding = ''UTF-8'' standalone = ''yes''?>
    <emcs:emcsDeclaration xsi:schemaLocation="http://www.myurl.eu/myapp/schema/emcs/nl emcs_domain.xsd"
    xmlns:common="http://www.myurl.eu/myapp/schema/common"
    xmlns:emcs="http://www.myurl.eu/myapp/schema/emcs/nl"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <emcs:header>
          <common:identifier>70</common:identifier>
          <common:declarationSequenceNumber>54566</common:declarationSequenceNumber>
          <common:dateCreated>2010-10-21-01:00</common:dateCreated>
          <common:status>01 Draft e-AAD in preparation</common:status>
       </emcs:header>
    </emcs:emcsDeclaration>');A this moment it's not desirable for us to register the schemas used in oracle. According to the documentation I should be able to add a structured component to the index as follows:
    BEGIN
          DBMS_XMLINDEX.registerParameter('MY_XSI_GROUP_PARAMETER'
                  , 'ADD_GROUP GROUP MY_XSI_GROUP
                   XMLTABLE decl_header
                   XMLNAMESPACES (''http://www.myurl.eu/myapp/schema/emcs/nl'' AS emcs,
                           ''http://www.myurl.eu/myapp/schema/common'' AS common),
                        COLUMNS
                  status VARCHAR2(30)  PATH ''/emcs:emcsDeclaration/emcs:header/common:status/text()''
       END;
    ALTER INDEX DECL_HEADER_IX PARAMETERS('PARAM MY_XSI_GROUP_PARAMETER');However this results in an ORA-00904: invalid identifier. After some experimenting it seems that oracle tries to parse the namespace URLs as identifiers (even tho http://download.oracle.com/docs/cd/E14072_01/appdev.112/e10492/xdb_indexing.htm#BCGJAAGH & http://download.oracle.com/docs/cd/E14072_01/appdev.112/e10492/xdb_xquery.htm#BABJCHCC specify the former), so I swapped them around:
    BEGIN
          DBMS_XMLINDEX.dropParameter('MY_XSI_GROUP_PARAMETER');
          DBMS_XMLINDEX.registerParameter('MY_XSI_GROUP_PARAMETER'
              , 'ADD_GROUP GROUP MY_XSI_GROUP
              XMLTABLE decl_header
              XMLNAMESPACES (emcs ''http://www.myurl.eu/myapp/schema/emcs/nl'',
              common ''http://www.myurl.eu/myapp/schema/common''),
              COLUMNS
              status varchar2(30)  PATH ''/emcs:emcsDeclaration/emcs:header/common:status/text()''
       END;
    ALTER INDEX DECL_HEADER_IX PARAMETERS('PARAM MY_XSI_GROUP_PARAMETER');Oracle seems to get a bit further with this, resulting in a ORA-19102: XQuery string literal expected. Here I pretty much hit a dead end. Removing the xmlnamespaces declaration altogether leads to a ORA-31013: Invalid XPATH expression. Going through the examples on http://www.liberidu.com/blog/?p=1805 works fine, but as soon as I try to add namespaces to it they stop working as well.
    So my question is: how do I get xmlnamespaces (with non-default namespaces) to work in a structured xmlindex component?

    If you want, I can help you tomorrow. Call me at my nieuwegein office or mail me at marco[dot]gralike[at]amis[dot]nl
    I have some time tomorrow, so I can help you with this. My next presentation for UKOUG will be on XML indexes strategies anyway...
    In the meantime and/or also have a look at:
    XML Howto's (http://www.liberidu.com/blog/?page_id=441) specifically:
    XML Indexing
    * Unstructured XMLIndex (part 1) – The Concepts (http://www.liberidu.com/blog/?p=228)
    * Unstructured XMLIndex (Part 2) – XMLIndex Path Subsetting (http://www.liberidu.com/blog/?p=242)
    * Unstructured XMLIndex (Part 3) – XMLIndex Syntax Dissected (http://www.liberidu.com/blog/?p=259)
    * Unstructured XMLIndex Performance and Fuzzy XPath Searches (http://www.liberidu.com/blog/?p=310)
    * Structured XMLIndex (Part 1) – Rules of Numb (http://www.liberidu.com/blog/?p=1791)
    * Structured XMLIndex (Part 2) – Howto build a structured XMLIndex (http://www.liberidu.com/blog/?p=1798)
    * Structured XMLIndex (Part 3) – Building Multiple XMLIndex Structures (http://www.liberidu.com/blog/?p=1805)
    The posts were based on Index for XML with Repeated Elements maybe that is a bit better to read than on my notepad on the internet (aka blog)
    Edited by: Marco Gralike on Oct 28, 2010 7:51 PM

  • Parsing across multiple namespaces... best practice?

    Howdy all, here's my situation:
    I am attempting to create a simple interface to a particular type of webdav server which has some unusual XML data coming back, and need some advice on the best way to parse this XML.
    I have a generic "query" object which consists of a set of "Fields", a "Scope" and a set of "Constraints". This query is ultimately formed as an XML request sent to the WebDAV server. The response is also a generic "ResultSet" response, which consists of "Rows". Each Row consists of "Fields" (the same type as in the query). A Field is basically a key/value pair (all Strings), and a namespace which describes the location of the field within the WebDAV server. (obviously modelled on a JDBC-style interaction)
    I need to build a generic parser which can create a ResultSet from a raw XML document.
    For Example:
    Given a "query" with the following fields:
    FIELD 1
    namespace: urn:schemas:httpmail
    name:fromemail
    FIELD 2
    namespace: DAV
    name: id
    The query will basically say (pseudo SQL)
    "select "urn:schemas:httpmail:fromemail", "DAV:id" from <scope> where <constraints>"
    This will return an XML document something like this:
    <a:multistatus
          xmlns:a="DAV:"
          xmlns:b="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/"
          xmlns:c="xml:"
          xmlns:d="urn:schemas:httpmail:"
          xmlns:e="urn:schemas:mailheader:">
       <a:response>
          <a:href>
                http://blah.blah.com/someurl
          </a:href>
          <a:propstat>
             <a:status>
                   HTTP/1.1 200 OK
             </a:status>
             <a:prop>
                <d:fromemail>
                     [email protected]
                </d:fromemail>
                <a:id>
                      AQsAAAAARgAgCwAAAABGeAIAAAAA
                </a:id>
             </a:prop>
          </a:propstat>
       </a:response>
       <a:response>
       </a:response>
    </a:multistatus>
    So.. I then need to create a ResultSet object, which looks like this:
    ResultSet<Object>
    |---Rows<Collection>
        |---Row<Object>
            |---Field<Object>
                |---name: fromemail
                |---namespace: urn:schemas:httpmail
                |---value: [email protected]
            |---Field<Object>
                |---name: id
                |---namespace: DAV
                |---value: AQsAAAAARgAgCwAAAABGeAIAAAAA
        |---Row<Object>
                ....As you can see, I need BOTH the value, and the original data relating to the namespace and field name in the java object returned.
    Problems I am having:
    1. Parsing multiple namespaces. The path to multistatus/response/prop/fromemail (for example) spans two namespaces, hence can't use Commons Digester
    2. Including XML element names as values in the returned object. I need/want to be able to store the XML element name (eg "fromemail") as a value in the java object returned.
    I'm looking for thoughts as to the best way to deal with this... XPath?, DOM/SAX? etc
    Any help you can provide.
    Cheers

    Howdy all, here's my situation:
    I am attempting to create a simple interface to a particular type of webdav server which has some unusual XML data coming back, and need some advice on the best way to parse this XML.
    I have a generic "query" object which consists of a set of "Fields", a "Scope" and a set of "Constraints". This query is ultimately formed as an XML request sent to the WebDAV server. The response is also a generic "ResultSet" response, which consists of "Rows". Each Row consists of "Fields" (the same type as in the query). A Field is basically a key/value pair (all Strings), and a namespace which describes the location of the field within the WebDAV server. (obviously modelled on a JDBC-style interaction)
    I need to build a generic parser which can create a ResultSet from a raw XML document.
    For Example:
    Given a "query" with the following fields:
    FIELD 1
    namespace: urn:schemas:httpmail
    name:fromemail
    FIELD 2
    namespace: DAV
    name: id
    The query will basically say (pseudo SQL)
    "select "urn:schemas:httpmail:fromemail", "DAV:id" from <scope> where <constraints>"
    This will return an XML document something like this:
    <a:multistatus
          xmlns:a="DAV:"
          xmlns:b="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/"
          xmlns:c="xml:"
          xmlns:d="urn:schemas:httpmail:"
          xmlns:e="urn:schemas:mailheader:">
       <a:response>
          <a:href>
                http://blah.blah.com/someurl
          </a:href>
          <a:propstat>
             <a:status>
                   HTTP/1.1 200 OK
             </a:status>
             <a:prop>
                <d:fromemail>
                     [email protected]
                </d:fromemail>
                <a:id>
                      AQsAAAAARgAgCwAAAABGeAIAAAAA
                </a:id>
             </a:prop>
          </a:propstat>
       </a:response>
       <a:response>
       </a:response>
    </a:multistatus>
    So.. I then need to create a ResultSet object, which looks like this:
    ResultSet<Object>
    |---Rows<Collection>
        |---Row<Object>
            |---Field<Object>
                |---name: fromemail
                |---namespace: urn:schemas:httpmail
                |---value: [email protected]
            |---Field<Object>
                |---name: id
                |---namespace: DAV
                |---value: AQsAAAAARgAgCwAAAABGeAIAAAAA
        |---Row<Object>
                ....As you can see, I need BOTH the value, and the original data relating to the namespace and field name in the java object returned.
    Problems I am having:
    1. Parsing multiple namespaces. The path to multistatus/response/prop/fromemail (for example) spans two namespaces, hence can't use Commons Digester
    2. Including XML element names as values in the returned object. I need/want to be able to store the XML element name (eg "fromemail") as a value in the java object returned.
    I'm looking for thoughts as to the best way to deal with this... XPath?, DOM/SAX? etc
    Any help you can provide.
    Cheers

  • Multiple namespace in Reciver XML file

    Hi I am recivering a file which has
    a namespace declaration like this.
    <?xml version="1.0" encoding="UTF-8"?>
    <Messages xmlns="http://www.emeter.com/energyip/readsforbillinginterface2">
    <ReplyMessage xmlns="http://www.emeter.com/energyip/readsforbillinginterface2">
      <Header>
    As per W3C multiple namespace should be handled but within PI when I upload this my Mapping Fails.
    Can you please help . I tried adding an attribute but that is also not working .
    Regards
    Gagan

    Hi ,
    first write  UDFs to remove name sapces,below peace of line code will help to remove it.
    replaceAll("xmlns.?(\"|\').?(\"|\')", "").
    or even simple JAVA mapping also enough.
    Regards,
    Raj

  • Flex multiple namespaces

    Does Flex support multiple namespaces?
    I have a simple calorie calculator application which uses the adobe namespace =>  xmlns:mx="http://www.adobe.com/2006/mxml" automatically
    I also want to include the namespace "http://www.w3.org/1999/xhtml" to use standard xhtml tags but I keep getting this error
    Could not resolve <andre:h1> to a component implementation.    Calory/src    Calory.mxml    line 58    1259888536456    15
    Here is my full code
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application  xmlns:andre="http://www.w3.org/1999/xhtml" xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="populateCombo(event)" color="#679D88" backgroundGradientAlphas="[1.0, 0.47]" backgroundGradientColors="[#D2DDDF, #684E4E]">
    <mx:Style source="calorie.css" />
        <mx:states>
            <mx:State name="results">
                <mx:SetProperty target="{labelDuration}" name="width" value="190"/>
                <mx:SetProperty target="{resultOfCalculation}" name="width" value="530"/>
            </mx:State>
        </mx:states>
    <mx:Script>
        <![CDATA[
            import mx.events.FlexEvent;
            import flash.events.MouseEvent;
            private function populateCombo(e:FlexEvent):void
              var dp:Array = new Array();
              dp.push({label:"Choose exercise ...", data:0});
              dp.push({label:"Aerobics (high impact)", data:0.07142});
              dp.push({label:"Aerobics (low impact)", data:0.0333});
              dp.push({label:"Basketball", data:0.0779});
              dp.push({label:"Cycling", data:0.0779});
              dp.push({label:"Jogging (slow)", data:0.0666});
              dp.push({label:"Jogging (moderate)", data:0.0974});     
              dp.push({label:"Jogging (fast)", data:0.1});
              dp.push({label:"Soccer", data:0.07142});
              dp.push({label:"Swimming (moderate)", data:0.05844});
              dp.push({label:"Tennis", data:0.06666});
              dp.push({label:"Walking (brisk)", data:0.0666});
              comboExerciseType.dataProvider = dp;
            private function getCalories(e:MouseEvent):void
                var calsBurned:Number = Number(comboExerciseType.value);
                var kjBurned:Number;
                var duration:Number = Number(textDuration.text);
                var weightLBS:Number;
                if(rdoKilograms.selected == true)
                    weightLBS = 2.2 * Number(textWeight.text);
                else
                    weightLBS = Number(textWeight.text);
                calsBurned = calsBurned * weightLBS * duration;
                currentState = "results";
                kjBurned = calsBurned * 4.2;
                resultOfCalculation.text = "You burned " + String(Math.floor(calsBurned)) + " calories or " +
                                           String(Math.floor(kjBurned)) + " kilojoules";
        ]]>
    </mx:Script>
        <mx:Panel x="58.5" y="72" width="556" height="332" layout="absolute" title="Calorie Calculators" id="panel1">
            <mx:VBox x="0" y="0" height="292" width="536" id="vbox1">
            <andre:h1> //This line is the problem
                This is the standard header
            </andre:h1>
            <mx:Spacer width="300">
            </mx:Spacer>
                <mx:HBox width="537">
                    <mx:Label text="Weight" width="190" height="34" id="labelWeight" styleName="labelWeight"/>
                    <mx:TextInput width="333" height="35" id="textWeight"/>
                </mx:HBox>
                <mx:HBox width="536">
                    <mx:Label text="Exercise Type" width="190" id="labelExerciseType" enabled="true" styleName="labelExerciseType"/>
                    <mx:ComboBox height="29" width="336" id="comboExerciseType"></mx:ComboBox>
                </mx:HBox>
                <mx:HBox width="100%">
                    <mx:Label text="Duration (min)" width="187" id="labelDuration" styleName="labelDuration"/>
                    <mx:TextInput height="28" width="339" id="textDuration"/>
                </mx:HBox>
                <mx:HBox width="100%">
                    <mx:Spacer width="190"/>
                    <mx:RadioButton label="Pounds" fontWeight="bold" fontSize="20" fontFamily="Georgia" groupName="rdoWeight" selected="true" id="rdoPounds" width="171" styleName="rdoPounds"/>
                    <mx:RadioButton label="Kilograms" fontWeight="bold" fontSize="20" fontFamily="Georgia" groupName="rdoWeight" id="rdoKilograms" styleName="rdoKilograms"/>
                </mx:HBox>
                <mx:HBox width="100%">
                    <mx:Button label="Calculate" fontWeight="normal" fontSize="20" fontFamily="Georgia" click="getCalories(event) " id="buttonCalculate" styleName="buttonCalculate"/>
                </mx:HBox>
                <mx:Label text=" " fontWeight="bold" fontSize="20" fontFamily="Georgia" width="508" id="resultOfCalculation" styleName="resultOfCalculation" enabled="true"/>
            </mx:VBox>
        </mx:Panel>
    </mx:Application>
    I will thank you for insight!

    Just create a Flex component like any other.  Here is information from the livedocs on creating Flex Components
    http://livedocs.adobe.com/flex/3/html/help.html?content=ascomponents_advanced_3.html
    To create something that mimics an h1 tag, you might look into a modified Label or Text class.
    Honestly, I'm unsure why you'd want to try to reimplement xhtml tags in ActionScript 3.

  • Using xpath.evaluate(): xpath exp with multiple namespaces

    Hi,
    I have to evaluate a xpath expression with parent node and child node having different namespaces. Like : env:parent/mig:child.
    I have set the namespacecontext for the child node[i.e., for the prefix 'mig'.]
    But am getting this error :
    javax.xml.transform.TransformerException: Prefix must resolve to a namespace: env
    How can I set the namespace context for both the parent and child nodes? Or is there are any other way of doing it?
    I cant use //mig:child as the requirement needs the whole xpath expression [env:parent/mig:child] to be given as input for the xpath.evaluate() method.
    Here's the code :
    File file = new File("D:\\Backup\\XMLs\\test.xml");
    Document xmlDocument = builder.parse(file);
    XPath xpathEvaluator = XPathFactory.newInstance().newXPath();
    xpathEvaluator.setNamespaceContext(new NamespaceContextProvider("env", "http://xmlns.oracle.com/apps/account/1.0"));
    NodeList nodeList =
    (NodeList)xpathEvaluator.evaluate("/env:parent/mig:child", xmlDocument,
    XPathConstants.NODESET);
    xpathEvaluator.setNamespaceContext(new NamespaceContextProvider("mig", "http://xmlns.oracle.com/apps/account/1.0"));
    Thanks in advance.

    If you want, I can help you tomorrow. Call me at my nieuwegein office or mail me at marco[dot]gralike[at]amis[dot]nl
    I have some time tomorrow, so I can help you with this. My next presentation for UKOUG will be on XML indexes strategies anyway...
    In the meantime and/or also have a look at:
    XML Howto's (http://www.liberidu.com/blog/?page_id=441) specifically:
    XML Indexing
    * Unstructured XMLIndex (part 1) – The Concepts (http://www.liberidu.com/blog/?p=228)
    * Unstructured XMLIndex (Part 2) – XMLIndex Path Subsetting (http://www.liberidu.com/blog/?p=242)
    * Unstructured XMLIndex (Part 3) – XMLIndex Syntax Dissected (http://www.liberidu.com/blog/?p=259)
    * Unstructured XMLIndex Performance and Fuzzy XPath Searches (http://www.liberidu.com/blog/?p=310)
    * Structured XMLIndex (Part 1) – Rules of Numb (http://www.liberidu.com/blog/?p=1791)
    * Structured XMLIndex (Part 2) – Howto build a structured XMLIndex (http://www.liberidu.com/blog/?p=1798)
    * Structured XMLIndex (Part 3) – Building Multiple XMLIndex Structures (http://www.liberidu.com/blog/?p=1805)
    The posts were based on Index for XML with Repeated Elements maybe that is a bit better to read than on my notepad on the internet (aka blog)
    Edited by: Marco Gralike on Oct 28, 2010 7:51 PM

  • Complex xml with multiple namespaces giving LPX-00601: Invalid token error

    Hi
    Apologies if this is a really simple question.
    I have not worked with xml before and I'm drowning in different ways to do the extract.
    I have a very complex xml, sample below, which I'm trying to do one siple extract to get myself going.
    I have the data in a table in an xmltype column,
    I am trying to extract containernumber first and get the error.
    select xml_column, extract(xml_column,'/env:Envelope/env:Body/ns0:QueryCntrNumberResponse/ns0:QueryResContainerDetail/ns1:ContainerNumber/ns2:ContainerNumber')
    from test_xml;
    Not sure if I should use the namespaces and have tried without but results are always NULL
    I would really appreciate any pointers around these ultiple namespaces.
    Thanks
    Nicki
    XML Sample
    <?xml version="1.0" encoding="UTF-8"?>
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
                  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                  xmlns:ns0="http://com.cargosmart.cargotracking.webservice.cntr.dto"
                  xmlns:ns1="http://com.cargosmart.cargotracking.webservice.common.dto"
                  xmlns:ns2="http://com.cargosmart.cargotracking.webservice.basic.dto"
                  xmlns:ns3="http://com.cargosmart.cargotracking.webservice.bl.dto"
                  xmlns:ns4="http://com.cargosmart.cargotracking.webservice.bkg.dto">
      <env:Body>
        <ns0:QueryByCntrNumberResponse>
          <ns0:QueryRes ult="">
            <ns0:QueryCriteria>
              <ns1:CarrierSCACCode>APLU</ns1:CarrierSCACCode>
              <ns1:ContainerNumber>APZU344693-1</ns1:ContainerNumber>
            </ns0:QueryCriteria>
            <ns0:ContainerDetail>
              <ns1:ContainerNumber>
                <ns2:ContainerNumber>APZU344693</ns2:ContainerNumber>
                <ns2:ContainerCheckDigit>1</ns2:ContainerCheckDigit>
                <ns2:GrossWeight>
                  <ns2:Weight>20260.8</ns2:Weight>
                  <ns2:WeightUnit>KGS</ns2:WeightUnit>
                </ns2:GrossWeight>
              </ns1:ContainerNumber>
    NOT THE FULL COLUMN

    Could I just ask you one more question.
    I had already expanded the query to include the repeating sections using xmlsequence.
    Has that been replaced too?
                select extractvalue(xml_column,'/env:Envelope/env:Body/ns0:QueryByCntrNumberResponse/ns0:QueryResult/ns0:ContainerDetail/ns1:ContainerNumber/ns2:ContainerNumber',
                  'xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" 
                  xmlns:ns0="http://com.cargosmart.cargotracking.webservice.cntr.dto"
                  xmlns:ns1="http://com.cargosmart.cargotracking.webservice.common.dto"
                  xmlns:ns2="http://com.cargosmart.cargotracking.webservice.basic.dto"
                  xmlns:ns3="http://com.cargosmart.cargotracking.webservice.bl.dto"
                  xmlns:ns4="http://com.cargosmart.cargotracking.webservice.bkg.dto"') col1,
                  extractvalue(value(t2),'/ns1:Event/ns1:EventDescription', 'xmlns:ns1="http://com.cargosmart.cargotracking.webservice.common.dto"') Event_Description,
                  extractvalue(value(t2),'/ns1:Event/ns1:EventDT/ns2:LocDT', 'xmlns:ns1="http://com.cargosmart.cargotracking.webservice.common.dto" xmlns:ns2="http://com.cargosmart.cargotracking.webservice.basic.dto"') Event_DT,
                  extractvalue(value(t2),'/ns1:Event/ns1:Location/ns2:LocationName', 'xmlns:ns1="http://com.cargosmart.cargotracking.webservice.common.dto" xmlns:ns2="http://com.cargosmart.cargotracking.webservice.basic.dto"') location
    from test_xml t1,
    table(xmlsequence(extract(t1.xml_column,'/env:Envelope/env:Body/ns0:QueryByCntrNumberResponse/ns0:QueryResult/ns0:ContainerDetail/ns1:Event','xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" 
                  xmlns:ns0="http://com.cargosmart.cargotracking.webservice.cntr.dto"
                  xmlns:ns1="http://com.cargosmart.cargotracking.webservice.common.dto"
                  xmlns:ns2="http://com.cargosmart.cargotracking.webservice.basic.dto"
                  xmlns:ns3="http://com.cargosmart.cargotracking.webservice.bl.dto"
                  xmlns:ns4="http://com.cargosmart.cargotracking.webservice.bkg.dto"'))) t2;

  • Multiple namespaces

    I am using WebDav with Resource floders to get XML files into the database. I created a demo schema based on the purchase order schema and created a default table of XML type called XML_PurchaseOrder. When I drop a purchase order.xml file into the folder the table gets updated just fine. Examples below.
    Then I took another .XML file test4flow.xml (A Visio XML file) and just inserted the purchaseorder.xml elements into the file with the namespace of purchaseorder.xsd. This time Oracle ignores the document. Why does xdb not see the namespace referring to a registered schema and validate the file?
    PurchaseOrder.xsd
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb">
    <xs:complexType name="ActionsType" >
    <xs:sequence>
    <xs:element name="Action" maxOccurs="4" >
    <xs:complexType >
    <xs:sequence>
    <xs:element ref="User"/>
    <xs:element ref="Date"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="RejectType" >
    <xs:all>
    <xs:element ref="User" minOccurs="0"/>
    <xs:element ref="Date" minOccurs="0"/>
    <xs:element ref="Comments" minOccurs="0"/>
    </xs:all>
    </xs:complexType>
    <xs:complexType name="ShippingInstructionsType" >
    <xs:sequence>
    <xs:element ref="name"/>
    <xs:element ref="address"/>
    <xs:element ref="telephone"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="LineItemsType" >
    <xs:sequence>
    <xs:element name="LineItem"
    type="LineItemType"
    maxOccurs="unbounded"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="LineItemType" >
    <xs:sequence>
    <xs:element ref="Description"/>
    <xs:element ref="Part"/>
    </xs:sequence>
    <xs:attribute name="ItemNumber" type="xs:integer"/>
    </xs:complexType>
    <xs:element name="PurchaseOrder" xdb:defaultTable="XML_PURCHASEORDER">
    <xs:complexType type="PurchaseOrderType" xdb:SQLType="XML_PURCHASEORDER_TYPE">
    <xs:sequence>
    <xs:element ref="Reference"/>
    <xs:element name="Actions"
    type="ActionsType"/>
    <xs:element name="Reject"
    type="RejectType" minOccurs="0"/>
    <xs:element ref="Requestor"/>
    <xs:element ref="User"/>
    <xs:element ref="CostCenter"/>
    <xs:element name="ShippingInstructions"
    type="ShippingInstructionsType"/>
    <xs:element ref="SpecialInstructions"/>
    <xs:element name="LineItems"
    type="LineItemsType"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:simpleType name="money">
    <xs:restriction base="xs:decimal">
    <xs:fractionDigits value="2"/>
    <xs:totalDigits value="12"/>
    </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="quantity">
    <xs:restriction base="xs:decimal">
    <xs:fractionDigits value="4"/>
    <xs:totalDigits value="8"/>
    </xs:restriction>
    </xs:simpleType>
    <xs:element name="User" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="10"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="Requestor" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="0"/>
    <xs:maxLength value="128"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="Reference" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="26"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="CostCenter" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="4"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="Vendor" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="0"/>
    <xs:maxLength value="20"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="PONumber" >
    <xs:simpleType>
    <xs:restriction base="xs:integer"/>
    </xs:simpleType>
    </xs:element>
    <xs:element name="SpecialInstructions" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="0"/>
    <xs:maxLength value="2048"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="name" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="20"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="address" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="256"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="telephone" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="24"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="Date" type="xs:date" />
    <xs:element name="Comments" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="2048"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="Description" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="256"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="Part" >
    <xs:complexType>
    <xs:attribute name="Id" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="12"/>
    <xs:maxLength value="14"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="Quantity" type="money"/>
    <xs:attribute name="UnitPrice" type="quantity"/>
    </xs:complexType>
    </xs:element>
    </xs:schema>
    Purchaseorder.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <po:PurchaseOrder
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:po="PurchaseOrder"
    xsi:schemaLocation="PurchaseOrder http://www.oracle.com/purchaseorder.xsd">     
    <po:Reference>ADAMS-20011127121040988PST</po:Reference>
    <po:Actions>
    <po:Action>
    <po:User>SCOTT</po:User>
    <po:Date>2002-03-31</po:Date>
    </po:Action>
    </po:Actions>
    <po:Reject/>
    <po:Requestor>Julie P. Adams</po:Requestor>
    <po:User>ADAMS</po:User>
    <po:CostCenter>R20</po:CostCenter>
    <po:ShippingInstructions>
    <po:name>Julie P. Adams</po:name>
    <po:address>Redwood Shores, CA 94065</po:address>
    <po:telephone>650 506 7300</po:telephone>
    </po:ShippingInstructions>
    <po:SpecialInstructions>Ground</po:SpecialInstructions>
    <po:LineItems>
    <po:LineItem ItemNumber="1">
    <po:Description>The Ruling Class</po:Description>
    <po:Part Id="715515012423" UnitPrice="39.95" Quantity="2"/>
    </po:LineItem>
    <po:LineItem ItemNumber="2">
    <po:Description>Diabolique</po:Description>
    <po:Part Id="037429135020" UnitPrice="29.95" Quantity="3"/>
    </po:LineItem>
    <po:LineItem ItemNumber="3">
    <po:Description>8 1/2</po:Description>
    <po:Part Id="037429135624" UnitPrice="39.95" Quantity="4"/>
    </po:LineItem>
    </po:LineItems>
    </po:PurchaseOrder>
    test4flow.xml
    <?xml version="1.0" encoding="utf-8"?>
    <?integrity app='Visio' version='10.0' buildnum='525' metric='0' key='C49F3FBA8679AF13AEBCC16DB50C2C0BA0B53A4FD201553D90A7F89C19624540FC51BE8BFC109DDDCC044384D36FB20D8915A8E57D53F58348594E7B243EBBC9' keystart='261' ?>
    <VisioDocument xmlns="urn:schemas-microsoft-com:office:visio">
    <po:PurchaseOrder xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:po="PurchaseOrder" xsi:schemaLocation="PurchaseOrder
    http://www.oracle.com/purchaseorder.xsd">
              <po:Reference>ADAMS-20011127121040988PST</po:Reference>
              <po:Actions>
                   <po:Action>
                        <po:User>SCOTT</po:User>
                        <po:Date>2002-03-31</po:Date>
                   </po:Action>
              </po:Actions>
              <po:Reject/>
              <po:Requestor>Julie P. Adams</po:Requestor>
              <po:User>ADAMS</po:User>
              <po:CostCenter>R20</po:CostCenter>
              <po:ShippingInstructions>
                   <po:name>Julie P. Adams</po:name>
                   <po:address>Redwood Shores, CA 94065</po:address>
                   <po:telephone>650 506 7300</po:telephone>
              </po:ShippingInstructions>
              <po:SpecialInstructions>Ground</po:SpecialInstructions>
              <po:LineItems>
                   <po:LineItem ItemNumber="1">
                        <po:Description>The Ruling Class</po:Description>
                        <po:Part Id="715515012423" UnitPrice="39.95" Quantity="2"/>
                   </po:LineItem>
                   <po:LineItem ItemNumber="2">
                        <po:Description>Diabolique</po:Description>
                        <po:Part Id="037429135020" UnitPrice="29.95" Quantity="3"/>
                   </po:LineItem>
                   <po:LineItem ItemNumber="3">
                        <po:Description>8 1/2</po:Description>
                        <po:Part Id="037429135624" UnitPrice="39.95" Quantity="4"/>
                   </po:LineItem>
              </po:LineItems>
         </po:PurchaseOrder>
              <DocumentProperties>
              <Title>Purchasing-Top</Title>
              <Creator>laray</Creator>
              <Company>Oracle</Company>
              <BuildNumberCreated>671351309</BuildNumberCreated>
              <BuildNumberEdited>671351309</BuildNumberEdited>
              <PreviewPicture Size="61896">
    ............. rest of visio document.....................
    </VisioDocument>

    I am using WebDav with Resource floders to get XML files into the database. I created a demo schema based on the purchase order schema and created a default table of XML type called XML_PurchaseOrder. When I drop a purchase order.xml file into the folder the table gets updated just fine. Examples below.
    Then I took another .XML file test4flow.xml (A Visio XML file) and just inserted the purchaseorder.xml elements into the file with the namespace of purchaseorder.xsd. This time Oracle ignores the document. Why does xdb not see the namespace referring to a registered schema and validate the file?
    PurchaseOrder.xsd
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb">
    <xs:complexType name="ActionsType" >
    <xs:sequence>
    <xs:element name="Action" maxOccurs="4" >
    <xs:complexType >
    <xs:sequence>
    <xs:element ref="User"/>
    <xs:element ref="Date"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="RejectType" >
    <xs:all>
    <xs:element ref="User" minOccurs="0"/>
    <xs:element ref="Date" minOccurs="0"/>
    <xs:element ref="Comments" minOccurs="0"/>
    </xs:all>
    </xs:complexType>
    <xs:complexType name="ShippingInstructionsType" >
    <xs:sequence>
    <xs:element ref="name"/>
    <xs:element ref="address"/>
    <xs:element ref="telephone"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="LineItemsType" >
    <xs:sequence>
    <xs:element name="LineItem"
    type="LineItemType"
    maxOccurs="unbounded"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="LineItemType" >
    <xs:sequence>
    <xs:element ref="Description"/>
    <xs:element ref="Part"/>
    </xs:sequence>
    <xs:attribute name="ItemNumber" type="xs:integer"/>
    </xs:complexType>
    <xs:element name="PurchaseOrder" xdb:defaultTable="XML_PURCHASEORDER">
    <xs:complexType type="PurchaseOrderType" xdb:SQLType="XML_PURCHASEORDER_TYPE">
    <xs:sequence>
    <xs:element ref="Reference"/>
    <xs:element name="Actions"
    type="ActionsType"/>
    <xs:element name="Reject"
    type="RejectType" minOccurs="0"/>
    <xs:element ref="Requestor"/>
    <xs:element ref="User"/>
    <xs:element ref="CostCenter"/>
    <xs:element name="ShippingInstructions"
    type="ShippingInstructionsType"/>
    <xs:element ref="SpecialInstructions"/>
    <xs:element name="LineItems"
    type="LineItemsType"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:simpleType name="money">
    <xs:restriction base="xs:decimal">
    <xs:fractionDigits value="2"/>
    <xs:totalDigits value="12"/>
    </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="quantity">
    <xs:restriction base="xs:decimal">
    <xs:fractionDigits value="4"/>
    <xs:totalDigits value="8"/>
    </xs:restriction>
    </xs:simpleType>
    <xs:element name="User" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="10"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="Requestor" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="0"/>
    <xs:maxLength value="128"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="Reference" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="26"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="CostCenter" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="4"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="Vendor" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="0"/>
    <xs:maxLength value="20"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="PONumber" >
    <xs:simpleType>
    <xs:restriction base="xs:integer"/>
    </xs:simpleType>
    </xs:element>
    <xs:element name="SpecialInstructions" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="0"/>
    <xs:maxLength value="2048"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="name" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="20"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="address" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="256"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="telephone" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="24"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="Date" type="xs:date" />
    <xs:element name="Comments" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="2048"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="Description" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="1"/>
    <xs:maxLength value="256"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="Part" >
    <xs:complexType>
    <xs:attribute name="Id" >
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:minLength value="12"/>
    <xs:maxLength value="14"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="Quantity" type="money"/>
    <xs:attribute name="UnitPrice" type="quantity"/>
    </xs:complexType>
    </xs:element>
    </xs:schema>
    Purchaseorder.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <po:PurchaseOrder
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:po="PurchaseOrder"
    xsi:schemaLocation="PurchaseOrder http://www.oracle.com/purchaseorder.xsd">     
    <po:Reference>ADAMS-20011127121040988PST</po:Reference>
    <po:Actions>
    <po:Action>
    <po:User>SCOTT</po:User>
    <po:Date>2002-03-31</po:Date>
    </po:Action>
    </po:Actions>
    <po:Reject/>
    <po:Requestor>Julie P. Adams</po:Requestor>
    <po:User>ADAMS</po:User>
    <po:CostCenter>R20</po:CostCenter>
    <po:ShippingInstructions>
    <po:name>Julie P. Adams</po:name>
    <po:address>Redwood Shores, CA 94065</po:address>
    <po:telephone>650 506 7300</po:telephone>
    </po:ShippingInstructions>
    <po:SpecialInstructions>Ground</po:SpecialInstructions>
    <po:LineItems>
    <po:LineItem ItemNumber="1">
    <po:Description>The Ruling Class</po:Description>
    <po:Part Id="715515012423" UnitPrice="39.95" Quantity="2"/>
    </po:LineItem>
    <po:LineItem ItemNumber="2">
    <po:Description>Diabolique</po:Description>
    <po:Part Id="037429135020" UnitPrice="29.95" Quantity="3"/>
    </po:LineItem>
    <po:LineItem ItemNumber="3">
    <po:Description>8 1/2</po:Description>
    <po:Part Id="037429135624" UnitPrice="39.95" Quantity="4"/>
    </po:LineItem>
    </po:LineItems>
    </po:PurchaseOrder>
    test4flow.xml
    <?xml version="1.0" encoding="utf-8"?>
    <?integrity app='Visio' version='10.0' buildnum='525' metric='0' key='C49F3FBA8679AF13AEBCC16DB50C2C0BA0B53A4FD201553D90A7F89C19624540FC51BE8BFC109DDDCC044384D36FB20D8915A8E57D53F58348594E7B243EBBC9' keystart='261' ?>
    <VisioDocument xmlns="urn:schemas-microsoft-com:office:visio">
    <po:PurchaseOrder xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:po="PurchaseOrder" xsi:schemaLocation="PurchaseOrder
    http://www.oracle.com/purchaseorder.xsd">
              <po:Reference>ADAMS-20011127121040988PST</po:Reference>
              <po:Actions>
                   <po:Action>
                        <po:User>SCOTT</po:User>
                        <po:Date>2002-03-31</po:Date>
                   </po:Action>
              </po:Actions>
              <po:Reject/>
              <po:Requestor>Julie P. Adams</po:Requestor>
              <po:User>ADAMS</po:User>
              <po:CostCenter>R20</po:CostCenter>
              <po:ShippingInstructions>
                   <po:name>Julie P. Adams</po:name>
                   <po:address>Redwood Shores, CA 94065</po:address>
                   <po:telephone>650 506 7300</po:telephone>
              </po:ShippingInstructions>
              <po:SpecialInstructions>Ground</po:SpecialInstructions>
              <po:LineItems>
                   <po:LineItem ItemNumber="1">
                        <po:Description>The Ruling Class</po:Description>
                        <po:Part Id="715515012423" UnitPrice="39.95" Quantity="2"/>
                   </po:LineItem>
                   <po:LineItem ItemNumber="2">
                        <po:Description>Diabolique</po:Description>
                        <po:Part Id="037429135020" UnitPrice="29.95" Quantity="3"/>
                   </po:LineItem>
                   <po:LineItem ItemNumber="3">
                        <po:Description>8 1/2</po:Description>
                        <po:Part Id="037429135624" UnitPrice="39.95" Quantity="4"/>
                   </po:LineItem>
              </po:LineItems>
         </po:PurchaseOrder>
              <DocumentProperties>
              <Title>Purchasing-Top</Title>
              <Creator>laray</Creator>
              <Company>Oracle</Company>
              <BuildNumberCreated>671351309</BuildNumberCreated>
              <BuildNumberEdited>671351309</BuildNumberEdited>
              <PreviewPicture Size="61896">
    ............. rest of visio document.....................
    </VisioDocument>

  • Multiple namespaces on a webflow

    Hello ... i am working with weblogic portal 7.0 SP2
    my program is about curriculum management (add/edit/remove,..)
    and have one webflow and one portlet
    the webflow is about 100Kb and the ebcc said that it cant open it ;)
    Now i need to divide the webflow into multiple webflows (or namespaces) .
    But i cant find the method to divide the webflow into multiple webflows (one for each action, add, modify, delete,...)
    the <webflow-filename> only supports 1 webflow ...
    anyone has the same problem ??
    anyone knows a solution ??
    thanks

    I´ll give you an example what I want to do:
    I have a gateway with two dial-peer voice xxx pots, both with destination pattern 0049T for calls from outside to Germany.
    When the gateway is registerd to the gatekeeper, the gatekeeper can give this information to other gateways which now can establish calls to my gateway in Germany.
    Now I want to increase the number of B-channels from 60 to 120. For this I´m going to install a second gateway here in Germany, of course with a different ip address. On my second gateway I will also have two dial-peer voice xxx pots, both with destination pattern 0049T. When the sencond gateway also registers to the same gatekeeper, the gatekeeper will have now two possible ip targets for the destination pattern 0049T.
    So what will happen, if outside gateways ask the gatekeeper for 0049T?
    Will the gatekeeper do a load-sharing to the two gateways in Germany? Is the gatekeeper able to see, if a gateway has free B-channels?
    Thanks for your reply,
    Martin.

  • Multiple namespaces & packaging

    Hi,
    I am planning to implement a framework component that operates on class A, where class A is a result of JAXB compilation of A.xsd which has defined element A. I want to package the famework component in a .jar file, to use it in my application. The application uses class B, where class B is a result of JAXB compilation of B.xsd which has defined element B. Schema B.xsd imports A.xsd, for element B has an inner element of type A.
    Schema A and B have different namespaces. When I compile A.xsd, class A ends up in in package "a". When I compile B.xsd, classes A and B end up in package "b". My framework component operates on a.A.class. In application, when I unmarshal element B and do b.getA(), I assume I will get an instance of b.A.class. I assume my framework component will throw ClassCastException when used in my application.
    Is my assumption correct, and if it is what would be the solution to my problem?
    Thanks,
    Aleksandar Likic

    I realize this is an old post, but we've recently run into this exact problem. A ClassCastException is indeed thrown in this situation. We haven't resolved the issue and were hoping that someone on these forums has. Any suggestions? Aleksandar , did you ever resolve this?
    Thanks in advance,
    Bill

  • Multiple operations + complex XSD?

    Hey all,
    I have a very simple web service(Netbeans --> new web service--> add operation, add operation --> return hardcoded string --> deploy), with two operations. Inputs are strings, outputs are strings. This works fine.
    As soon as I change the input of operation1 to HR-XML (a very complex XSD with extensions, which I use jaxb to turn into java classes ), I get a nullPointerException in SoapUI (also an error in NetBeans). The only thing that changes in the WSDL is the <xsd:import namespace = /> section.
    As a side note, If I make a new wsdl (input is HR-XML, output is a string) --> new web service from wsdl --> deploy, it works correctly, but I can't figure out how to add another operation to it (that's callable via SOAP).
    If anyone can lend any help, please do.
    Thanks,
    --Adam                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

    Here is some more info on the above:
    Method that works as strings:_
    import javax.jws.WebMethod;
    import javax.jws.WebParam;
    import javax.jws.WebService;
    @WebService()
    public class wsTestWS {
        @WebMethod(operationName = "operation1")
        public String operation1(@WebParam(name = "input") String input) {
            return ("Found operation1");
        @WebMethod(operationName = "operation2")
        public String operation2(@WebParam(name = "operation2")    String operation2) {
            return("w00t, operation2");
        }and the wsdl:
    <definitions targetNamespace="http://work.please.com/" name="wsTestWSService">
    &#8722;
    <types>
    &#8722;
    <xsd:schema>
    <xsd:import namespace="http://work.please.com/" schemaLocation="http://hctunx04.us.tgr.net:20010/testWebApp/wsTestWSService?xsd=1"/>
    </xsd:schema>
    </types>
    &#8722;
    <message name="operation1">
    <part name="parameters" element="tns:operation1"/>
    </message>
    &#8722;
    <message name="operation1Response">
    <part name="parameters" element="tns:operation1Response"/>
    </message>
    &#8722;
    <message name="operation2">
    <part name="parameters" element="tns:operation2"/>
    </message>
    &#8722;
    <message name="operation2Response">
    <part name="parameters" element="tns:operation2Response"/>
    </message>
    &#8722;
    <portType name="wsTestWS">
    &#8722;
    <operation name="operation1">
    <input message="tns:operation1"/>
    <output message="tns:operation1Response"/>
    </operation>
    &#8722;
    <operation name="operation2">
    <input message="tns:operation2"/>
    <output message="tns:operation2Response"/>
    </operation>
    </portType>
    &#8722;
    <binding name="wsTestWSPortBinding" type="tns:wsTestWS">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
    &#8722;
    <operation name="operation1">
    <soap:operation soapAction=""/>
    &#8722;
    <input>
    <soap:body use="literal"/>
    </input>
    &#8722;
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    &#8722;
    <operation name="operation2">
    <soap:operation soapAction=""/>
    &#8722;
    <input>
    <soap:body use="literal"/>
    </input>
    &#8722;
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    </binding>
    &#8722;
    <service name="wsTestWSService">
    &#8722;
    <port name="wsTestWSPort" binding="tns:wsTestWSPortBinding">
    <soap:address location="http://hctunx04.us.tgr.net:20010/testWebApp/wsTestWSService"/>
    </port>
    </service>
    </definitions>
    and now defined with the HR-XML(changes only):_
    code:_
    public String operation1(@WebParam(name = "input") org.hr_xml.ns._2007_04_15.NewHireType input) {
            return ("Found operation1");
        }and the wsdl changes:
    (just the import namespaces at the top. my glassfish just died and im having trouble bringing it back to life.)

  • XPath expression with multiple namespaces?

    Hello all.
    I have been scouring the forums and Google and can't seem to find anything similar to my problem.
    I have the following XML with three namespaces. Two are defined in the root element and the third is defined in the the IdSession element. To make things even more confusing, the second and third namespaces have the same prefix, 'f'.
    This is the xml:
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <NamespaceTestCall xmlns="http://my.default/namespace"
    xmlns:f="http://my.second/namespace">
    ...<f:Level1>
    ......<f:IdSession xmlns:f="http://my.third/namespace">12345</f:IdSession>
    ......<Language>ENG</Language>
    ...</f:Nivel1>
    </NamespaceTestCall>
    My question is, how do I get at the IdSession element? Don't I need to create an XPath object and assign it more than one NamespaceContext?
    This is what I am doing:
    Document xmlDocument = loadXML(xmlSource);
    XPath xpathEvaluator = XPathFactory.newInstance().newXPath();
    xpathEvaluator.setNamespaceContext(new NamespaceContextProvider("a", "http://my.third/namespace"));
    ... xpathEvaluator.evaluate("//a:IdSession", ...);
    This code works but it might not return the 'IdSession' I want, since by searching like this '//a:IdSession' it is looking in the whole document. If there were another 'IdSession' somewhere else in the document with the same URI, it would be returned. I want the 'IdSession' that lives inside of 'Level1'.
    So what I would like to do is something like this:
    ... xpathEvaluator.evaluate("/*/Level1/a:IdSession", ...);
    But this does NOT work because 'Level1' has its own namespace. So what it seems like I need to do is the following:
    ... xpathEvaluator.evaluate("/*/b:Level1/a:IdSession", ...);
    Having already added the 'Level1' namespace to the XPath object, with the prefix 'b'. But unlike JDOM, there is no 'add' functionality, only 'set', meaning if you call set twice the second call overwrites the first.
    Is there anyway to do this?
    Many thanks!
    Bob

    Hello,
    Sorry, that was my bad. I should have explained that NamespaceContextProvider is nothing more than my implementation of the NamespaceContext interface. The way I did it, I simply implemented getNamespaceURI() and getPrefix(). And the constructor accepted two parameters -- prefix and URI. So my problem was that when I assigned this NamespaceContext to my XPath object it would only have one prefix and one URI.
    But I found an implementation here:
    http://www.oreillynet.com/cs/user/view/cs_msg/50304
    that instead of only having one prefix and URI uses a map. Thus its method setNamespace() adds the prefix and URi to the map, and getPrefix() and getPrefixes() retrieve them from the map.
    Now when I want to use more than one namespace I simply call setNamespace() as many times as necessary, adding a prefix and URI pair each time, and when I am done I assign it to my XPath object.
    And it works!
    Thanks for the response!
    Bob

Maybe you are looking for