|
||||||||||
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.XmlDocumentHandler
Implements the behaviour of the XML reader Methods of an object of this class are called by the SAX parser when events will appear. The idea is to parse the XML document and construct Gate annotations objects. This class also will replace the content of the Gate document with a new one containing anly text from the XML document.
Inner Class Summary | |
(package private) class |
XmlDocumentHandler.CustomObject
The objects belonging to this class are used inside the stack. |
Field Summary | |
private SimpleErrorHandler |
_seh
This object inducates what to do when the parser encounts an error |
private AnnotationSet |
basicAS
An annotation set used for creating annotation reffering the doc |
private LinkedList |
colector
We need a colection to retain all the CustomObjects that will be transformed into annotation over the gate document... |
protected int |
customObjectsId
This is used to generate unique Ids for the CustomObjects read |
private static boolean |
DEBUG
Debug flag |
private Document |
doc
A gate document |
private Map |
element2StringMap
|
private int |
elements
This reports the the number of elements that have beed processed so far |
(package private) static int |
ELEMENTS_RATE
|
private Map |
markupElementsMap
|
protected List |
myStatusListeners
Listeners for status report |
private Stack |
stack
A stack used to remember elements and to keep the order |
private StringBuffer |
tmpDocContent
The content of the XML document, without any tag for internal use |
Constructor Summary | |
XmlDocumentHandler(Document aDocument,
Map aMarkupElementsMap,
Map anElement2StringMap)
Constructs a XmlDocumentHandler object. |
|
XmlDocumentHandler(Document aDocument,
Map aMarkupElementsMap,
Map anElement2StringMap,
AnnotationSet anAnnotationSet)
Constructs a XmlDocumentHandler object. |
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 |
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. |
int |
getCustomObjectsId()
Accesor method for the customObjectsId field |
private String |
getMyLocalName(String aQName)
This method is a workaround of the java 4 non namespace supporting parser It receives a qualified name and returns its local name. |
private String |
getMyURI(String aQName)
Also a workaround for URI identifier. |
void |
ignorableWhitespace(char[] ch,
int start,
int length)
This method is called when the SAX parser encounts white spaces |
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 Map markupElementsMap
private Map element2StringMap
private SimpleErrorHandler _seh
private StringBuffer tmpDocContent
private Stack stack
private Document doc
private AnnotationSet basicAS
protected List myStatusListeners
private int elements
private LinkedList colector
protected int customObjectsId
Constructor Detail |
public XmlDocumentHandler(Document aDocument, Map aMarkupElementsMap, Map anElement2StringMap)
aDocument
- the Gate document that will be processed.aMarkupElementsMap
- this map contains the elements name that we
want to create.anElement2StringMap
- this map contains the strings that will be
added to the text contained by the key element.public XmlDocumentHandler(Document aDocument, Map aMarkupElementsMap, Map anElement2StringMap, AnnotationSet anAnnotationSet)
aDocument
- the Gate document that will be processed.aMarkupElementsMap
- this map contains the elements name that we
want to create.anElement2StringMap
- this map contains the strings that will be
added to the text contained by the key element.anAnnotationSet
- is the annotation set that will be filled when the
document was processedMethod 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
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)
private String getMyLocalName(String aQName)
private String getMyURI(String aQName)
public int getCustomObjectsId()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |