Author: mukulg
Date: Wed Jan 11 08:17:21 2012
New Revision: 1229926
URL: http://svn.apache.org/viewvc?rev=1229926&view=rev
Log:
adding following two new options to jaxp.SourceValidator sample,
a) -fx : for enabling full XPath2 support for XSD 1.1 CTA evaluations
b) -acp : for enabling comments and PIs to be recognized during XSD 1.1
<assert> processing
I hope these additions to this sample are useful. Updating corresponding docs
as well for these changes.
Modified:
xerces/java/branches/xml-schema-1.1-dev/docs/samples-jaxp.xml
xerces/java/branches/xml-schema-1.1-dev/samples/jaxp/SourceValidator.java
Modified: xerces/java/branches/xml-schema-1.1-dev/docs/samples-jaxp.xml
URL:
http://svn.apache.org/viewvc/xerces/java/branches/xml-schema-1.1-dev/docs/samples-jaxp.xml?rev=1229926&r1=1229925&r2=1229926&view=diff
==============================================================================
--- xerces/java/branches/xml-schema-1.1-dev/docs/samples-jaxp.xml (original)
+++ xerces/java/branches/xml-schema-1.1-dev/docs/samples-jaxp.xml Wed Jan 11
08:17:21 2012
@@ -119,6 +119,14 @@
</tr>
<tr><td>-m | -M</td><td>Turn on/off memory usage report.</td></tr>
<tr><td>-xsd11</td><td>Turn on/off XSD 1.1 support.</td></tr>
+ <tr>
+ <td>-fx</td>
+ <td>Turn on/off full XPath 2.0 checks with CTA when working with XSD
1.1.</td>
+ </tr>
+ <tr>
+ <td>-acp</td>
+ <td>Turn on/off assert comments and PI processing when working with XSD
1.1.</td>
+ </tr>
<tr><td>-h</td><td>Display help screen.</td></tr>
</table>
</s3>
Modified:
xerces/java/branches/xml-schema-1.1-dev/samples/jaxp/SourceValidator.java
URL:
http://svn.apache.org/viewvc/xerces/java/branches/xml-schema-1.1-dev/samples/jaxp/SourceValidator.java?rev=1229926&r1=1229925&r2=1229926&view=diff
==============================================================================
--- xerces/java/branches/xml-schema-1.1-dev/samples/jaxp/SourceValidator.java
(original)
+++ xerces/java/branches/xml-schema-1.1-dev/samples/jaxp/SourceValidator.java
Wed Jan 11 08:17:21 2012
@@ -88,6 +88,12 @@ public class SourceValidator
/** Generate synthetic schema annotations feature id
(http://apache.org/xml/features/generate-synthetic-annotations). */
protected static final String GENERATE_SYNTHETIC_ANNOTATIONS_ID =
"http://apache.org/xml/features/generate-synthetic-annotations";
+ /** XSD 1.1 CTA full XPath checking feature id
(http://apache.org/xml/features/validation/cta-full-xpath-checking). */
+ protected static final String XS11_CTA_FULL_XPATH_CHECKING_ID =
"http://apache.org/xml/features/validation/cta-full-xpath-checking";
+
+ /** XSD 1.1 assert comments and PI checking feature id
(http://apache.org/xml/features/validation/assert-comments-and-pi-checking). */
+ protected static final String XS11_ASSERT_COMMENT_PI_CHECKING_ID =
"http://apache.org/xml/features/validation/assert-comments-and-pi-checking";
+
// property ids
/** StAX support for reporting line and column numbers property id
(javax.xml.stream.isSupportingLocationCoordinates). */
@@ -119,6 +125,12 @@ public class SourceValidator
/** Default generate synthetic schema annotations (false). */
protected static final boolean DEFAULT_GENERATE_SYNTHETIC_ANNOTATIONS =
false;
+ /** Default XSD 1.1 CTA full XPath 2.0 checking (false). */
+ protected static final boolean DEFAULT_XS11_CTA_XPATH_FULL_CHECKING =
false;
+
+ /** Default XSD 1.1 assert comments and PI checking (false). */
+ protected static final boolean DEFAULT_XS11_ASSERT_COMMENT_PI_CHECKING =
false;
+
/** Default memory usage report (false). */
protected static final boolean DEFAULT_MEMORY_USAGE = false;
@@ -310,6 +322,8 @@ public class SourceValidator
boolean honourAllSchemaLocations = DEFAULT_HONOUR_ALL_SCHEMA_LOCATIONS;
boolean validateAnnotations = DEFAULT_VALIDATE_ANNOTATIONS;
boolean generateSyntheticAnnotations =
DEFAULT_GENERATE_SYNTHETIC_ANNOTATIONS;
+ boolean xs11CtaFullxpathchecking =
DEFAULT_XS11_CTA_XPATH_FULL_CHECKING;
+ boolean xs11AssertCommentsAndPIchecking =
DEFAULT_XS11_ASSERT_COMMENT_PI_CHECKING;
boolean memoryUsage = DEFAULT_MEMORY_USAGE;
// process arguments
@@ -399,6 +413,14 @@ public class SourceValidator
generateSyntheticAnnotations = option.equals("ga");
continue;
}
+ if (option.equalsIgnoreCase("fx")) {
+ xs11CtaFullxpathchecking = option.equals("fx");
+ continue;
+ }
+ if (option.equalsIgnoreCase("acp")) {
+ xs11AssertCommentsAndPIchecking = option.equals("acp");
+ continue;
+ }
if (option.equalsIgnoreCase("m")) {
memoryUsage = option.equals("m");
continue;
@@ -457,6 +479,18 @@ public class SourceValidator
System.err.println("warning: SchemaFactory does not support
feature ("+GENERATE_SYNTHETIC_ANNOTATIONS_ID+")");
}
+ if (XSD11_SCHEMA_LANGUAGE.equals(schemaLanguage)) {
+ try {
+ factory.setFeature(XS11_CTA_FULL_XPATH_CHECKING_ID,
xs11CtaFullxpathchecking);
+ }
+ catch (SAXNotRecognizedException e) {
+ System.err.println("warning: SchemaFactory does not
recognize feature ("+XS11_CTA_FULL_XPATH_CHECKING_ID+")");
+ }
+ catch (SAXNotSupportedException e) {
+ System.err.println("warning: SchemaFactory does not
support feature ("+XS11_CTA_FULL_XPATH_CHECKING_ID+")");
+ }
+ }
+
// Build Schema from sources
Schema schema;
if (schemas != null && schemas.size() > 0) {
@@ -511,7 +545,19 @@ public class SourceValidator
catch (SAXNotSupportedException e) {
System.err.println("warning: Validator does not support
feature ("+GENERATE_SYNTHETIC_ANNOTATIONS_ID+")");
}
-
+
+ if (XSD11_SCHEMA_LANGUAGE.equals(schemaLanguage)) {
+ try {
+ validator.setFeature(XS11_ASSERT_COMMENT_PI_CHECKING_ID,
xs11AssertCommentsAndPIchecking);
+ }
+ catch (SAXNotRecognizedException e) {
+ System.err.println("warning: Validator does not recognize
feature ("+XS11_ASSERT_COMMENT_PI_CHECKING_ID+")");
+ }
+ catch (SAXNotSupportedException e) {
+ System.err.println("warning: Validator does not support
feature ("+XS11_ASSERT_COMMENT_PI_CHECKING_ID+")");
+ }
+ }
+
// Validate instance documents
if (instances != null && instances.size() > 0) {
final int length = instances.size();
@@ -593,16 +639,20 @@ public class SourceValidator
System.err.println(" -a uri ... Provide a list of schema documents");
System.err.println(" -i uri ... Provide a list of instance documents
to validate");
System.err.println(" -vs source Select validation source
(sax|dom|stax|stream)");
- System.err.println(" -f | -F Turn on/off Schema full checking.");
+ System.err.println(" -f | -F Turn on/off Schema full checking.");
System.err.println(" NOTE: Not supported by all schema
factories and validators.");
- System.err.println(" -hs | -HS Turn on/off honouring of all schema
locations.");
+ System.err.println(" -hs | -HS Turn on/off honouring of all schema
locations.");
System.err.println(" NOTE: Not supported by all schema
factories and validators.");
- System.err.println(" -va | -VA Turn on/off validation of schema
annotations.");
+ System.err.println(" -va | -VA Turn on/off validation of schema
annotations.");
System.err.println(" NOTE: Not supported by all schema
factories and validators.");
- System.err.println(" -ga | -GA Turn on/off generation of synthetic
schema annotations.");
+ System.err.println(" -ga | -GA Turn on/off generation of synthetic
schema annotations.");
System.err.println(" NOTE: Not supported by all schema
factories and validators.");
- System.err.println(" -m | -M Turn on/off memory usage report");
+ System.err.println(" -m | -M Turn on/off memory usage report");
System.err.println(" -xsd11 Turn on/off XSD 1.1 support.");
+ System.err.println(" -fx Turn on/off full XPath 2.0 checks
with CTA when working");
+ System.err.println(" with XSD 1.1.");
+ System.err.println(" -acp Turn on/off assert comments and PI
processing when working");
+ System.err.println(" with XSD 1.1.");
System.err.println(" -h This help screen.");
System.err.println();
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]