Class XMLUtil


  • public class XMLUtil
    extends Object
    Utility methods for handling and processing XML data.
    • Constructor Detail

      • XMLUtil

        public XMLUtil()
    • Method Detail

      • escapeCharacterData

        public static String escapeCharacterData​(String text)
        Escapes any special characters in the supplied text so that it can be included as character data in an XML document. The characters that are escaped are &, <, > and carriage return (\r).
      • escapeDoubleQuotedAttValue

        public static String escapeDoubleQuotedAttValue​(String value)
        Escapes any special characters in the supplied value so that it can be used as an double-quoted attribute value in an XML document. The characters that are escaped are &, <, >, tab (\t), carriage return (\r), line feed (\n) and " .
      • escapeSingleQuotedAttValue

        public static String escapeSingleQuotedAttValue​(String value)
        Escapes any special characters in the supplied value so that it can be used as an single-quoted attribute value in an XML document. The characters that are escaped are &, <, >, tab (\t), carriage return (\r), line feed (\n) and ' .
      • resolveEntities

        public static String resolveEntities​(String text)
        Replaces all XML character entities with the character they represent.
      • resolveEntity

        public static String resolveEntity​(String entName)
        Resolves an entity reference or character reference to its value.
        Parameters:
        entName - The 'name' of the reference. This is the string between & and ;, e.g. amp, quot, #65 or #x41.
        Returns:
        The value of the supplied reference, or the reference itself if it could not be resolved.
      • findURISplitIndex

        public static int findURISplitIndex​(String uri)
        Tries to find a point in the supplied URI where this URI can be safely split into a namespace part and a local name. According to the XML specifications, a local name must start with a letter or underscore and can be followed by zero or more 'NCName' characters.
        Parameters:
        uri - The URI to split.
        Returns:
        The index of the first character of the local name, or -1 if the URI can not be split into a namespace and local name.
      • isNCNameStartChar

        public static final boolean isNCNameStartChar​(char c)
      • isNCNameChar

        public static final boolean isNCNameChar​(char c)
      • escapeAttributeValue

        public static String escapeAttributeValue​(String value)
        Escapes all characters that have a special meaning in XML attribute values -- i.e. &, <, >, " and ' -- with their entities.
        See Also:
        resolveEntities(java.lang.String)
      • isValidCharacterDataChar

        public static boolean isValidCharacterDataChar​(char c)
        Returns whether the specified character can appear in XML character data.
      • isValidCharacterDataChar

        public static boolean isValidCharacterDataChar​(int c)
        Returns whether the specified character can appear in XML character data. The integer encoding also makes the representation of supplementary Unicode characters possible.
      • removeInvalidCharacterDataChars

        public static String removeInvalidCharacterDataChars​(String s)
        Removes all non-valid XML character data chars from the specified String. If all characters are valid character data chars, this method will return the same String.
      • isLetter

        public static final boolean isLetter​(char c)
      • isIdeographic

        public static final boolean isIdeographic​(char c)
      • isCombiningChar

        public static final boolean isCombiningChar​(char c)
      • isDigit

        public static final boolean isDigit​(char c)
      • isExtender

        public static final boolean isExtender​(char c)