type tag_kind = | Start| End
type doctype = {name : string option;public_id : string option;system_id : string option;force_quirks : bool;
}type tag = {kind : tag_kind;name : string;attrs : (string * string) list;self_closing : bool;
}type t = | Tag of tag| Character of string| Doctype of doctype| EOF
val make_start_tag : string -> (string * string) list -> bool -> tval make_end_tag : string -> tval make_doctype :
?name:string ->
?public_id:string ->
?system_id:string ->
?force_quirks:bool ->
unit ->
tval make_character : string -> t