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 2005/05/31 07:43:12 UTC

cvs commit: xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java

minchau     2005/05/30 22:43:12

  Modified:    java/src/org/apache/xml/serializer ToHTMLStream.java
  Log:
  Committing patch for issue XALANJ-2121, which is that some empty attributes
  of some HTML elements are note serialized as empty.
  
  Revision  Changes    Path
  1.39      +122 -81   xml-xalan/java/src/org/apache/xml/serializer/ToHTMLStream.java
  
  Index: ToHTMLStream.java
  ===================================================================
  RCS file: /home/cvs/xml-xalan/java/src/org/apache/xml/serializer/ToHTMLStream.java,v
  retrieving revision 1.38
  retrieving revision 1.39
  diff -u -r1.38 -r1.39
  --- ToHTMLStream.java	25 Apr 2005 17:18:27 -0000	1.38
  +++ ToHTMLStream.java	31 May 2005 05:43:12 -0000	1.39
  @@ -318,7 +318,8 @@
                       | ElemDesc.BLOCK
                       | ElemDesc.BLOCKFORM
                       | ElemDesc.BLOCKFORMFIELDSET));
  -        // NS4 extensions
  +                    
  +        // Netscape 4 extension
           m_elementFlags.put(
               "LAYER",
               new ElemDesc(
  @@ -326,6 +327,7 @@
                       | ElemDesc.BLOCK
                       | ElemDesc.BLOCKFORM
                       | ElemDesc.BLOCKFORMFIELDSET));
  +        // Netscape 4 extension                    
           m_elementFlags.put(
               "ILAYER",
               new ElemDesc(
  @@ -334,127 +336,166 @@
                       | ElemDesc.BLOCKFORM
                       | ElemDesc.BLOCKFORMFIELDSET));
   
  +
  +        // NOW FOR ATTRIBUTE INFORMATION . . .
           ElemDesc elemDesc;
   
  -        elemDesc = (ElemDesc) m_elementFlags.get("AREA");
   
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("A");
  +        elemDesc.setAttr("HREF", ElemDesc.ATTRURL);
  +        elemDesc.setAttr("NAME", ElemDesc.ATTRURL);
  +        
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("AREA");
           elemDesc.setAttr("HREF", ElemDesc.ATTRURL);
           elemDesc.setAttr("NOHREF", ElemDesc.ATTREMPTY);
   
  +        // ----------------------------------------------
           elemDesc = (ElemDesc) m_elementFlags.get("BASE");
  -
           elemDesc.setAttr("HREF", ElemDesc.ATTRURL);
   
  -        elemDesc = (ElemDesc) m_elementFlags.get("BLOCKQUOTE");
  -
  -        elemDesc.setAttr("CITE", ElemDesc.ATTRURL);
  -
  -        elemDesc = (ElemDesc) m_elementFlags.get("Q");
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("BUTTON");
  +        elemDesc.setAttr("DISABLED", ElemDesc.ATTREMPTY);
   
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("BLOCKQUOTE");
           elemDesc.setAttr("CITE", ElemDesc.ATTRURL);
   
  -        elemDesc = (ElemDesc) m_elementFlags.get("INS");
  -
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("DEL");
           elemDesc.setAttr("CITE", ElemDesc.ATTRURL);
  +     
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("DIR");
  +        elemDesc.setAttr("COMPACT", ElemDesc.ATTREMPTY);
  +           
  +        // ----------------------------------------------
  +        // Netscape 4 extension
  +        elemDesc = (ElemDesc) m_elementFlags.get("DIV");
  +        elemDesc.setAttr("SRC", ElemDesc.ATTRURL);
  +   
  +        // ----------------------------------------------        
  +        elemDesc = (ElemDesc) m_elementFlags.get("DL");
  +        elemDesc.setAttr("COMPACT", ElemDesc.ATTREMPTY);
  +           
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("FORM");
  +        elemDesc.setAttr("ACTION", ElemDesc.ATTRURL);
   
  -        elemDesc = (ElemDesc) m_elementFlags.get("DEL");
  +        // ----------------------------------------------
  +        // Attribution to: "Voytenko, Dimitry" <DV...@SECTORBASE.COM>
  +        elemDesc = (ElemDesc) m_elementFlags.get("FRAME");
  +        elemDesc.setAttr("SRC", ElemDesc.ATTRURL);
  +        elemDesc.setAttr("LONGDESC", ElemDesc.ATTRURL);
  +        elemDesc.setAttr("NORESIZE",ElemDesc.ATTREMPTY);
   
  -        elemDesc.setAttr("CITE", ElemDesc.ATTRURL);
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("HEAD");
  +        elemDesc.setAttr("PROFILE", ElemDesc.ATTRURL);
   
  -        elemDesc = (ElemDesc) m_elementFlags.get("A");
  +        // ----------------------------------------------        
  +        elemDesc = (ElemDesc) m_elementFlags.get("HR");
  +        elemDesc.setAttr("NOSHADE", ElemDesc.ATTREMPTY);
  +        
  +        // ----------------------------------------------
  +        // HTML 4.0, section 16.5
  +        elemDesc = (ElemDesc) m_elementFlags.get("IFRAME");
  +        elemDesc.setAttr("SRC", ElemDesc.ATTRURL);
  +        elemDesc.setAttr("LONGDESC", ElemDesc.ATTRURL);
   
  -        elemDesc.setAttr("HREF", ElemDesc.ATTRURL);
  -        elemDesc.setAttr("NAME", ElemDesc.ATTRURL);
  +        // ----------------------------------------------
  +        // Netscape 4 extension
  +        elemDesc = (ElemDesc) m_elementFlags.get("ILAYER");
  +        elemDesc.setAttr("SRC", ElemDesc.ATTRURL);
   
  -        elemDesc = (ElemDesc) m_elementFlags.get("LINK");
  -        elemDesc.setAttr("HREF", ElemDesc.ATTRURL);
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("IMG");
  +        elemDesc.setAttr("SRC", ElemDesc.ATTRURL);
  +        elemDesc.setAttr("LONGDESC", ElemDesc.ATTRURL);
  +        elemDesc.setAttr("USEMAP", ElemDesc.ATTRURL);
  +        elemDesc.setAttr("ISMAP", ElemDesc.ATTREMPTY);
   
  +        // ----------------------------------------------
           elemDesc = (ElemDesc) m_elementFlags.get("INPUT");
  -
           elemDesc.setAttr("SRC", ElemDesc.ATTRURL);
           elemDesc.setAttr("USEMAP", ElemDesc.ATTRURL);
           elemDesc.setAttr("CHECKED", ElemDesc.ATTREMPTY);
           elemDesc.setAttr("DISABLED", ElemDesc.ATTREMPTY);
           elemDesc.setAttr("ISMAP", ElemDesc.ATTREMPTY);
           elemDesc.setAttr("READONLY", ElemDesc.ATTREMPTY);
  +        
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("INS");
  +        elemDesc.setAttr("CITE", ElemDesc.ATTRURL);
   
  -        elemDesc = (ElemDesc) m_elementFlags.get("SELECT");
  -
  -        elemDesc.setAttr("DISABLED", ElemDesc.ATTREMPTY);
  -        elemDesc.setAttr("MULTIPLE", ElemDesc.ATTREMPTY);
  -
  -        elemDesc = (ElemDesc) m_elementFlags.get("OPTGROUP");
  -
  -        elemDesc.setAttr("DISABLED", ElemDesc.ATTREMPTY);
  -
  -        elemDesc = (ElemDesc) m_elementFlags.get("OPTION");
  -
  -        elemDesc.setAttr("SELECTED", ElemDesc.ATTREMPTY);
  -        elemDesc.setAttr("DISABLED", ElemDesc.ATTREMPTY);
  -
  -        elemDesc = (ElemDesc) m_elementFlags.get("TEXTAREA");
  -
  -        elemDesc.setAttr("DISABLED", ElemDesc.ATTREMPTY);
  -        elemDesc.setAttr("READONLY", ElemDesc.ATTREMPTY);
  -
  -        elemDesc = (ElemDesc) m_elementFlags.get("BUTTON");
  -
  -        elemDesc.setAttr("DISABLED", ElemDesc.ATTREMPTY);
  -
  -        elemDesc = (ElemDesc) m_elementFlags.get("SCRIPT");
  -
  -        elemDesc.setAttr("SRC", ElemDesc.ATTRURL);
  -        elemDesc.setAttr("FOR", ElemDesc.ATTRURL);
  -        elemDesc.setAttr("DEFER", ElemDesc.ATTREMPTY);
  -
  -        elemDesc = (ElemDesc) m_elementFlags.get("IMG");
  -
  +        // ----------------------------------------------
  +        // Netscape 4 extension
  +        elemDesc = (ElemDesc) m_elementFlags.get("LAYER");
           elemDesc.setAttr("SRC", ElemDesc.ATTRURL);
  -        elemDesc.setAttr("LONGDESC", ElemDesc.ATTRURL);
  -        elemDesc.setAttr("USEMAP", ElemDesc.ATTRURL);
  -        elemDesc.setAttr("ISMAP", ElemDesc.ATTREMPTY);
   
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("LINK");
  +        elemDesc.setAttr("HREF", ElemDesc.ATTRURL);
  +       
  +        // ----------------------------------------------       
  +        elemDesc = (ElemDesc) m_elementFlags.get("MENU");
  +        elemDesc.setAttr("COMPACT", ElemDesc.ATTREMPTY);
  +        
  +        // ----------------------------------------------
           elemDesc = (ElemDesc) m_elementFlags.get("OBJECT");
  -
           elemDesc.setAttr("CLASSID", ElemDesc.ATTRURL);
           elemDesc.setAttr("CODEBASE", ElemDesc.ATTRURL);
           elemDesc.setAttr("DATA", ElemDesc.ATTRURL);
           elemDesc.setAttr("ARCHIVE", ElemDesc.ATTRURL);
           elemDesc.setAttr("USEMAP", ElemDesc.ATTRURL);
           elemDesc.setAttr("DECLARE", ElemDesc.ATTREMPTY);
  +        
  +        // ----------------------------------------------        
  +        elemDesc = (ElemDesc) m_elementFlags.get("OL");
  +        elemDesc.setAttr("COMPACT", ElemDesc.ATTREMPTY);
  +        
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("OPTGROUP");
  +        elemDesc.setAttr("DISABLED", ElemDesc.ATTREMPTY);
   
  -        elemDesc = (ElemDesc) m_elementFlags.get("FORM");
  -
  -        elemDesc.setAttr("ACTION", ElemDesc.ATTRURL);
  -
  -        elemDesc = (ElemDesc) m_elementFlags.get("HEAD");
  -
  -        elemDesc.setAttr("PROFILE", ElemDesc.ATTRURL);
  -
  -        // Attribution to: "Voytenko, Dimitry" <DV...@SECTORBASE.COM>
  -        elemDesc = (ElemDesc) m_elementFlags.get("FRAME");
  -
  -        elemDesc.setAttr("SRC", ElemDesc.ATTRURL);
  -        elemDesc.setAttr("LONGDESC", ElemDesc.ATTRURL);
  -
  -        // HTML 4.0, section 16.5
  -        elemDesc = (ElemDesc) m_elementFlags.get("IFRAME");
  -
  -        elemDesc.setAttr("SRC", ElemDesc.ATTRURL);
  -        elemDesc.setAttr("LONGDESC", ElemDesc.ATTRURL);
  -
  -        // NS4 extensions
  -        elemDesc = (ElemDesc) m_elementFlags.get("LAYER");
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("OPTION");
  +        elemDesc.setAttr("SELECTED", ElemDesc.ATTREMPTY);
  +        elemDesc.setAttr("DISABLED", ElemDesc.ATTREMPTY);
  +        
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("Q");
  +        elemDesc.setAttr("CITE", ElemDesc.ATTRURL);
   
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("SCRIPT");
           elemDesc.setAttr("SRC", ElemDesc.ATTRURL);
  +        elemDesc.setAttr("FOR", ElemDesc.ATTRURL);
  +        elemDesc.setAttr("DEFER", ElemDesc.ATTREMPTY);
   
  -        elemDesc = (ElemDesc) m_elementFlags.get("ILAYER");
  -
  -        elemDesc.setAttr("SRC", ElemDesc.ATTRURL);
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("SELECT");
  +        elemDesc.setAttr("DISABLED", ElemDesc.ATTREMPTY);
  +        elemDesc.setAttr("MULTIPLE", ElemDesc.ATTREMPTY);
   
  -        elemDesc = (ElemDesc) m_elementFlags.get("DIV");
  +        // ----------------------------------------------        
  +        elemDesc = (ElemDesc) m_elementFlags.get("TD");
  +        elemDesc.setAttr("NOWRAP", ElemDesc.ATTREMPTY);
   
  -        elemDesc.setAttr("SRC", ElemDesc.ATTRURL);
  +        // ----------------------------------------------
  +        elemDesc = (ElemDesc) m_elementFlags.get("TEXTAREA");
  +        elemDesc.setAttr("DISABLED", ElemDesc.ATTREMPTY);
  +        elemDesc.setAttr("READONLY", ElemDesc.ATTREMPTY);
  +       
  +        // ----------------------------------------------                
  +        elemDesc = (ElemDesc) m_elementFlags.get("TH");
  +        elemDesc.setAttr("NOWRAP", ElemDesc.ATTREMPTY);
  +        
  +        // ----------------------------------------------        
  +        elemDesc = (ElemDesc) m_elementFlags.get("UL");
  +        elemDesc.setAttr("COMPACT", ElemDesc.ATTREMPTY);
       }
   
       /**
  
  
  

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