/** {@inheritDoc} */ protected void processChildElement(XMLObject parentElement, XMLObject childElement) throws UnmarshallingException { Request request = (Request) parentElement; try { if (childElement instanceof Query) { request.setQuery((Query) childElement); } else if (childElement instanceof AssertionIDReference) { request.getAssertionIDReferences().add((AssertionIDReference) childElement); } else if (childElement instanceof AssertionArtifact) { request.getAssertionArtifacts().add((AssertionArtifact) childElement); } else { super.processChildElement(parentElement, childElement); } } catch (IllegalArgumentException e) { throw new UnmarshallingException(e); } }