XML::Doctype::AttDef - A class representing a definition in an <!ATTLIST> tag
Contents
Copyright
This module is Copyright 2000, 2005 Barrie Slaymaker. All rights reserved.
This module is licensed under your choice of the Artistic, BSD or General Public License.
perl v5.34.0 2022-06-28 XML::Doctype::AttDef(3pm)
Description
This module is used to represent <!ELEMENT> tags in an XML::Doctype object. It contains <!ATTLIST> tags
as well.
Methods
new
$dtd = XML::Doctype::AttDef->new( $name, $type, $default ) ;
default
( $spec, $value ) = $attr->default ;
$attr->default( '#REQUIRED' ) ;
$attr->default( '#IMPLIED' ) ;
$attr->default( '', 'foo' ) ;
$attr->default( '#FIXED', 'foo' ) ;
Sets/gets the default value. This is a
quant
$attdef->quant( $q ) ;
$q = $attdef->quant ;
Sets/gets the attribute quantifier: '#REQUIRED', '#FIXED', '#IMPLIED', or ''.
name
$attdef->name( $name ) ;
$name = $attdef->name ;
Sets/gets this attribute name. Don't change the name while an attribute is in an element's attlist,
since it will then be filed under the wrong name.
default_on_write
$attdef->default_on_write( $value ) ;
$value = $attdef->default_on_write ;
$attdef->default_on_write( $attdef->default ) ;
Sets/gets the value which is automatically output for this attribute if none is supplied to
$writer->startTag. This is typically used to set a document-wide default for #REQUIRED attributes
(and perhaps plain attributes) so that the attribute is treated like a #FIXED tag and emitted with a
fixed value.
The default_on_write does not need to be the same as the default unless the quantifier is #FIXED.
Name
XML::Doctype::AttDef - A class representing a definition in an <!ATTLIST> tag
Status
This module is alpha code. It's developed enough to support XML::ValidWriter, but need a lot of work.
Some big things that are lacking are:
Subclassing
This object uses the fields pragma, so you should use base and fields for any subclasses.
Synopsis
$attr = $elt->attribute( $name ) ;
$attr->name ;
