You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by mi...@apache.org on 2006/11/17 23:03:22 UTC

svn commit: r476337 - in /xalan/java/trunk/src/org/apache/xml/serializer/dom3: DOM3TreeWalker.java LSSerializerImpl.java

Author: minchau
Date: Fri Nov 17 14:03:21 2006
New Revision: 476337

URL: http://svn.apache.org/viewvc?view=rev&rev=476337
Log:
Committing the patch in XALANJ-2343 which
cleans up (and fixes some bugs) in the setting and
use of DOM 3 serialization parameters.

Modified:
    xalan/java/trunk/src/org/apache/xml/serializer/dom3/DOM3TreeWalker.java
    xalan/java/trunk/src/org/apache/xml/serializer/dom3/LSSerializerImpl.java

Modified: xalan/java/trunk/src/org/apache/xml/serializer/dom3/DOM3TreeWalker.java
URL: http://svn.apache.org/viewvc/xalan/java/trunk/src/org/apache/xml/serializer/dom3/DOM3TreeWalker.java?view=diff&rev=476337&r1=476336&r2=476337
==============================================================================
--- xalan/java/trunk/src/org/apache/xml/serializer/dom3/DOM3TreeWalker.java (original)
+++ xalan/java/trunk/src/org/apache/xml/serializer/dom3/DOM3TreeWalker.java Fri Nov 17 14:03:21 2006
@@ -2037,7 +2037,7 @@
             DOMConstants.S_XERCES_PROPERTIES_NS + DOMConstants.S_XML_VERSION,
             "");
         s_propKeys.put(DOMConstants.S_XSL_OUTPUT_ENCODING, "");
-        s_propKeys.put(OutputPropertiesFactory.S_KEY_ENTITIES, "");
+        s_propKeys.put(DOMConstants.S_XERCES_PROPERTIES_NS + DOMConstants.DOM_ENTITIES, "");
     }
 
     /**
@@ -2125,11 +2125,14 @@
                         if (encoding != null) {
                             fSerializer.setEncoding(encoding);
                         }
-                    } else if ((OutputPropertiesFactory.S_KEY_ENTITIES).equals(key)) {
-                        // Retreive the value of the XML Encoding attribute
-                        String entities = properties.getProperty(key);
-                        if (DOMConstants.S_XSL_VALUE_ENTITIES.equals(entities)) {
+                    } else if ((DOMConstants.S_XERCES_PROPERTIES_NS
+                            + DOMConstants.DOM_ENTITIES).equals(key)) {
+                        // Preserve entity references in the document
+                        if ((properties.getProperty(key).endsWith("yes"))) {
                             fSerializer.setDTDEntityExpansion(false);
+                        }
+                        else {
+                            fSerializer.setDTDEntityExpansion(true);
                         }
                     } else {
                         // We shouldn't get here, ever, now what?

Modified: xalan/java/trunk/src/org/apache/xml/serializer/dom3/LSSerializerImpl.java
URL: http://svn.apache.org/viewvc/xalan/java/trunk/src/org/apache/xml/serializer/dom3/LSSerializerImpl.java?view=diff&rev=476337&r1=476336&r2=476337
==============================================================================
--- xalan/java/trunk/src/org/apache/xml/serializer/dom3/LSSerializerImpl.java (original)
+++ xalan/java/trunk/src/org/apache/xml/serializer/dom3/LSSerializerImpl.java Fri Nov 17 14:03:21 2006
@@ -282,8 +282,8 @@
         fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS
                 + DOMConstants.DOM_ENTITIES, DOMConstants.DOM3_DEFAULT_TRUE);
         // preserve entities
-        fDOMConfigProperties.setProperty(
-                OutputPropertiesFactory.S_KEY_ENTITIES, DOMConstants.S_XSL_VALUE_ENTITIES);
+        fDOMConfigProperties.setProperty(DOMConstants.S_XERCES_PROPERTIES_NS
+                + DOMConstants.DOM_ENTITIES, DOMConstants.DOM3_DEFAULT_TRUE);
 
         // error-handler
         // Should we set our default ErrorHandler
@@ -310,8 +310,8 @@
             fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS
                     + DOMConstants.DOM_ENTITIES, DOMConstants.DOM3_DEFAULT_FALSE);
             // preserve entities
-            fDOMConfigProperties.setProperty(
-                    OutputPropertiesFactory.S_KEY_ENTITIES, "");
+            fDOMConfigProperties.setProperty(DOMConstants.S_XERCES_PROPERTIES_NS
+                    + DOMConstants.DOM_ENTITIES, DOMConstants.DOM3_DEFAULT_FALSE);
             fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS
                     + DOMConstants.DOM_CDATA_SECTIONS,
                     DOMConstants.DOM3_DEFAULT_FALSE);
@@ -550,10 +550,14 @@
                     fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
                             + DOMConstants.DOM_ENTITIES, DOMConstants.DOM3_EXPLICIT_TRUE);
                     fDOMConfigProperties.setProperty(
-                            OutputPropertiesFactory.S_KEY_ENTITIES, DOMConstants.S_XSL_VALUE_ENTITIES);
+                            DOMConstants.S_XERCES_PROPERTIES_NS
+                            + DOMConstants.DOM_ENTITIES, DOMConstants.DOM3_EXPLICIT_TRUE);
                 } else {
                     fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
                             + DOMConstants.DOM_ENTITIES, DOMConstants.DOM3_EXPLICIT_FALSE);
+                    fDOMConfigProperties.setProperty(
+                            DOMConstants.S_XERCES_PROPERTIES_NS
+                            + DOMConstants.DOM_ENTITIES, DOMConstants.DOM3_EXPLICIT_FALSE);
                 }
             } else if (name.equalsIgnoreCase(DOMConstants.DOM_NAMESPACES)) {
                 fFeatures = state ? fFeatures | NAMESPACES : fFeatures
@@ -690,6 +694,7 @@
                     } */
                 }
             } else if (name.equalsIgnoreCase(DOMConstants.DOM_INFOSET)) {
+                // infoset
                 if (state) {
                     fFeatures &= ~ENTITIES;
                     fFeatures &= ~CDATA;
@@ -700,31 +705,30 @@
                     fFeatures |= WELLFORMED;
                     fFeatures |= ELEM_CONTENT_WHITESPACE;
                     fFeatures |= COMMENTS;
+                    
+                    fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
+                            + DOMConstants.DOM_NAMESPACES, DOMConstants.DOM3_EXPLICIT_TRUE); 
+                    fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
+                            + DOMConstants.DOM_NAMESPACE_DECLARATIONS, DOMConstants.DOM3_EXPLICIT_TRUE);
+                    fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
+                            + DOMConstants.DOM_COMMENTS, DOMConstants.DOM3_EXPLICIT_TRUE);
+                    fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
+                            + DOMConstants.DOM_ELEMENT_CONTENT_WHITESPACE, DOMConstants.DOM3_EXPLICIT_TRUE);
+                    fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
+                            + DOMConstants.DOM_WELLFORMED, DOMConstants.DOM3_EXPLICIT_TRUE);
+                    
+                    fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
+                            + DOMConstants.DOM_ENTITIES, DOMConstants.DOM3_EXPLICIT_FALSE);
+                    fDOMConfigProperties.setProperty(DOMConstants.S_XERCES_PROPERTIES_NS
+                            + DOMConstants.DOM_ENTITIES, DOMConstants.DOM3_EXPLICIT_FALSE);
+                    
+                    fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
+                            + DOMConstants.DOM_CDATA_SECTIONS, DOMConstants.DOM3_EXPLICIT_FALSE);
+                    fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
+                            + DOMConstants.DOM_VALIDATE_IF_SCHEMA, DOMConstants.DOM3_EXPLICIT_FALSE);            
+                    fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
+                            + DOMConstants.DOM_DATATYPE_NORMALIZATION, DOMConstants.DOM3_EXPLICIT_FALSE);
                 }
-                
-                // infoset
-                fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
-                        + DOMConstants.DOM_NAMESPACES, DOMConstants.DOM3_EXPLICIT_TRUE); 
-                fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
-                        + DOMConstants.DOM_NAMESPACE_DECLARATIONS, DOMConstants.DOM3_EXPLICIT_TRUE);
-                fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
-                        + DOMConstants.DOM_COMMENTS, DOMConstants.DOM3_EXPLICIT_TRUE);
-                fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
-                        + DOMConstants.DOM_ELEMENT_CONTENT_WHITESPACE, DOMConstants.DOM3_EXPLICIT_TRUE);
-                fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
-                        + DOMConstants.DOM_WELLFORMED, DOMConstants.DOM3_EXPLICIT_TRUE);
-                
-                fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
-                        + DOMConstants.DOM_ENTITIES, DOMConstants.DOM3_EXPLICIT_FALSE);
-                fDOMConfigProperties.setProperty(
-                        OutputPropertiesFactory.S_KEY_ENTITIES, "");
-                
-                fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
-                        + DOMConstants.DOM_CDATA_SECTIONS, DOMConstants.DOM3_EXPLICIT_FALSE);
-                fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
-                        + DOMConstants.DOM_VALIDATE_IF_SCHEMA, DOMConstants.DOM3_EXPLICIT_FALSE);            
-                fDOMConfigProperties.setProperty(DOMConstants.S_DOM3_PROPERTIES_NS 
-                        + DOMConstants.DOM_DATATYPE_NORMALIZATION, DOMConstants.DOM3_EXPLICIT_FALSE);
             } else {
                 // If this is a non-boolean parameter a type mismatch should be thrown.
                 if (name.equalsIgnoreCase(DOMConstants.DOM_ERROR_HANDLER) ||



---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org