From: "duerst (Martin Dürst)" Date: 2014-01-07T17:40:23+09:00 Subject: [ruby-core:59622] [ruby-trunk - Bug #9367] REXML::XmlDecl doesn't use user specified quotes Issue #9367 has been updated by duerst (Martin D��rst). bearmini (Takashi Oguma) wrote: > A direct reason is that my customer wants to have double quotes in the xml declaration because their handcrafted 'xml lint' tool complains the xml document produced by my ruby script contains single quotes. (Their convention requires all quoting characters should be double quotes.) That's a very good reason, in particular for you. > More generally, I think it is natural if we have control which quoting character will be used for the xml declaration too. It probably won't hurt if this is controllable. But there might be some existing applications (and tests) that expect single-quoted pseudo-attributes in XML declarations, and they would get problems if doc.context[:attribute_quote] = :quote changes that. So I think it would be better if it's something like doc.context[:xml_declaration_quote] = :quote Anyway, I don't have the time to prepare a patch, sorry. But maybe you can create a patch? ---------------------------------------- Bug #9367: REXML::XmlDecl doesn't use user specified quotes https://bugs.ruby-lang.org/issues/9367#change-44151 Author: bearmini (Takashi Oguma) Status: Feedback Priority: Normal Assignee: Category: Target version: ruby -v: ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-linux] Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN =begin REXML uses double quotes for quoting attributes if :attribute_quote is specified as document's context like below: doc = REXML::Document.new doc.context[:attribute_quote] = :quote This looks working well on all elements but has no effect for xml declaration (i.e. ) if it exists. Even if I specify (({doc.context[:attribute_quote] = :quote})), I will get this: The expected result is: =end -- http://bugs.ruby-lang.org/