XML::Smart::DTD.3pm

Langue: en

Version: 2004-09-01 (ubuntu - 24/10/10)

Section: 3 (Bibliothèques de fonctions)

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. <gm@virtuasites.com.br>

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. 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.