Mercurial > pub > Impl
view Lib/IMPL/DOM/Schema/AnyNode.pm @ 236:2904da230022
DOM refactoring
author | sergey |
---|---|
date | Mon, 15 Oct 2012 04:23:01 +0400 |
parents | d1676be8afcc |
children | 5aff94ba842f |
line wrap: on
line source
package IMPL::DOM::Schema::AnyNode; use strict; use warnings; use parent qw(IMPL::DOM::Schema::Node); our %CTOR = ( 'IMPL::DOM::Schema::Node' => sub { my %args = @_; $args{nodeName} ||= 'AnyNode'; $args{name} = '::any'; %args; } ); 1; __END__ =pod =head1 DESCRIPTION Узел с произвольным именем, для этого узла предусмотрена специальная проверка в контейнерах. В контейнерах типа C<IMPL::DOM::Schema::NodeSet> этот узел можно использовать только один раз причем его использование исключает использование узла C<IMPL::DOM::Schema::SwitchNode>. В контейнерах типа С<IMPL::DOM::Schema::NodeList> данный узел может применяться несколько раз для решения таких задач как последовательности разноименных узлов с одним типом. <NodeList> <SimpleNode name="firstName"/> <SimpleNode name="age"/> <AnyNode type="Notes" minOccur="0" maxOccur="unbounded"/> <Node name="primaryAddress" type="Address"/> <AnyNode/> </NodeList> =cut