xsl-list
[Top] [All Lists]

Re: [xsl] XSL in the AJAX world

2008-05-16 08:20:28
I have the nice FXSL function, f:json-document(),  working  but I am
wondering if it can transform any JSON generated from XML back to XML?


The short answer is that there isn't a 1:1 mapping between XML and JSON.

This means that there isn't a function

     f : XML Document  --->  JSON Object

such that

     ((f)-1) . f   =   f . ((f)-1)  =  id

Here I use ((f)-1) to denote the reverse function of f(), as I cannot
use superscripts in this plain text format.

FXSL uses the JSON grammar as published at http://www.json.org.

The JSON grammar in RFC 4627 is much more loose and describes a JSON
object that does not correspond to an XML document and even not to
what the value of an XSLT 2.0 variable may be (secuence of items of
any type), because for example it allows a named object to have an
array of unnamed scalar (let's say integer) children.

People need to be aware of the whole JSON hype and not be easily lured
into substituting it for the stable and proven useful by years of
practical experience XML document representation.

Any claims of better readability of JSON become obviously wrong for
any but the smallest size JSON objects.



-- 
Cheers,
Dimitre Novatchev
---------------------------------------
Truly great madness cannot be achieved without significant intelligence.
---------------------------------------
To invent, you need a good imagination and a pile of junk
-------------------------------------
Never fight an inanimate object
-------------------------------------
You've achieved success in your field when you don't know whether what
you're doing is work or play



On Fri, May 16, 2008 at 6:34 AM, Jesper Tverskov 
<jesper(_at_)tverskov(_dot_)dk> wrote:
I have the nice FXSL function, f:json-document(),  working  but I am
wondering if it can transform any JSON generated from XML back to XML?

As far as I know:

Yahoo JASON uses "Content" for element content if attributes are used,
http://developer.yahoo.com/common/json.html#xml.

Google use $t for element text content in JASON,
http://code.google.com/apis/gdata/json.html#Background.

A conversion article at xml.com uses @ in JASON to indicate
attributes, #text for content in elements if parent also has
attributes, and for text in mixed content,
http://www.xml.com/pub/a/2006/05/31/converting-between-xml-and-json.html.

Cheers,
Jesper Tverskov
http://www.xmlplease.com


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>