[prev in list] [next in list] [prev in thread] [next in thread] 

List:       xmlbeans-dev
Subject:    [jira] Commented: (XMLBEANS-262) Line ending behavior inconsistent
From:       "Raman Gupta (JIRA)" <xmlbeans-dev () xml ! apache ! org>
Date:       2009-11-03 19:23:32
Message-ID: 1438453970.1257276212509.JavaMail.jira () brutus
[Download RAW message or body]


    [ https://issues.apache.org/jira/browse/XMLBEANS-262?page=com.atlassian.jira.plugi \
n.system.issuetabpanels:comment-tabpanel&focusedCommentId=12773135#action_12773135 ] 

Raman Gupta commented on XMLBEANS-262:
--------------------------------------

Good point about option #1. Option #3 it is then.

For the enhancement, I how about two new XmlOption's:

setEolStyle(String eolStyle)
setEolStyleDeclaration(String eolStyle)

with the following constants as possible values:

EOLSTYLE_LF = "LF";
EOLSTYLE_CRLF = "CRLF";
EOLSTYLE_SYS = "SYS";

To maintain backwards compatibility, the option eolStyle would be set by the user to \
EOLSTYLE_LF and eolStyleDeclaration would be EOLSTYLE_SYS. However, the defaults \
provided by XmlBeans should probably be EOLSTYLE_LF or EOLSTYLE_SYS for both. My \
personal preference would be _LF but I suspect most people would expect _SYS to be \
the default.

> Line ending behavior inconsistent when using save(OutputStream)
> ---------------------------------------------------------------
> 
> Key: XMLBEANS-262
> URL: https://issues.apache.org/jira/browse/XMLBEANS-262
> Project: XMLBeans
> Issue Type: Improvement
> Components: XmlObject
> Affects Versions: Version 2.1
> Environment: Windows, JDK 1.5.0_06
> Reporter: Raman Gupta
> Assignee: Radu Preotiuc-Pietro
> Priority: Minor
> 
> When executing an XmlObject.save(OutputStream) call, the output's line endings do \
> not conform to any consistent and expected behavior. Even though this should not be \
> a problem for any conformant XML processor due to \
> http://www.w3.org/TR/REC-xml/#sec-line-ends, this sometimes causes problems with \
> other tools or code. Here is a code snippet to reproduce:
> XmlObject  x = XmlObject.Factory.parse("<root>\r\n<test/>\r\n</root>");
> OutputStream o = new FileOutputStream("out.xml");
> x.save(o);
> o.close();
> Viewing out.xml in a hex editor will show that the line ending after the XML \
> declaration is determined by the System property line.separator (on windows, \
> default is \r\n, or 0x0D, 0x0A) but the line endings after all the other elements \
> is always a single \n (0x0A), regardless of line.separator and the input XML.  In \
> other words, line endings do not match either the line endings provided in the \
> input XML, or the platform default value on Windows. I suppose there are several \
> options for fixing this: 1) The XML declaration continues to use the System \
> property, but for other line endings, the input XML's line endings should be \
> respected when output (\r\n on the input is output as is), OR 2) That the output \
> XML uses the System property and makes all line endings consistent. 3) Some \
> combination of the above with new XmlOption's settings. My preference would be #3 \
> so that the line ending behavior can be controlled by the user. For the default, I \
> have no preference except to have some known documented behavior. Option #1 will \
> sometimes result in a file with inconsistent line endings, but it could be argued \
> that the user requested it so it is ok.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@xmlbeans.apache.org
For additional commands, e-mail: dev-help@xmlbeans.apache.org


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic