xmlSAXUserParseFile returned error 27
SAX.setDocumentLocator()
SAX.startDocument()
SAX.internalSubset(item, , )
SAX.entityDecl(sampleEnt, 4, (null), (null), <!ELEMENT item (para)+>)
SAX.getParameterEntity(sampleEnt)
SAX.entityDecl(sampleEnt, 1, (null), (null), the hyacinth girl)
SAX.getEntity(sampleEnt)
SAX.getParameterEntity(sampleEnt)
SAX.elementDecl(item, 4, ...)
SAX.elementDecl(para, 3, ...)
SAX.externalSubset(item, , )
SAX.startElement(item)
SAX.startElement(para)
SAX.characters('they called me , 16)
SAX.getEntity(sampleEnt)
SAX.characters(the hyacinth girl, 17)
SAX.reference(sampleEnt)
SAX.characters(', 1)
SAX.endElement(para)
SAX.endElement(item)
SAX.endDocument()
