code: def validate_any(prop, value, xpath_map=None):
      
  
      if value is not None:
          if prop in (ATTRIBUTES, CONTACTS, DIGITAL_FORMS):
              validate_complex_list(prop, value, xpath_map)
  
          elif prop in (BOUNDING_BOX, LARGER_WORKS, RASTER_INFO):
              validate_complex(prop, value, xpath_map)
  
          elif prop == DATES:
              validate_dates(prop, value, xpath_map)
  
          elif prop == PROCESS_STEPS:
              validate_process_steps(prop, value)
  
          elif prop not in _supported_props and xpath_map is not None:
              # Validate custom data structures as complex lists by default
              validate_complex_list(prop, value, xpath_map)
  
          else:
              for val in wrap_value(value, include_empty=True):
                  validate_type(prop, val, (string_types, list))
docs: Validates any metadata property, complex or simple (string or array)