> But
> although the system does seem to be well supported it also seems to be
> poorly documented.  ;^)

Jim: That's a matter of perspective. Some people love Dave Winer's
approach to spec-writing, and some people absolutely *loathe* it. I'm
gonna guess you're in the latter group. :D

>         - Convert a null into an empty value: <value></value>.
>         - Convert a null into an empty string: <string></string>.
>         - Throw an error.

I can't say conclusively, but I would opt for the first or third choice. 

If you can afford the ambiguity, the first is the best... most
implementations (including mine) will interpret an empty <value /> as
a zero-length string, but at least it leaves open the possibility for
other implementations.

> Any idea about what's "right"?

Technically, XML-RPC dates have no timezone. Apps are expected to set
timezones in another method, or within another param in the current
method.

In practice, my (de)serializer respects the above... but the instant
it returns the value to my main code, I promptly assume that it is UTC
and go from there. :-)

> +) String formatting seems... odd.  The spec claims that only ampersands and
> less-than signs should be escaped - is this right?  Not even greater-than
> signs?  Nothing for control characters?

Basically, it's saying "do what you would normally do to escape any
off-limits XML characters". Technically, greater-than signs don't need
to be escaped as long as you escape any less-thans, but most of us do
it anyway, just to be safe.

Probably the easiest thing to do is just wrap strings in <![CDATA[]]>,
although there may be an oddball deserializer out there that will
barf.

> If you have some time I'd much appreciate you going over my XMLRPC
> implementation to see if it measures up.

I went ahead and set up a little debugger for you. Just go here:

http://agincourtmedia.com/xmlrpc/testxmlrpc.cfm

....and enter any of your serialized chunks into the form. It will wrap
whatever you input in a method/param, deserialize it, and CFDUMP the
results.

I don't claim that my (de)serializer is any kind of benchmark, but
it'll at least let you know if you're heading down the right path.

--
Roger Benningfield
JournURL
http://admin.support.journurl.com/
http://admin.mxblogspace.journurl.com/

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Logware (www.logware.us): a new and convenient web-based time tracking 
application. Start tracking and documenting hours spent on a project or with a 
client with Logware today. Try it for free with a 15 day trial account.
http://www.houseoffusion.com/banners/view.cfm?bannerid=67

Message: http://www.houseoffusion.com/lists.cfm/link=i:4:215879
Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4
Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4
Donations & Support: http://www.houseoffusion.com/tiny.cfm/54

Reply via email to