XML::Smart::DTD(3) User Contributed Perl Documentation XML::Smart::DTD(3) NAME XML::Smart::DTD - DTD parser for XML::Smart. DESCRIPTION This will parse DTD and provides methods to access the information stored in the DTD. USAGE use XML::Smart::DTD ; my $dtd = XML::Smart::DTD->new('some.dtd') ; if ( $dtd->child_exists('tag1','subtag1') ) { ... } use Data::Dumper ; print Dumper( $dtd->tree ) ; new METHODS attr_exists ( TAG , ATTR ) Return TRUE if the attribute exists in the element TAG. child_exists ( TAG , CHILD ) Return TRUE if the child exists in the element TAG. elem_exists ( TAG ) Return TRUE if the element TAG exists. error Return the error list. get_attr_def ( TAG , ATTR ) Return the default value of an attribute get_attr_type ( TAG , ATTR ) Return the attribute type. get_attr_values ( TAG , ATTR ) Return the defined values of an attribute. get_attrs ( TAG ) Return the attribute list of a element. get_attrs_req ( TAG ) Return the required attribute list of a element. get_childs ( TAG ) Return the child list of an element. get_childs_req ( TAG ) Return the required child list of an element. get_elem_opt ( TAG ) Return the occurrence option of an element: ! REQUIRED AND ONLY ONE MATCH + 1 or more * 0 or more ? 0 or 1 get_elem_child_opt ( TAG , CHILD ) Same of get_elem_opt() but this element as a child of an element. is_attr_fix ( TAG , ATTR ) Return TRUE if an attribute is FIXED. is_attr_req ( TAG , ATTR ) Return TRUE if an attribute is REQUIRED. is_elem_any ( TAG ) Return TRUE if an element is ANY. is_elem_child_multi ( TAG , CHILD ) Return TRUE if an element can have multiple occurrences as a child of TAG. is_elem_child_opt ( TAG , CHILD ) Return TRUE if an element is optional as a child of TAG. is_elem_child_req ( TAG , CHILD ) Return TRUE if an element is optional as a child of TAG. is_elem_child_uniq ( TAG , CHILD ) Return TRUE if an element is required and unique as a child of TAG. is_elem_pcdata ( TAG ) Return TRUE if an element is PCDATA (have content). is_elem_empty ( TAG ) Return TRUE if an element is EMPTY (doesn't have attributes, content or children). is_elem_multi ( TAG ) Return TRUE if an element can have multiple occurrences globally. is_elem_opt ( TAG ) Return TRUE if an element is optional globally. is_elem_parent ( TAG , @PARENTS ) Return TRUE if the list of @PARENTS can be parent of element TAG. is_elem_req Return TRUE if an element is required globally. is_elem_uniq Return TRUE if an element is unique and required globally. root Return the root name of the DTD. tree Return the HASH tree of the DTD. SEE ALSO XML::Smart, XML::DTDParser. AUTHOR Graciliano M. P. I will appreciate any type of feedback (include your opinions and/or suggestions). ;-P THANKS Thanks to Jenda@Krynicky.cz http://Jenda.Krynicky.cz that is the author of XML::DTDParser. COPYRIGHT The DTD parser was based on XML-DTDParser-1.7 by Jenda@Krynicky.cz http://Jenda.Krynicky.cz This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.38.0 2023-07-25 XML::Smart::DTD(3)