attrdef() = #xmld_attr{name = xmlrat:attrname(), type = xmlrat_dtd:attrtype(), default = xmlrat_dtd:attrdefault()}
attrdefault() = required | implied | binary()
attrtype() = cdata | {one | many, id | idref | entity | nmtoken} | {enum, [binary()]}
contentspec() = empty | any | {mixed, [xmlrat:tag()]} | kidspec()
decl() = decl_element() | decl_attlist() | decl_entity() | decl_notation() | xmlrat:pi() | xmlrat:comment()
decl_attlist() = #xmld_attlist{tag = xmlrat:tag(), attributes = [xmlrat_dtd:attrdef()]}
decl_element() = #xmld_element{tag = xmlrat:tag(), content = xmlrat_dtd:contentspec()}
decl_entity() = #xmld_entity{name = xmlrat:xmlname(), content = binary() | xmlrat:extid() | {xmlrat:extid(), {ndata, xmlrat:xmlname()}}} | #xmld_parameter{name = xmlrat:xmlname(), content = binary() | xmlrat:extid()}
decl_notation() = #xmld_notation{name = xmlrat:xmlname(), id = xmlrat:extid() | {public, xmlrat:pubid()}}
doctype() = #xml_doctype{name = xmlrat:xmlname(), info = xmlrat_dtd:info()}
dtd() = [decl()]
info() = #{external_id => xmlrat:extid(), subset => dtd()}
kidspec() = {xarity(), xmlrat:tag()} | {xarity(), kidspec()} | {choice, [kidspec()]} | {seq, [kidspec()]}
xarity() = zero_or_one | zero_or_more | one_or_more | one
Generated by EDoc