/* Ok, event needs to know its exact starting point (opening '<'
* char), let's get that info now (note: data has been preserved
* earlier)
*/
Location evtLoc = getStartLocation();
EntityDecl ent;
try {
c = skipObligatoryDtdWs();
if (c == '\'' || c == '"') { // internal entity
/* Let's get the exact location of actual content, not the
* opening quote. To do that, need to 'peek' next char, then
* push it back:
*/
/*char foo =*/ dtdNextFromCurr();
Location contentLoc = getLastCharLocation();
--mInputPtr; // pushback
char[] contents = parseEntityValue(id, contentLoc, c);
ent = new IntEntity(evtLoc, id, getSource(), contents,
contentLoc);
} else {