PLSQL DOM API for XMLType Examples
Example 8-1 Creating and Manipulating a DOM Document
This example illustrates how to create a DOMDocument handle for an example element PERSON:
-- This example illustrates how to create a DOMDocument handle for an example element PERSON:
declare var XMLType;
doc dbms_xmldom.DOMDocument;
ndoc dbms_xmldom.DOMNode;
docelem dbms_xmldom.DOMElement; node dbms_xmldom.DOMNode;
childnode dbms_xmldom.DOMNode;
nodelist dbms_xmldom.DOMNodelist; buf varchar2(2000);
begin var := xmltype('<PERSON> <NAME> ramesh </NAME> </PERSON>');
-- Create DOMDocument handle:
doc := dbms_xmldom.newDOMDocument(var);
ndoc := dbms_xmldom.makeNode(doc);
dbms_xmldom.writetobuffer(ndoc, buf); dbms_output.put_line('Before:'||buf);
docelem := dbms_xmldom.getDocumentElement( doc );
-- Access element:
nodelist := dbms_xmldom^.getElementsByTagName(docelem^, 'NAME'); node := dbms_xmldom.item(nodelist, 0); childnode := dbms_xmldom.getFirstChild(node);
-- Manipulate:
dbms_xmldom.setNodeValue(childnode, 'raj');
dbms_xmldom.writetobuffer(ndoc, buf); dbms_output.put_line('After:'||buf); end;
Example 8-2 Creating a DOM Document Using sys.xmltype
This example creates a DOM document from an XMLType:
declare doc dbms_xmldom.DOMDocument;
buf varchar2(32767);
begin
-- new document doc := dbms_xmldom.newDOMDocument(sys.xmltype('<person> <name>Scott</name> </person>'));
dbms_xmldom.writeToBuffer(doc, buf); dbms_output.put_line(buf); end;
Example 8-3 Creating an Element Node
-- This example creates an element node starting from an empty DOM document: declare doc dbms_xmldom.DOMDocument;
elem dbms_xmldom.DOMElement;
nelem dbms_xmldom.DOMNode;
begin
-- new document doc := dbms_xmldom.newDOMDocument;
-- create a element node elem := dbms_xmldom.createElement(doc, 'ELEM');
-- make node nelem := dbms_xmldom.makeNode(elem); dbms_output.put_line(dbms_xmldom.getNodeName(nelem)); dbms_output.put_line(dbms_xmldom.getNodeValue(nelem)); dbms_output.put_line(dbms_xmldom.getNodeType(nelem));
Post a comment