The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

XML::DTD::AttList - Perl module representing an ATTLIST declaration in an XML DTD.

SYNOPSIS

  use XML::DTD::AttList;
  my $entman = XML::DTD::EntityManager->new;
  my $att = XML::DTD::AttList::new($entman, '<!ATTLIST a b CDATA #IMPLIED>');

DESCRIPTION

  XML::DTD::AttList is a Perl module representing an ATTLIST
  declaration in an XML DTD. The following methods are provided.
new
  $entman = XML::DTD::EntityManager->new;
  $attlist = new XML::DTD::AttList($entman, '<!ATTLIST a b CDATA #IMPLIED>');

  Constructs a new XML::DTD::AttList object.
writexml
  $xo = new XML::Output({'fh' => *STDOUT});
  $attlist->writexml($xo);

Write an XML representation of the attribute list.

name
  $eltname = $attlist->name();

Return the name of the element with which the attribute list is associated.

attribnames
  $nmlst = $attlist->attribnames;

Return an array of attribute names (associated with a specific element) as an array reference.

attribute
  $attdefobj = $attlist->attribute('attribname');

Return the attribution definition object (of type XML::DTD::AttDef) associated with the specified name.

merge
  $attlist->merge($otherattlist);

Merge another attribute list's attribute declarations with this one's. Where the same attribute name is declared in both, keep the one already in <$attlist>.

SEE ALSO

XML::DTD, XML::DTD::Component, XML::DTD::AttDef

AUTHOR

Brendt Wohlberg <wohl@cpan.org>

COPYRIGHT AND LICENSE

Copyright (C) 2004-2010 by Brendt Wohlberg

This library is available under the terms of the GNU General Public License (GPL), described in the GPL file included in this distribution.

ACKNOWLEDGMENTS

Peter Lamb <Peter.Lamb@csiro.au> improved entity substitution and corrected handling of multiple declarations of attributes for the same element.