Re: [xsl] XSLT code for XML to JSON conversion?

Subject: Re: [xsl] XSLT code for XML to JSON conversion?
From: "Michael Kay mike@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Fri, 13 Dec 2019 10:26:57 -0000
However, the xml-to-json function on XSLT 3.0 doesn't convert arbitrary XML to
JSON; it requires you first to do a transformation to the XML structure that
reflects the JSON you want to produce.

Generally, off-the-shelf tools that convert arbitrary XML to JSON tend to
produce JSON that's not very nice to work with.

Michael Kay

> On 13 Dec 2019, at 10:12, O'Neil Delpratt oneil@xxxxxxxxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
> Hi,
> Saxon on the Java Platform would work fine on the command-line, but as Liam
said you have the Java runtime startup.
> Alternatively Saxon/C could equally fit your requirements. It is cross
compiled to native library, which can be run on the command-line using C/C++.
Saxon/C also comes with Python extension API.
> kind regards,
> O'Neil
>> On 12 Dec 2019, at 22:37, Steven D. Majewski steve.majewski@xxxxxxxxx
<mailto:steve.majewski@xxxxxxxxx> <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx
<mailto:xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>> wrote:
>> There are also non XSLT converters that use SAX: read XML and serialize out
as JSON.
>> There are several node-js packages.
>> Python xmljson.
<> supports several different JSON encoding
>> And Ibm sure many others.
>> ( Ibve used the Python package, but not for any large projects.  )
>> b Steve.
>>> On Dec 12, 2019, at 5:09 PM, Liam R. E. Quin liam@xxxxxxxxxxxxxxxx
<mailto:liam@xxxxxxxxxxxxxxxx> <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx
<mailto:xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>> wrote:
>>> On Thu, 2019-12-12 at 21:32 +0000, Richard Fozzard
>>> richard.fozzard@xxxxxxxx <mailto:richard.fozzard@xxxxxxxx> wrote:
>>>> Hi Folks,
>>>> We're looking to do conversion of relatively complex XML (i.e.
>>>> namespaces, attributes, repeating elements, xlinks) into JSON from
>>>> the
>>>> Unix command line to build a web page. We've  used the XML to JSON
>>>> feature in the Oxygen Developer tool, and it works well, but that's
>>>> a
>>>> GUI, not a command line tool.
>>> It's probably using XSLT under the hood, with a stylesheet that's
>>> usable e.g. with Saxon. You do pay the penalty of Java runtime startup,
>>> though.
>>> Note also that XSLT 3 includes a standard function to produce JSON; see
>>> So you could just use xml-to-json() in XSLT. You may need Saxon EE for
>>> that, i'm not sure offhand.
>>> Of course, you could also just send XML to the Web client; what you are
>>> doing by using a complex transformation into JSON is moving the
>>> complexity from one developer to another. You could also generate HTML
>>> on the server, whic might make it easier to meet 508/WCAG requirements
>>> :)
>>> Liam
>>> --
>>> Liam Quin,
>>> Available for XML/Document/Information Architecture/XSLT/
>>> XSL/XQuery/Web/Text Processing/A11Y training, work & consulting.
>>> Barefoot Web-slave, antique illustrations:
>> XSL-List info and archive <>
>> EasyUnsubscribe <> (by
email <applewebdata://6BDE66D7-3B12-4981-9CA2-7BDD7B8FA156>)
> XSL-List info and archive <>
> EasyUnsubscribe <> (by
email <>)

Current Thread