# Class: com.pnfsoftware.jeb.util.encoding.xml.XmlUtil

XML utility methods.

## Static Method: compare
- parameter: `str`, type: `java.lang.String`
- parameter: `idx`, type: `int`
- parameter: `expected`, type: `java.lang.String`
- return type: `boolean`

Description: Compare a substring with an expected literal.
parameter: str: input string
parameter: idx: substring start index
parameter: expected: expected literal
return: true if `expected` starts at `idx`

## Static Method: compareCI
- parameter: `str`, type: `java.lang.String`
- parameter: `idx`, type: `int`
- parameter: `expected`, type: `java.lang.String`
- return type: `boolean`

Description: Compare a substring with an expected literal, ignoring case.
parameter: str: input string
parameter: idx: substring start index
parameter: expected: expected literal
return: true if `expected` starts at `idx`, ignoring case

## Static Method: createSecureDocumentBuilderFactory
- parameter: `disallowDoctypeDecl`, type: `boolean`
- return type: `javax.xml.parsers.DocumentBuilderFactory`

Description: Create a safe [DocumentBuilderFactory](DocumentBuilderFactory) object.
parameter: disallowDoctypeDecl: 
return: the factory object
throws: 

## Static Method: format
- parameter: `doc`, type: `org.w3c.dom.Document`
- return type: `java.lang.String`

Description: Format a document as text.
parameter: doc: input document
return: textual representation of the document

## Static Method: getChildrenElements
- parameter: `e`, type: `org.w3c.dom.Element`
- parameter: `childName`, type: `java.lang.String`
- return type: `java.util.List<org.w3c.dom.Element>`

Description: Find all direct child elements with the requested name.
parameter: e: parent element
parameter: childName: child tag name
return: list of matching child elements

## Static Method: getFirstChildElement
- parameter: `e`, type: `org.w3c.dom.Element`
- parameter: `childName`, type: `java.lang.String`
- return type: `org.w3c.dom.Element`

Description: Find the first direct child element with the requested name.
parameter: e: parent element
parameter: childName: child tag name
return: first matching child element, or null

## Static Method: isSpace
- parameter: `codePoint`, type: `int`
- return type: `boolean`

Description: Determine whether the provided code point is a white space character.
parameter: codePoint: Unicode code point
return: true if the code point is XML whitespace or a Java space character

## Static Method: readToken
- parameter: `str`, type: `java.lang.String`
- parameter: `idx`, type: `int`
- parameter: `stoppers`, type: `java.util.Collection<java.lang.Integer>`
- parameter: `atoken`, type: `java.lang.String[]`
- return type: `int`

Description: Read a token.
parameter: str: input string
parameter: idx: token start \(cannot be a wsp\); may be a single\-quote or double\-quote
parameter: stoppers: optional code points that terminate an unquoted token
parameter: atoken: output token
return: index immediately after the token

## Static Method: readToken
- parameter: `str`, type: `java.lang.String`
- parameter: `idx`, type: `int`
- parameter: `stoppers`, type: `java.util.Collection<java.lang.Integer>`
- parameter: `atoken`, type: `java.lang.String[]`
- parameter: `mustBeQuoted`, type: `boolean`
- parameter: `handleBackslashAxmlStyle`, type: `boolean`
- return type: `int`

Description: Read a token.
parameter: str: input string
parameter: idx: token start \(cannot be a wsp\); may be a single\-quote or double\-quote
parameter: stoppers: optional code points that terminate an unquoted token
parameter: atoken: output token
parameter: mustBeQuoted: true if the token must start with a quote
parameter: handleBackslashAxmlStyle: true to decode Android resource backslash escapes
return: index immediately after the token

## Static Method: skipSomeSpaces
- parameter: `str`, type: `java.lang.String`
- parameter: `idx`, type: `int`
- return type: `int`

Description: Skip 1\+ WSP characters.
parameter: str: input string
parameter: idx: start index
return: new index after skipped whitespace

## Static Method: skipSpaces
- parameter: `str`, type: `java.lang.String`
- parameter: `idx`, type: `int`
- return type: `int`

Description: Skip 0\+ WSP characters.
parameter: str: input string
parameter: idx: start index
return: new index after skipped whitespace

## Static Method: skipWSP
- parameter: `str`, type: `java.lang.String`
- parameter: `idx`, type: `int`
- parameter: `minSpaceCount`, type: `int`
- return type: `int`

Description: Skip WSP characters.
parameter: str: string
parameter: idx: start index
parameter: minSpaceCount: the method will raise if fewer WSP chars were skipped
return: new index, after skipping WSP chars

