Checks if the string is QName and if it is so then replaces namespace prefix to the full namespace IRI. Otherwise signals error if the argument is local IRI without a prefix.
SQL> SELECT __xml_nsexpand_iristr ('foaf:knows');
__xml_nsexpand_iristr
VARCHAR
_______________________________________________________________________________
http://xmlns.com/foaf/0.1/knows
1 Rows. -- 0 msec.
SQL> SELECT __xml_nsexpand_iristr ('no-namespace-prefix-iri');
*** Error 22023: [Virtuoso Driver][Virtuoso Server]SR649:
No XML namespace prefix in string "no-namespace-prefix-iri"
in
__xml_nsexpand_iristr:(BIF),
__01 => 'no-namespace-prefix-iri',
<Top Level>
at line 5 of Top-Level:
SELECT __xml_nsexpand_iristr ('no-namespace-prefix-iri')
SQL> SELECT __xml_nsexpand_iristr ('no-such-prefix:local');
*** Error 22023: [Virtuoso Driver][Virtuoso Server]SR648:
Unknown XML namespace prefix in IRI "no-such-prefix:local"
in
__xml_nsexpand_iristr:(BIF),
__01 => 'no-such-prefix:local',
<Top Level>
at line 6 of Top-Level:
SELECT __xml_nsexpand_iristr ('no-such-prefix:local')
SQL> SELECT __xml_ns_iristr ('no-such-prefix', 'knows');
*** Error 22023: [Virtuoso Driver][Virtuoso Server]SR648: Unknown XML namespace prefix "no-such-prefix"
in
__xml_ns_iristr:(BIF),
__01 => 'no-such-prefix',
__02 => 'knows',
<Top Level>
at line 7 of Top-Level:
SELECT __xml_ns_iristr ('no-such-prefix', 'knows')