JSONML

public class JSONML

This provides static methods to convert an XML text into a JSONArray or JSONObject, and to covert a JSONArray or JSONObject into an XML text using the JsonML transform.

Author:JSON.org

Methods

toJSONArray

public static JSONArray toJSONArray(String string)

Convert a well-formed (but not necessarily valid) XML string into a JSONArray using the JsonML transform. Each XML tag is represented as a JSONArray in which the first element is the tag name. If the tag has attributes, then the second element will be JSONObject containing the name/value pairs. If the tag contains children, then strings and JSONArrays will represent the child tags. Comments, prologs, DTDs, and <[ [ ]]> are ignored.

Parameters:
  • string – The source string.
Throws:
Returns:

A JSONArray containing the structured data from the XML string.

toJSONArray

public static JSONArray toJSONArray(XMLTokener x)

Convert a well-formed (but not necessarily valid) XML string into a JSONArray using the JsonML transform. Each XML tag is represented as a JSONArray in which the first element is the tag name. If the tag has attributes, then the second element will be JSONObject containing the name/value pairs. If the tag contains children, then strings and JSONArrays will represent the child content and tags. Comments, prologs, DTDs, and <[ [ ]]> are ignored.

Parameters:
  • x – An XMLTokener.
Throws:
Returns:

A JSONArray containing the structured data from the XML string.

toJSONObject

public static JSONObject toJSONObject(XMLTokener x)

Convert a well-formed (but not necessarily valid) XML string into a JSONObject using the JsonML transform. Each XML tag is represented as a JSONObject with a “tagName” property. If the tag has attributes, then the attributes will be in the JSONObject as properties. If the tag contains children, the object will have a “childNodes” property which will be an array of strings and JsonML JSONObjects. Comments, prologs, DTDs, and <[ [ ]]> are ignored.

Parameters:
  • x – An XMLTokener of the XML source text.
Throws:
Returns:

A JSONObject containing the structured data from the XML string.

toJSONObject

public static JSONObject toJSONObject(String string)

Convert a well-formed (but not necessarily valid) XML string into a JSONObject using the JsonML transform. Each XML tag is represented as a JSONObject with a “tagName” property. If the tag has attributes, then the attributes will be in the JSONObject as properties. If the tag contains children, the object will have a “childNodes” property which will be an array of strings and JsonML JSONObjects. Comments, prologs, DTDs, and <[ [ ]]> are ignored.

Parameters:
  • string – The XML source text.
Throws:
Returns:

A JSONObject containing the structured data from the XML string.

toString

public static String toString(JSONArray ja)

Reverse the JSONML transformation, making an XML text from a JSONArray.

Parameters:
  • ja – A JSONArray.
Throws:
Returns:

An XML string.

toString

public static String toString(JSONObject jo)

Reverse the JSONML transformation, making an XML text from a JSONObject. The JSONObject must contain a “tagName” property. If it has children, then it must have a “childNodes” property containing an array of objects. The other properties are attributes with string values.

Parameters:
  • jo – A JSONObject.
Throws:
Returns:

An XML string.