# Class XML

java.lang.Object
org.daypilot.json.XML

public class XML extends Object
This provides static methods to convert an XML text into a JSONObject, and to covert a JSONObject into an XML text.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final Character`
  `AMP`
  The Character 'invalid input: '&''.
  `static final Character`
  `APOS`
  The Character '''.
  `static final Character`
  `BANG`
  The Character '!'.
  `static final Character`
  `EQ`
  The Character '='.
  `static final Character`
  `GT`
  The Character '>'.
  `static final Character`
  `LT`
  The Character 'invalid input: '<''.
  `static final Character`
  `QUEST`
  The Character '?'.
  `static final Character`
  `QUOT`
  The Character '"'.
  `static final Character`
  `SLASH`
  The Character '/'.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `XML()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static String`
  `escape(String string)`
  Replace special characters with XML escapes:
  `static void`
  `noSpace(String string)`
  Throw an exception if the string contains whitespace.
  `static JSONObject`
  `toJSONObject(String string)`
  Convert a well-formed (but not necessarily valid) XML string into a JSONObject.
  `static String`
  `toString(Object o)`
  Convert a JSONObject into a well-formed, element-normal XML string.
  `static String`
  `toString(Object o, String tagName)`
  Convert a JSONObject into a well-formed, element-normal XML string.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### AMP

    public static final Character AMP
    The Character 'invalid input: '&''.

  - ### APOS

    public static final Character APOS
    The Character '''.

  - ### BANG

    public static final Character BANG
    The Character '!'.

  - ### EQ

    public static final Character EQ
    The Character '='.

  - ### GT

    public static final Character GT
    The Character '>'.

  - ### LT

    public static final Character LT
    The Character 'invalid input: '<''.

  - ### QUEST

    public static final Character QUEST
    The Character '?'.

  - ### QUOT

    public static final Character QUOT
    The Character '"'.

  - ### SLASH

    public static final Character SLASH
    The Character '/'.

- ## Constructor Details

  - ### XML

    public XML()

- ## Method Details

  - ### escape

    public static String escape(String string)
    Replace special characters with XML escapes:

         & (ampersand) is replaced by &amp;
         < (less than) is replaced by &lt;
         > (greater than) is replaced by &gt;
         " (double quote) is replaced by &quot;

    Parameters:
      `string` - The string to be escaped.
    Returns:
      The escaped string.

  - ### noSpace

    public static void noSpace(String string) throws JSONException
    Throw an exception if the string contains whitespace. Whitespace is not allowed in tagNames and attributes.
    Parameters:
      `string` -
    Throws:
      `JSONException`

  - ### toJSONObject

    public static JSONObject toJSONObject(String string) throws JSONException
    Convert a well-formed (but not necessarily valid) XML string into a JSONObject. Some information may be lost in this transformation because JSON is a data format and XML is a document format. XML uses elements, attributes, and content text, while JSON uses unordered collections of name/value pairs and arrays of values. JSON does not does not like to distinguish between elements and attributes. Sequences of similar elements are represented as JSONArrays. Content text may be placed in a "content" member. Comments, prologs, DTDs, and `<[ [ ]]>` are ignored.
    Parameters:
      `string` - The source string.
    Returns:
      A JSONObject containing the structured data from the XML string.
    Throws:
      `JSONException`

  - ### toString

    public static String toString(Object o) throws JSONException
    Convert a JSONObject into a well-formed, element-normal XML string.
    Parameters:
      `o` - A JSONObject.
    Returns:
      A string.
    Throws:
      `JSONException`

  - ### toString

    public static String toString(Object o, String tagName) throws JSONException
    Convert a JSONObject into a well-formed, element-normal XML string.
    Parameters:
      `o` - A JSONObject.
      `tagName` - The optional name of the enclosing tag.
    Returns:
      A string.
    Throws:
      `JSONException`