XML -- PL/SQL parser
I am trying to read a XML document using PL/SQL into the database ( to update or insert records). Could you point me in the right direction as far as documentation and may be samples. I have never used XML before and not really familiar with this technology.
Appreciate any help.
Thanks,
Mujahid.
Take a look at OTN's XML Home page. It includes links to Oracle's XML Developer's Kit (XDK) for PL/SQL.
Regards,
-rh
null
Similar Messages
-
XML PL/SQL Parser Demo Error ORA-29516
I'm trying to get the XML Plsql demo to work on the following
system:
Sun Solaris 8
Oracle 8.1.7.0.0 64 bit
using the $ORACLE_HOME/xdk/plsql/demo files
I created an oracle user "xmldba" , granted javauserpriv to
xmldba, granted javasyspriv to xmldba. I have run
$ORACLE_HOME/xdk/plsql/parser/bin/load.sql. Then I try the
demo -
oracle8$ sqlplus xmldba/xmldba
SQL*Plus: Release 8.1.7.0.0 - Production on Fri Nov 16 11:07:44
2001
(c) Copyright 2000 Oracle Corporation. All rights reserved.
Connected to:
Oracle8i Enterprise Edition Release 8.1.7.0.0 - 64bit Production
With the Partitioning option
JServer Release 8.1.7.0.0 - 64bit Production
SQL> @domsample
Procedure created.
No errors.
SQL> execute domsample
('/home/oracle8/app/oracle/product/8.1.7/xdk/plsql/demo','family.
xml','errors.txt');
BEGIN domsample
('/home/oracle8/app/oracle/product/8.1.7/xdk/plsql/demo','family.
xml','errors.txt'); END;
ERROR at line 1:
ORA-29516: Aurora assertion failure: Assertion failure at
joncomp.c:127
jtc_active_clint_init_ncomp_slots(oracle/xml/parser/v2/DTD, 0)
returned 0
ORA-06512: at "XMLDBA.XMLPARSERCOVER", line 0
ORA-06512: at "XMLDBA.XMLPARSER", line 57
ORA-06512: at "XMLDBA.DOMSAMPLE", line 72
ORA-06512: at line 1
Anyone have any ideas on what I might be missing or what could
cause the problem?
Thanks,
RheaThese errors were due to not running initjvm etc. I have resolved all the jvm sqlj related problems now .
I am still seeing resolver errors . Opened a new thread for those errors.
Please respond on those
Thanks
null -
XML PL/SQL Parser Out of memory
Im parsing a 20M file and recieving the following result.
I have tried to cut the file size down and have found a small
version that will parse successfully.
We have tried adjusting
the ulimit -d 2097152
ulimit -s 32768
and also set java_pool_size = 41943040 in init.ora
none of these seemed to be enough to enable parsing of the file.
The following are 2 executions of the parser using 2 different
file sizes.
Thanks,
Steve
BEGIN
domsample('/u01/app/oracle/xmlparser/samp','dan55.xml','errors.tx
t'); END;
ERROR at line 1:
ORA-29554: unhandled Java out of memory condition
BEGIN
domsample('/u01/app/oracle/xmlparser/samp','dan60.xml','errors.tx
t'); END;
ERROR at line 1:
ORA-29532: Java call terminated by uncaught Java exception:
java.lang.OutOfMemoryError
ORA-06512: at "PHASE2.XMLPARSERCOVER", line 0
ORA-06512: at "PHASE2.XMLPARSER", line 118
ORA-06512: at "PHASE2.DOMSAMPLE", line 84
ORA-06512: at line 1
nullSteve (guest) wrote:
: Oracle XML Team wrote:
: : Steve Coffman (guest) wrote:
: : : Im parsing a 20M file and recieving the following result.
: : : I have tried to cut the file size down and have found a
small
: : : version that will parse successfully.
: : : We have tried adjusting
: : : the ulimit -d 2097152
: : : ulimit -s 32768
: : : and also set java_pool_size = 41943040 in init.ora
: : : none of these seemed to be enough to enable parsing of the
: : file.
: : : The following are 2 executions of the parser using 2
: different
: : : file sizes.
: : : Thanks,
: : : Steve
: : : BEGIN
: : : domsample
: : ('/u01/app/oracle/xmlparser/samp','dan55.xml','errors.tx
: : : t'); END;
: : : ERROR at line 1:
: : : ORA-29554: unhandled Java out of memory condition
: : : BEGIN
: : : domsample
: : ('/u01/app/oracle/xmlparser/samp','dan60.xml','errors.tx
: : : t'); END;
: : : ERROR at line 1:
: : : ORA-29532: Java call terminated by uncaught Java exception:
: : : java.lang.OutOfMemoryError
: : : ORA-06512: at "PHASE2.XMLPARSERCOVER", line 0
: : : ORA-06512: at "PHASE2.XMLPARSER", line 118
: : : ORA-06512: at "PHASE2.DOMSAMPLE", line 84
: : : ORA-06512: at line 1
: : On what OS and with how much installed memory are you
running?
: : Oracle XML Team
: : http://technet.oracle.com
: : Oracle Technology Network
: The server is a
: Digital UNIX V4.0E (Rev. 1091)
: with 2Gig Ram
Oracle version 8.1.5
null -
XML PL/SQL parser on Oracle 8.1.6
I am trying to loadjava xmlparserv2.jar and plsql.jar . Receiving the following errors .
What is the issue ?
$ loadjava -user drug/drug -r -v plsql.jar
initialization complete
loading : oracle/xml/parser/plsql/XMLDOMImplCover
creating : oracle/xml/parser/plsql/XMLDOMImplCover
Error while retrieving errors for oracle/xml/parser/plsql/XMLDOMImplCover
ORA-00904: invalid column name
loading : oracle/xml/parser/plsql/XMLDocumentCover
creating : oracle/xml/parser/plsql/XMLDocumentCover
Error while retrieving errors for oracle/xml/parser/plsql/XMLDocumentCover
ORA-00904: invalid column name
loading : oracle/xml/parser/plsql/XSLStylesheetCover
creating : oracle/xml/parser/plsql/XSLStylesheetCover
Error while retrieving errors for oracle/xml/parser/plsql/XSLStylesheetCover
ORA-00904: invalid column name
loading : oracle/xml/parser/plsql/XMLNodeListCover
creating : oracle/xml/parser/plsql/XMLNodeListCover
Error while retrieving errors for oracle/xml/parser/plsql/XMLNodeListCover
ORA-00904: invalid column name
loading : oracle/xml/parser/plsql/XMLEntityCover
creating : oracle/xml/parser/plsql/XMLEntityCover
Error while retrieving errors for oracle/xml/parser/plsql/XMLEntityCover
ORA-00904: invalid column name
loading : oracle/xml/parser/plsql/XMLNodeCover
creating : oracle/xml/parser/plsql/XMLNodeCover
Error while retrieving errors for oracle/xml/parser/plsql/XMLNodeCover
ORA-00904: invalid column name
I appreciate any help to resolve these issues
Sree
nullThese errors were due to not running initjvm etc. I have resolved all the jvm sqlj related problems now .
I am still seeing resolver errors . Opened a new thread for those errors.
Please respond on those
Thanks
null -
Performance degradation in pl/sql parsing
We are trying to use xml pl/sql parser and noticed performance degradation as we run multiple times. We zeroed into the following clause:
doc := xmlparser.getDocument(p);
The first time the procedure is run the elapsed time at sqlplus is something like .45sec, but as we run repeatedly in the same session the elapsed time keeps on increasing by .02 seconds. If we log out and start fresh, we start again from .45sec.
We noticed similar degradation with
p := xmlparser.newParser;
but we got around by making the 'p' variable as package variable, initializing it once and using the same for all invocations.
Any suggestions?
Thank you.Can I enhance the PL/SQL code for better performance ? Probably you can enhance it.
or, is this OK to take so long to process these many rows? It should take a few minutes, not several hours.
But please provide some more details like your database version etc.
I suggest to TRACE the session that executes the PL/SQL code, with WAIT events, so you'll see where and on what time is spent, you'll identify your 'problem statements very quickly' (after you or your DBA have TKPROF'ed the trace file).
SQL> alter session set events '10046 trace name context forever, level 12';
SQL> execute your PL/SQL code here
SQL> exitWill give you a .trc file in your udump directory on the server.
http://www.oracle-base.com/articles/10g/SQLTrace10046TrcsessAndTkprof10g.php
Also this informative thread can give you more ideas:
HOW TO: Post a SQL statement tuning request - template posting
as well as doing a search on 10046 at AskTom, http://asktom.oracle.com will give you more examples.
and reading Oracle's Performance Tuning Guide: http://www.oracle.com/pls/db102/to_toc?pathname=server.102%2Fb14211%2Ftoc.htm&remark=portal+%28Getting+Started%29 -
PL/SQL parser installation error
I tried to install the XML PL/SQL parser against Oracle 8.1.6 with JServer Release 8.1.6.0.0 and I received a large number of errors about invalid column names including the following:
Error while resolving class oracle/xml/parser/v2/FromDescendantAttributes
ORA-00904: invalid column name
Error while resolving class oracle/xml/parser/v2/XSLNode
ORA-00904: invalid column name
Error while resolving class oracle/xml/parser/v2/UnaryExpr
ORA-00904: invalid column name
Any suggestions?
ThanksHi Steven:
Yep...I just checked our install and there are no java classes in user_objects. We had the init*.ora file shared_pool_size set too low (as indicated under $ORACLE_HOME/javavm/doc/readme.txt).
So I'll get our DBA to try it again.
Thanks,
Derek
<BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Steven Muench ([email protected]):
This likely means that the database JavaVM is not properly installed in your Oracle8i database. You need to run the initjvm.sql script as detailed in the JServer documentation before any 'loadjava'
commands will work.<HR></BLOCKQUOTE>
null -
Validating XML with PL/SQL parser
How can i validate a xml that is on a buffer with the grammar
stored in a BLOB column of o table? I'm using PL/SQL parser and
i can parse it correctly but i don't know how can i validate it
because my grammar is stored in DB.
nullAna Lucia (guest) wrote:
: How can i validate a xml that is on a buffer with the grammar
: stored in a BLOB column of o table? I'm using PL/SQL parser
and
: i can parse it correctly but i don't know how can i validate
it
: because my grammar is stored in DB.
You can't currently but this will be available in our next
release.
Oracle XML Team
http://technet.oracle.com
Oracle Technology Network
null -
Importing/Parsing XML using SQL and/or PL/SQL
What is the recomended way of importing/parsing XML data using SQL and/or PL/SQL?
I have an XSD that defines the structure of the file, and an XML file that has the content in the appropriate structure. I have parsed (checked) the structure of the XML file using JDOM in my java application, and then passed it to a function in a package on the database as a CLOB.
What I need to do is parse the contents of the XML file that is passed into the function and extract the values of each XML element so that I can then do some appropriate validation before inserting and committing the data to the database (hence completing the import function).
A DBA colleague of mine has been experimenting with various ways of acheiving this, but has encountered a number of problems along the way, one of which being that he thinks that it is not possible to parse XML elements that are nested more than four levels deep - is this the case?
The structure of the XSD/XML that the database function needs to manipulate and import data from is very complex (and recursive by it's nature).
I would appreciate any suggestions as to how I can achieve the above in the most efficient manner.
Thanks in advance for your help
DavidThis is the forum for the SQLDeveloper tool. You will get better answers in the SQL and PL/SQL forum, and especially the XML DB forum.
Oracle has comprehensive and varied support for XML, including a PL/SQL parser. -
Logging errors in PL/SQL Parser
Using PL/SQL Parser, is it possible to obtain the parsing errors
output in other place than a file (ref: setErrorLog function)?
as varchar variables or kind?
nullM Leclair (guest) wrote:
: Using PL/SQL Parser, is it possible to obtain the parsing
errors
: output in other place than a file (ref: setErrorLog function)?
: as varchar variables or kind?
It is not possible at this time. It has been filed as an
enhancement request.
Oracle XML Team
http://technet.oracle.com
Oracle Technology Network
null -
Does PL/SQL Parser Validate?
Just wondering if the PL/SQL parser can parse in validation mode?
I think I remember reading that the PL/SQL parser is a non-validating parser only but I didn't know if this changed.
Thanks for you helpI am also experiencing problems with the setDocumentType
This is my code
p := xmlparser.newParser;
xmlparser.parseBuffer(p,'<My_Data/>');
doc := xmlparser.getDocument(p);
docNode := xmldom.makeNode(doc);
xmldom.setVersion(doc, '1.0');
OuterNode := xmldom.getLastChild(docNode);
--Get DTD to parse against
xmlparser.setValidationMode(p,TRUE);
xmlparser.parseDTD(p,'c:\temp\v109.dtd','My_Data');
--Set DTD to validate against
docType := xmlparser.getDoctype(p);
xmlparser.setDoctype(p,docType);
xmlparser.freeParser(p);
The problem I am having is that the output now looks like this
<?xml version="1.0" encoding="UTF-8"?>
<My_Data>
</My_Data>
<!DOCTYPE My_Data SYSTEM "file:/c:/temp/v109.dtd">
The xmlparser.parseDTD requires as the third parameter the root element so the !DOCTYPE field comes after the root element and not before as required.
Hope this code helps a bit and if you solve the problem please let me know
Owen
null -
PL/SQL parser for 7.3 DB?
We have an ORACLE 7.3 DB and are looking for a PL/SQL parser for XML... Some of the posts I've seen seem to suggest that a solution exists, but I'm not having any luck finding out for sure...
Thanks,
Jeffhttp://technet.oracle.com/tech/xml/info/index2.htm?Info&plsxml/xml4plsql.htm
-
SQL Parser supporting nested queries
Hi,
I require a SQL parser that supprt nested queries. JavaCC doesnt support nested queries so that one is out. If anyone knows of any open sourse parser, please enlighten me. I have already looked enough on Google but not of much use.
thanks,
abulkd| 1. as suggested , i was able to get the oraclexmlsql.jar
| from the servlet zip and loading it solved the problem of
| the jdbc string being printed int he cursor syntax . it
| works from the xmlgen utility withing pl/sql. but when
| using OracleXML in a java prog the results still printout
| the jdbc string.. any ideas...
Could only be a CLASSPATH problem difference in your two
tests.
| 2. Is there anyway to supress the rownum attribute tag in
| the subquery (cursor) results...that is the
| setRowIdAttrName .... w/o using xslt
Not at this time. Rownum supression on the subquery should
probably follow your settings on the main query. I'll
suggest to the devs.
| 3. We are implementing a solution using these tools.... we
| wanted to know which were the production versions.
XDK Components for XML and XSLT are production.
XML SQL Utility and XSQL Servlet are still Technical
Previews and as such are not yet production.
null -
We are running htmldb 1.5. We have an application running without problems on the development server. When we export the application and then import it on another server (QA or Production) we sometimes get the following errors in report regions that are retrieving data based on a page item:
failed to parse SQL query:
ORA-06502: PL/SQL: numeric or value error: NULL index table key value
The form with the page item is displaying the value for the item, but the reports based on the page item fail. If we go into the htmldb development environment and edit the page for viewing purposes, the problem appears to disappear from that point on. We do not make any changes to the page.
Is there a problem with the export/import process? Is there a way to make sure the page item has the value expected? We are using DML processing to fetch the record for the page. The fetch occurs 'After the Header'. Should the fetch be 'Before the Header'. Should we force a computation that reads the value into the page item again? If so, at what point?
Usually we invoke the page and set the page item values with a url that looks like:
f?p=&APP_ID.:510:#APP_SESSION#:UPDATE::510:P510_CLASS_ID:#CLASS_ID#
Thanks for your help,
PeterM Leclair (guest) wrote:
: Using PL/SQL Parser, is it possible to obtain the parsing
errors
: output in other place than a file (ref: setErrorLog function)?
: as varchar variables or kind?
It is not possible at this time. It has been filed as an
enhancement request.
Oracle XML Team
http://technet.oracle.com
Oracle Technology Network
null -
hi
i have sharepoint 2013 enterprise over sql server 2012 standard, and i want to create some reports trhought excel services and performance point using EffectiveUserName feature, but right actually my environment is not working, when a configure an excel
to read a SSAS cube from my local machine the rol is ok, but when i published the excel and try to update from Internet Explorer this error is presenting
XML for Analysis parser: The Domain\User' value of the 'EffectiveUserName' XML for Analysis property is not valid.
Anybody can helpme is urgent find out for some solution
thanks a lotTurns out that you need the SP Farm service account to be an admin on the SSAS server as well. That fixed the problem for us.
MS: Please update your documentation :) -
How to generate XML from SQL query
possible ways to generate XML from SQL qury.
i want to generate XML of following query. "Select * from emp,dep wher emp.deptno=dept.deptno"Hello.
Can you try:
SQL> set pages 0
SQL> set linesize 150
SQL> set long 9999999
SQL> set head off
SQL> select dbms_xmlgen.getxml('Select * from emp,dep wher emp.deptno=dept.deptno') from dual;
It works fine for me.
Octavio
Maybe you are looking for
-
Upgrade to Iphoto 6 wiped out all albums
One of my clients upgraded to iphoto 6 and it erased all of his albums (the originals are still in the library, however all of his organized albums are gone). This also happened to his itunes when he upgraded. Is there something that can be done to r
-
Draw image at point in picture control
Is there a VI for drawing an image at a certain point in a picture control? Something like the "Draw Text at Point" or "Draw Rectangle" VIs but with an image.
-
HT1430 help my phone just shut off cant get it to come back on
how do I get my phone to come back on
-
Problems executing exe file outside vignette(HAL)
Hi, when trying to execute my exe file generated with vignette I'm getting an error: C:\WINDOWS\system32\cmd.exe - cas33.bat The NTVDM CPU has encountered an illegal instruction CS:05a7IP:016b OP:63 65 64 20 77 Chose 'Close' to terminate the applicat
-
Opening files created on Pages '08 with Pages v.2
Hello, I brought some word processing files home from work that I made on Pages v.3. (Yes, I'm lucky enough to have a new Mac at work) Anyway, I come to open them up at home and I can't open them because I have the older version of Pages. (That immed