LOGICAL FUNCTION   RDATT3( FNAME, VNAME, ANAME, ATYPE, AMAX,
 &                             ASIZE, AVAL )
    LOGICAL ENTRY      RDATTC( FNAME, VNAME, ANAME, CVAL )
    
        CHARACTER*(*), INTENT(IN   ) :: FNAME         !  logical file name
        CHARACTER*(*), INTENT(IN   ) :: VNAME         !  variable name, or ALLVARS3
        CHARACTER*(*), INTENT(IN   ) :: ANAME         !  attribute name
        INTEGER      , INTENT(IN   ) :: ATYPE         !  attribute type (M3CHAR, M3REAL, M3INT, M3INT8, M3DBLE)
        INTEGER      , INTENT(IN   ) :: AMAX          !  attribute dimensionality
        INTEGER      , INTENT(  OUT) :: ASIZE         !  attribute actual size
        REAL         , INTENT(  OUT) :: AVAL( AMAX )  !  attribute value (numeric)
        CHARACTER*(*), INTENT(  OUT) :: CVAL          !  attribute value (character-string)
rdatt3c() is a C wrapper calling the Fortran 
    RDATT3() and RDATTC():
    integer rdatt3c( const char          * fname ,
                     const char          * vname ,
                     const char          * aname ,
                     int                   atype ,
                     int                   amax ,
                     int                 * asize ,
                     void                * aval )
RDATT3() reads the numeric (INTEGER, REAL, or
    DOUBLE attribute named ANAME for the variable
    VNAME in the file with
    logical name FNAME
    into the array AVAL(AMAX); RDATTC() reads
    the CHARACTER string valued attribute into string
    CVAL.
    
    
    Returns  .TRUE. (or 1) if the operation succeeds,
    .FALSE. (or 0) if it fails.  For failure, writes
    a log message indicating the nature of the failure.
    
For Fortran-90 declarations:
    USE M3UTILIO
    
USE M3UTILIO
    or INCLUDE 'IODECL3.EXT'
    for Fortran, or 
    #include "iodecl3.h" and 
    #include "fdesc3.h" for C.
     
    I/O API must already be initialized by a call to
    INIT3().
    
 
    
    Names FNAME and VNAME must have length
    at most 16, exclusive of trailing blanks.
    
 
    File FNAME must must be netCDF-based rather than 
    "buffered" or "virtual"; it must already have
    been opened by  OPEN3() or
    open3c().
    
 
        
    Actual on-file value of the attribute must have at most
    AMAX array elements, or must be a string of 
    length at most LEN(CVAL).
    
    ...
    USE M3UTILIO
    ...
    <under construction>
    ...
    ...
    #include "iodecl3.h"
    ...
    <under construction>
    ...
To: Models-3/EDSS I/O API: The Help Pages