|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.xml.sax.helpers.DefaultHandler | +--gate.xml.GateFormatXmlDocumentHandler
Implements the behaviour of the XML reader. This is the reader for Gate Xml documents saved with DocumentImplementation.toXml() method.
Inner Class Summary | |
(package private) class |
GateFormatXmlDocumentHandler.AnnotationObject
An inner class modeling the information contained by an annotation. |
Field Summary | |
private SimpleErrorHandler |
_seh
This object indicates what to do when the parser encounts an error |
private List |
colector
We need a colection to retain all the CustomObjects that will be transformed into annotation over the gate document... |
private GateFormatXmlDocumentHandler.AnnotationObject |
currentAnnot
This inner objects maps an annotation object. |
private AnnotationSet |
currentAnnotationSet
the current annotation set that is being created and filled with annotations |
private Stack |
currentElementStack
Holds the current element read. |
private String |
currentFeatureKeyClassName
The class name of the key in the current feature |
private String |
currentFeatureKeyItemClassName
If the key is a collection then we need to know the class name of the items present in this collection. |
private FeatureMap |
currentFeatureMap
A map holding current annotation's features |
private String |
currentFeatureName
A key of the current feature |
private String |
currentFeatureValue
The value of the current feature |
private String |
currentFeatureValueClassName
The class name for the value in the current feature |
private String |
currentFeatureValueItemClassName
If the value is a collection then we need to know the class name of the items present in this collection. |
private static boolean |
DEBUG
Debug flag |
private Document |
doc
A gate document |
private int |
elements
This reports the the number of elements that have beed processed so far |
(package private) static int |
ELEMENTS_RATE
This constant indicates when to fire the status listener. |
private Map |
id2Offset
Maps nodes Ids to their offset in the document text. |
protected List |
myStatusListeners
Listeners for status report |
private StringBuffer |
tmpDocContent
The content of the XML document, without any tag |
Constructor Summary | |
GateFormatXmlDocumentHandler(Document aDocument)
|
Method Summary | |
void |
addStatusListener(StatusListener listener)
This methos is called when a listener is registered with this class |
void |
characters(char[] text,
int start,
int length)
This method is called when the SAX parser encounts text in the XML doc. |
void |
comment(String text)
This method is called when the SAX parser encounts a comment It works only if the XmlDocumentHandler implements a com.sun.parser.LexicalEventListener |
private Object |
createFeatKey()
Creates a feature key using this information: currentFeatureKeyClassName, currentFeatureKeyItemClassName, currentFeatureName. |
private Object |
createFeatObject(String aFeatClassName,
String aFeatItemClassName,
String aFeatStringRepresentation)
This method tries to reconstruct an object given its class name and its string representation. |
private Object |
createFeatValue()
Creates a feature value using this information: currentFeatureValueClassName, currentFeatureValueItemClassName, currentFeatureValue. |
void |
endCDATA()
This method is called when the SAX parser encounts the end of a CDATA section. |
void |
endDocument()
This method is called when the SAX parser encounts the end of the XML document. |
void |
endElement(String uri,
String qName,
String elemName)
This method is called when the SAX parser encounts the end of an XML element. |
void |
endParsedEntity(String name,
boolean included)
This method is called when the SAX parser encounts a parsed entity and informs the application if that entity was parsed or not It's working only if the CustomDocumentHandler implements a com.sun.parser.LexicalEventListener |
void |
error(org.xml.sax.SAXParseException ex)
Error method.We deal with this exception inside SimpleErrorHandler class |
void |
fatalError(org.xml.sax.SAXParseException ex)
FatalError method. |
protected void |
fireStatusChangedEvent(String text)
This methos is called whenever we need to inform the listener about an event. |
void |
ignorableWhitespace(char[] ch,
int start,
int length)
This method is called when the SAX parser encounts white spaces |
private void |
processAnnotationElement(org.xml.sax.Attributes atts)
This method deals with a Annotation element. |
private void |
processAnnotationSetElement(org.xml.sax.Attributes atts)
This method deals with a AnnotationSet element. |
private void |
processFeatureElement(org.xml.sax.Attributes atts)
This method deals with a Features element. |
private void |
processNameElement(org.xml.sax.Attributes atts)
This method deals with the start of a Name element |
private void |
processNodeElement(org.xml.sax.Attributes atts)
This method deals with a Node element. |
private void |
processTextOfNameElement(String text)
This method deals with a Text belonging to Name element. |
private void |
processTextOfTextWithNodesElement(String text)
This method deals with a Text belonging to TextWithNodes element. |
private void |
processTextOfValueElement(String text)
This method deals with a Text belonging to Value element. |
private void |
processValueElement(org.xml.sax.Attributes atts)
This method deals with the start of a Value element |
private String |
recoverNewLineSequence(String text)
Restore new line as in the original document if needed |
void |
removeStatusListener(StatusListener listener)
This methos is called when a listener is removed |
void |
startCDATA()
This method is called when the SAX parser encounts a start of a CDATA section It works only if the XmlDocumentHandler implements a com.sun.parser.LexicalEventListener |
void |
startDocument()
This method is called when the SAX parser encounts the beginning of the XML document. |
void |
startElement(String uri,
String qName,
String elemName,
org.xml.sax.Attributes atts)
This method is called when the SAX parser encounts the beginning of an XML element. |
void |
startParsedEntity(String name)
This method is called when the SAX parser encounts a parsed Entity It works only if the XmlDocumentHandler implements a com.sun.parser.LexicalEventListener |
void |
warning(org.xml.sax.SAXParseException ex)
Warning method comment. |
Methods inherited from class org.xml.sax.helpers.DefaultHandler |
endPrefixMapping, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startPrefixMapping, unparsedEntityDecl |
Methods inherited from class java.lang.Object |
|
Field Detail |
private static final boolean DEBUG
static final int ELEMENTS_RATE
private SimpleErrorHandler _seh
private StringBuffer tmpDocContent
private Document doc
protected List myStatusListeners
private int elements
private List colector
private Map id2Offset
private Stack currentElementStack
private GateFormatXmlDocumentHandler.AnnotationObject currentAnnot
private FeatureMap currentFeatureMap
private String currentFeatureName
private String currentFeatureValue
private String currentFeatureKeyClassName
private String currentFeatureKeyItemClassName
private String currentFeatureValueClassName
private String currentFeatureValueItemClassName
private AnnotationSet currentAnnotationSet
Constructor Detail |
public GateFormatXmlDocumentHandler(Document aDocument)
Method Detail |
public void startDocument() throws org.xml.sax.SAXException
startDocument
in class org.xml.sax.helpers.DefaultHandler
public void endDocument() throws org.xml.sax.SAXException
endDocument
in class org.xml.sax.helpers.DefaultHandler
public void startElement(String uri, String qName, String elemName, org.xml.sax.Attributes atts)
startElement
in class org.xml.sax.helpers.DefaultHandler
public void endElement(String uri, String qName, String elemName) throws org.xml.sax.SAXException
endElement
in class org.xml.sax.helpers.DefaultHandler
public void characters(char[] text, int start, int length) throws org.xml.sax.SAXException
characters
in class org.xml.sax.helpers.DefaultHandler
public void ignorableWhitespace(char[] ch, int start, int length) throws org.xml.sax.SAXException
ignorableWhitespace
in class org.xml.sax.helpers.DefaultHandler
public void error(org.xml.sax.SAXParseException ex) throws org.xml.sax.SAXException
error
in class org.xml.sax.helpers.DefaultHandler
public void fatalError(org.xml.sax.SAXParseException ex) throws org.xml.sax.SAXException
fatalError
in class org.xml.sax.helpers.DefaultHandler
public void warning(org.xml.sax.SAXParseException ex) throws org.xml.sax.SAXException
warning
in class org.xml.sax.helpers.DefaultHandler
private void processAnnotationSetElement(org.xml.sax.Attributes atts)
private void processNameElement(org.xml.sax.Attributes atts)
private void processValueElement(org.xml.sax.Attributes atts)
private void processAnnotationElement(org.xml.sax.Attributes atts)
private void processFeatureElement(org.xml.sax.Attributes atts)
private void processNodeElement(org.xml.sax.Attributes atts)
private void processTextOfTextWithNodesElement(String text)
private String recoverNewLineSequence(String text)
private void processTextOfNameElement(String text) throws GateSaxException
private void processTextOfValueElement(String text) throws GateSaxException
private Object createFeatKey()
private Object createFeatValue()
private Object createFeatObject(String aFeatClassName, String aFeatItemClassName, String aFeatStringRepresentation)
aFeatClassName
- represents the name of the class of
the feat object being created. If it is null then the javaLang.String will
be used as default.aFeatItemClassName
- is it used only if aFeatClassName is a
collection.If it is null then java.lang.String will be used as default;aFeatStringRepresentation
- sais it allGateRuntimeException
- If it can't create an item, that
does not comply with its class definition, to add to the
collection.public void comment(String text) throws org.xml.sax.SAXException
public void startCDATA() throws org.xml.sax.SAXException
public void endCDATA() throws org.xml.sax.SAXException
public void startParsedEntity(String name) throws org.xml.sax.SAXException
public void endParsedEntity(String name, boolean included) throws org.xml.sax.SAXException
public void addStatusListener(StatusListener listener)
public void removeStatusListener(StatusListener listener)
protected void fireStatusChangedEvent(String text)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |