Escapar caracteres de control en Oracle XDB

Soy completamente nuevo en Oracle XDB, en particular lo uso para generar resultados XML desde una tabla de base de datos, y estoy trabajando en una aplicación que se está moviendo de 9i (Oracle9i Enterprise Edition Release 9.2.0.5.0 - Producción) a 11g ( Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - Producción de 64 bits). Aquí hay un pequeño caso de prueba que ilustra el problema que estoy teniendo:

select xmlelement("test", test) from (select 'a' test from dual);

Esto funciona y me da:

<test>a</test>

Sin embargo, en 11g, si cambio 'a' por un carácter no válido, como U + 0013, aparece el siguiente error:

ORA-31061: XDB error: special char to escaped char conversion failed.

En 9i, lo mismo funciona con éxito, sin errores.

bviamente, la respuesta ideal es tener alguna validación para evitar que los caracteres de control ingresen a los datos de caracteres simples que estoy tratando de convertir en XML, pero desafortunadamente eso está fuera del alcance de lo que estoy haciendo.

¿Es esto algo que alguien más ha experimentado, y si es así, hay algún cambio simple que pueda hacer en mi script de generación de XML, o necesito hacer algún otro tipo de limpieza? O simplemente solucione manualmente el problema en las raras ocasiones en que sucede (lo cual sería una opción perfectamente razonable para mis necesidades).

Muchas gracias

Respuestas a la pregunta(3)

Su respuesta a la pregunta