dimsf[0] = H5S_UNLIMITED;
    dimsf[1] = H5S_UNLIMITED;
    dataspace = H5Screate_simple(rank, dimsf, NULL); 
    /* Create a dataset */
    dataset = H5Dcreate2(file, "Dataset1", H5T_UINT8, dataspace, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
    <Write data to first dataset>
    /* Create an attribute for the dataset */
    attr = H5Acreate2(dataset, ".", "Attr1", H5T_INT32, H5S_SCALAR, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
    attr = H5Acreate2(dataset, "Attr1", H5T_INT32, H5S_SCALAR, H5P_DEFAULT, H5P_DEFAULT);
    /* Write attribute information */
    H5Awrite(attr, H5T_INT32, &attr_data);
    /* Close attribute */
    H5Aclose(attr);
    /* Close dataset */
    H5Dclose(dataset);
    /* Create a group */
    group = H5Gcreate2(file, "/Group One", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
    /* Create an attribute for the dataset */
    attr = H5Acreate2(group, ".", "Attr1", H5T_INT32, H5S_SCALAR, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
    attr = H5Acreate2(group, "Attr1", H5T_INT32, H5S_SCALAR, H5P_DEFAULT, H5P_DEFAULT);
    /* Write attribute information */
    H5Awrite(attr, H5T_INT32, &attr_data);
    /* Close attribute */
    H5Aclose(attr);
    /* Close the group */
    H5Gclose(group);