Library
Module
Module type
Parameter
Class
Class type
Xml Light Parser
While basic parsing functions can be used in the Xml
module, this module is providing a way to create, configure and run an Xml parser.
type xml = Xml_datatype.xml
An Xml node is either Element (tag-name, attributes, children)
or PCData text
Several exceptions can be raised when parsing an Xml document :
Xml.Error
is raised when an xml parsing error occurs. the Xml.error_msg
tells you which error occurred during parsing and the Xml.error_pos
can be used to retrieve the document location where the error occurred at.Xml.File_not_found
is raised when an error occurred while opening a file with the Xml.parse_file
function.exception Error of error
val error : error -> string
Get a full error message from an Xml error.
val error_msg : error_msg -> string
Get the Xml error message as a string.
val line : error_pos -> int
Get the line the error occurred at.
val range : error_pos -> int * int
Get the relative character range (in current line) the error occurred at.
val abs_range : error_pos -> int * int
Get the absolute character range the error occurred at.
val pos : Lexing.lexbuf -> error_pos
Several kind of resources can contain Xml documents.
val check_eof : t -> bool -> unit
When a Xml document is parsed, the parser may check that the end of the document is reached, so for example parsing "<A/><B/>"
will fail instead of returning only the A element. You can turn on this check by setting check_eof
to true
(by default, check_eof is false, unlike in the original Xmllight).