SQL>
SQL> declare
2 var XMLType;
3 doc dbms_xmldom.DOMDocument;
4 ndoc dbms_xmldom.DOMNode;
5 docelem dbms_xmldom.DOMElement;
6 node dbms_xmldom.DOMNode;
7 childnode dbms_xmldom.DOMNode;
8 nodelist dbms_xmldom.DOMNodelist;
9 buf varchar2(2000);
10 begin
11 var := xmltype(' ramesh ');
12
13 -- Create DOMDocument handle:
14 doc := dbms_xmldom.newDOMDocument(var);
15 ndoc := dbms_xmldom.makeNode(doc);
16
17 dbms_xmldom.writetobuffer(ndoc, buf);
18 dbms_output.put_line('Before:'||buf);
19
20 docelem := dbms_xmldom.getDocumentElement( doc );
21
22 -- Access element:
23 nodelist := dbms_xmldom.getElementsByTagName(docelem, 'NAME');
24 node := dbms_xmldom.item(nodelist, 0);
25 childnode := dbms_xmldom.getFirstChild(node);
26
27 -- Manipulate:
28 dbms_xmldom.setNodeValue(childnode, 'raj');
29
30 dbms_xmldom.writetobuffer(ndoc, buf);
31 dbms_output.put_line('After:'||buf);
32 end;
33 /
Before: ramesh
After:
raj
PL/SQL procedure successfully completed.
SQL>
SQL> declare
2 doc dbms_xmldom.DOMDocument;
3 buf varchar2(32767);
4 begin
5 -- new document
6 doc := dbms_xmldom.newDOMDocument(sys.xmltype(' Scott
7 '));
8 dbms_xmldom.writeToBuffer(doc, buf);
9 dbms_output.put_line(buf);
10 end;
11 /
Scott
PL/SQL procedure successfully completed.
SQL>
SQL> -- This example creates an element node starting from an empty DOM document:
SQL> declare
2 doc dbms_xmldom.DOMDocument;
3 elem dbms_xmldom.DOMElement;
4 nelem dbms_xmldom.DOMNode;
5 begin
6 -- new document
7 doc := dbms_xmldom.newDOMDocument;
8
9 -- create a element node
10 elem := dbms_xmldom.createElement(doc, 'ELEM');
11
12 -- make node
13 nelem := dbms_xmldom.makeNode(elem);
14 dbms_output.put_line(dbms_xmldom.getNodeName(nelem));
15 dbms_output.put_line(dbms_xmldom.getNodeValue(nelem));
16 dbms_output.put_line(dbms_xmldom.getNodeType(nelem));
17 end;
18 /
ELEM
1
PL/SQL procedure successfully completed.
SQL>
SQL> spool off