public void parseChildElement(XMLStreamReader xtr, BaseElement parentElement, BpmnModel model)
      throws Exception {
    if (parentElement instanceof EndEvent == false) return;

    TerminateEventDefinition eventDefinition = new TerminateEventDefinition();
    BpmnXMLUtil.addXMLLocation(eventDefinition, xtr);

    BpmnXMLUtil.parseChildElements(ELEMENT_EVENT_TERMINATEDEFINITION, eventDefinition, xtr, model);

    ((Event) parentElement).getEventDefinitions().add(eventDefinition);
  }
  protected void parseChildElements(
      String elementName,
      BaseElement parentElement,
      Map<String, BaseChildElementParser> additionalParsers,
      BpmnModel model,
      XMLStreamReader xtr)
      throws Exception {

    Map<String, BaseChildElementParser> childParsers =
        new HashMap<String, BaseChildElementParser>();
    if (additionalParsers != null) {
      childParsers.putAll(additionalParsers);
    }
    BpmnXMLUtil.parseChildElements(elementName, parentElement, xtr, childParsers, model);
  }