diff Lib/IMPL/DOM/Navigator/Builder.pm @ 148:e6447ad85cb4

DOM objects now have a schema and schemaSource properties RegExp now can launder data Improved post to DOM transformation (multiple values a now supported) Added new axes to navigation queries: ancestor and descendant minor changes and bug fixes
author wizard
date Mon, 16 Aug 2010 08:26:44 +0400
parents 7b14e0122b79
children 76515373dac0
line wrap: on
line diff
--- a/Lib/IMPL/DOM/Navigator/Builder.pm	Mon Aug 09 08:45:36 2010 +0400
+++ b/Lib/IMPL/DOM/Navigator/Builder.pm	Mon Aug 16 08:26:44 2010 +0400
@@ -33,7 +33,11 @@
     if (my $schemaNode = $this->{$_schemaNavi}->NavigateName($nodeName)) {
         my $class = $schemaNode->can('nativeType') ? $schemaNode->nativeType || 'IMPL::DOM::Node' : 'IMPL::DOM::Node';
         
+        my $schemaSource = $this->{$_schemaNavi}->SourceSchemaNode;
+        
         my @errors = $this->inflateProperties($schemaNode,\%props);
+        $props{schema} = $schemaNode;
+        $props{schemaSource} = $schemaSource;
         
         my $node;
         if (! $this->{$Document}) {
@@ -51,7 +55,7 @@
         		map {
 					IMPL::DOM::Schema::ValidationError->new(
 						Node => $node,
-						Source => $this->{$_schemaNavi}->SourceSchemaNode,
+						Source => $schemaSource,
 						Schema => $schemaNode,
 						Message => $schemaNode->messageInflateError,
 						Error => $_
@@ -171,12 +175,12 @@
 создания экземпляра и созданный узел доавляется в документ. При создании
 нового узла используется метод документа C<< IMPL::DOM::Document->Create >>
 
-Свойства узла передаются при создании через параметр C<props>, но имя создаваемого
+Свойства узла передаются при создании через параметр C<%props>, но имя создаваемого
 узла НЕ может быть переопределено свойством C<nodeName>, оно будет проигнорировано.
 
 =item C< Document >
 
-Свойство, которое содержит документ по окончании процедурв построения.
+Свойство, которое содержит документ по окончании процедуры построения.
 
 =back