RE: pattern facet implementations

Saxon has an internal API that you could use to test patterns against
strings without creating complete schemas and instance documents.
 
Essentially:
 
import net.sf.saxon.java.JRegularExpression;
 
JRegularExpression regex = new JRegularExpression("[A-Z]", false, 0);
if (regex.matches("A")) ...
 
Internally Saxon is translating the schema-syntax regex into either JDK 1.4
or JDK 1.5 regex syntax, and then using the JDK regex engine underneath. The
translators are derived from code written and published by James Clark,
fairly substantially modified. The 1.4 and 1.5 versions differ because JDK
1.5 changed "." to match a surrogate pair rather than matching each half of
a surrogate pair.
 
This should work in Saxon-B, there's no need to install the schema-aware
product. (That's because the same code is also used to support XPath 2.0
regular expression handling).
 
It's probably also possible, but not quite so easy, to access the
corresponding methods on Saxon's .NET product, which use the Microsoft .NET
regular expression engine as the target. 
 
It's possible that other schema processors are using the combination of
James Clark's translation routines with the JDK regex engine; but there are
still going to be significant differences between the implementations.
 
Michael Kay


  _____  

From: xmlschema-dev-request@w3.org [mailto:xmlschema-dev-request@w3.org] On
Behalf Of Shlomo Yona
Sent: 23 September 2007 19:15
To: xmlschema-dev@w3.org
Subject: pattern facet implementations



Hello,

 

Are there implementations of xsd:pattern facet available as stand-alone or
as a modular component that can be integrated into a test environment or a
schema processor?

 

I'd like to run tests on a pattern facet implementation and cross reference
the results with other implementations of this schema feature for
functionality and performance.

 

Also, are there XML Schema processors that use the same "engines" for
patterns? I'd rather test against different implementations rather than the
same one.

 

Thanks.

 

Shlomo.

Received on Sunday, 23 September 2007 18:55:54 UTC