code: public Properties parsePropsElement(Element propsEle) {
      ManagedProperties props = new ManagedProperties();
      props.setSource(extractSource(propsEle));
      props.setMergeEnabled(parseMergeAttribute(propsEle));
  
      List<Element> propEles = DomUtils.getChildElementsByTagName(propsEle, PROP_ELEMENT);
      for (Element propEle : propEles) {
        String key = propEle.getAttribute(KEY_ATTRIBUTE);
        // Trim the text value to avoid unwanted whitespace
        // caused by typical XML formatting.
        String value = DomUtils.getTextValue(propEle).trim();
        TypedStringValue keyHolder = new TypedStringValue(key);
        keyHolder.setSource(extractSource(propEle));
        TypedStringValue valueHolder = new TypedStringValue(value);
        valueHolder.setSource(extractSource(propEle));
        props.put(keyHolder, valueHolder);
      }
  
      return props;
    }
docs: Parse a props element.
  
  @param propsEle a {@link org.w3c.dom.Element} object.
  @return a {@link java.util.Properties} object.