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