XML serial parsing is declared using the xmlserial profile:
program xmlserial, textpatterns; parseXmlSerially (); choose xmlElement ("doc") { println (".startdoc"); processChildren; println (".enddoc"); } choose xmlElement ("p") :> processChildren; choose xmlElement ("list") { println (".startlist"); processChildren; println (".endlist"); } choose xmlElement ("item") { print (".item "); processChildren; } choose xmlText = println (*.data) unless *.data matches ([" \t\n"]* & -|);
The input and output for this example is the same as for the previous tree parsing example.
Beyond OmniMark | Sam Wilmott |
Slide 20 of 37 | www.wilmott.ca |