dm_observ_is_valid Function

public pure elemental function dm_observ_is_valid(observ, id, timestamp) result(valid)

Returns .true. if given observation is valid. An observation is valid if it conforms to the following requirements:

  • A valid observation id, node id, sensor id, and target id are set, and the observation id does not equal the default UUID, unless argument id is passed and .false..
  • The observation name is a valid id (limited character set, no white spaces).
  • The attribute timestamp is set and in ISO 8601 format, unless argument timestamp is passed and .false..
  • The attributes priority is not negative.
  • The attribute error is a valid error code.
  • The attributes next and nreceivers are within the bounds of the array receivers, or 0.
  • The attribute nrequests is within the bounds of the array requests, or 0.
  • All receiver names are valid ids.
  • All requests and responses are valid.

Arguments

Type IntentOptional Attributes Name
type(observ_type), intent(in) :: observ

Observation type.

logical, intent(in), optional :: id

Enable id validation (on by default).

logical, intent(in), optional :: timestamp

Enable timestamp validation (on by default).

Return Value logical


Calls

proc~~dm_observ_is_valid~~CallsGraph proc~dm_observ_is_valid dm_observ_is_valid proc~dm_error_is_valid dm_error_is_valid proc~dm_observ_is_valid->proc~dm_error_is_valid proc~dm_id_is_valid dm_id_is_valid proc~dm_observ_is_valid->proc~dm_id_is_valid proc~dm_request_is_valid dm_request_is_valid proc~dm_observ_is_valid->proc~dm_request_is_valid proc~dm_time_is_valid dm_time_is_valid proc~dm_observ_is_valid->proc~dm_time_is_valid proc~dm_uuid4_is_valid dm_uuid4_is_valid proc~dm_observ_is_valid->proc~dm_uuid4_is_valid proc~dm_request_is_valid->proc~dm_error_is_valid proc~dm_request_is_valid->proc~dm_id_is_valid proc~dm_request_is_valid->proc~dm_time_is_valid proc~dm_response_is_valid dm_response_is_valid proc~dm_request_is_valid->proc~dm_response_is_valid proc~dm_string_is_printable dm_string_is_printable proc~dm_request_is_valid->proc~dm_string_is_printable proc~dm_ascii_is_digit dm_ascii_is_digit proc~dm_time_is_valid->proc~dm_ascii_is_digit proc~dm_response_is_valid->proc~dm_error_is_valid proc~dm_response_is_valid->proc~dm_id_is_valid proc~dm_response_type_is_valid dm_response_type_is_valid proc~dm_response_is_valid->proc~dm_response_type_is_valid proc~dm_ascii_is_printable dm_ascii_is_printable proc~dm_string_is_printable->proc~dm_ascii_is_printable

Called by

proc~~dm_observ_is_valid~~CalledByGraph proc~dm_observ_is_valid dm_observ_is_valid proc~dm_db_insert_observ dm_db_insert_observ proc~dm_db_insert_observ->proc~dm_observ_is_valid proc~dm_job_list_add dm_job_list_add proc~dm_job_list_add->proc~dm_observ_is_valid interface~dm_db_insert dm_db_insert interface~dm_db_insert->proc~dm_db_insert_observ proc~dm_db_insert_observs dm_db_insert_observs interface~dm_db_insert->proc~dm_db_insert_observs proc~dm_db_insert_observs->proc~dm_db_insert_observ