NAME

PRANG::Graph::Element - accept a particular type of element

SYNOPSIS

See PRANG::Graph::Meta::Element source and PRANG::Graph::Node for examples and information.

DESCRIPTION

This graph node specifies that the XML graph at this point must accept a particular type of element.

If the element only has only simple types (eg Str, Bool), it will not have one of these objects in its graph.

Along with PRANG::Graph::Text, this graph node is the only type which may actually consume input XML nodes or emit them on output. The other node types merely change the state in the PRANG::Graph::Context object.

ATTRIBUTES

Str xmlns

If set, then the XML namespace of this element is expected to be the value passed (or absent). This is generally not set if the namespace of this portion of the graph is the same as the parent class.

nodeName

This map is used for emitting and generating error messages. Also, if set to * it has special meaning when parsing. Specifies the name of the node.

nodeName_attr

If set, instances have an attribute which stores the name of the XML element.

Str nodeClass

This specifies the next type of element; during parsing and emitting, recursion to the meta-object of this class occurs.

This will be undefined if the attribute has Bool type; node presence is true and absence is false.

attrName

Used when emitting; specifies the method to call to retrieve the item to be output. Also used when parsing, to return the Moose attribute slot for construction.

SEE ALSO

PRANG::Graph::Meta::Class, PRANG::Graph::Meta::Element, PRANG::Graph::Context, PRANG::Graph::Node

AUTHOR AND LICENCE

Development commissioned by NZ Registry Services, and carried out by Catalyst IT - http://www.catalyst.net.nz/

Copyright 2009, 2010, NZ Registry Services. This module is licensed under the Artistic License v2.0, which permits relicensing under other Free Software licenses.