org.jdom

Class Verifier


public final class Verifier
extends java.lang.Object

Verifier handles XML checks on names, data, and other verification tasks for JDOM.

Version:
$Revision: 1.32 $, $Date: 2002/03/12 07:57:06 $

Authors:
Brett McLaughlin
Elliotte Rusty Harold
Jason Hunter
Bradley S. Huffman

Method Summary

static String
checkAttributeName(String name)
This will check the supplied name to see if it is legal for use as a JDOM Attribute name.
static String
checkCDATASection(String data)
This will check the supplied data to see if it is legal for use as JDOM CDATA.
static String
checkCharacterData(String text)
This will check the supplied string to see if it only contains characters allowed by the XML 1.0 specification.
static String
checkCommentData(String data)
This will check the supplied data to see if it is legal for use as JDOM Comment data.
static String
checkElementName(String name)
This will check the supplied name to see if it is legal for use as a JDOM Element name.
static String
checkNamespaceCollision(Attribute attribute, Element element)
Check if Attribute's namespace collides with a Element's namespace.
static String
checkNamespaceCollision(Namespace namespace, List list)
Check if a Namespace collides with any namespace from a list of objects.
static String
checkNamespaceCollision(Namespace namespace, Attribute attribute)
Check if a Namespace collides with a Attribute's namespace.
static String
checkNamespaceCollision(Namespace namespace, Element element)
Check if a Namespace collides with a Element's namespace.
static String
checkNamespaceCollision(Namespace namespace, Namespace other)
Check if two namespaces collide.
static String
checkNamespacePrefix(String prefix)
This will check the supplied name to see if it is legal for use as a JDOM Namespace prefix.
static String
checkNamespaceURI(String uri)
This will check the supplied name to see if it is legal for use as a JDOM Namespace URI.
static String
checkProcessingInstructionTarget(String target)
This will check the supplied data to see if it is legal for use as a JDOM ProcessingInstruction target.
static String
checkPublicID(String publicID)
This will ensure that the data for a public identifier is legal.
static String
checkSystemLiteral(String systemLiteral)
This will ensure that the data for a system literal is legal.
static String
checkXMLName(String name)
This is a utility function for sharing the base process of checking any XML name.
static boolean
isXMLCharacter(char c)
This is a utility function for determining whether a specified character is a character according to production 2 of the XML 1.0 specification.
static boolean
isXMLCombiningChar(char c)
This is a utility function for determining whether a specified character is a combining character according to production 87 of the XML 1.0 specification.
static boolean
isXMLDigit(char c)
This is a utility function for determining whether a specified Unicode character is a digit according to production 88 of the XML 1.0 specification.
static boolean
isXMLExtender(char c)
This is a utility function for determining whether a specified character is an extender according to production 88 of the XML 1.0 specification.
static boolean
isXMLLetter(char c)
This is a utility function for determining whether a specified character is a letter according to production 84 of the XML 1.0 specification.
static boolean
isXMLLetterOrDigit(char c)
This is a utility function for determining whether a specified character is a letter or digit according to productions 84 and 88 of the XML 1.0 specification.
static boolean
isXMLNameCharacter(char c)
This is a utility function for determining whether a specified character is a name character according to production 4 of the XML 1.0 specification.
static boolean
isXMLNameStartCharacter(char c)
This is a utility function for determining whether a specified character is a legal name start character according to production 5 of the XML 1.0 specification.
static void
main(String[] args)

Method Details

checkAttributeName

public static final String checkAttributeName(String name)

Parameters:
name - String name to check.

Returns:
String - reason name is illegal, or null if name is OK.


checkCDATASection

public static final String checkCDATASection(String data)

Parameters:
data - String data to check.

Returns:
String - reason data is illegal, or null is name is OK.


checkCharacterData

public static final String checkCharacterData(String text)
This will check the supplied string to see if it only contains characters allowed by the XML 1.0 specification. The C0 controls (e.g. null, vertical tab, formfeed, etc.) are specifically excluded except for carriage return, linefeed, and the horizontal tab. Surrogates are also excluded.

This method is useful for checking element content and attribute values. Note that characters like " and < are allowed in attribute values and element content. They will simply be escaped as " or < when the value is serialized.

Parameters:

Returns:
String - reason name is illegal, or null if name is OK.


checkCommentData

public static final String checkCommentData(String data)

Parameters:
data - String data to check.

Returns:
String - reason data is illegal, or null if data is OK.


checkElementName

public static final String checkElementName(String name)

Parameters:
name - String name to check.

Returns:
String - reason name is illegal, or null if name is OK.


checkNamespaceCollision

public static final String checkNamespaceCollision(Attribute attribute,
                                                   Element element)
Check if Attribute's namespace collides with a Element's namespace.

Parameters:
attribute - Attribute to check.
element - Element to check agianst.

Returns:
String - reason for collision, or null if no collision.


checkNamespaceCollision

public static final String checkNamespaceCollision(Namespace namespace,
                                                   List list)
Check if a Namespace collides with any namespace from a list of objects.

Parameters:
namespace - Namespace to check.
list - List to check agianst.

Returns:
String - reason for collision, or null if no collision.


checkNamespaceCollision

public static final String checkNamespaceCollision(Namespace namespace,
                                                   Attribute attribute)
Check if a Namespace collides with a Attribute's namespace.

Parameters:
namespace - Namespace to check.
attribute - Attribute to check agianst.

Returns:
String - reason for collision, or null if no collision.


checkNamespaceCollision

public static final String checkNamespaceCollision(Namespace namespace,
                                                   Element element)
Check if a Namespace collides with a Element's namespace.

Parameters:
namespace - Namespace to check.
element - Element to check agianst.

Returns:
String - reason for collision, or null if no collision.


checkNamespaceCollision

public static final String checkNamespaceCollision(Namespace namespace,
                                                   Namespace other)
Check if two namespaces collide.

Parameters:
namespace - Namespace to check.
other - Namespace to check agianst.

Returns:
String - reason for collision, or null if no collision.


checkNamespacePrefix

public static final String checkNamespacePrefix(String prefix)

Parameters:
prefix - String prefix to check.

Returns:
String - reason name is illegal, or null if name is OK.


checkNamespaceURI

public static final String checkNamespaceURI(String uri)

Parameters:
uri - String URI to check.

Returns:
String - reason name is illegal, or null if name is OK.


checkProcessingInstructionTarget

public static final String checkProcessingInstructionTarget(String target)

Parameters:
target - String target to check.

Returns:
String - reason target is illegal, or null if target is OK.


checkPublicID

public static final String checkPublicID(String publicID)
This will ensure that the data for a public identifier is legal.

Parameters:
publicID - String public ID to check.

Returns:
String - reason public ID is illegal, or null if public ID is OK.


checkSystemLiteral

public static final String checkSystemLiteral(String systemLiteral)
This will ensure that the data for a system literal is legal.

Parameters:
systemLiteral - String system literal to check.

Returns:
String - reason system literal is illegal, or null if system literal is OK.


checkXMLName

public static String checkXMLName(String name)
This is a utility function for sharing the base process of checking any XML name.

Parameters:
name - String to check for XML name compliance.

Returns:
String - reason the name is illegal, or null if OK.


isXMLCharacter

public static boolean isXMLCharacter(char c)
This is a utility function for determining whether a specified character is a character according to production 2 of the XML 1.0 specification.

Parameters:
c - char to check for XML compliance.

Returns:
boolean - true if it's a character, false otherwise.


isXMLCombiningChar

public static boolean isXMLCombiningChar(char c)
This is a utility function for determining whether a specified character is a combining character according to production 87 of the XML 1.0 specification.

Parameters:
c - char to check.

Returns:
boolean - true if it's a combining character, false otherwise.


isXMLDigit

public static boolean isXMLDigit(char c)
This is a utility function for determining whether a specified Unicode character is a digit according to production 88 of the XML 1.0 specification.

Parameters:
c - char to check for XML digit compliance.

Returns:
boolean - true if it's a digit, false otherwise.


isXMLExtender

public static boolean isXMLExtender(char c)
This is a utility function for determining whether a specified character is an extender according to production 88 of the XML 1.0 specification.

Parameters:
c - char to check.

Returns:
String - true if it's an extender, false otherwise.


isXMLLetter

public static boolean isXMLLetter(char c)
This is a utility function for determining whether a specified character is a letter according to production 84 of the XML 1.0 specification.

Parameters:
c - char to check for XML name compliance.

Returns:
String - true if it's a letter, false otherwise.


isXMLLetterOrDigit

public static boolean isXMLLetterOrDigit(char c)
This is a utility function for determining whether a specified character is a letter or digit according to productions 84 and 88 of the XML 1.0 specification.

Parameters:
c - char to check.

Returns:
boolean - true if it's letter or digit, false otherwise.


isXMLNameCharacter

public static boolean isXMLNameCharacter(char c)
This is a utility function for determining whether a specified character is a name character according to production 4 of the XML 1.0 specification.

Parameters:
c - char to check for XML name compliance.

Returns:
boolean - true if it's a name character, false otherwise.


isXMLNameStartCharacter

public static boolean isXMLNameStartCharacter(char c)
This is a utility function for determining whether a specified character is a legal name start character according to production 5 of the XML 1.0 specification. This production does allow names to begin with colons which the Namespaces in XML Recommendation disallows.

Parameters:
c - char to check for XML name start compliance.

Returns:
boolean - true if it's a name start character, false otherwise.


main

public static void main(String[] args)


Copyright B) 2002 Jason Hunter, Brett McLaughlin. All Rights Reserved.