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 Saxonica > 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. https://pypi.org/project/xmljson/ <https://pypi.org/project/xmljson/> supports several different JSON encoding conventions. >> >> 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 >>> https://www.w3.org/TR/xpath-functions-31/#json-to-xml-mapping <https://www.w3.org/TR/xpath-functions-31/#json-to-xml-mapping> >>> >>> 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, https://www.delightfulcomputing.com/ <https://www.delightfulcomputing.com/> >>> Available for XML/Document/Information Architecture/XSLT/ >>> XSL/XQuery/Web/Text Processing/A11Y training, work & consulting. >>> Barefoot Web-slave, antique illustrations: http://www.fromoldbooks.org <http://www.fromoldbooks.org/> >>> >> >> XSL-List info and archive <http://www.mulberrytech.com/xsl/xsl-list> >> EasyUnsubscribe <http://lists.mulberrytech.com/unsub/xsl-list/1363285> (by email <applewebdata://6BDE66D7-3B12-4981-9CA2-7BDD7B8FA156>) > > XSL-List info and archive <http://www.mulberrytech.com/xsl/xsl-list> > EasyUnsubscribe <http://lists.mulberrytech.com/unsub/xsl-list/293509> (by email <>)
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] XSLT code for XML to JSON, O'Neil Delpratt onei | Thread | Re: [xsl] XSLT code for XML to JSON, Piez, Wendell A. (Fe |
Re: [xsl] XSLT code for XML to JSON, O'Neil Delpratt onei | Date | Re: [xsl] XSLT code for XML to JSON, Piez, Wendell A. (Fe |
Month |