W3C home > Mailing lists > Public > xmlschema-dev@w3.org > September 2007

RE: pattern facet implementations

From: Shlomo Yona <S.Yona@F5.com>
Date: Sun, 23 Sep 2007 21:17:00 -0700
Message-ID: <AB313AF70F994447A667F4D942CA655709C1A934@excheight.olympus.f5net.com>
To: "Michael Kay" <mike@saxonica.com>, <xmlschema-dev@w3.org>
Thank you.

Ill check it out.

Can you share your experience with the performance of the two/three regular expression engines that you listed (JDK1.4, JDK1.5 and .NET) on the same set of regular expression given a similar data-set for matching/non-matching text?







From: Michael Kay [mailto:mike@saxonica.com] 
Sent:  23  2007 20:56
To: Shlomo Yona; xmlschema-dev@w3.org
Subject: 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.




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



	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?


	Id 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? Id rather test against different implementations rather than the same one.




Received on Monday, 24 September 2007 04:17:19 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 23:15:44 UTC