Vincent Snijders wrote:
Colin Western wrote:
Vincent Snijders wrote:
Hi,
I saw in the log message of revision
http://www.freepascal.org/cgi-bin/viewcvs.cgi?diff_format=l&rev=3784&sortby=date&view=rev
that the xml units now use native line ending.
Previously I noticed they were using #10 for line-ending and was told
this was conform the xml specifications.
Does this change mean, that valid xml files can only be generated on
*nix from now on?
I submitted the change because I find it convenient to occasionally
edit the xml data files from my program as text, and (for example)
notepad does not like unix line endings. Looking at the spec:
<http://www.w3.org/TR/REC-xml/#sec-line-ends>
it says:
"XML parsed entities are often stored in computer files which, for
editing convenience, are organized into lines. These lines are
typically separated by some combination of the characters CARRIAGE
RETURN (#xD) and LINE FEED (#xA)."
"To simplify the tasks of applications, the XML processor MUST behave
as if it normalized all line breaks in external parsed entities
(including the document entity) on input, before parsing, by
translating both the two-character sequence #xD #xA and any #xD that
is not followed by #xA to a single #xA character."
which I read as allowing any line ending, and it is the reader's
responsibility to normalize the line ending.
OK. Thanks, for looking that up.
Then I have no problem with the patch.
Thanks for the clarification.
On second thought, xmlread still contains:
// TODO: Linefeed handling according to W3C
if FCurChar = #10 then
begin
Inc(FLine);
FColumn := 0;
end
else
Inc(FColumn);
Can files created by xmlwrite on win32, be read with xmlread on *nix?
Vincent
_______________________________________________
fpc-devel maillist - fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel