code: public Metadata parse(Element element, ParserContext context) {
          AbstractBlueprintBeanDefinitionParser definitionParser = retrieveDefinitionParser(element);
          try {
              return definitionParser.parse(element, context);
          } catch (Exception e) {
              throw new ComponentDefinitionException("Could not parse " + element.getNodeName() + " because of "
                      + e.getMessage(), e);
          }
      }
docs: {@inheritDoc}