[cl-who-devel] Case-sensitive XML

Ken Harris kengruven at gmail.com
Mon Nov 12 00:16:04 UTC 2007


Hi!

I'm having trouble outputting case-sensitive XML using cl-who.  The
*downcase-tokens-p* variable claims to be the answer, but it only
controls whether the output is all-upper-case or all-lower-case:

(setq *downcase-tokens-p* nil)
(with-html-output-to-string (s) (:twoWords))
=> "<TWOWORDS/>"

(setq *downcase-tokens-p* t)
(with-html-output-to-string (s) (:twoWords))
=> "<twowords/>"

I don't get how this is supposed to help with case-sensitive XML:
keywords (like all symbols) are case-folded by the CL reader before
cl-who sees them, no?  :twoWords => :TWOWORDS.  To support generation
of XML with mixedCase tags or attributes, I would think that cl-who
would need to allow strings where it allows only keywords now.

Or maybe I'm just completely missing something, because the question
that prompted the creation of *downcase-tokens-p* was a camelCase
attribute.

Can cl-who support mixedCase tags/attributes?  Or if it's as simple as
changing (keywordp x) to (or (keywordp x) (stringp x)), would such a
patch be well-received?

thanks!


- Ken



More information about the Cl-who-devel mailing list