| |
|
| java.lang.Object net.sf.saxon.om.XMLChar
XMLChar | public class XMLChar (Code) | | This class defines the basic XML character properties. The data
in this class can be used to verify that a character is a valid
XML character or if the character is a space, name start, or name
character.
A series of convenience methods are supplied to ease the burden
of the developer. Because inlining the checks can improve per
character performance, the tables of character properties are
public. Using the character as an index into the CHARS
array and applying the appropriate mask flag (e.g.
MASK_VALID ), yields the same results as calling the
convenience methods. There is one exception: check the comments
for the isValid method for details.
author: Glenn Marcy, IBM author: Andy Clark, IBM author: Eric Ye, IBM author: Arnaud Le Hors, IBM author: Michael Glavassevich, IBM author: Rahul Srivastava, Sun Microsystems Inc. version: $Id: XMLChar.java,v 1.16 2004/03/25 04:03:22 mrglavas Exp $ |
Field Summary | |
final public static int | MASK_CONTENT Content character mask. | final public static int | MASK_NAME Name character mask. | final public static int | MASK_NAME_START Name start character mask. | final public static int | MASK_NCNAME NCName character mask. | final public static int | MASK_NCNAME_START NCName start character mask. | final public static int | MASK_PUBID Pubid character mask. | final public static int | MASK_SPACE Space character mask. | final public static int | MASK_VALID Valid character mask. |
Method Summary | |
public static char | highSurrogate(int c) | public static boolean | isContent(int c) Returns true if the specified character can be considered content. | public static boolean | isHighSurrogate(int c) | public static boolean | isInvalid(int c) Returns true if the specified character is invalid. | public static boolean | isLowSurrogate(int c) | public static boolean | isMarkup(int c) Returns true if the specified character can be considered markup. | public static boolean | isNCName(int c) Returns true if the specified character is a valid NCName
character as defined by production [5] in Namespaces in XML
recommendation. | public static boolean | isNCNameStart(int c) Returns true if the specified character is a valid NCName start
character as defined by production [4] in Namespaces in XML
recommendation. | public static boolean | isName(int c) Returns true if the specified character is a valid name
character as defined by production [4] in the XML 1.0
specification. | public static boolean | isNameStart(int c) Returns true if the specified character is a valid name start
character as defined by production [5] in the XML 1.0
specification. | public static boolean | isPubid(int c) Returns true if the specified character is a valid Pubid
character as defined by production [13] in the XML 1.0
specification. | public static boolean | isSpace(int c) Returns true if the specified character is a space character
as defined by production [3] in the XML 1.0 specification. | public static boolean | isSupplemental(int c) Returns true if the specified character is a supplemental character. | public static boolean | isSurrogate(int c) | public static boolean | isValid(int c) Returns true if the specified character is valid. | public static boolean | isValidIANAEncoding(String ianaEncoding) Returns true if the encoding name is a valid IANA encoding. | public static boolean | isValidJavaEncoding(String javaEncoding) Returns true if the encoding name is a valid Java encoding. | public static boolean | isValidNCName(String ncName) | public static boolean | isValidName(String name) | public static boolean | isValidNmtoken(String nmtoken) | public static char | lowSurrogate(int c) | public static int | supplemental(char h, char l) Returns true the supplemental character corresponding to the given
surrogates. |
MASK_CONTENT | final public static int MASK_CONTENT(Code) | | Content character mask. Special characters are those that can
be considered the start of markup, such as '<' and '&'.
The various newline characters are considered special as well.
All other valid XML characters can be considered content.
This is an optimization for the inner loop of character scanning.
|
MASK_NAME | final public static int MASK_NAME(Code) | | Name character mask.
|
MASK_NAME_START | final public static int MASK_NAME_START(Code) | | Name start character mask.
|
MASK_NCNAME | final public static int MASK_NCNAME(Code) | | NCName character mask.
|
MASK_NCNAME_START | final public static int MASK_NCNAME_START(Code) | | NCName start character mask.
|
MASK_PUBID | final public static int MASK_PUBID(Code) | | Pubid character mask.
|
MASK_SPACE | final public static int MASK_SPACE(Code) | | Space character mask.
|
MASK_VALID | final public static int MASK_VALID(Code) | | Valid character mask.
|
highSurrogate | public static char highSurrogate(int c)(Code) | | Returns the high surrogate of a supplemental character
Parameters: c - The supplemental character to "split". |
isContent | public static boolean isContent(int c)(Code) | | Returns true if the specified character can be considered content.
Parameters: c - The character to check. |
isHighSurrogate | public static boolean isHighSurrogate(int c)(Code) | | Returns whether the given character is a high surrogate
Parameters: c - The character to check. |
isInvalid | public static boolean isInvalid(int c)(Code) | | Returns true if the specified character is invalid.
Parameters: c - The character to check. |
isLowSurrogate | public static boolean isLowSurrogate(int c)(Code) | | Returns whether the given character is a low surrogate
Parameters: c - The character to check. |
isMarkup | public static boolean isMarkup(int c)(Code) | | Returns true if the specified character can be considered markup.
Markup characters include '<', '&', and '%'.
Parameters: c - The character to check. |
isNCName | public static boolean isNCName(int c)(Code) | | Returns true if the specified character is a valid NCName
character as defined by production [5] in Namespaces in XML
recommendation.
Parameters: c - The character to check. |
isNCNameStart | public static boolean isNCNameStart(int c)(Code) | | Returns true if the specified character is a valid NCName start
character as defined by production [4] in Namespaces in XML
recommendation.
Parameters: c - The character to check. |
isName | public static boolean isName(int c)(Code) | | Returns true if the specified character is a valid name
character as defined by production [4] in the XML 1.0
specification.
Parameters: c - The character to check. |
isNameStart | public static boolean isNameStart(int c)(Code) | | Returns true if the specified character is a valid name start
character as defined by production [5] in the XML 1.0
specification.
Parameters: c - The character to check. |
isPubid | public static boolean isPubid(int c)(Code) | | Returns true if the specified character is a valid Pubid
character as defined by production [13] in the XML 1.0
specification.
Parameters: c - The character to check. |
isSpace | public static boolean isSpace(int c)(Code) | | Returns true if the specified character is a space character
as defined by production [3] in the XML 1.0 specification.
Parameters: c - The character to check. |
isSupplemental | public static boolean isSupplemental(int c)(Code) | | Returns true if the specified character is a supplemental character.
Parameters: c - The character to check. |
isSurrogate | public static boolean isSurrogate(int c)(Code) | | Return whether a given char (codepoint) is a surrogate (high or low)
//MHK: this method reinstated from an earlier version of the Apache XMLChar module
|
isValid | public static boolean isValid(int c)(Code) | | Returns true if the specified character is valid. This method
also checks the surrogate character range from 0x10000 to 0x10FFFF.
If the program chooses to apply the mask directly to the
CHARS array, then they are responsible for checking
the surrogate character range.
Parameters: c - The character to check. |
isValidIANAEncoding | public static boolean isValidIANAEncoding(String ianaEncoding)(Code) | | Returns true if the encoding name is a valid IANA encoding.
This method does not verify that there is a decoder available
for this encoding, only that the characters are valid for an
IANA encoding name.
Parameters: ianaEncoding - The IANA encoding name. |
isValidJavaEncoding | public static boolean isValidJavaEncoding(String javaEncoding)(Code) | | Returns true if the encoding name is a valid Java encoding.
This method does not verify that there is a decoder available
for this encoding, only that the characters are valid for an
Java encoding name.
Parameters: javaEncoding - The Java encoding name. |
isValidNCName | public static boolean isValidNCName(String ncName)(Code) | | Check to see if a string is a valid NCName according to [4]
from the XML Namespaces 1.0 Recommendation
Parameters: ncName - string to check true if name is a valid NCName |
isValidName | public static boolean isValidName(String name)(Code) | | Check to see if a string is a valid Name according to [5]
in the XML 1.0 Recommendation
Parameters: name - string to check true if name is a valid Name |
isValidNmtoken | public static boolean isValidNmtoken(String nmtoken)(Code) | | Check to see if a string is a valid Nmtoken according to [7]
in the XML 1.0 Recommendation
Parameters: nmtoken - string to check true if nmtoken is a valid Nmtoken |
lowSurrogate | public static char lowSurrogate(int c)(Code) | | Returns the low surrogate of a supplemental character
Parameters: c - The supplemental character to "split". |
supplemental | public static int supplemental(char h, char l)(Code) | | Returns true the supplemental character corresponding to the given
surrogates.
Parameters: h - The high surrogate. Parameters: l - The low surrogate. |
|
|
|