anchor.diff:    real(R8P),                  intent(in)    :: y(1:) !< Y coordinates.
     real(R8P),                  intent(in)    :: z(1:) !< Z coordinates.
     integer(I4P)                              :: error !< Error status.
  -  !---------------------------------------------------------------------------------------------------------------------------------
  -
  -  !---------------------------------------------------------------------------------------------------------------------------------
  +
     if ((np/=size(x, dim=1)).or.(np/=size(y, dim=1)).or.(np/=size(z, dim=1))) then
       self%error = 1
       return
  
positive.code:   integer(I2P),               intent(in)           :: z(1:)        !< Z component of data variable.
    logical,                    intent(in), optional :: is_tuples    !< Use "NumberOfTuples" instead of "NumberOfComponents".
    integer(I4P)                                     :: error        !< Error status.
    !---------------------------------------------------------------------------------------------------------------------------------
    endfunction write_dataarray3_rank1_I2P_interface
  
    function write_dataarray3_rank1_I1P_interface(self, data_name, x, y, z, is_tuples) result(error)
    !---------------------------------------------------------------------------------------------------------------------------------
    !< Write `<DataArray... NumberOfComponents="3"...>...</DataArray>` tag (I1P).
    !---------------------------------------------------------------------------------------------------------------------------------
    import :: xml_writer_abstract, I1P, I4P
    class(xml_writer_abstract), intent(inout)        :: self         !< Writer.
    character(*),               intent(in)           :: data_name    !< Data name.
  
negative.code:   integer(I8P),               intent(in)           :: z(1:)        !< Z component of data variable.
    logical,                    intent(in), optional :: is_tuples    !< Use "NumberOfTuples" instead of "NumberOfComponents".
    integer(I4P)                                     :: error        !< Error status.
    endfunction write_dataarray3_rank1_I8P_interface
  
    function write_dataarray3_rank1_I4P_interface(self, data_name, x, y, z, is_tuples) result(error)
    !< Write `<DataArray... NumberOfComponents="3"...>...</DataArray>` tag (I4P).
    import :: xml_writer_abstract, I4P
    class(xml_writer_abstract), intent(inout)        :: self         !< Writer.
    character(*),               intent(in)           :: data_name    !< Data name.
  