Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.misc -> How to add encoding attribute to prolog in XML-file
Hello,
I created the following script to generate an XML-file from the tables in my database:
set serveroutput on
set long 500000
SET NEWPAGE 0
SET SPACE 0
SET LINESIZE 160
SET PAGESIZE 0
SET ECHO OFF
SET FEEDBACK OFF
SET HEADING OFF
SELECT XMLROOT(XMLCONCAT(
XMLELEMENT("MEDEWERKERSLIJST", XMLATTRIBUTES(to_char(sysdate,
'DD-MM-YYYY
HH24:MI:SS') AS "DAT_GEGENEREERD", COUNT(*) AS "AANTAL_RECORDS"),
XMLAGG(XMLELEMENT("MEDEWERKER", XMLFOREST(m.Registratienr AS
REGISTRATIENR,
m.Voornaam AS VOORNAAM, m.Achternaam AS ACHTERNAAM, m.Tussenvoegsels AS TUSSENVOEGSELS, m.Voorletters AS VOORLETTERS, m.Geslacht AS GESLACHT, m.Dat_Uit_Dienst AS DAT_UIT_DIENST, m.Gebruikersnaam AS GEBRUIKERSNAAM, m.Email AS EMAIL, m.Telefoon AS TELEFOON, m.GSM AS GSM, m.Lokatie AS LOKATIE, m.Kamernr AS KAMERNR, m.DAT_MUTATIE asDAT_MUTATIE
DECODE(m.EXTERN, 1, XMLELEMENT("EXTERN"), NULL), DECODE(m.STAGIAIR, 1, XMLELEMENT("STAGIAIR"), NULL), (SELECT XMLAGG(XMLELEMENT("WERKGEVER",XMLATTRIBUTES(w.werkgevernr AS "WERKGEVERNR"), w.WERKGEVER, (SELECT XMLAGG(XMLELEMENT("AFDELING", XMLATTRIBUTES(a.afdelingnr AS "AFDELINGNR"), a.AFDELING,(SELECT XMLAGG(XMLELEMENT("CLUSTER", XMLATTRIBUTES(c.clusnr AS "CLUSTERNR", DECODE(c.primair, 1, 'primair', 'secundair') AS "NIVEAU"), c.clus,
WHERE c.clusid = f.clusid)
)) FROM CLUSTERS c
WHERE a.afdelingid = c.afdelingid)
)) FROM AFDELINGEN a
WHERE w.werkgeverid = a.werkgeverid)
)) FROM WERKGEVERS w
WHERE m.registratienr = w.registratienr )
)))),
Version '1.0',
Standalone NO VALUE) as xml
FROM Medewerkers m
The script works fine, but I have to alter the prolog into
<? xml version="1.0" encoding="iso-8859-1" ?>
because the default character set doesn't support characters like é,
ü, â, ....
I've looked at the syntax for XLMROOT, but there's no option for
including an enconding attribute.
I've also tried dropping the XMLROOT function and concatenating a
string containing the prolog
SELECT '<?xml "version=1.0" encoding="iso-8859-1"' | |
XMLELEMENT("MEDEWERKERSLIJST ....etc.)
but that doesn't seem to work either... Any help would be appreciated.
Kind regards,
Willy Received on Thu Sep 07 2006 - 13:38:01 CDT
![]() |
![]() |