code: public void parsePropertyElement(Element ele, BeanDefinition bd) {
      String propertyName = ele.getAttribute(NAME_ATTRIBUTE);
      if (!StringUtils.hasLength(propertyName)) {
        error("Tag 'property' must have a 'name' attribute", ele);
        return;
      }
      this.parseState.push(new PropertyEntry(propertyName));
      try {
        if (bd.getPropertyValues().contains(propertyName)) {
          error("Multiple 'property' definitions for property '" + propertyName + "'", ele);
          return;
        }
        Object val = parsePropertyValue(ele, bd, propertyName);
        PropertyValue pv = new PropertyValue(propertyName, val);
        parseMetaElements(ele, pv);
        pv.setSource(extractSource(ele));
        bd.getPropertyValues().addPropertyValue(pv);
      } finally {
        this.parseState.pop();
      }
    }
docs: Parse a property element.
  
  @param ele a {@link org.w3c.dom.Element} object.
  @param bd a {@link org.springframework.beans.factory.config.BeanDefinition} object.