Допустим, есть такой пример:
declare
x XMLType;
ex XMLType;
doc DBMS_XMLDOM.DOMDocument;
begin
x := XMLType('<test><a aa="blablabla"><b><c cc="asdasd">wwwww "quotas" & & &</c></b></a></test>');
ex := XMLType.extract(x, '/test/a/b/c/text()');
DBMS_OUTPUT.put_line('--- ex.getStringVal() ---');
DBMS_OUTPUT.put_line('');
DBMS_OUTPUT.put_line(ex.getStringVal());
DBMS_OUTPUT.put_line('');
DBMS_OUTPUT.put_line('--- DBMS_XMLDOM.getNodeValue(DBMS_XMLDOM.makeNode(DBMS_XMLDOM.getDocumentElement(doc))) ---');
DBMS_OUTPUT.put_line('');
doc := DBMS_XMLDOM.newDOMDocument(ex);
DBMS_OUTPUT.put_line(DBMS_XMLDOM.getNodeValue(DBMS_XMLDOM.makeNode(DBMS_XMLDOM.getDocumentElement(doc))));
end;
Кто-нибудь может объяснить почему получается такой аутпут?
Почему энтити резолвятся только в DOM, а если экстрактится текстовое значение по XPath, то нет?