diff Lib/IMPL/DOM/Schema/Validator/RegExp.pm @ 104:196bf443b5e1

DOM::Schema RC0 inflators support, validation and some other things, Minor and major fixes almost for everything. A 'Source' property of the ValidationErrors generated from a NodeSet or a NodeList is subject to change in the future.
author wizard
date Tue, 11 May 2010 02:42:59 +0400
parents df6b4f054957
children a6e9759ff88a
line wrap: on
line diff
--- a/Lib/IMPL/DOM/Schema/Validator/RegExp.pm	Fri May 07 18:17:40 2010 +0400
+++ b/Lib/IMPL/DOM/Schema/Validator/RegExp.pm	Tue May 11 02:42:59 2010 +0400
@@ -17,21 +17,22 @@
 }
 
 sub CTOR {
-	my ($this) = @_;
+	my ($this,%args) = @_;
 	
-	$this->message("A %Node.nodeName% doesn't match to the format %Schema.name%");
+	$this->message($args{message} || "A %Node.nodeName% doesn't match to the format %Schema.display%");
 }
 
 sub Validate {
-	my ($this,$node) = @_;
+	my ($this,$node,$ctx) = @_;
 	
 	my $rx = $this->nodeValue;
 	return new IMPL::DOM::Schema::ValidationError(
 		Node => $node,
-		Source => $this,
+		Source => ( $ctx && $ctx->{Source} ) || $this->parentNode,
 		Schema => $this->parentNode,
 		Message => $this->message
 	) unless (not $node->isComplex) and $node->nodeValue =~ /$rx/;
+	return ();
 }
 
 1;
\ No newline at end of file