XML/Output

From Rosetta Code
< XML
Revision as of 22:22, 28 December 2008 by rosettacode>Blue Prawn (added ocaml)
Task
XML/Output
You are encouraged to solve this task according to the task description, using any language you may know.

Given the list of names and the below template, generate an XML document.

<Students>
  <Student Name="XXX" />
</Students>

Visual Basic .NET

       Dim names As String() = New String() {"April", "Bob", "Chad", "Dave", "Emily"}

       Dim xml = <Students>
                     <%= From s In names Select <Student Name=<%= s %>/> %>
                 </Students>
       Console.WriteLine(xml)

Output

<Students>
  <Student Name="April" />
  <Student Name="Bob" />
  <Student Name="Chad" />
  <Student Name="Dave" />
  <Student Name="Emily" />
</Students>

OCaml

# #directory "+site-lib/xml-light" (* or maybe just "+xml-light" *) ;;

# #load "xml-light.cma" ;;

# let students = ["April"; "Bob"; "Chad"; "Dave"; "Emily"] in
  let tags_students = List.map (fun name ->
      Xml.Element ("Student", [("Name", name)], [])
    ) students in
  print_endline (
    Xml.to_string_fmt (Xml.Element ("Students", [], tags_students)))
  ;;
<Students>
  <Student Name="April"/>
  <Student Name="Bob"/>
  <Student Name="Chad"/>
  <Student Name="Dave"/>
  <Student Name="Emily"/>
</Students>
- : unit = ()