I'm running Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production.
When using
I get the error ORA-31067: XML nodes must be updated with valid nodes and of the same type
. The XPath_string denoting each node to be updated is always referencing a text()
node, so AFAIK there is no type restriction when updating those nodes. And the content written into those nodes is always either of type Varchar2
, Char
or Number
.
Even worse this error happens in production but I simply can't replicate it on my test system.
I wonder if it might have something to do with the fact that one of the nodes in my XML has an xsi:type
attribute with a custom type. Where can I find the type definition? Maybe this is defined somewhere in the production system but not on my test clone?
I notice that sometimes the text might contain <
characters and this seems to be a bug in older versions(10g) of Oracle, cf. Oracle updateXml "less than sign" as text But again this is not happening on my test system and I tried all kinds of combinations of <, >, &
.