How to parse a XML SOAP output and load table oracle9i

Here's the output SOAP response and I need to load the data into the tables in oracle 9i database.
I'm able to analyze the ordinary XML without namespace, but impossible to analyze the data of the namespaces.
I could use some help in the analysis of this XML file.
< xmlns:s s: Envelope = "http://schemas.xmlsoap.org/soap/envelope/" xmlns:u = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" >
< s:Header >
< o: Security s:mustUnderstand = "1" xmlns:o = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" >
< u: Timestamp u: Id = "_0" >
< u: created > 2011 - 11 - 04T 23: 16:08.437Z < / u: created >
< u: expires > 2011 - 11 - 04T 23: 21:08.437Z < / u: expires >
< / u: Timestamp >
< / o: Security >
< / s:Header >
< Body >
< AssetGetListResponse xmlns = "http://dev.services.xerox.com" >
< AssetGetListResult xmlns: a = "http://schemas.datacontract.org/2004/07/Xerox.MPS" xmlns:i = "http://www.w3.org/2001/XMLSchema-instance" >
< a: AssetFeed >
< a: AccountID > de5862bf-f223-e011-bd3b-0024e861b15c < / a: AccountID >
< a: AccountName > MPS-API Sandbox < / has: AccountName >
< a: AssetID > ecf1545a-f1e9-e011-8a8a-0024e861b15c < / a: AssetID >
< a: AssetNumber > 57119B 28 < / a: AssetNumber >
< a: AssetTag3rdParty i: nil = "true" / >
< a: ChargebackCodeID > 1a5962bf-f223-e011-bd3b-0024e861b15c < / a: ChargebackCodeID >
< a: ContractNumber i: nil = "true" / >
< a: ContractTypeDescription i: nil = "true" / >
< a: i: Nile ControlID = "true" / >
< a: group i: nil = "true" / >
< a: GroupID i: nil = "true" / >
< a: InScope > false < / has: InScope >
< a: MACAddress > 0000AA713E97 < / a: MACAddress >
< a: manufacturer > Xerox < / a: manufacturer >
< a: model > WorkCentre Pro 265 < / a: model >
< has: ModifiedDate > 2011 - 11 - 02T 16: 52:12.947Z < / a: ModifiedDate >
< a: PricePlanID > c25a62bf-f223-e011-bd3b-0024e861b15c < / a: PricePlanID >
< a: SerialNumber > UTU101993N < / a: SerialNumber >
< a: VersionNumber > 634558495329470000 < / a: VersionNumber >
< / a: AssetFeed >
< a: AssetFeed >
< a: AccountID > de5862bf-f223-e011-bd3b-0024e861b15c < / a: AccountID >
< a: AccountName > MPS-API Sandbox < / has: AccountName >
< a: AssetID > b33b5160-f1e9-e011-8a8a-0024e861b15c < / a: AssetID >
< a: AssetNumber > 7EE42ADC < / a: AssetNumber >
< a: AssetTag3rdParty i: nil = "true" / >
< a: ChargebackCodeID > 1a5962bf-f223-e011-bd3b-0024e861b15c < / a: ChargebackCodeID >
< a: ContractNumber i: nil = "true" / >
< a: ContractTypeDescription i: nil = "true" / >
< a: i: Nile ControlID = "true" / >
< a: group i: nil = "true" / >
< a: GroupID i: nil = "true" / >
< a: InScope > false < / has: InScope >
< a: MACAddress > 0800379B4C2A < / a: MACAddress >
< a: manufacturer > Xerox < / a: manufacturer >
< a: model > WorkCentre 7428 < / a: model >
< has: ModifiedDate > 2011 - 11 - 02T 16: 52:14.383Z < / a: ModifiedDate >
< a: PricePlanID > c25a62bf-f223-e011-bd3b-0024e861b15c < / a: PricePlanID >
< a: SerialNumber > PBB015012 < / a: SerialNumber >
< a: VersionNumber > 634558495343830000 < / a: VersionNumber >
< / a: AssetFeed >
< / AssetGetListResult >
< / AssetGetListResponse >
< / Body >
< / s: Envelope >

That's what I tried.

declare
lp_parser xmlParser.Parser;
lx_xmldoc xmlDom.DOMDocument;

ln_doc_node xmlDom.DOMNode;

lnl_product xmlDom.DOMNodeList;
lnl_meter xmlDom.DOMNodeList;
ln_product xmlDom.DOMNode;
ln_meter xmlDom.DOMNode;
li_product_cnt NUMBER;
li_product_max NUMBER;
li_meter_cnt NUMBER;
li_meter_max NUMBER;
lnl_asset_meter_nodes xmldom. DOMNodeList;
ln_asset_meter_node xmldom. DOMNode;

ls_batch_number VARCHAR2 (30);
ldt_proc_dt DATE;
ls_batch_item VARCHAR2 (30);
ls_place_id place.place_id%TYPE;
ls_product_id product.product_id%TYPE: = ' ';
ls_contract_id contract.contract_id%TYPE;
li_contract_version contract.contract_version%TYPE;
li_contract_sequence contr_product.sequence%TYPE;
ls_meter_id meter_log.meter_id%TYPE;
ls_read_type meter_log.read_type%TYPE;
ldt_reading_dt meter_log.reading_dt%TYPE;
li_meter_value meter_log.meter_value%TYPE;
li_adjust_copies meter_log.meter_value%TYPE;
ls_meter_type VARCHAR2 (20);
ls_serial_id product.serial_id%TYPE;
ls_meter_read_type VARCHAR2 (50);

invalid_parsing EXCEPTION;
PRAGMA EXCEPTION_INIT(invalid_parsing,-20100);

BEGIN
FOR meter_xml_rec IN (SELECT SOAP_RESPONSE
Of insert_table
WHERE call_id = 2) LOOP
lp_parser: = xmlparser.newParser;
xmlparser.parseClob (lp_parser, meter_xml_rec SOAP_RESPONSE);
lx_xmldoc: = xmlparser.getDocument (lp_parser);
xmlparser.freeParser (lp_parser);

ln_doc_node: = xmlDom.makeNode (lx_xmldoc);
ls_batch_number: = xslProcessor.valueOf (ln_doc_node, 'AssetGetListResponse, AssetGetListResult, AssetFeed, AccountID');

lnl_product: = xslprocessor.selectNodes (ln_doc_node, ' AssetGetListResponse/AssetGetListResult/a: AssetFeed');
li_product_max: = xmlDom.getLength (lnl_product)-1;
FOR li_product_cnt IN 0.li_product_max LOOP
ln_product: = xmlDom.item (lnl_product, li_product_cnt);

ls_batch_item: = xslProcessor.valueOf (ln_product, 'AccountName');

END LOOP;

END LOOP;
END;
OUTPUT:

=========================================
15:32:41 *.
* 15:32:41 ORA-20100: error occurred when processing: Namespace prefix "a" used but not declared.* *.
15:32:41 ORA-06512: at "SYS." XSLPROCESSOR', line 22
15:32:41 ORA-06512: at "SYS." XSLPROCESSOR", line 502
15:32:41 ORA-06512: at line 50
15:32:41 * script is stopped because of error *.
Execute SQL Editor in end 15:32:41

Hello

Something like this:

...

lnl_product := xslprocessor.selectNodes(
                 ln_doc_node
               , '/s:Envelope/s:Body/AssetGetListResponse/AssetGetListResult/a:AssetFeed'
               , 'xmlns:s="http://schemas.xmlsoap.org/soap/envelope/", xmlns="http://dev.services.xerox.com", xmlns:a="http://schemas.datacontract.org/2004/07/Xerox.MPS"'
               );

li_product_max := xmlDom.getLength(lnl_product)-1;

FOR li_product_cnt IN 0..li_product_max LOOP

  ln_product := xmlDom.item(lnl_product, li_product_cnt);
  ls_batch_item := xslProcessor.valueOf(ln_product, 'a:AccountName', 'xmlns:a="http://schemas.datacontract.org/2004/07/Xerox.MPS"');

END LOOP;

...

Or, using a single query:

SQL> SELECT extractValue(value(x), '/AssetFeed/AccountID', 'xmlns="http://schemas.datacontract.org/2004/07/Xerox.MPS"') as AccountID
  2       , extractValue(value(x), '/AssetFeed/AccountName', 'xmlns="http://schemas.datacontract.org/2004/07/Xerox.MPS"') as AccountName
  3       , extractValue(value(x), '/AssetFeed/AssetID', 'xmlns="http://schemas.datacontract.org/2004/07/Xerox.MPS"') as AssetID
  4       , extractValue(value(x), '/AssetFeed/AssetNumber', 'xmlns="http://schemas.datacontract.org/2004/07/Xerox.MPS"') as AssetNumber
  5       , extractValue(value(x), '/AssetFeed/SerialNumber', 'xmlns="http://schemas.datacontract.org/2004/07/Xerox.MPS"') as SerialNumber
  6  FROM temp_table t
  7     , TABLE(
  8         XMLSequence(
  9           EXTRACT(
 10             XMLType(t.soap_response)
 11           , '/s:Envelope/s:Body/AssetGetListResponse/AssetGetListResult/a:AssetFeed'
 12           , 'xmlns:s="http://schemas.xmlsoap.org/soap/envelope/", xmlns="http://dev.services.xerox.com", xmlns:a="http://schemas.datacontract.org/2004/07/Xerox.MPS"'
 13           )
 14         )
 15       ) x
 16  WHERE t.call_id = 2
 17  ;

ACCOUNTID                                      ACCOUNTNAME           ASSETID                                   ASSETNUMBER    SERIALNUMBER
---------------------------------------------- --------------------- ----------------------------------------- -------------- ---------------
de5862bf-f223-e011-bd3b-0024e861b15c           MPS-API Sandbox       ecf1545a-f1e9-e011-8a8a-0024e861b15c      57119B28       UTU101993N
de5862bf-f223-e011-bd3b-0024e861b15c           MPS-API Sandbox       b33b5160-f1e9-e011-8a8a-0024e861b15c      7EE42ADC       PBB015012
 

Tags: Database

Similar Questions

  • How to parse the XML from the server BB10 Cascades development

    Hi all

    I'm new to BB10 development.

    I made the connection with my server that sends data to the XML Format. How to analyze.  Can someone help me with this.

    Also how to store data analysed in the Global Variable or ArrayList.

    Concerning

    Stephenson

    I thought you wanted to do stunts (qml).
    I use Qt

    QByteArray data = currentReply->readAll();
    xml.addData(data); //xml is a QXmlStreamReader
    

    to parse the xml, it is pretty simple if you look at the API.

    Here is a snippet of my code:

    while (!xml.atEnd()) {
        xml.readNext();
        /** start of an element **/
        if (xml.isStartElement()) {
            currentTag = xml.name().toString();
            if (xml.name() == "version") {
    

    the feed reader goes hierarchically, so you can simply call routines to analyze the different parts of the xml if the name() corresponds to a certain value.

  • How to make a different splash screen and loading gif using visual studio?

    Hello

    I use visual studio to develop my application webworks.  In my screen config.xml, I see a spot that says loading screen.

    I want to do is have a splash screen at startup up and load a gif to the remote page.  I can't separate the 2 here.

    The start screen and the gif are different images.

    Thanks for any help

    What you are looking for is not vascular supported by the features of the screen load.  This is a screen of loading stated in all scenarios.

  • How to import the XML file into an oracle table using a BPEL process

    Hi friends

    How can I import XML file in the db oracle table using a BPEL process

    (1) I have generated an XML file in my local system with a field
    (2) I created a temporary table in my oracledb with the same field in the XML file
    (3) that I want to import these XML files which is the local host to my db oracle using a BPEL process
    (4) for that what steps should I me fallow please suggest me if there is no document for this?

    Thanks in advance
    AT

    Hi to

    Here you go...

    http://blogs.Oracle.com/ajaysharma/2011/03/using_file_adapter_database_adapter_and_mediator_component_in_soa_11g.html

    I hope that helps!

    Thank you
    AJ

  • How to write constantly to analog output and read from analog inputs

    Hi all -

    I had a question about writing continuously to analog output reading simultaneously an analog input.

    It's my first time to post a message to the community, so please let me know if I made mistakes.

    I use Labview 2011 with a NEITHER-DAQ USB 6215.

    I'm looking to generate a waveform and write it continuously in an analog output. It is then connected to an entry on the acquisition of data, where I am trying to sample the analog signal. (I realize, there is a system of trivial, but I'm hoping to build on it once I have run).

    The task of reading from the analog input works fine, as I tested it in several other cases. I have a problem writing to the analog output.

    For this task, I tried to follow the "Gen Cont Wfm Clck Int' VI to generate the wave form and start the task. I then try to write to the output of the analog timed loop. However, it does not seem to transmit a signal and doesn't give me any errors.

    I have attached the VI but also a screenshot.

    Please let me know if anyone has any ideas. I would really appreciate the help!

    Thank you

    Peter Borgstrom

    We will review your tasks one at a time.  First of all, the task of generation/Analog output Waveform.  Generate you a waveform (I'm unsure of your VI if it is a fixed waveform or not) and send it to a defined output function to produce a waveform continuously, using N-channel and samples of N (where you set not these previously).  You should not put this inside has timed loop, as the DAQ hardware has its own clock - if you simply put it in a while loop (with a stop to break out of the loop), the loop will call the function for the first points of N, wait until all N have been taken out, then call it again to another N points (up to what you press Stop).

    Now, suppose that you have the output connected to a load voltage (say a decent resistance).  You can wire the input terminals of your A/D converter through the same load and set up a similar analog input loop, running in parallel (i.e. in its own independent of the OD loop, while loop).  You pourriez start together (with, say, a merged error since the initialization code line loops HAVE and AO become lines of error in "loops of sampling" described above), but you might want to delay loop (a little) the AI so that the OD has a chance to set the voltage before the bed.

    I hope this helps.

    BS

  • How to parse the XML multi-level in PL/SQL

    Hello

    I'm new in the treatment of XML and I need to analyze a CLOB column that contained XML.

    Content XML may differ from one line to another, but a part that I need to analyze is the same - Department and employees.

    CREATE TABLE company (id NUMBER,

    Dept CLOB)

    /

    INSERT INTO company VALUES (1,

    ' < company >

    < departments >

    Department < and >

    < DeptId > 10 < / DeptId >

    Sales of < DeptName > < / DeptName >

    < employees >

    < employee >

    < EmpId > 11 < / EmpId >

    Smith < EmpName > < / EmpName >

    < / employee >

    < employee >

    < EmpId > 12 < / EmpId >

    Jones < EmpName > < / EmpName >

    < / employee >

    < / employees >

    < / Department >

    Department < and >

    < DeptId > 20 < / DeptId >

    < DeptName > HR < / DeptName >

    < employees >

    < employee >

    < EmpId > 21 < / EmpId >

    Harris < EmpName > < / EmpName >

    < / employee >

    < employee >

    < EmpId > 22 < / EmpId >

    Arnold of < EmpName > < / EmpName >

    < / employee >

    < / employees >

    < / Department >

    Department < and >

    < DeptId > 30 < / DeptId >

    Admin < DeptName > < / DeptName >

    < employees / >

    < / Department >

    < / departments >

    (< / company > ')

    /

    ENGAGE

    /

    I need data in format:

    DeptId DeptName EmpId EmpName

    10 11 Smith sales

    10 sales 12 Jones

    20HR Harris 21

    20: 22 Arnold

    Admin 30

    Help, please.

    Thank you.

    SQL > select d.deptid

    2, d.deptname

    3, e.empid

    4, e.empname

    5 t of the company

    6, xmltable)

    7 "/ company/departments/Department.

    8 passage xmlparse (document t.dept)

    path number (3) 9 columns deptid "DeptId".

    10, deptname varchar2 (20) path "DeptName".

    11 employees xmltype road 'employees '.

    (12) d

    13, xmltable)

    14 "/ employees/employee".

    15 passage d.employees

    path number (3) 16 column empid "EmpId".

    17, empname varchar2 (20) path "EmpName".

    18       ) (+) e

    19;

    DEPTID DEPTNAME EMPID EMPNAME

    ------ -------------------- ----- --------------------

    10 11 Smith sales

    10 sales 12 Jones

    20HR Harris 21

    20: 22 Arnold

    Admin 30

  • How to retrieve the XML values in a plsql table type

    Hello

    I have an XML doc as below which is a Web Service response message.

    <? XML version = "1.0" encoding = "UTF-8"? >
    < SOAP - ENV:Envelope
    xmlns:SOAP - ENV = "http://schemas.xmlsoap.org/soap/envelope/".
    container = "http://www.w3.org/2001/XMLSchema".
    xmlns: xsi = "http://www.w3.org/2001/XMLSchema-instance" >
    < SOAP - ENV:Body >
    < GetOrgInput xmlns = "http://www.example.org/ComplianceServices" >
    < ProgramName > PgmA-Srsf < / ProgramName >
    < > 800 ADSL ItemName < / ItemName >
    < org > 923 < / org >
    < org > 1163 < / org >
    < org > 1103 < / org >
    < / GetOrgInput >
    < / SOAP - ENV:Body >
    < / SOAP - ENV:Envelope >

    The doc above, you could see that I have several occurrences of the element "Ent". I usually use the .extract and. getSTringVal() to retrieve the values as below.

    l_string_variable: = p_response.doc.extract ('/ /'| p_name |) ' /Child::Text()',p_namespace).getStringVal();

    But in this case if I do that, I get value as 92311631103. I need to get them in a table of the number type. Pls advice me on how to do this.

    Thank you
    PKV

    I'm guessing it's a bug fixed when Oracle 10.2 is released. I can reproduce your lack of results on 10.1.0.4 and as shown in my post above, it works correctly on 10.2.0.4.

    Here is a modification of the script that shows what is happening that I have that debugging. (It took me a bit to realize the difference that it wasn't what I was expecting)

    declare
       p_response_doc XMLTYPE;
       l_new_doc      XMLTYPE;
    begin
       p_response_doc := XMLTYPE('
    
    
    
    1163
    1103
    
    
    ');
       SELECT p_response_doc.extract('/*/*/*/CompliantOrgs','xmlns="http://www.example.org/ComplianceServices"')
         INTO l_new_doc
          FROM dual;
       dbms_output.put_line(l_new_doc.getStringVal());
       dbms_output.put_line('before loop');
       FOR r_rec IN (SELECT value(t) val
    --   FOR r_rec IN (SELECT extractvalue(value(t)
    --      , '/CompliantOrgs'
    --      , 'xmlns="http://www.example.org/ComplianceServices"' ) val
          -- BULK COLLECT INTO l_nm_array
          FROM TABLE(
            XMLSequence(
              p_response_doc.extract('/*/*/*/CompliantOrgs','xmlns="http://www.example.org/ComplianceServices"')
              )
            ) t
       ) LOOP
          dbms_output.put_line(r_rec.val.getStringVal());
    --      dbms_output.put_line(r_rec.val);
       END LOOP;
       dbms_output.put_line('After output');
    end;
    

    10.2.0.4 on this product

    1163
    1103
    
    before loop
    1163
    1103
    After output
    

    It produces on 10.1.0.4

    1163
    1103
    
    before loop
    1163
    
    1103
    
    After output
    

    As you can see, Oracle is to detach (well technically not add) the space of default names to the nodes retrieved. To compensate, you need to change your loop to look like

       FOR r_rec IN (SELECT extractvalue(value(t)
          , '/CompliantOrgs') val
    --      , 'xmlns="http://www.example.org/ComplianceServices"' ) val
          -- BULK COLLECT INTO l_nm_array
          FROM TABLE(
            XMLSequence(
              p_response_doc.extract('//CompliantOrgs','xmlns="http://www.example.org/ComplianceServices"')
              )
            ) t
       ) LOOP
    

    so extractValue does not expect the namespaces associated with the nodes.

    I would suggest you document it so that you know why things break if you upgrade to 10.2 or later at some point in the future.

  • How can I find the camera profiles and load them in Camera Raw?

    I did a clean install of Windows 7 and reloaded all my apps. Photoshop CS5 Camera Raw used to show my Canon 60 d and its objective, and he has now no camera profile. I found a way to search the photo/target device profile in Photoshop (filter - Correction of the goal), but not how to save him, so I have to do whenever I load PS I can not yet know how to get one in Camera RAW. Doesn't seem like it should be so difficult. I should have thought of it when I'm in charge of CS5, but now I can't seem to get there. I thought that a quick Google trip would solve the problem, but without SOAP so far. A lot of advice on the use of profiles, but nothing (except the invalid pages), saying: how to get things pretty in there first. Any help would be appreciated.

    Have you installed the update to camera raw 6.7?

    Adobe - Photoshop: for Windows: Camera Raw 6.7 update

    You should probably search, download and install the other photoshop cs5 updates, if you have just installed photoshop cs5.

    Updates

  • How to insert an XML document to the database table

    Here's one my XML document example I want to import into database

    Example XML Document
    <? XML version = "1.0"? >
    rowset <>
    < ROW >
    < DEPTXML department_id = "10" >
    SALES of < DEPARTMENT_NAME > < / DEPARTMENT_NAME >
    < EMPLIST >
    < EMP_T EMPLOYEE_ID = "30" >
    Scott < LAST_NAME > < / LAST_NAME >
    < / EMP_T >
    < EMP_T EMPLOYEE_ID = "31" >
    Marie < LAST_NAME > < / LAST_NAME >
    < / EMP_T >
    < / EMPLIST >
    < / DEPTXML >
    < / ROW >
    < ROW >
    < DEPTXML department_id = "20" >
    < DEPARTMENT_NAME > ACCOUNTING < / DEPARTMENT_NAME >
    < EMPLIST >
    < EMP_T EMPLOYEE_ID = "40" >
    John < LAST_NAME > < / LAST_NAME >
    < / EMP_T >
    < EMP_T EMPLOYEE_ID = "41" >
    Jerry < LAST_NAME > < / LAST_NAME >
    < / EMP_T >
    < / EMPLIST >
    < / DEPTXML >
    < / ROW >
    < / LINES >
    ********End***********

    Table in which I want to import this file

    hr_new_emp
    (
    department_id number,
    department_name varchar2 (50).
    Number of employe_id
    last_name varchar2 (50)
    )

    If your XML code is in a file, the easiest is to load as a CLOB in the file (google search will give you lots of results to load a file into a CLOB, so I won't detail it here). Once you have it as a CLOB you can fairly easily convert that XMLTYPE for example

      v_xml := XMLTYPE(v_clob);
    

    (assuming that v_xml is declared as XMLTYPE and v_clob is declared as a CLOB)

    Once you have it as an XMLTYPE that is simple to use XMLTABLE to break the XML into its components using SQL...

    SQL> ed
    Wrote file afiedt.buf
    
      1  with t as (select xmltype('
      2  
      3  
      4  
      5  SALES
      6  
      7  
      8  Scott
      9  
     10  
     11  Mary
     12  
     13  
     14  
     15  
     16  
     17  
     18  ACCOUNTING
     19  
     20  
     21  John
     22  
     23  
     24  Jerry
     25  
     26  
     27  
     28  
     29  ') as xml from dual)
     30  --
     31  -- END OF TEST DATA
     32  --
     33  select x.department_id, x.department_name, y.employee_id, y.last_name
     34  from t
     35      ,xmltable('/ROWSET/ROW'
     36                passing t.xml
     37                columns department_id   number       path '/ROW/DEPTXML/@DEPARTMENT_ID'
     38                       ,department_name varchar2(30) path '/ROW/DEPTXML/DEPARTMENT_NAME'
     39                       ,emplist         xmltype      path '/ROW/DEPTXML/EMPLIST'
     40               ) x
     41      ,xmltable('/EMPLIST/EMP_T'
     42                passing x.emplist
     43                columns employee_id     number       path '/EMP_T/@EMPLOYEE_ID'
     44                       ,last_name       varchar2(30) path '/EMP_T/LAST_NAME'
     45*              ) y
    SQL> /
    
    DEPARTMENT_ID DEPARTMENT_NAME                EMPLOYEE_ID LAST_NAME
    ------------- ------------------------------ ----------- ------------------------------
               10 SALES                                   30 Scott
               10 SALES                                   31 Mary
               20 ACCOUNTING                              40 John
               20 ACCOUNTING                              41 Jerry
    

    ... and once you have selected the data as it is quite easy to use an INSERT statement around it to insert data into a table, as in a regular INSERT... Select...

    If you are dealing with large amounts of data or a more complex XML structure, you can consider using an XML schema to shred the data in tables.

    Example here...

    Re: XML processing in oracle file

    And you can also load XML data easily by using the function XDB (WebDAV) to Oracle. Details in the Oracle documentation for that or you could find help in the forum XML DB, which also has a FAQ detailing the different methods how to load XML shred data...

    DB XML FAQ

  • I get the object already exists when loading Adobe. How can I get rid of it and load Adobe Reader

    How can I get rid of i t and get Adobe Reader again.

    Update of Windows KB2918614 to the Windows Installer Service because of similar problems with other software.  You might want to try to remove this update (it will be installed near the time you started to have this problem).  Restart and try again to install the Adobe application.

  • I created a zip file and loaded a lot of things I wanted on now it's gone can anyone help me please

    Help me please I don't know where he might be, and I'm not part of computers

    Hello

    1. how exactly did you create zip file and load the file in it?

    2. where did you had stored it?

    Step 1: Check if the file is hidden.

    Step 2: Find the file using Windows search.

  • Parse the XML file and extract data

    I want to parse a XML file and get the data as columns.

    Input country.xml file:

    <?xml version="1.0" encoding="UTF-8"?>
    <MAS Action="Insert">
    <Country ObjectId="100000000000000009" VersionId="8"><Id>1</Id><NlTexts><Name Language="de">Land1</Name><Name Language="en">Country1</Name></NlTexts></Country>
    <Country ObjectId="100000000000000033" VersionId="2"><Id>2</Id><NlTexts><Name Language="de">Land2</Name><Name Language="en">Country1</Name></NlTexts></Country>
    </MAS>
    
    

    I would like to analyze the xmlfile to get the following result

    Required result:

    col1        col2           col3
    1            Land1        Country1
    2            Land2        Country2
    

    or alternatively

    col1  col2       
    1            Land1       
    1            Country1
    2            Land2       
    2            Country2
    

    I tried the extract function

    select extract((XMLTYPE(BFILENAME('XML_DAT_DIR', 'country.xml'),
               NLS_CHARSET_ID('AL32UTF8'))) , '/*/*/Id') as "xdata"
    from dual;
    
    xdata
    ------------------------
    <Id>1</Id><Id>2</Id>
    

    and XMLTABLE (but how can I add countries now)

    SELECT *
        FROM XMLTABLE('/*/*/Id'
               PASSING XMLTYPE(BFILENAME('XML_DAT_DIR', 'country.xml'),
               NLS_CHARSET_ID('AL32UTF8'))
           )
      ;
    COLUMN_VALUE
    ------------------------
    <Id>1</Id>
    <Id>2</Id>
    

    DB version 11.2.0.3 on Windows 64-bit

    Thank you

    Tim

    Here are a few examples.

    For your output required:

    SELECT *.

    FROM XMLTable)

    "/ MAS/country".

    from XMLType (bfilename ('TEST_DIR', 'country.xml'), nls_charset_id ('AL32UTF8'))

    number of columns col1 way "Id".

    , col2 varchar2 (30) path "NlTexts/name [1].

    , col3 varchar2 (30) path "NlTexts/name [2]»

    )

    ;

    or, if the Language attribute is significant:

    SELECT *.

    FROM XMLTable)

    "/ MAS/country".

    from XMLType (bfilename ('TEST_DIR', 'country.xml'), nls_charset_id ('AL32UTF8'))

    number of columns col1 way "Id".

    col2 varchar2 (30) path "NlTexts/Name[@Language="de"]"

    col3 varchar2 (30) path "NlTexts/Name[@Language="en"]"

    )

    ;

    For your alternate exit:

    SELECT x1.col1

    x2.col2

    -, x2.col3

    FROM XMLTable)

    "/ MAS/country".

    from XMLType (bfilename ('TEST_DIR', 'country.xml'), nls_charset_id ('AL32UTF8'))

    number of columns col1 way "Id".

    , path of xmltype names ' NlTexts/name '.

    ) x 1

    XMLTable)

    "/ Name".

    in passing x1.names

    path of column col2 varchar2 (30) '.'

    -, col3 to ordinalite

    ) x 2

    ;

    (uncomment col3 to see what he does)

    or in a shorter way:

    SELECT *.

    FROM XMLTable)

    ' for $i/MAS/country

    , $j in $ NlTexts/i/name

    Returns the r element {$i / Id, $j}'

    from XMLType (bfilename ('TEST_DIR', 'country.xml'), nls_charset_id ('AL32UTF8'))

    number of columns col1 way "Id".

    , col2 varchar2 (30) path 'name '.

    ) ;

  • How can I recursively parse an xml using XQuery document?

    I have an open and I have to using XQuery in Response.xml can transform someone give me an idea how to analyze recursive Xml using XQuery documents. Any help will be appreciated. Thanks in advance

    Open

    " < = xmlns:ns0 ns0:GlobalRoutePlanServiceGOPResponse ' http://www.example.org/input ">

    < GlobalRoutePlanServiceResponse >

    < response >

    Buid_1 < Buid > < / Buid >

    SalesOrderId_1 < SalesOrderId > < / SalesOrderId >

    EODD_1 < EODD > < / EODD >

    LODD_1 < LODD > < / LODD >

    < legs >

    < leg >

    < level > 1 < / level >

    < Resources > ShipMode_1 < / resources >

    < FSBD > FSBD_1 < / FSBD >

    FABD_1 < FABD > < / FABD >

    < leg >

    < leg >

    < niv.2 > < / level >

    < Resources > ShipMode_2 < / resources >

    < FSBD > FSBD_1 < / FSBD >

    FABD_1 < FABD > < / FABD >

    < leg >

    < leg >

    < level > 3.1 < / level >

    < resources > ShipMode_3.1 & amp; < / resources >

    < FSBD > FSBD_1 < / FSBD >

    FABD_1 < FABD > < / FABD >

    < leg >

    < leg >

    < level > 4.1 < / level >

    < Resources > ShipMode_4.1 < / resources >

    < FSBD > FSBD_1 < / FSBD >

    FABD_1 < FABD > < / FABD >

    < leg > < / foot >

    < / foot >

    < / foot >

    < / foot >

    < leg >

    < level > 3.2 < / level >

    < Resources > ShipMode_3.2 < / resources >

    < FSBD > FSBD_1 < / FSBD >

    FABD_1 < FABD > < / FABD >

    < leg >

    < leg >

    < level > 4.2 < / level >

    < Resources > ShipMode_4.2 < / resources >

    < FSBD > FSBD_1 < / FSBD >

    FABD_1 < FABD > < / FABD >

    < leg > < / foot >

    < / foot >

    < / foot >

    < / foot >

    < / foot >

    < / foot >

    < / foot >

    < / foot >

    < / legs >

    < / answer >

    < / GlobalRoutePlanServiceResponse >

    < / ns0:GlobalRoutePlanServiceGOPResponse >

    Response.Xml

    " < = xmlns:ns0 ns0:InputParameters ' http://xmlns.Oracle.com/pcbpel/adapter/DB/SP/GOP_DB_FSL_Msg_Persist_SVC "> "

    < ns0:P_LEG >

    < ns0:P_LEG_ITEM >

    < ns0:LEGS_LEVEL > 1 < / ns0:LEGS_LEVEL >

    < ns0:SHIPMODE > ShipMode_1 < / ns0:SHIPMODE >

    < / ns0:P_LEG_ITEM >

    < ns0:P_LEG_ITEM >

    < ns0:LEGS_LEVEL > 2 < / ns0:LEGS_LEVEL >

    < ns0:SHIPMODE > ShipMode_2 < / ns0:SHIPMODE >

    < / ns0:P_LEG_ITEM >

    < ns0:P_LEG_ITEM >

    < ns0:LEGS_LEVEL > 3.1 < / ns0:LEGS_LEVEL >

    < ns0:SHIPMODE > ShipMode_3.1 < / ns0:SHIPMODE >

    < / ns0:P_LEG_ITEM >

    < ns0:P_LEG_ITEM >

    < ns0:LEGS_LEVEL > 4.1 < / ns0:LEGS_LEVEL >

    < ns0:SHIPMODE > ShipMode_4.1 < / ns0:SHIPMODE >

    < / ns0:P_LEG_ITEM >

    < ns0:P_LEG_ITEM >

    < ns0:LEGS_LEVEL > 3.2 < / ns0:LEGS_LEVEL >

    < ns0:SHIPMODE > ShipMode_3.2 < / ns0:SHIPMODE >

    < / ns0:P_LEG_ITEM >

    < ns0:P_LEG_ITEM >

    < ns0:LEGS_LEVEL > 4.2 < / ns0:LEGS_LEVEL >

    < ns0:SHIPMODE > ShipMode_4.2 < / ns0:SHIPMODE >

    < / ns0:P_LEG_ITEM >

    < / ns0:P_LEG >

    < / ns0:InputParameters >

    You can use recursive expressions function XQuery to browse down the tree (even if it's more than a job for XSLT), but in this case, it is probably easier to use a descendant axis:

    declare namespace ns0 = "http://xmlns.oracle.com/pcbpel/adapter/db/sp/GOP_DB_FSL_Msg_Persist_SVC";

    declare namespace ns1 = "http://www.example.org/INPUT";

    {

    for $i in $request / ns1:GlobalRoutePlanServiceGOPResponse / GlobalRoutePlanServiceResponse/response/legs / / leg

    where exists($i/Level)

    return

    {$i} / level/text)

    {$i} / ShipMode/text)

    }

    Output:

    http://xmlns.Oracle.com/pcbpel/adapter/DB/SP/GOP_DB_FSL_Msg_Persist_SVC">

    1

    ShipMode_1

    2

    ShipMode_2

    3.1

    ShipMode_3.1 &

    4.1

    ShipMode_4.1

    3.2

    ShipMode_3.2

    4.2

    ShipMode_4.2

  • How to get 2 xml (brother) of the tag even time and merge them

    How to get 2 xml(Sibling tag) content at the same time and merge them and find the value of the result in the indesign file with page number

    As

    account <>

    < a > This is a text < /A >

    a-123 < B > < /B >

    < / documents >

    First of all, we need to tag A and B value as:

    It is a text - a-123 and then get this form of text from indesign doc page number

    Help, please

    Try this,

    var root = app.activeDocument.xmlElements[0];
    var aTag = root.evaluateXPathExpression("//Record/A");
    var bTag = root.evaluateXPathExpression("//Record/B");
    for(i=0; i
    

    Vandy

  • How can I impliment a delay between the analog output and analog input (started by an external analog trigger)?

    I am acquiring several channels of analog voltage input at the same time, I need to send an output analog two seconds after the start of the entry.

    I'm running an experience with accelerometers on a query table.
    I start the trigger and the table remains still for two seconds, which allows a reference level for all sensors.
    Then the output signal of the VI removes the break in the motor controller.
    The speed measured by the encoder is sent to one of the input channels.

    In this way, our accel and speed data are synchronized.

    After it acquired the analog input data out put must be reset to zero.

    MULTI.vi

    I've updated the link above works of VI, I used a property node to solve the problem.

Maybe you are looking for