Je pense qu'il y a deux choses que vous avez mal ici :
-
Tout d'abord, votre expression XPath
//@GovernmentCode/
est faux. Il ne doit pas avoir de/
à la fin , et vous ne voulez pas le@
soit parce queGovernmentCode
est un élément, pas un attribut. -
Deuxièmement, vous devez spécifier la déclaration d'espace de noms XML dans votre appel à
EXTRACTVALUE
ainsi que dans votre appel àEXTRACT
.
Apporter ces modifications vous laisse avec le code suivant. Je lui ai fait un test rapide, et cela a semblé fonctionner :
SELECT EXTRACTVALUE (VALUE (xml_list), '//GovernmentCode', 'xmlns="http://www.irs.gov/efile"') AS SysID
INTO lv_transid
FROM TABLE (
XMLSEQUENCE (
EXTRACT (in_xmlclob, '/AckTransmission/Acknowledgement',
'xmlns="http://www.irs.gov/efile"'))) xml_list;