code: public Map<String, String> parse(Map<String, String> style) {
      	Map<String, String> mapRtn = new HashMap<String, String>();
      	for (String pos : new String[] {null, TOP, RIGHT, BOTTOM, LEFT}) {
      		// border[-attr]
      		if (pos == null) {
      			setBorderAttr(mapRtn, pos, style.get(BORDER));
      			setBorderAttr(mapRtn, pos, style.get(BORDER + "-" + COLOR));
      			setBorderAttr(mapRtn, pos, style.get(BORDER + "-" + WIDTH));
      			setBorderAttr(mapRtn, pos, style.get(BORDER + "-" + STYLE));
      		}
      		// border-pos[-attr]
      		else {
      			setBorderAttr(mapRtn, pos, style.get(BORDER + "-" + pos));
      			for (String attr : new String[] {COLOR, WIDTH, STYLE}) {
      				String attrName = BORDER + "-" + pos + "-" + attr;
      				String attrValue = style.get(attrName);
      				if (StringUtils.isNotBlank(attrValue)) {
      					mapRtn.put(attrName, attrValue);
      				}
      			}
      		}
      	}
  	    return mapRtn;
      }
docs: {@inheritDoc}