You are viewing a plain text version of this content. The canonical link for it is here.
Posted to j-dev@xerces.apache.org by bu...@apache.org on 2002/11/14 00:44:27 UTC
DO NOT REPLY [Bug 14531] New: -
XML Serialization: standalone attribute should not be suppressed when no public/system id
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14531>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14531
XML Serialization: standalone attribute should not be suppressed when no public/system id
Summary: XML Serialization: standalone attribute should not be
suppressed when no public/system id
Product: Xerces2-J
Version: 2.2.0
Platform: All
OS/Version: All
Status: NEW
Severity: Normal
Priority: Other
Component: Serialization
AssignedTo: xerces-j-dev@xml.apache.org
ReportedBy: simon@ecnetwork.co.nz
Currently, the XMLSerializer class outputs the "standalone" attribute of the
<?xml ...?> prolog if-and-only-if the public and system identifiers being output
in the DOCTYPE tag are null.
It seems to me to be perfectly valid to have standalone="yes" AND public/system
IDs. The relevant section of the xml spec is: http://www.w3.org/TR/REC-xml#sec-rmd
No mention is made here of forbidding standalone=yes when a DTD ID is given in
the DOCTYPE tag.
If a document has DTDs specified via public or system ID:
standalone="yes" --> the DTD must be read if-and-only-if validation is enabled.
(ie DTD can be ignored if validation disabled, a good optimisation!)
standalone="no" --> the DTD must always be read, even if validation is disabled,
because there are default values for attributes, etc. which must
be applied even though the document validity is not being checked.
Suggested changes:
XMLSerializer line 1414: remove check for doctype attributes
OutputFormat: change javadoc for setStandalone method
In addition, it would be nice to have an omitStandaloneDeclaration attribute on
the OutputFormat (defaulting to true), which would suppress "standalone='no'"
output, but not suppress "standalone='yes'". This would allow the caller to
decide whether they want the explicit (but technically redundant)
standalone='no' specifier to be output or not. This is somewhat inconsistent
with the way omitXMLDeclaration and omitDoctypeDeclaration are currently used
(but see my other bug entry re XMLSerializer and OutputFormat usage, which
suggests a fix for this).
---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-j-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-j-dev-help@xml.apache.org