XML::Doctype::AttDef - A class representing a definition in an <!ATTLIST>
tag
$attr = $elt->attribute( $name ) ;
$attr->name ;
This module is used to represent <!ELEMENT> tags in an XML::Doctype
object. It contains <!ATTLIST> tags as well.
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:
- 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.
This object uses the fields pragma, so you should use base and fields for any
subclasses.
Barrie Slaymaker <barries@slaysys.com>
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.
Hey! The above document had some coding errors, which are explained
below:
- Around line 40:
- You forgot a '=back' before '=head1'
- Around line 42:
- '=item' outside of any '=over'
- Around line 164:
- You forgot a '=back' before '=head1'