Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
25
Task/XML-Input/OCaml/xml-input-1.ocaml
Normal file
25
Task/XML-Input/OCaml/xml-input-1.ocaml
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
# #directory "+xml-light" (* or maybe "+site-lib/xml-light" *) ;;
|
||||
# #load "xml-light.cma" ;;
|
||||
|
||||
# let x = Xml.parse_string "
|
||||
<Students>
|
||||
<Student Name='April' Gender='F' DateOfBirth='1989-01-02' />
|
||||
<Student Name='Bob' Gender='M' DateOfBirth='1990-03-04' />
|
||||
<Student Name='Chad' Gender='M' DateOfBirth='1991-05-06' />
|
||||
<Student Name='Dave' Gender='M' DateOfBirth='1992-07-08'>
|
||||
<Pet Type='dog' Name='Rover' />
|
||||
</Student>
|
||||
<Student DateOfBirth='1993-09-10' Gender='F' Name='Émily' />
|
||||
</Students>"
|
||||
in
|
||||
Xml.iter (function
|
||||
Xml.Element ("Student", attrs, _) ->
|
||||
List.iter (function ("Name", name) -> print_endline name | _ -> ()) attrs
|
||||
| _ -> ()) x
|
||||
;;
|
||||
April
|
||||
Bob
|
||||
Chad
|
||||
Dave
|
||||
Émily
|
||||
- : unit = ()
|
||||
25
Task/XML-Input/OCaml/xml-input-2.ocaml
Normal file
25
Task/XML-Input/OCaml/xml-input-2.ocaml
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
#directory "+xmlm"
|
||||
#load "xmlm.cmo"
|
||||
open Xmlm
|
||||
|
||||
let str = "
|
||||
<Students>
|
||||
<Student Name='April' Gender='F' DateOfBirth='1989-01-02' />
|
||||
<Student Name='Bob' Gender='M' DateOfBirth='1990-03-04' />
|
||||
<Student Name='Chad' Gender='M' DateOfBirth='1991-05-06' />
|
||||
<Student Name='Dave' Gender='M' DateOfBirth='1992-07-08'>
|
||||
<Pet Type='dog' Name='Rover' />
|
||||
</Student>
|
||||
<Student DateOfBirth='1993-09-10' Gender='F' Name='Émily' />
|
||||
</Students>"
|
||||
|
||||
|
||||
let xi = make_input(`String(0, str))
|
||||
|
||||
let () =
|
||||
while not(eoi xi) do
|
||||
match Xmlm.input xi with
|
||||
| `El_start ((_, "Student"), attrs) ->
|
||||
List.iter (function ((_, "Name"), name) -> print_endline name | _ -> ()) attrs
|
||||
| _ -> ()
|
||||
done
|
||||
22
Task/XML-Input/OCaml/xml-input-3.ocaml
Normal file
22
Task/XML-Input/OCaml/xml-input-3.ocaml
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
open Expat
|
||||
|
||||
let xml_str = "
|
||||
<Students>
|
||||
<Student Name='April' Gender='F' DateOfBirth='1989-01-02' />
|
||||
<Student Name='Bob' Gender='M' DateOfBirth='1990-03-04' />
|
||||
<Student Name='Chad' Gender='M' DateOfBirth='1991-05-06' />
|
||||
<Student Name='Dave' Gender='M' DateOfBirth='1992-07-08'>
|
||||
<Pet Type='dog' Name='Rover' />
|
||||
</Student>
|
||||
<Student DateOfBirth='1993-09-10' Gender='F' Name='Émily' />
|
||||
</Students>"
|
||||
|
||||
let () =
|
||||
let p = parser_create None in
|
||||
set_start_element_handler p
|
||||
(fun tag attrs ->
|
||||
if tag = "Student" then
|
||||
List.iter (function ("Name", name) -> print_endline name | _ -> ()) attrs
|
||||
);
|
||||
parse p xml_str;
|
||||
final p;
|
||||
Loading…
Add table
Add a link
Reference in a new issue