Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.misc -> Re: Creating valid and well-formed XML-output
willy schrieb:
> I'd like to create a script to generate a valid XML-file based upon the
> contents of a table containing employee information.
> So far, I've come up with the following:
> SELECT SYS_XMLGEN(XMLELEMENT("Medewerker",
> XMLFOREST(Registratienr,
> Voornaam,
> Achternaam,
> Tussenvoegsel,
> Voorletters,
> Geslacht,
> Datum_uit_dienst,
> Gebruikersnaam,
> Email
> )))
> FROM medewerkers
> /
>
> This results into the following XML-file:
>
> <?xml version="1.0"?>
> <Medewerkerslijst>
> <ROW>
> <REGISTRATIENR>123456789</REGISTRATIENR>
> <VOORNAAM>John</VOORNAAM>
> <ACHTERNAAM>Jansen</ACHTERNAAM>
> <VOORLETTERS>J</VOORLETTERS>
> <GESLACHT>M</GESLACHT>
> <GEBRUIKERSNAAM>xxx222</GEBRUIKERSNAAM>
> <EMAIL>john_at_ourcompany.nl</EMAIL>
> </ROW>
> <ROW>
> <REGISTRATIENR>987654321</REGISTRATIENR>
> <VOORNAAM>Pietje</VOORNAAM>
> <ACHTERNAAM>Boer</ACHTERNAAM>
> <TUSSENVOEGSEL>de</TUSSENVOEGSEL>
> <VOORLETTERS>P.</VOORLETTERS>
> <GESLACHT>M</GESLACHT>
> <GEBRUIKERSNAAM>xxx111</GEBRUIKERSNAAM>
> <EMAIL>pietje_at_ourcompany.nl</EMAIL>
> </ROW>
> </Medewerkerslijst>
>
> This is a valid XML-file, but in order for the file to be wellformed as
> well as valid I'll have to change the element <ROW> into <MEDEWERKER>.
> In addition, I'd like to add elements to point to a style sheet, e.g.
> <?xml-stylesheet href="test.xsl" type="text/xsl" ?>, and a reference to
> an XML-schema in the root-element <Medewerkerslijst>.
> I think I ought to achieve this by using the XMLFORMAT.createformat
> statement, but I can't seem to figure it out.
> Any help would be appreciated.
>
> Willy Tadema
>
Maybe this works for you.
1 SELECT Xmlroot(Xmlconcat(Xmlpi(NAME "xml-stylesheet",'href="test.xsl" type="text/xsl"'),
2 Xmlelement("Medewerkerslijst",
3 Xmlattributes('http://www.my.schema' AS "xmlns"), 4 Xmlagg(Xmlelement("Medewerker", 5 Xmlforest(Registratienr, 6 Voornaam, 7 Achternaam, 8 Tussenvoegsel, 9 Voorletters, 10 Geslacht, 11 Datum_Uit_Dienst, 12 Gebruikersnaam, 13 Email))))),
XML
<?xml version="1.0"?> <?xml-stylesheet href="test.xsl" type="text/xsl"?> <Medewerkerslijst xmlns="http://www.my.schema"> <Medewerker> <REGISTRATIENR>123456789</REGISTRATIENR> <VOORNAAM>John</VOORNAAM> <ACHTERNAAM>Jansen</ACHTERNAAM> <VOORLETTERS>J</VOORLETTERS> <GESLACHT>M</GESLACHT> <GEBRUIKERSNAAM>xxx222</GEBRUIKERSNAAM> <EMAIL>john_at_ourcompany.nl</EMAIL>
<REGISTRATIENR>987654321</REGISTRATIENR> <VOORNAAM>Pietje</VOORNAAM> <ACHTERNAAM>Boer</ACHTERNAAM> <TUSSENVOEGSEL>de</TUSSENVOEGSEL> <VOORLETTERS>P.</VOORLETTERS> <GESLACHT>M</GESLACHT> <GEBRUIKERSNAAM>xxx111</GEBRUIKERSNAAM> <EMAIL>pietje_at_ourcompany.nl</EMAIL></Medewerker>
Best regards
Maxim Received on Wed Aug 16 2006 - 04:56:01 CDT
![]() |
![]() |