Jag tror att det är två saker du har fel här:
-
För det första, ditt XPath-uttryck
//@GovernmentCode/
är fel. Den ska inte ha en efterföljande/
, och du vill inte ha@
antingen för attGovernmentCode
är ett element, inte ett attribut. -
För det andra måste du ange XML-namnområdesdeklarationen i ditt anrop till
EXTRACTVALUE
samt i ditt samtal tillEXTRACT
.
Genom att göra dessa ändringar får du följande kod. Jag testade det snabbt och det verkade fungera:
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;