Mercurial > pub > Impl
view lib/IMPL/DOM/Schema/SimpleNode.pm @ 417:3ed0c58e9da3 ref20150831
working on di container, tests
author | cin |
---|---|
date | Mon, 02 Nov 2015 01:56:53 +0300 |
parents | c6e90e02dd17 |
children |
line wrap: on
line source
package IMPL::DOM::Schema::SimpleNode; use strict; use warnings; use IMPL::declare { base => [ 'IMPL::DOM::Schema::Node' => sub { my %args = @_; $args{nodeName} ||= 'SimpleNode'; %args } ] }; sub Validate { my ($this,$node,$ctx) = @_; $ctx->{schemaNode} ||= $this; # для безымянных типов $ctx->{schemaType} = $this; my @result; push @result, $_->Validate($node,$ctx) foreach $this->childNodes; return @result; } 1; __END__ =pod =head1 NAME C<IMPL::DOM::SimpleNode> - узел с текстом. =head1 DESCRIPTION Узел имеющий простое значение. Данный узел может содержать ограничения на простое значение. Производит валидацию содержимого, при постоении DOM модели не имеет специального типа и будет создан в виде C<IMPL::DOM::Node>. Также определяет как будет воссоздано значение узла в DOM модели. =cut