code: public Map<String, String> getValueMap(Map<String, String> defaultValue) {
  
          if (this == CmsProperty.NULL_PROPERTY) {
              // return the default value if this property is the null property
              return defaultValue;
          }
  
          // somebody might have set both values to null manually
          // on a property object different from the null property...
          return (m_structureValue != null)
          ? getStructureValueMap()
          : ((m_resourceValue != null) ? getResourceValueMap() : defaultValue);
      }
docs: Returns the compound value of this property as a map, or a specified default value map,
  if both the structure and resource values are null.<p>
  
  In other words, this method returns the defaultValue if this property object
  is the null property (see {@link CmsProperty#getNullProperty()}).<p>
  
  @param defaultValue a default value map which is returned if both the structure and resource values are <code>null</code>
  
  @return the compound value of this property as a (unmodifiable) map of Strings