mrglavas    2005/07/24 21:24:21

  Modified:    java/src/org/apache/xerces/dom DOMNormalizer.java
                        DOMConfigurationImpl.java
               java/src/org/apache/xerces/parsers DOMParserImpl.java
  Log:
  When schema validation is enabled using DOM Level 3 the parser
  should be checking all schema constraints including UPA, so the
  schema-full-checking feature should also be turned on.
  
  Revision  Changes    Path
  1.62      +2 -1      
xml-xerces/java/src/org/apache/xerces/dom/DOMNormalizer.java
  
  Index: DOMNormalizer.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xerces/java/src/org/apache/xerces/dom/DOMNormalizer.java,v
  retrieving revision 1.61
  retrieving revision 1.62
  diff -u -r1.61 -r1.62
  --- DOMNormalizer.java        10 May 2005 15:36:42 -0000      1.61
  +++ DOMNormalizer.java        25 Jul 2005 04:24:21 -0000      1.62
  @@ -195,6 +195,7 @@
                        fValidationHandler =
                                
CoreDOMImplementationImpl.singleton.getValidator(XMLGrammarDescription.XML_SCHEMA);
                   fConfiguration.setFeature(DOMConfigurationImpl.SCHEMA, true);
  +                
fConfiguration.setFeature(DOMConfigurationImpl.SCHEMA_FULL_CHECKING, true);
                   // report fatal error on DOM Level 1 nodes
                   fNamespaceValidation = true;              
                   
  
  
  
  1.36      +6 -1      
xml-xerces/java/src/org/apache/xerces/dom/DOMConfigurationImpl.java
  
  Index: DOMConfigurationImpl.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xerces/java/src/org/apache/xerces/dom/DOMConfigurationImpl.java,v
  retrieving revision 1.35
  retrieving revision 1.36
  diff -u -r1.35 -r1.36
  --- DOMConfigurationImpl.java 13 Jun 2005 22:26:42 -0000      1.35
  +++ DOMConfigurationImpl.java 25 Jul 2005 04:24:21 -0000      1.36
  @@ -82,6 +82,9 @@
   
       protected static final String SCHEMA =
           Constants.XERCES_FEATURE_PREFIX + 
Constants.SCHEMA_VALIDATION_FEATURE;
  +    
  +    protected static final String SCHEMA_FULL_CHECKING =
  +        Constants.XERCES_FEATURE_PREFIX + Constants.SCHEMA_FULL_CHECKING;
   
       protected static final String DYNAMIC_VALIDATION =
           Constants.XERCES_FEATURE_PREFIX + 
Constants.DYNAMIC_VALIDATION_FEATURE;
  @@ -225,6 +228,7 @@
               XERCES_VALIDATION,
               XERCES_NAMESPACES,
               SCHEMA,
  +            SCHEMA_FULL_CHECKING,
               DYNAMIC_VALIDATION,
               NORMALIZE_DATA,
               SEND_PSVI,
  @@ -234,6 +238,7 @@
           // set state for default features
           setFeature(XERCES_VALIDATION, false);
           setFeature(SCHEMA, false);
  +        setFeature(SCHEMA_FULL_CHECKING, false);
           setFeature(DYNAMIC_VALIDATION, false);
           setFeature(NORMALIZE_DATA, false);
           setFeature(XERCES_NAMESPACES, true);
  
  
  
  1.35      +15 -15    
xml-xerces/java/src/org/apache/xerces/parsers/DOMParserImpl.java
  
  Index: DOMParserImpl.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xerces/java/src/org/apache/xerces/parsers/DOMParserImpl.java,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- DOMParserImpl.java        13 Jun 2005 22:26:42 -0000      1.34
  +++ DOMParserImpl.java        25 Jul 2005 04:24:21 -0000      1.35
  @@ -95,6 +95,10 @@
       /** XML Schema validation */
       protected static final String XMLSCHEMA =
       Constants.XERCES_FEATURE_PREFIX + Constants.SCHEMA_VALIDATION_FEATURE;
  +    
  +    /** XML Schema full checking */
  +    protected static final String XMLSCHEMA_FULL_CHECKING =
  +    Constants.XERCES_FEATURE_PREFIX + Constants.SCHEMA_FULL_CHECKING;    
   
       /** Dynamic validation */
       protected static final String DYNAMIC_VALIDATION =
  @@ -412,6 +416,7 @@
                       fConfiguration.setFeature (VALIDATION_FEATURE, state);
                       if (fSchemaType != Constants.NS_DTD) {
                           fConfiguration.setFeature (XMLSCHEMA, state);
  +                        fConfiguration.setFeature (XMLSCHEMA_FULL_CHECKING, 
state);
                       }
                       if (state){
                           fConfiguration.setFeature (DYNAMIC_VALIDATION, 
false);
  @@ -536,11 +541,9 @@
                   if (value instanceof String || value == null) {
                       try {
                           if (value == null) {
  -                            // turn off schema feature
  -                            fConfiguration.setFeature (
  -                            Constants.XERCES_FEATURE_PREFIX
  -                            + Constants.SCHEMA_VALIDATION_FEATURE,
  -                            false);
  +                            // turn off schema features
  +                            fConfiguration.setFeature (XMLSCHEMA, false);
  +                            fConfiguration.setFeature 
(XMLSCHEMA_FULL_CHECKING, false);
                               // map to JAXP schemaLanguage
                               fConfiguration.setProperty ( 
Constants.JAXP_PROPERTY_PREFIX
                               + Constants.SCHEMA_LANGUAGE,
  @@ -548,10 +551,9 @@
                               fSchemaType = null;
                           }
                           else if (value.equals (Constants.NS_XMLSCHEMA)) {
  -                            // turn on schema feature
  -                            fConfiguration.setFeature 
(Constants.XERCES_FEATURE_PREFIX
  -                            + Constants.SCHEMA_VALIDATION_FEATURE,
  -                            true);
  +                            // turn on schema features
  +                            fConfiguration.setFeature (XMLSCHEMA, true);
  +                            fConfiguration.setFeature 
(XMLSCHEMA_FULL_CHECKING, true);
                               // map to JAXP schemaLanguage
                               fConfiguration.setProperty ( 
Constants.JAXP_PROPERTY_PREFIX
                               + Constants.SCHEMA_LANGUAGE,
  @@ -559,11 +561,9 @@
                               fSchemaType = Constants.NS_XMLSCHEMA;
                           }
                           else if (value.equals (Constants.NS_DTD)) {
  -                            // turn off schema feature
  -                            fConfiguration.setFeature (
  -                            Constants.XERCES_FEATURE_PREFIX
  -                            + Constants.SCHEMA_VALIDATION_FEATURE,
  -                            false);
  +                            // turn off schema features
  +                            fConfiguration.setFeature (XMLSCHEMA, false);
  +                            fConfiguration.setFeature 
(XMLSCHEMA_FULL_CHECKING, false);
                               // map to JAXP schemaLanguage
                               fConfiguration.setProperty ( 
Constants.JAXP_PROPERTY_PREFIX
                               + Constants.SCHEMA_LANGUAGE,
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to