// in pass through so we must not process this event, just
// pass it straight through to the next process
super.endElement(namespaceURI, localName, qName);
} else {
// check to see if a rule has been registered against this element
DynamicElementRule rule = retrieveRule(namespaceURI, localName);
// if a rule has been registered then execute it
if (rule != null) {
// retrieve the object that this rule returned when its
// startElement method was invoked
Object object = objects.pop();
// invoke the endElement method
rule.endElement(dynamicProcess, searchName, object);
// As rule was found so we must consume this pipeline event
} else {
// no rule found so forward event to next process
super.endElement(namespaceURI, localName, qName);
}