Package com.sun.msv.verifier
Class AbstractVerifier
- java.lang.Object
-
- com.sun.msv.verifier.AbstractVerifier
-
- All Implemented Interfaces:
IDContextProvider2,org.relaxng.datatype.ValidationContext,ContentHandler,DTDHandler
- Direct Known Subclasses:
Verifier
public abstract class AbstractVerifier extends Object implements ContentHandler, DTDHandler, IDContextProvider2
Base implementation for various Verifier implementations. This implementation provides common service like:- collecting ID/IDREFs.
- storing Locator.
By setting
performIDcheckvariable, the ID/IDREF checking can be either turned on or turned off.
- Author:
- Kohsuke KAWAGUCHI
-
-
Field Summary
Fields Modifier and Type Field Description protected static LocatordummyLocatorprotected Setidrefsthis map remembers every IDREF token encountered in this documentprotected Mapidsthis map remembers every ID token encountered in this documentprotected LocatorlocatorDocument Locator that is given by XML reader.protected NamespaceSupportnamespaceSupportnamespace prefix to namespace URI resolver.protected booleanperformIDcheckset this flag to true to perform ID/IDREF validation.
-
Constructor Summary
Constructors Constructor Description AbstractVerifier()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidendElement(String namespaceUri, String localName, String qName)voidendPrefixMapping(String prefix)StringgetBaseUri()LocatorgetLocator()protected voidinit()booleanisNotation(String notationName)booleanisUnparsedEntity(String entityName)voidnotationDecl(String name, String publicId, String systemId)protected abstract voidonDuplicateId(String id)this method is called when a duplicate id value is found.voidonID(org.relaxng.datatype.Datatype dt, StringToken token)this method is called when a type with ID semantics is matched.voidprocessingInstruction(String name, String data)StringresolveNamespacePrefix(String prefix)voidsetDocumentLocator(Locator loc)voidskippedEntity(String p)voidstartElement(String namespaceUri, String localName, String qName, Attributes atts)voidstartPrefixMapping(String prefix, String uri)voidunparsedEntityDecl(String name, String publicId, String systemId, String notationName)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.xml.sax.ContentHandler
characters, endDocument, ignorableWhitespace, startDocument
-
-
-
-
Field Detail
-
locator
protected Locator locator
Document Locator that is given by XML reader. Sometimes it doesn't set the locator, so start with a dummy instance.
-
dummyLocator
protected static final Locator dummyLocator
-
performIDcheck
protected boolean performIDcheck
set this flag to true to perform ID/IDREF validation. this value cannot be modified in the middle of the validation.
-
ids
protected final Map ids
this map remembers every ID token encountered in this document
-
idrefs
protected final Set idrefs
this map remembers every IDREF token encountered in this document
-
namespaceSupport
protected final NamespaceSupport namespaceSupport
namespace prefix to namespace URI resolver. this object memorizes mapping information.
-
-
Method Detail
-
getLocator
public final Locator getLocator()
-
setDocumentLocator
public void setDocumentLocator(Locator loc)
- Specified by:
setDocumentLocatorin interfaceContentHandler
-
skippedEntity
public void skippedEntity(String p)
- Specified by:
skippedEntityin interfaceContentHandler
-
processingInstruction
public void processingInstruction(String name, String data)
- Specified by:
processingInstructionin interfaceContentHandler
-
startPrefixMapping
public void startPrefixMapping(String prefix, String uri)
- Specified by:
startPrefixMappingin interfaceContentHandler
-
endPrefixMapping
public void endPrefixMapping(String prefix)
- Specified by:
endPrefixMappingin interfaceContentHandler
-
startElement
public void startElement(String namespaceUri, String localName, String qName, Attributes atts) throws SAXException
- Specified by:
startElementin interfaceContentHandler- Throws:
SAXException
-
endElement
public void endElement(String namespaceUri, String localName, String qName) throws SAXException
- Specified by:
endElementin interfaceContentHandler- Throws:
SAXException
-
init
protected void init()
-
notationDecl
public void notationDecl(String name, String publicId, String systemId)
- Specified by:
notationDeclin interfaceDTDHandler
-
unparsedEntityDecl
public void unparsedEntityDecl(String name, String publicId, String systemId, String notationName)
- Specified by:
unparsedEntityDeclin interfaceDTDHandler
-
resolveNamespacePrefix
public String resolveNamespacePrefix(String prefix)
- Specified by:
resolveNamespacePrefixin interfaceorg.relaxng.datatype.ValidationContext
-
isUnparsedEntity
public boolean isUnparsedEntity(String entityName)
- Specified by:
isUnparsedEntityin interfaceorg.relaxng.datatype.ValidationContext
-
isNotation
public boolean isNotation(String notationName)
- Specified by:
isNotationin interfaceorg.relaxng.datatype.ValidationContext
-
getBaseUri
public String getBaseUri()
- Specified by:
getBaseUriin interfaceorg.relaxng.datatype.ValidationContext
-
onDuplicateId
protected abstract void onDuplicateId(String id)
this method is called when a duplicate id value is found.
-
onID
public void onID(org.relaxng.datatype.Datatype dt, StringToken token)Description copied from interface:IDContextProvider2this method is called when a type with ID semantics is matched. It is the callee's responsibility that stores ID and checks doubly defined ID, if it is necessary.- Specified by:
onIDin interfaceIDContextProvider2
-
-