Index: /XIOS/dev/dev_oa/src/config/domain_attribute.conf
===================================================================
--- /XIOS/dev/dev_oa/src/config/domain_attribute.conf	(revision 1951)
+++ /XIOS/dev/dev_oa/src/config/domain_attribute.conf	(revision 1952)
@@ -63,2 +63,11 @@
 DECLARE_ATTRIBUTE(StdString, domain_ref)
 DECLARE_ATTRIBUTE(int,       prec)
+
+/* LOCAL */
+DECLARE_ATTRIBUTE(int, ntiles, false)
+DECLARE_ARRAY(int, 1, tile_ni, false)
+DECLARE_ARRAY(int, 1, tile_nj, false)
+DECLARE_ARRAY(int, 1, tile_ibegin, false)
+DECLARE_ARRAY(int, 1, tile_jbegin, false)
+DECLARE_ARRAY(int, 1, tile_data_ibegin, false)
+DECLARE_ARRAY(int, 1, tile_data_jbegin, false)
Index: /XIOS/dev/dev_oa/src/interface/c_attr/icdomain_attr.cpp
===================================================================
--- /XIOS/dev/dev_oa/src/interface/c_attr/icdomain_attr.cpp	(revision 1951)
+++ /XIOS/dev/dev_oa/src/interface/c_attr/icdomain_attr.cpp	(revision 1952)
@@ -905,4 +905,27 @@
 
 
+  void cxios_set_domain_ntiles(domain_Ptr domain_hdl, int ntiles)
+  {
+    CTimer::get("XIOS").resume();
+    domain_hdl->ntiles.setValue(ntiles);
+    CTimer::get("XIOS").suspend();
+  }
+
+  void cxios_get_domain_ntiles(domain_Ptr domain_hdl, int* ntiles)
+  {
+    CTimer::get("XIOS").resume();
+    *ntiles = domain_hdl->ntiles.getInheritedValue();
+    CTimer::get("XIOS").suspend();
+  }
+
+  bool cxios_is_defined_domain_ntiles(domain_Ptr domain_hdl)
+  {
+     CTimer::get("XIOS").resume();
+     bool isDefined = domain_hdl->ntiles.hasInheritedValue();
+     CTimer::get("XIOS").suspend();
+     return isDefined;
+  }
+
+
   void cxios_set_domain_nvertex(domain_Ptr domain_hdl, int nvertex)
   {
@@ -1000,4 +1023,154 @@
 
 
+  void cxios_set_domain_tile_data_ibegin(domain_Ptr domain_hdl, int* tile_data_ibegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_data_ibegin, shape(extent[0]), neverDeleteData);
+    domain_hdl->tile_data_ibegin.reference(tmp.copy());
+     CTimer::get("XIOS").suspend();
+  }
+
+  void cxios_get_domain_tile_data_ibegin(domain_Ptr domain_hdl, int* tile_data_ibegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_data_ibegin, shape(extent[0]), neverDeleteData);
+    tmp=domain_hdl->tile_data_ibegin.getInheritedValue();
+     CTimer::get("XIOS").suspend();
+  }
+
+  bool cxios_is_defined_domain_tile_data_ibegin(domain_Ptr domain_hdl)
+  {
+     CTimer::get("XIOS").resume();
+     bool isDefined = domain_hdl->tile_data_ibegin.hasInheritedValue();
+     CTimer::get("XIOS").suspend();
+     return isDefined;
+  }
+
+
+  void cxios_set_domain_tile_data_jbegin(domain_Ptr domain_hdl, int* tile_data_jbegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_data_jbegin, shape(extent[0]), neverDeleteData);
+    domain_hdl->tile_data_jbegin.reference(tmp.copy());
+     CTimer::get("XIOS").suspend();
+  }
+
+  void cxios_get_domain_tile_data_jbegin(domain_Ptr domain_hdl, int* tile_data_jbegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_data_jbegin, shape(extent[0]), neverDeleteData);
+    tmp=domain_hdl->tile_data_jbegin.getInheritedValue();
+     CTimer::get("XIOS").suspend();
+  }
+
+  bool cxios_is_defined_domain_tile_data_jbegin(domain_Ptr domain_hdl)
+  {
+     CTimer::get("XIOS").resume();
+     bool isDefined = domain_hdl->tile_data_jbegin.hasInheritedValue();
+     CTimer::get("XIOS").suspend();
+     return isDefined;
+  }
+
+
+  void cxios_set_domain_tile_ibegin(domain_Ptr domain_hdl, int* tile_ibegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_ibegin, shape(extent[0]), neverDeleteData);
+    domain_hdl->tile_ibegin.reference(tmp.copy());
+     CTimer::get("XIOS").suspend();
+  }
+
+  void cxios_get_domain_tile_ibegin(domain_Ptr domain_hdl, int* tile_ibegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_ibegin, shape(extent[0]), neverDeleteData);
+    tmp=domain_hdl->tile_ibegin.getInheritedValue();
+     CTimer::get("XIOS").suspend();
+  }
+
+  bool cxios_is_defined_domain_tile_ibegin(domain_Ptr domain_hdl)
+  {
+     CTimer::get("XIOS").resume();
+     bool isDefined = domain_hdl->tile_ibegin.hasInheritedValue();
+     CTimer::get("XIOS").suspend();
+     return isDefined;
+  }
+
+
+  void cxios_set_domain_tile_jbegin(domain_Ptr domain_hdl, int* tile_jbegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_jbegin, shape(extent[0]), neverDeleteData);
+    domain_hdl->tile_jbegin.reference(tmp.copy());
+     CTimer::get("XIOS").suspend();
+  }
+
+  void cxios_get_domain_tile_jbegin(domain_Ptr domain_hdl, int* tile_jbegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_jbegin, shape(extent[0]), neverDeleteData);
+    tmp=domain_hdl->tile_jbegin.getInheritedValue();
+     CTimer::get("XIOS").suspend();
+  }
+
+  bool cxios_is_defined_domain_tile_jbegin(domain_Ptr domain_hdl)
+  {
+     CTimer::get("XIOS").resume();
+     bool isDefined = domain_hdl->tile_jbegin.hasInheritedValue();
+     CTimer::get("XIOS").suspend();
+     return isDefined;
+  }
+
+
+  void cxios_set_domain_tile_ni(domain_Ptr domain_hdl, int* tile_ni, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_ni, shape(extent[0]), neverDeleteData);
+    domain_hdl->tile_ni.reference(tmp.copy());
+     CTimer::get("XIOS").suspend();
+  }
+
+  void cxios_get_domain_tile_ni(domain_Ptr domain_hdl, int* tile_ni, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_ni, shape(extent[0]), neverDeleteData);
+    tmp=domain_hdl->tile_ni.getInheritedValue();
+     CTimer::get("XIOS").suspend();
+  }
+
+  bool cxios_is_defined_domain_tile_ni(domain_Ptr domain_hdl)
+  {
+     CTimer::get("XIOS").resume();
+     bool isDefined = domain_hdl->tile_ni.hasInheritedValue();
+     CTimer::get("XIOS").suspend();
+     return isDefined;
+  }
+
+
+  void cxios_set_domain_tile_nj(domain_Ptr domain_hdl, int* tile_nj, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_nj, shape(extent[0]), neverDeleteData);
+    domain_hdl->tile_nj.reference(tmp.copy());
+     CTimer::get("XIOS").suspend();
+  }
+
+  void cxios_get_domain_tile_nj(domain_Ptr domain_hdl, int* tile_nj, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_nj, shape(extent[0]), neverDeleteData);
+    tmp=domain_hdl->tile_nj.getInheritedValue();
+     CTimer::get("XIOS").suspend();
+  }
+
+  bool cxios_is_defined_domain_tile_nj(domain_Ptr domain_hdl)
+  {
+     CTimer::get("XIOS").resume();
+     bool isDefined = domain_hdl->tile_nj.hasInheritedValue();
+     CTimer::get("XIOS").suspend();
+     return isDefined;
+  }
+
+
   void cxios_set_domain_type(domain_Ptr domain_hdl, const char * type, int type_size)
   {
Index: /XIOS/dev/dev_oa/src/interface/c_attr/icdomaingroup_attr.cpp
===================================================================
--- /XIOS/dev/dev_oa/src/interface/c_attr/icdomaingroup_attr.cpp	(revision 1951)
+++ /XIOS/dev/dev_oa/src/interface/c_attr/icdomaingroup_attr.cpp	(revision 1952)
@@ -931,4 +931,27 @@
 
 
+  void cxios_set_domaingroup_ntiles(domaingroup_Ptr domaingroup_hdl, int ntiles)
+  {
+    CTimer::get("XIOS").resume();
+    domaingroup_hdl->ntiles.setValue(ntiles);
+    CTimer::get("XIOS").suspend();
+  }
+
+  void cxios_get_domaingroup_ntiles(domaingroup_Ptr domaingroup_hdl, int* ntiles)
+  {
+    CTimer::get("XIOS").resume();
+    *ntiles = domaingroup_hdl->ntiles.getInheritedValue();
+    CTimer::get("XIOS").suspend();
+  }
+
+  bool cxios_is_defined_domaingroup_ntiles(domaingroup_Ptr domaingroup_hdl)
+  {
+     CTimer::get("XIOS").resume();
+     bool isDefined = domaingroup_hdl->ntiles.hasInheritedValue();
+     CTimer::get("XIOS").suspend();
+     return isDefined;
+  }
+
+
   void cxios_set_domaingroup_nvertex(domaingroup_Ptr domaingroup_hdl, int nvertex)
   {
@@ -1026,4 +1049,154 @@
 
 
+  void cxios_set_domaingroup_tile_data_ibegin(domaingroup_Ptr domaingroup_hdl, int* tile_data_ibegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_data_ibegin, shape(extent[0]), neverDeleteData);
+    domaingroup_hdl->tile_data_ibegin.reference(tmp.copy());
+     CTimer::get("XIOS").suspend();
+  }
+
+  void cxios_get_domaingroup_tile_data_ibegin(domaingroup_Ptr domaingroup_hdl, int* tile_data_ibegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_data_ibegin, shape(extent[0]), neverDeleteData);
+    tmp=domaingroup_hdl->tile_data_ibegin.getInheritedValue();
+     CTimer::get("XIOS").suspend();
+  }
+
+  bool cxios_is_defined_domaingroup_tile_data_ibegin(domaingroup_Ptr domaingroup_hdl)
+  {
+     CTimer::get("XIOS").resume();
+     bool isDefined = domaingroup_hdl->tile_data_ibegin.hasInheritedValue();
+     CTimer::get("XIOS").suspend();
+     return isDefined;
+  }
+
+
+  void cxios_set_domaingroup_tile_data_jbegin(domaingroup_Ptr domaingroup_hdl, int* tile_data_jbegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_data_jbegin, shape(extent[0]), neverDeleteData);
+    domaingroup_hdl->tile_data_jbegin.reference(tmp.copy());
+     CTimer::get("XIOS").suspend();
+  }
+
+  void cxios_get_domaingroup_tile_data_jbegin(domaingroup_Ptr domaingroup_hdl, int* tile_data_jbegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_data_jbegin, shape(extent[0]), neverDeleteData);
+    tmp=domaingroup_hdl->tile_data_jbegin.getInheritedValue();
+     CTimer::get("XIOS").suspend();
+  }
+
+  bool cxios_is_defined_domaingroup_tile_data_jbegin(domaingroup_Ptr domaingroup_hdl)
+  {
+     CTimer::get("XIOS").resume();
+     bool isDefined = domaingroup_hdl->tile_data_jbegin.hasInheritedValue();
+     CTimer::get("XIOS").suspend();
+     return isDefined;
+  }
+
+
+  void cxios_set_domaingroup_tile_ibegin(domaingroup_Ptr domaingroup_hdl, int* tile_ibegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_ibegin, shape(extent[0]), neverDeleteData);
+    domaingroup_hdl->tile_ibegin.reference(tmp.copy());
+     CTimer::get("XIOS").suspend();
+  }
+
+  void cxios_get_domaingroup_tile_ibegin(domaingroup_Ptr domaingroup_hdl, int* tile_ibegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_ibegin, shape(extent[0]), neverDeleteData);
+    tmp=domaingroup_hdl->tile_ibegin.getInheritedValue();
+     CTimer::get("XIOS").suspend();
+  }
+
+  bool cxios_is_defined_domaingroup_tile_ibegin(domaingroup_Ptr domaingroup_hdl)
+  {
+     CTimer::get("XIOS").resume();
+     bool isDefined = domaingroup_hdl->tile_ibegin.hasInheritedValue();
+     CTimer::get("XIOS").suspend();
+     return isDefined;
+  }
+
+
+  void cxios_set_domaingroup_tile_jbegin(domaingroup_Ptr domaingroup_hdl, int* tile_jbegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_jbegin, shape(extent[0]), neverDeleteData);
+    domaingroup_hdl->tile_jbegin.reference(tmp.copy());
+     CTimer::get("XIOS").suspend();
+  }
+
+  void cxios_get_domaingroup_tile_jbegin(domaingroup_Ptr domaingroup_hdl, int* tile_jbegin, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_jbegin, shape(extent[0]), neverDeleteData);
+    tmp=domaingroup_hdl->tile_jbegin.getInheritedValue();
+     CTimer::get("XIOS").suspend();
+  }
+
+  bool cxios_is_defined_domaingroup_tile_jbegin(domaingroup_Ptr domaingroup_hdl)
+  {
+     CTimer::get("XIOS").resume();
+     bool isDefined = domaingroup_hdl->tile_jbegin.hasInheritedValue();
+     CTimer::get("XIOS").suspend();
+     return isDefined;
+  }
+
+
+  void cxios_set_domaingroup_tile_ni(domaingroup_Ptr domaingroup_hdl, int* tile_ni, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_ni, shape(extent[0]), neverDeleteData);
+    domaingroup_hdl->tile_ni.reference(tmp.copy());
+     CTimer::get("XIOS").suspend();
+  }
+
+  void cxios_get_domaingroup_tile_ni(domaingroup_Ptr domaingroup_hdl, int* tile_ni, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_ni, shape(extent[0]), neverDeleteData);
+    tmp=domaingroup_hdl->tile_ni.getInheritedValue();
+     CTimer::get("XIOS").suspend();
+  }
+
+  bool cxios_is_defined_domaingroup_tile_ni(domaingroup_Ptr domaingroup_hdl)
+  {
+     CTimer::get("XIOS").resume();
+     bool isDefined = domaingroup_hdl->tile_ni.hasInheritedValue();
+     CTimer::get("XIOS").suspend();
+     return isDefined;
+  }
+
+
+  void cxios_set_domaingroup_tile_nj(domaingroup_Ptr domaingroup_hdl, int* tile_nj, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_nj, shape(extent[0]), neverDeleteData);
+    domaingroup_hdl->tile_nj.reference(tmp.copy());
+     CTimer::get("XIOS").suspend();
+  }
+
+  void cxios_get_domaingroup_tile_nj(domaingroup_Ptr domaingroup_hdl, int* tile_nj, int* extent)
+  {
+    CTimer::get("XIOS").resume();
+    CArray<int,1> tmp(tile_nj, shape(extent[0]), neverDeleteData);
+    tmp=domaingroup_hdl->tile_nj.getInheritedValue();
+     CTimer::get("XIOS").suspend();
+  }
+
+  bool cxios_is_defined_domaingroup_tile_nj(domaingroup_Ptr domaingroup_hdl)
+  {
+     CTimer::get("XIOS").resume();
+     bool isDefined = domaingroup_hdl->tile_nj.hasInheritedValue();
+     CTimer::get("XIOS").suspend();
+     return isDefined;
+  }
+
+
   void cxios_set_domaingroup_type(domaingroup_Ptr domaingroup_hdl, const char * type, int type_size)
   {
Index: /XIOS/dev/dev_oa/src/interface/fortran_attr/domain_interface_attr.F90
===================================================================
--- /XIOS/dev/dev_oa/src/interface/fortran_attr/domain_interface_attr.F90	(revision 1951)
+++ /XIOS/dev/dev_oa/src/interface/fortran_attr/domain_interface_attr.F90	(revision 1952)
@@ -744,4 +744,23 @@
 
 
+    SUBROUTINE cxios_set_domain_ntiles(domain_hdl, ntiles) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl
+      INTEGER (KIND=C_INT)      , VALUE :: ntiles
+    END SUBROUTINE cxios_set_domain_ntiles
+
+    SUBROUTINE cxios_get_domain_ntiles(domain_hdl, ntiles) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl
+      INTEGER (KIND=C_INT)             :: ntiles
+    END SUBROUTINE cxios_get_domain_ntiles
+
+    FUNCTION cxios_is_defined_domain_ntiles(domain_hdl) BIND(C)
+      USE ISO_C_BINDING
+      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domain_ntiles
+      INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl
+    END FUNCTION cxios_is_defined_domain_ntiles
+
+
     SUBROUTINE cxios_set_domain_nvertex(domain_hdl, nvertex) BIND(C)
       USE ISO_C_BINDING
@@ -822,4 +841,130 @@
 
 
+    SUBROUTINE cxios_set_domain_tile_data_ibegin(domain_hdl, tile_data_ibegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domain_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_data_ibegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_set_domain_tile_data_ibegin
+
+    SUBROUTINE cxios_get_domain_tile_data_ibegin(domain_hdl, tile_data_ibegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domain_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_data_ibegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_get_domain_tile_data_ibegin
+
+    FUNCTION cxios_is_defined_domain_tile_data_ibegin(domain_hdl) BIND(C)
+      USE ISO_C_BINDING
+      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domain_tile_data_ibegin
+      INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl
+    END FUNCTION cxios_is_defined_domain_tile_data_ibegin
+
+
+    SUBROUTINE cxios_set_domain_tile_data_jbegin(domain_hdl, tile_data_jbegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domain_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_data_jbegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_set_domain_tile_data_jbegin
+
+    SUBROUTINE cxios_get_domain_tile_data_jbegin(domain_hdl, tile_data_jbegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domain_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_data_jbegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_get_domain_tile_data_jbegin
+
+    FUNCTION cxios_is_defined_domain_tile_data_jbegin(domain_hdl) BIND(C)
+      USE ISO_C_BINDING
+      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domain_tile_data_jbegin
+      INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl
+    END FUNCTION cxios_is_defined_domain_tile_data_jbegin
+
+
+    SUBROUTINE cxios_set_domain_tile_ibegin(domain_hdl, tile_ibegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domain_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_ibegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_set_domain_tile_ibegin
+
+    SUBROUTINE cxios_get_domain_tile_ibegin(domain_hdl, tile_ibegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domain_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_ibegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_get_domain_tile_ibegin
+
+    FUNCTION cxios_is_defined_domain_tile_ibegin(domain_hdl) BIND(C)
+      USE ISO_C_BINDING
+      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domain_tile_ibegin
+      INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl
+    END FUNCTION cxios_is_defined_domain_tile_ibegin
+
+
+    SUBROUTINE cxios_set_domain_tile_jbegin(domain_hdl, tile_jbegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domain_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_jbegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_set_domain_tile_jbegin
+
+    SUBROUTINE cxios_get_domain_tile_jbegin(domain_hdl, tile_jbegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domain_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_jbegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_get_domain_tile_jbegin
+
+    FUNCTION cxios_is_defined_domain_tile_jbegin(domain_hdl) BIND(C)
+      USE ISO_C_BINDING
+      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domain_tile_jbegin
+      INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl
+    END FUNCTION cxios_is_defined_domain_tile_jbegin
+
+
+    SUBROUTINE cxios_set_domain_tile_ni(domain_hdl, tile_ni, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domain_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_ni
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_set_domain_tile_ni
+
+    SUBROUTINE cxios_get_domain_tile_ni(domain_hdl, tile_ni, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domain_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_ni
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_get_domain_tile_ni
+
+    FUNCTION cxios_is_defined_domain_tile_ni(domain_hdl) BIND(C)
+      USE ISO_C_BINDING
+      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domain_tile_ni
+      INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl
+    END FUNCTION cxios_is_defined_domain_tile_ni
+
+
+    SUBROUTINE cxios_set_domain_tile_nj(domain_hdl, tile_nj, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domain_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_nj
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_set_domain_tile_nj
+
+    SUBROUTINE cxios_get_domain_tile_nj(domain_hdl, tile_nj, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domain_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_nj
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_get_domain_tile_nj
+
+    FUNCTION cxios_is_defined_domain_tile_nj(domain_hdl) BIND(C)
+      USE ISO_C_BINDING
+      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domain_tile_nj
+      INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl
+    END FUNCTION cxios_is_defined_domain_tile_nj
+
+
     SUBROUTINE cxios_set_domain_type(domain_hdl, type, type_size) BIND(C)
       USE ISO_C_BINDING
Index: /XIOS/dev/dev_oa/src/interface/fortran_attr/domaingroup_interface_attr.F90
===================================================================
--- /XIOS/dev/dev_oa/src/interface/fortran_attr/domaingroup_interface_attr.F90	(revision 1951)
+++ /XIOS/dev/dev_oa/src/interface/fortran_attr/domaingroup_interface_attr.F90	(revision 1952)
@@ -765,4 +765,23 @@
 
 
+    SUBROUTINE cxios_set_domaingroup_ntiles(domaingroup_hdl, ntiles) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl
+      INTEGER (KIND=C_INT)      , VALUE :: ntiles
+    END SUBROUTINE cxios_set_domaingroup_ntiles
+
+    SUBROUTINE cxios_get_domaingroup_ntiles(domaingroup_hdl, ntiles) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl
+      INTEGER (KIND=C_INT)             :: ntiles
+    END SUBROUTINE cxios_get_domaingroup_ntiles
+
+    FUNCTION cxios_is_defined_domaingroup_ntiles(domaingroup_hdl) BIND(C)
+      USE ISO_C_BINDING
+      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domaingroup_ntiles
+      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl
+    END FUNCTION cxios_is_defined_domaingroup_ntiles
+
+
     SUBROUTINE cxios_set_domaingroup_nvertex(domaingroup_hdl, nvertex) BIND(C)
       USE ISO_C_BINDING
@@ -843,4 +862,130 @@
 
 
+    SUBROUTINE cxios_set_domaingroup_tile_data_ibegin(domaingroup_hdl, tile_data_ibegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_data_ibegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_set_domaingroup_tile_data_ibegin
+
+    SUBROUTINE cxios_get_domaingroup_tile_data_ibegin(domaingroup_hdl, tile_data_ibegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_data_ibegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_get_domaingroup_tile_data_ibegin
+
+    FUNCTION cxios_is_defined_domaingroup_tile_data_ibegin(domaingroup_hdl) BIND(C)
+      USE ISO_C_BINDING
+      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domaingroup_tile_data_ibegin
+      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl
+    END FUNCTION cxios_is_defined_domaingroup_tile_data_ibegin
+
+
+    SUBROUTINE cxios_set_domaingroup_tile_data_jbegin(domaingroup_hdl, tile_data_jbegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_data_jbegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_set_domaingroup_tile_data_jbegin
+
+    SUBROUTINE cxios_get_domaingroup_tile_data_jbegin(domaingroup_hdl, tile_data_jbegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_data_jbegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_get_domaingroup_tile_data_jbegin
+
+    FUNCTION cxios_is_defined_domaingroup_tile_data_jbegin(domaingroup_hdl) BIND(C)
+      USE ISO_C_BINDING
+      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domaingroup_tile_data_jbegin
+      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl
+    END FUNCTION cxios_is_defined_domaingroup_tile_data_jbegin
+
+
+    SUBROUTINE cxios_set_domaingroup_tile_ibegin(domaingroup_hdl, tile_ibegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_ibegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_set_domaingroup_tile_ibegin
+
+    SUBROUTINE cxios_get_domaingroup_tile_ibegin(domaingroup_hdl, tile_ibegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_ibegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_get_domaingroup_tile_ibegin
+
+    FUNCTION cxios_is_defined_domaingroup_tile_ibegin(domaingroup_hdl) BIND(C)
+      USE ISO_C_BINDING
+      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domaingroup_tile_ibegin
+      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl
+    END FUNCTION cxios_is_defined_domaingroup_tile_ibegin
+
+
+    SUBROUTINE cxios_set_domaingroup_tile_jbegin(domaingroup_hdl, tile_jbegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_jbegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_set_domaingroup_tile_jbegin
+
+    SUBROUTINE cxios_get_domaingroup_tile_jbegin(domaingroup_hdl, tile_jbegin, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_jbegin
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_get_domaingroup_tile_jbegin
+
+    FUNCTION cxios_is_defined_domaingroup_tile_jbegin(domaingroup_hdl) BIND(C)
+      USE ISO_C_BINDING
+      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domaingroup_tile_jbegin
+      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl
+    END FUNCTION cxios_is_defined_domaingroup_tile_jbegin
+
+
+    SUBROUTINE cxios_set_domaingroup_tile_ni(domaingroup_hdl, tile_ni, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_ni
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_set_domaingroup_tile_ni
+
+    SUBROUTINE cxios_get_domaingroup_tile_ni(domaingroup_hdl, tile_ni, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_ni
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_get_domaingroup_tile_ni
+
+    FUNCTION cxios_is_defined_domaingroup_tile_ni(domaingroup_hdl) BIND(C)
+      USE ISO_C_BINDING
+      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domaingroup_tile_ni
+      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl
+    END FUNCTION cxios_is_defined_domaingroup_tile_ni
+
+
+    SUBROUTINE cxios_set_domaingroup_tile_nj(domaingroup_hdl, tile_nj, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_nj
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_set_domaingroup_tile_nj
+
+    SUBROUTINE cxios_get_domaingroup_tile_nj(domaingroup_hdl, tile_nj, extent) BIND(C)
+      USE ISO_C_BINDING
+      INTEGER (kind = C_INTPTR_T), VALUE       :: domaingroup_hdl
+      INTEGER (KIND=C_INT)     , DIMENSION(*) :: tile_nj
+      INTEGER (kind = C_INT), DIMENSION(*)     :: extent
+    END SUBROUTINE cxios_get_domaingroup_tile_nj
+
+    FUNCTION cxios_is_defined_domaingroup_tile_nj(domaingroup_hdl) BIND(C)
+      USE ISO_C_BINDING
+      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domaingroup_tile_nj
+      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl
+    END FUNCTION cxios_is_defined_domaingroup_tile_nj
+
+
     SUBROUTINE cxios_set_domaingroup_type(domaingroup_hdl, type, type_size) BIND(C)
       USE ISO_C_BINDING
Index: /XIOS/dev/dev_oa/src/interface/fortran_attr/idomain_attr.F90
===================================================================
--- /XIOS/dev/dev_oa/src/interface/fortran_attr/idomain_attr.F90	(revision 1951)
+++ /XIOS/dev/dev_oa/src/interface/fortran_attr/idomain_attr.F90	(revision 1952)
@@ -16,5 +16,6 @@
     , data_nj, dim_i_name, dim_j_name, domain_ref, i_index, ibegin, j_index, jbegin, lat_name, latvalue_1d  &
     , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  &
-    , nj, nj_glo, nvertex, prec, radius, standard_name, type )
+    , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  &
+    , tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
     IMPLICIT NONE
@@ -59,8 +60,15 @@
       INTEGER  , OPTIONAL, INTENT(IN) :: nj
       INTEGER  , OPTIONAL, INTENT(IN) :: nj_glo
+      INTEGER  , OPTIONAL, INTENT(IN) :: ntiles
       INTEGER  , OPTIONAL, INTENT(IN) :: nvertex
       INTEGER  , OPTIONAL, INTENT(IN) :: prec
       REAL (KIND=8) , OPTIONAL, INTENT(IN) :: radius
       CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_data_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_data_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ni(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_nj(:)
       CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type
 
@@ -72,5 +80,6 @@
       , data_nj, dim_i_name, dim_j_name, domain_ref, i_index, ibegin, j_index, jbegin, lat_name, latvalue_1d  &
       , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  &
-      , nj, nj_glo, nvertex, prec, radius, standard_name, type )
+      , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  &
+      , tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
   END SUBROUTINE xios(set_domain_attr)
@@ -81,5 +90,6 @@
     , data_nj, dim_i_name, dim_j_name, domain_ref, i_index, ibegin, j_index, jbegin, lat_name, latvalue_1d  &
     , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  &
-    , nj, nj_glo, nvertex, prec, radius, standard_name, type )
+    , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  &
+    , tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
     IMPLICIT NONE
@@ -123,8 +133,15 @@
       INTEGER  , OPTIONAL, INTENT(IN) :: nj
       INTEGER  , OPTIONAL, INTENT(IN) :: nj_glo
+      INTEGER  , OPTIONAL, INTENT(IN) :: ntiles
       INTEGER  , OPTIONAL, INTENT(IN) :: nvertex
       INTEGER  , OPTIONAL, INTENT(IN) :: prec
       REAL (KIND=8) , OPTIONAL, INTENT(IN) :: radius
       CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_data_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_data_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ni(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_nj(:)
       CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type
 
@@ -134,5 +151,6 @@
       , data_nj, dim_i_name, dim_j_name, domain_ref, i_index, ibegin, j_index, jbegin, lat_name, latvalue_1d  &
       , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  &
-      , nj, nj_glo, nvertex, prec, radius, standard_name, type )
+      , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  &
+      , tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
   END SUBROUTINE xios(set_domain_attr_hdl)
@@ -143,5 +161,6 @@
     , data_ni_, data_nj_, dim_i_name_, dim_j_name_, domain_ref_, i_index_, ibegin_, j_index_, jbegin_  &
     , lat_name_, latvalue_1d_, latvalue_2d_, lon_name_, long_name_, lonvalue_1d_, lonvalue_2d_, mask_1d_  &
-    , mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, nvertex_, prec_, radius_, standard_name_, type_  &
+    , mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, ntiles_, nvertex_, prec_, radius_, standard_name_  &
+    , tile_data_ibegin_, tile_data_jbegin_, tile_ibegin_, tile_jbegin_, tile_ni_, tile_nj_, type_  &
      )
 
@@ -186,8 +205,15 @@
       INTEGER  , OPTIONAL, INTENT(IN) :: nj_
       INTEGER  , OPTIONAL, INTENT(IN) :: nj_glo_
+      INTEGER  , OPTIONAL, INTENT(IN) :: ntiles_
       INTEGER  , OPTIONAL, INTENT(IN) :: nvertex_
       INTEGER  , OPTIONAL, INTENT(IN) :: prec_
       REAL (KIND=8) , OPTIONAL, INTENT(IN) :: radius_
       CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name_
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_data_ibegin_(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_data_jbegin_(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ibegin_(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_jbegin_(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ni_(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_nj_(:)
       CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type_
 
@@ -376,4 +402,9 @@
       ENDIF
 
+      IF (PRESENT(ntiles_)) THEN
+        CALL cxios_set_domain_ntiles &
+      (domain_hdl%daddr, ntiles_)
+      ENDIF
+
       IF (PRESENT(nvertex_)) THEN
         CALL cxios_set_domain_nvertex &
@@ -394,4 +425,34 @@
         CALL cxios_set_domain_standard_name &
       (domain_hdl%daddr, standard_name_, len(standard_name_))
+      ENDIF
+
+      IF (PRESENT(tile_data_ibegin_)) THEN
+        CALL cxios_set_domain_tile_data_ibegin &
+      (domain_hdl%daddr, tile_data_ibegin_, SHAPE(tile_data_ibegin_))
+      ENDIF
+
+      IF (PRESENT(tile_data_jbegin_)) THEN
+        CALL cxios_set_domain_tile_data_jbegin &
+      (domain_hdl%daddr, tile_data_jbegin_, SHAPE(tile_data_jbegin_))
+      ENDIF
+
+      IF (PRESENT(tile_ibegin_)) THEN
+        CALL cxios_set_domain_tile_ibegin &
+      (domain_hdl%daddr, tile_ibegin_, SHAPE(tile_ibegin_))
+      ENDIF
+
+      IF (PRESENT(tile_jbegin_)) THEN
+        CALL cxios_set_domain_tile_jbegin &
+      (domain_hdl%daddr, tile_jbegin_, SHAPE(tile_jbegin_))
+      ENDIF
+
+      IF (PRESENT(tile_ni_)) THEN
+        CALL cxios_set_domain_tile_ni &
+      (domain_hdl%daddr, tile_ni_, SHAPE(tile_ni_))
+      ENDIF
+
+      IF (PRESENT(tile_nj_)) THEN
+        CALL cxios_set_domain_tile_nj &
+      (domain_hdl%daddr, tile_nj_, SHAPE(tile_nj_))
       ENDIF
 
@@ -408,5 +469,6 @@
     , data_nj, dim_i_name, dim_j_name, domain_ref, i_index, ibegin, j_index, jbegin, lat_name, latvalue_1d  &
     , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  &
-    , nj, nj_glo, nvertex, prec, radius, standard_name, type )
+    , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  &
+    , tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
     IMPLICIT NONE
@@ -451,8 +513,15 @@
       INTEGER  , OPTIONAL, INTENT(OUT) :: nj
       INTEGER  , OPTIONAL, INTENT(OUT) :: nj_glo
+      INTEGER  , OPTIONAL, INTENT(OUT) :: ntiles
       INTEGER  , OPTIONAL, INTENT(OUT) :: nvertex
       INTEGER  , OPTIONAL, INTENT(OUT) :: prec
       REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: radius
       CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_data_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_data_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ni(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_nj(:)
       CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type
 
@@ -464,5 +533,6 @@
       , data_nj, dim_i_name, dim_j_name, domain_ref, i_index, ibegin, j_index, jbegin, lat_name, latvalue_1d  &
       , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  &
-      , nj, nj_glo, nvertex, prec, radius, standard_name, type )
+      , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  &
+      , tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
   END SUBROUTINE xios(get_domain_attr)
@@ -473,5 +543,6 @@
     , data_nj, dim_i_name, dim_j_name, domain_ref, i_index, ibegin, j_index, jbegin, lat_name, latvalue_1d  &
     , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  &
-    , nj, nj_glo, nvertex, prec, radius, standard_name, type )
+    , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  &
+    , tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
     IMPLICIT NONE
@@ -515,8 +586,15 @@
       INTEGER  , OPTIONAL, INTENT(OUT) :: nj
       INTEGER  , OPTIONAL, INTENT(OUT) :: nj_glo
+      INTEGER  , OPTIONAL, INTENT(OUT) :: ntiles
       INTEGER  , OPTIONAL, INTENT(OUT) :: nvertex
       INTEGER  , OPTIONAL, INTENT(OUT) :: prec
       REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: radius
       CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_data_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_data_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ni(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_nj(:)
       CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type
 
@@ -526,5 +604,6 @@
       , data_nj, dim_i_name, dim_j_name, domain_ref, i_index, ibegin, j_index, jbegin, lat_name, latvalue_1d  &
       , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  &
-      , nj, nj_glo, nvertex, prec, radius, standard_name, type )
+      , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  &
+      , tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
   END SUBROUTINE xios(get_domain_attr_hdl)
@@ -535,5 +614,6 @@
     , data_ni_, data_nj_, dim_i_name_, dim_j_name_, domain_ref_, i_index_, ibegin_, j_index_, jbegin_  &
     , lat_name_, latvalue_1d_, latvalue_2d_, lon_name_, long_name_, lonvalue_1d_, lonvalue_2d_, mask_1d_  &
-    , mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, nvertex_, prec_, radius_, standard_name_, type_  &
+    , mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, ntiles_, nvertex_, prec_, radius_, standard_name_  &
+    , tile_data_ibegin_, tile_data_jbegin_, tile_ibegin_, tile_jbegin_, tile_ni_, tile_nj_, type_  &
      )
 
@@ -578,8 +658,15 @@
       INTEGER  , OPTIONAL, INTENT(OUT) :: nj_
       INTEGER  , OPTIONAL, INTENT(OUT) :: nj_glo_
+      INTEGER  , OPTIONAL, INTENT(OUT) :: ntiles_
       INTEGER  , OPTIONAL, INTENT(OUT) :: nvertex_
       INTEGER  , OPTIONAL, INTENT(OUT) :: prec_
       REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: radius_
       CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name_
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_data_ibegin_(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_data_jbegin_(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ibegin_(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_jbegin_(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ni_(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_nj_(:)
       CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type_
 
@@ -768,4 +855,9 @@
       ENDIF
 
+      IF (PRESENT(ntiles_)) THEN
+        CALL cxios_get_domain_ntiles &
+      (domain_hdl%daddr, ntiles_)
+      ENDIF
+
       IF (PRESENT(nvertex_)) THEN
         CALL cxios_get_domain_nvertex &
@@ -786,4 +878,34 @@
         CALL cxios_get_domain_standard_name &
       (domain_hdl%daddr, standard_name_, len(standard_name_))
+      ENDIF
+
+      IF (PRESENT(tile_data_ibegin_)) THEN
+        CALL cxios_get_domain_tile_data_ibegin &
+      (domain_hdl%daddr, tile_data_ibegin_, SHAPE(tile_data_ibegin_))
+      ENDIF
+
+      IF (PRESENT(tile_data_jbegin_)) THEN
+        CALL cxios_get_domain_tile_data_jbegin &
+      (domain_hdl%daddr, tile_data_jbegin_, SHAPE(tile_data_jbegin_))
+      ENDIF
+
+      IF (PRESENT(tile_ibegin_)) THEN
+        CALL cxios_get_domain_tile_ibegin &
+      (domain_hdl%daddr, tile_ibegin_, SHAPE(tile_ibegin_))
+      ENDIF
+
+      IF (PRESENT(tile_jbegin_)) THEN
+        CALL cxios_get_domain_tile_jbegin &
+      (domain_hdl%daddr, tile_jbegin_, SHAPE(tile_jbegin_))
+      ENDIF
+
+      IF (PRESENT(tile_ni_)) THEN
+        CALL cxios_get_domain_tile_ni &
+      (domain_hdl%daddr, tile_ni_, SHAPE(tile_ni_))
+      ENDIF
+
+      IF (PRESENT(tile_nj_)) THEN
+        CALL cxios_get_domain_tile_nj &
+      (domain_hdl%daddr, tile_nj_, SHAPE(tile_nj_))
       ENDIF
 
@@ -800,5 +922,6 @@
     , data_nj, dim_i_name, dim_j_name, domain_ref, i_index, ibegin, j_index, jbegin, lat_name, latvalue_1d  &
     , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  &
-    , nj, nj_glo, nvertex, prec, radius, standard_name, type )
+    , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  &
+    , tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
     IMPLICIT NONE
@@ -877,4 +1000,6 @@
       LOGICAL, OPTIONAL, INTENT(OUT) :: nj_glo
       LOGICAL(KIND=C_BOOL) :: nj_glo_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: ntiles
+      LOGICAL(KIND=C_BOOL) :: ntiles_tmp
       LOGICAL, OPTIONAL, INTENT(OUT) :: nvertex
       LOGICAL(KIND=C_BOOL) :: nvertex_tmp
@@ -885,4 +1010,16 @@
       LOGICAL, OPTIONAL, INTENT(OUT) :: standard_name
       LOGICAL(KIND=C_BOOL) :: standard_name_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_data_ibegin
+      LOGICAL(KIND=C_BOOL) :: tile_data_ibegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_data_jbegin
+      LOGICAL(KIND=C_BOOL) :: tile_data_jbegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_ibegin
+      LOGICAL(KIND=C_BOOL) :: tile_ibegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_jbegin
+      LOGICAL(KIND=C_BOOL) :: tile_jbegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_ni
+      LOGICAL(KIND=C_BOOL) :: tile_ni_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_nj
+      LOGICAL(KIND=C_BOOL) :: tile_nj_tmp
       LOGICAL, OPTIONAL, INTENT(OUT) :: type
       LOGICAL(KIND=C_BOOL) :: type_tmp
@@ -895,5 +1032,6 @@
       , data_nj, dim_i_name, dim_j_name, domain_ref, i_index, ibegin, j_index, jbegin, lat_name, latvalue_1d  &
       , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  &
-      , nj, nj_glo, nvertex, prec, radius, standard_name, type )
+      , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  &
+      , tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
   END SUBROUTINE xios(is_defined_domain_attr)
@@ -904,5 +1042,6 @@
     , data_nj, dim_i_name, dim_j_name, domain_ref, i_index, ibegin, j_index, jbegin, lat_name, latvalue_1d  &
     , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  &
-    , nj, nj_glo, nvertex, prec, radius, standard_name, type )
+    , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  &
+    , tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
     IMPLICIT NONE
@@ -980,4 +1119,6 @@
       LOGICAL, OPTIONAL, INTENT(OUT) :: nj_glo
       LOGICAL(KIND=C_BOOL) :: nj_glo_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: ntiles
+      LOGICAL(KIND=C_BOOL) :: ntiles_tmp
       LOGICAL, OPTIONAL, INTENT(OUT) :: nvertex
       LOGICAL(KIND=C_BOOL) :: nvertex_tmp
@@ -988,4 +1129,16 @@
       LOGICAL, OPTIONAL, INTENT(OUT) :: standard_name
       LOGICAL(KIND=C_BOOL) :: standard_name_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_data_ibegin
+      LOGICAL(KIND=C_BOOL) :: tile_data_ibegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_data_jbegin
+      LOGICAL(KIND=C_BOOL) :: tile_data_jbegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_ibegin
+      LOGICAL(KIND=C_BOOL) :: tile_ibegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_jbegin
+      LOGICAL(KIND=C_BOOL) :: tile_jbegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_ni
+      LOGICAL(KIND=C_BOOL) :: tile_ni_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_nj
+      LOGICAL(KIND=C_BOOL) :: tile_nj_tmp
       LOGICAL, OPTIONAL, INTENT(OUT) :: type
       LOGICAL(KIND=C_BOOL) :: type_tmp
@@ -996,5 +1149,6 @@
       , data_nj, dim_i_name, dim_j_name, domain_ref, i_index, ibegin, j_index, jbegin, lat_name, latvalue_1d  &
       , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  &
-      , nj, nj_glo, nvertex, prec, radius, standard_name, type )
+      , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  &
+      , tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
   END SUBROUTINE xios(is_defined_domain_attr_hdl)
@@ -1005,5 +1159,6 @@
     , data_ni_, data_nj_, dim_i_name_, dim_j_name_, domain_ref_, i_index_, ibegin_, j_index_, jbegin_  &
     , lat_name_, latvalue_1d_, latvalue_2d_, lon_name_, long_name_, lonvalue_1d_, lonvalue_2d_, mask_1d_  &
-    , mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, nvertex_, prec_, radius_, standard_name_, type_  &
+    , mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, ntiles_, nvertex_, prec_, radius_, standard_name_  &
+    , tile_data_ibegin_, tile_data_jbegin_, tile_ibegin_, tile_jbegin_, tile_ni_, tile_nj_, type_  &
      )
 
@@ -1082,4 +1237,6 @@
       LOGICAL, OPTIONAL, INTENT(OUT) :: nj_glo_
       LOGICAL(KIND=C_BOOL) :: nj_glo__tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: ntiles_
+      LOGICAL(KIND=C_BOOL) :: ntiles__tmp
       LOGICAL, OPTIONAL, INTENT(OUT) :: nvertex_
       LOGICAL(KIND=C_BOOL) :: nvertex__tmp
@@ -1090,4 +1247,16 @@
       LOGICAL, OPTIONAL, INTENT(OUT) :: standard_name_
       LOGICAL(KIND=C_BOOL) :: standard_name__tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_data_ibegin_
+      LOGICAL(KIND=C_BOOL) :: tile_data_ibegin__tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_data_jbegin_
+      LOGICAL(KIND=C_BOOL) :: tile_data_jbegin__tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_ibegin_
+      LOGICAL(KIND=C_BOOL) :: tile_ibegin__tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_jbegin_
+      LOGICAL(KIND=C_BOOL) :: tile_jbegin__tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_ni_
+      LOGICAL(KIND=C_BOOL) :: tile_ni__tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_nj_
+      LOGICAL(KIND=C_BOOL) :: tile_nj__tmp
       LOGICAL, OPTIONAL, INTENT(OUT) :: type_
       LOGICAL(KIND=C_BOOL) :: type__tmp
@@ -1309,4 +1478,10 @@
       ENDIF
 
+      IF (PRESENT(ntiles_)) THEN
+        ntiles__tmp = cxios_is_defined_domain_ntiles &
+      (domain_hdl%daddr)
+        ntiles_ = ntiles__tmp
+      ENDIF
+
       IF (PRESENT(nvertex_)) THEN
         nvertex__tmp = cxios_is_defined_domain_nvertex &
@@ -1333,4 +1508,40 @@
       ENDIF
 
+      IF (PRESENT(tile_data_ibegin_)) THEN
+        tile_data_ibegin__tmp = cxios_is_defined_domain_tile_data_ibegin &
+      (domain_hdl%daddr)
+        tile_data_ibegin_ = tile_data_ibegin__tmp
+      ENDIF
+
+      IF (PRESENT(tile_data_jbegin_)) THEN
+        tile_data_jbegin__tmp = cxios_is_defined_domain_tile_data_jbegin &
+      (domain_hdl%daddr)
+        tile_data_jbegin_ = tile_data_jbegin__tmp
+      ENDIF
+
+      IF (PRESENT(tile_ibegin_)) THEN
+        tile_ibegin__tmp = cxios_is_defined_domain_tile_ibegin &
+      (domain_hdl%daddr)
+        tile_ibegin_ = tile_ibegin__tmp
+      ENDIF
+
+      IF (PRESENT(tile_jbegin_)) THEN
+        tile_jbegin__tmp = cxios_is_defined_domain_tile_jbegin &
+      (domain_hdl%daddr)
+        tile_jbegin_ = tile_jbegin__tmp
+      ENDIF
+
+      IF (PRESENT(tile_ni_)) THEN
+        tile_ni__tmp = cxios_is_defined_domain_tile_ni &
+      (domain_hdl%daddr)
+        tile_ni_ = tile_ni__tmp
+      ENDIF
+
+      IF (PRESENT(tile_nj_)) THEN
+        tile_nj__tmp = cxios_is_defined_domain_tile_nj &
+      (domain_hdl%daddr)
+        tile_nj_ = tile_nj__tmp
+      ENDIF
+
       IF (PRESENT(type_)) THEN
         type__tmp = cxios_is_defined_domain_type &
Index: /XIOS/dev/dev_oa/src/interface/fortran_attr/idomaingroup_attr.F90
===================================================================
--- /XIOS/dev/dev_oa/src/interface/fortran_attr/idomaingroup_attr.F90	(revision 1951)
+++ /XIOS/dev/dev_oa/src/interface/fortran_attr/idomaingroup_attr.F90	(revision 1952)
@@ -16,5 +16,6 @@
     , data_nj, dim_i_name, dim_j_name, domain_ref, group_ref, i_index, ibegin, j_index, jbegin, lat_name  &
     , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  &
-    , name, ni, ni_glo, nj, nj_glo, nvertex, prec, radius, standard_name, type )
+    , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  &
+    , tile_data_jbegin, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
     IMPLICIT NONE
@@ -60,8 +61,15 @@
       INTEGER  , OPTIONAL, INTENT(IN) :: nj
       INTEGER  , OPTIONAL, INTENT(IN) :: nj_glo
+      INTEGER  , OPTIONAL, INTENT(IN) :: ntiles
       INTEGER  , OPTIONAL, INTENT(IN) :: nvertex
       INTEGER  , OPTIONAL, INTENT(IN) :: prec
       REAL (KIND=8) , OPTIONAL, INTENT(IN) :: radius
       CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_data_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_data_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ni(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_nj(:)
       CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type
 
@@ -73,5 +81,6 @@
       , data_nj, dim_i_name, dim_j_name, domain_ref, group_ref, i_index, ibegin, j_index, jbegin, lat_name  &
       , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  &
-      , name, ni, ni_glo, nj, nj_glo, nvertex, prec, radius, standard_name, type )
+      , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  &
+      , tile_data_jbegin, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
   END SUBROUTINE xios(set_domaingroup_attr)
@@ -82,5 +91,6 @@
     , data_nj, dim_i_name, dim_j_name, domain_ref, group_ref, i_index, ibegin, j_index, jbegin, lat_name  &
     , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  &
-    , name, ni, ni_glo, nj, nj_glo, nvertex, prec, radius, standard_name, type )
+    , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  &
+    , tile_data_jbegin, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
     IMPLICIT NONE
@@ -125,8 +135,15 @@
       INTEGER  , OPTIONAL, INTENT(IN) :: nj
       INTEGER  , OPTIONAL, INTENT(IN) :: nj_glo
+      INTEGER  , OPTIONAL, INTENT(IN) :: ntiles
       INTEGER  , OPTIONAL, INTENT(IN) :: nvertex
       INTEGER  , OPTIONAL, INTENT(IN) :: prec
       REAL (KIND=8) , OPTIONAL, INTENT(IN) :: radius
       CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_data_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_data_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ni(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_nj(:)
       CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type
 
@@ -136,5 +153,6 @@
       , data_nj, dim_i_name, dim_j_name, domain_ref, group_ref, i_index, ibegin, j_index, jbegin, lat_name  &
       , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  &
-      , name, ni, ni_glo, nj, nj_glo, nvertex, prec, radius, standard_name, type )
+      , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  &
+      , tile_data_jbegin, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
   END SUBROUTINE xios(set_domaingroup_attr_hdl)
@@ -145,6 +163,7 @@
     , data_ni_, data_nj_, dim_i_name_, dim_j_name_, domain_ref_, group_ref_, i_index_, ibegin_, j_index_  &
     , jbegin_, lat_name_, latvalue_1d_, latvalue_2d_, lon_name_, long_name_, lonvalue_1d_, lonvalue_2d_  &
-    , mask_1d_, mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, nvertex_, prec_, radius_, standard_name_  &
-    , type_ )
+    , mask_1d_, mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, ntiles_, nvertex_, prec_, radius_, standard_name_  &
+    , tile_data_ibegin_, tile_data_jbegin_, tile_ibegin_, tile_jbegin_, tile_ni_, tile_nj_, type_  &
+     )
 
     IMPLICIT NONE
@@ -189,8 +208,15 @@
       INTEGER  , OPTIONAL, INTENT(IN) :: nj_
       INTEGER  , OPTIONAL, INTENT(IN) :: nj_glo_
+      INTEGER  , OPTIONAL, INTENT(IN) :: ntiles_
       INTEGER  , OPTIONAL, INTENT(IN) :: nvertex_
       INTEGER  , OPTIONAL, INTENT(IN) :: prec_
       REAL (KIND=8) , OPTIONAL, INTENT(IN) :: radius_
       CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name_
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_data_ibegin_(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_data_jbegin_(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ibegin_(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_jbegin_(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ni_(:)
+      INTEGER  , OPTIONAL, INTENT(IN) :: tile_nj_(:)
       CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type_
 
@@ -384,4 +410,9 @@
       ENDIF
 
+      IF (PRESENT(ntiles_)) THEN
+        CALL cxios_set_domaingroup_ntiles &
+      (domaingroup_hdl%daddr, ntiles_)
+      ENDIF
+
       IF (PRESENT(nvertex_)) THEN
         CALL cxios_set_domaingroup_nvertex &
@@ -402,4 +433,34 @@
         CALL cxios_set_domaingroup_standard_name &
       (domaingroup_hdl%daddr, standard_name_, len(standard_name_))
+      ENDIF
+
+      IF (PRESENT(tile_data_ibegin_)) THEN
+        CALL cxios_set_domaingroup_tile_data_ibegin &
+      (domaingroup_hdl%daddr, tile_data_ibegin_, SHAPE(tile_data_ibegin_))
+      ENDIF
+
+      IF (PRESENT(tile_data_jbegin_)) THEN
+        CALL cxios_set_domaingroup_tile_data_jbegin &
+      (domaingroup_hdl%daddr, tile_data_jbegin_, SHAPE(tile_data_jbegin_))
+      ENDIF
+
+      IF (PRESENT(tile_ibegin_)) THEN
+        CALL cxios_set_domaingroup_tile_ibegin &
+      (domaingroup_hdl%daddr, tile_ibegin_, SHAPE(tile_ibegin_))
+      ENDIF
+
+      IF (PRESENT(tile_jbegin_)) THEN
+        CALL cxios_set_domaingroup_tile_jbegin &
+      (domaingroup_hdl%daddr, tile_jbegin_, SHAPE(tile_jbegin_))
+      ENDIF
+
+      IF (PRESENT(tile_ni_)) THEN
+        CALL cxios_set_domaingroup_tile_ni &
+      (domaingroup_hdl%daddr, tile_ni_, SHAPE(tile_ni_))
+      ENDIF
+
+      IF (PRESENT(tile_nj_)) THEN
+        CALL cxios_set_domaingroup_tile_nj &
+      (domaingroup_hdl%daddr, tile_nj_, SHAPE(tile_nj_))
       ENDIF
 
@@ -416,5 +477,6 @@
     , data_nj, dim_i_name, dim_j_name, domain_ref, group_ref, i_index, ibegin, j_index, jbegin, lat_name  &
     , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  &
-    , name, ni, ni_glo, nj, nj_glo, nvertex, prec, radius, standard_name, type )
+    , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  &
+    , tile_data_jbegin, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
     IMPLICIT NONE
@@ -460,8 +522,15 @@
       INTEGER  , OPTIONAL, INTENT(OUT) :: nj
       INTEGER  , OPTIONAL, INTENT(OUT) :: nj_glo
+      INTEGER  , OPTIONAL, INTENT(OUT) :: ntiles
       INTEGER  , OPTIONAL, INTENT(OUT) :: nvertex
       INTEGER  , OPTIONAL, INTENT(OUT) :: prec
       REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: radius
       CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_data_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_data_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ni(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_nj(:)
       CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type
 
@@ -473,5 +542,6 @@
       , data_nj, dim_i_name, dim_j_name, domain_ref, group_ref, i_index, ibegin, j_index, jbegin, lat_name  &
       , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  &
-      , name, ni, ni_glo, nj, nj_glo, nvertex, prec, radius, standard_name, type )
+      , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  &
+      , tile_data_jbegin, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
   END SUBROUTINE xios(get_domaingroup_attr)
@@ -482,5 +552,6 @@
     , data_nj, dim_i_name, dim_j_name, domain_ref, group_ref, i_index, ibegin, j_index, jbegin, lat_name  &
     , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  &
-    , name, ni, ni_glo, nj, nj_glo, nvertex, prec, radius, standard_name, type )
+    , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  &
+    , tile_data_jbegin, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
     IMPLICIT NONE
@@ -525,8 +596,15 @@
       INTEGER  , OPTIONAL, INTENT(OUT) :: nj
       INTEGER  , OPTIONAL, INTENT(OUT) :: nj_glo
+      INTEGER  , OPTIONAL, INTENT(OUT) :: ntiles
       INTEGER  , OPTIONAL, INTENT(OUT) :: nvertex
       INTEGER  , OPTIONAL, INTENT(OUT) :: prec
       REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: radius
       CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_data_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_data_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ibegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_jbegin(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ni(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_nj(:)
       CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type
 
@@ -536,5 +614,6 @@
       , data_nj, dim_i_name, dim_j_name, domain_ref, group_ref, i_index, ibegin, j_index, jbegin, lat_name  &
       , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  &
-      , name, ni, ni_glo, nj, nj_glo, nvertex, prec, radius, standard_name, type )
+      , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  &
+      , tile_data_jbegin, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
   END SUBROUTINE xios(get_domaingroup_attr_hdl)
@@ -545,6 +624,7 @@
     , data_ni_, data_nj_, dim_i_name_, dim_j_name_, domain_ref_, group_ref_, i_index_, ibegin_, j_index_  &
     , jbegin_, lat_name_, latvalue_1d_, latvalue_2d_, lon_name_, long_name_, lonvalue_1d_, lonvalue_2d_  &
-    , mask_1d_, mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, nvertex_, prec_, radius_, standard_name_  &
-    , type_ )
+    , mask_1d_, mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, ntiles_, nvertex_, prec_, radius_, standard_name_  &
+    , tile_data_ibegin_, tile_data_jbegin_, tile_ibegin_, tile_jbegin_, tile_ni_, tile_nj_, type_  &
+     )
 
     IMPLICIT NONE
@@ -589,8 +669,15 @@
       INTEGER  , OPTIONAL, INTENT(OUT) :: nj_
       INTEGER  , OPTIONAL, INTENT(OUT) :: nj_glo_
+      INTEGER  , OPTIONAL, INTENT(OUT) :: ntiles_
       INTEGER  , OPTIONAL, INTENT(OUT) :: nvertex_
       INTEGER  , OPTIONAL, INTENT(OUT) :: prec_
       REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: radius_
       CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name_
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_data_ibegin_(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_data_jbegin_(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ibegin_(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_jbegin_(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ni_(:)
+      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_nj_(:)
       CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type_
 
@@ -784,4 +871,9 @@
       ENDIF
 
+      IF (PRESENT(ntiles_)) THEN
+        CALL cxios_get_domaingroup_ntiles &
+      (domaingroup_hdl%daddr, ntiles_)
+      ENDIF
+
       IF (PRESENT(nvertex_)) THEN
         CALL cxios_get_domaingroup_nvertex &
@@ -802,4 +894,34 @@
         CALL cxios_get_domaingroup_standard_name &
       (domaingroup_hdl%daddr, standard_name_, len(standard_name_))
+      ENDIF
+
+      IF (PRESENT(tile_data_ibegin_)) THEN
+        CALL cxios_get_domaingroup_tile_data_ibegin &
+      (domaingroup_hdl%daddr, tile_data_ibegin_, SHAPE(tile_data_ibegin_))
+      ENDIF
+
+      IF (PRESENT(tile_data_jbegin_)) THEN
+        CALL cxios_get_domaingroup_tile_data_jbegin &
+      (domaingroup_hdl%daddr, tile_data_jbegin_, SHAPE(tile_data_jbegin_))
+      ENDIF
+
+      IF (PRESENT(tile_ibegin_)) THEN
+        CALL cxios_get_domaingroup_tile_ibegin &
+      (domaingroup_hdl%daddr, tile_ibegin_, SHAPE(tile_ibegin_))
+      ENDIF
+
+      IF (PRESENT(tile_jbegin_)) THEN
+        CALL cxios_get_domaingroup_tile_jbegin &
+      (domaingroup_hdl%daddr, tile_jbegin_, SHAPE(tile_jbegin_))
+      ENDIF
+
+      IF (PRESENT(tile_ni_)) THEN
+        CALL cxios_get_domaingroup_tile_ni &
+      (domaingroup_hdl%daddr, tile_ni_, SHAPE(tile_ni_))
+      ENDIF
+
+      IF (PRESENT(tile_nj_)) THEN
+        CALL cxios_get_domaingroup_tile_nj &
+      (domaingroup_hdl%daddr, tile_nj_, SHAPE(tile_nj_))
       ENDIF
 
@@ -816,5 +938,6 @@
     , data_nj, dim_i_name, dim_j_name, domain_ref, group_ref, i_index, ibegin, j_index, jbegin, lat_name  &
     , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  &
-    , name, ni, ni_glo, nj, nj_glo, nvertex, prec, radius, standard_name, type )
+    , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  &
+    , tile_data_jbegin, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
     IMPLICIT NONE
@@ -895,4 +1018,6 @@
       LOGICAL, OPTIONAL, INTENT(OUT) :: nj_glo
       LOGICAL(KIND=C_BOOL) :: nj_glo_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: ntiles
+      LOGICAL(KIND=C_BOOL) :: ntiles_tmp
       LOGICAL, OPTIONAL, INTENT(OUT) :: nvertex
       LOGICAL(KIND=C_BOOL) :: nvertex_tmp
@@ -903,4 +1028,16 @@
       LOGICAL, OPTIONAL, INTENT(OUT) :: standard_name
       LOGICAL(KIND=C_BOOL) :: standard_name_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_data_ibegin
+      LOGICAL(KIND=C_BOOL) :: tile_data_ibegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_data_jbegin
+      LOGICAL(KIND=C_BOOL) :: tile_data_jbegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_ibegin
+      LOGICAL(KIND=C_BOOL) :: tile_ibegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_jbegin
+      LOGICAL(KIND=C_BOOL) :: tile_jbegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_ni
+      LOGICAL(KIND=C_BOOL) :: tile_ni_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_nj
+      LOGICAL(KIND=C_BOOL) :: tile_nj_tmp
       LOGICAL, OPTIONAL, INTENT(OUT) :: type
       LOGICAL(KIND=C_BOOL) :: type_tmp
@@ -913,5 +1050,6 @@
       , data_nj, dim_i_name, dim_j_name, domain_ref, group_ref, i_index, ibegin, j_index, jbegin, lat_name  &
       , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  &
-      , name, ni, ni_glo, nj, nj_glo, nvertex, prec, radius, standard_name, type )
+      , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  &
+      , tile_data_jbegin, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
   END SUBROUTINE xios(is_defined_domaingroup_attr)
@@ -922,5 +1060,6 @@
     , data_nj, dim_i_name, dim_j_name, domain_ref, group_ref, i_index, ibegin, j_index, jbegin, lat_name  &
     , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  &
-    , name, ni, ni_glo, nj, nj_glo, nvertex, prec, radius, standard_name, type )
+    , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  &
+    , tile_data_jbegin, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
     IMPLICIT NONE
@@ -1000,4 +1139,6 @@
       LOGICAL, OPTIONAL, INTENT(OUT) :: nj_glo
       LOGICAL(KIND=C_BOOL) :: nj_glo_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: ntiles
+      LOGICAL(KIND=C_BOOL) :: ntiles_tmp
       LOGICAL, OPTIONAL, INTENT(OUT) :: nvertex
       LOGICAL(KIND=C_BOOL) :: nvertex_tmp
@@ -1008,4 +1149,16 @@
       LOGICAL, OPTIONAL, INTENT(OUT) :: standard_name
       LOGICAL(KIND=C_BOOL) :: standard_name_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_data_ibegin
+      LOGICAL(KIND=C_BOOL) :: tile_data_ibegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_data_jbegin
+      LOGICAL(KIND=C_BOOL) :: tile_data_jbegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_ibegin
+      LOGICAL(KIND=C_BOOL) :: tile_ibegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_jbegin
+      LOGICAL(KIND=C_BOOL) :: tile_jbegin_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_ni
+      LOGICAL(KIND=C_BOOL) :: tile_ni_tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_nj
+      LOGICAL(KIND=C_BOOL) :: tile_nj_tmp
       LOGICAL, OPTIONAL, INTENT(OUT) :: type
       LOGICAL(KIND=C_BOOL) :: type_tmp
@@ -1016,5 +1169,6 @@
       , data_nj, dim_i_name, dim_j_name, domain_ref, group_ref, i_index, ibegin, j_index, jbegin, lat_name  &
       , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  &
-      , name, ni, ni_glo, nj, nj_glo, nvertex, prec, radius, standard_name, type )
+      , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  &
+      , tile_data_jbegin, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type )
 
   END SUBROUTINE xios(is_defined_domaingroup_attr_hdl)
@@ -1025,6 +1179,7 @@
     , data_ni_, data_nj_, dim_i_name_, dim_j_name_, domain_ref_, group_ref_, i_index_, ibegin_, j_index_  &
     , jbegin_, lat_name_, latvalue_1d_, latvalue_2d_, lon_name_, long_name_, lonvalue_1d_, lonvalue_2d_  &
-    , mask_1d_, mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, nvertex_, prec_, radius_, standard_name_  &
-    , type_ )
+    , mask_1d_, mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, ntiles_, nvertex_, prec_, radius_, standard_name_  &
+    , tile_data_ibegin_, tile_data_jbegin_, tile_ibegin_, tile_jbegin_, tile_ni_, tile_nj_, type_  &
+     )
 
     IMPLICIT NONE
@@ -1104,4 +1259,6 @@
       LOGICAL, OPTIONAL, INTENT(OUT) :: nj_glo_
       LOGICAL(KIND=C_BOOL) :: nj_glo__tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: ntiles_
+      LOGICAL(KIND=C_BOOL) :: ntiles__tmp
       LOGICAL, OPTIONAL, INTENT(OUT) :: nvertex_
       LOGICAL(KIND=C_BOOL) :: nvertex__tmp
@@ -1112,4 +1269,16 @@
       LOGICAL, OPTIONAL, INTENT(OUT) :: standard_name_
       LOGICAL(KIND=C_BOOL) :: standard_name__tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_data_ibegin_
+      LOGICAL(KIND=C_BOOL) :: tile_data_ibegin__tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_data_jbegin_
+      LOGICAL(KIND=C_BOOL) :: tile_data_jbegin__tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_ibegin_
+      LOGICAL(KIND=C_BOOL) :: tile_ibegin__tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_jbegin_
+      LOGICAL(KIND=C_BOOL) :: tile_jbegin__tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_ni_
+      LOGICAL(KIND=C_BOOL) :: tile_ni__tmp
+      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_nj_
+      LOGICAL(KIND=C_BOOL) :: tile_nj__tmp
       LOGICAL, OPTIONAL, INTENT(OUT) :: type_
       LOGICAL(KIND=C_BOOL) :: type__tmp
@@ -1337,4 +1506,10 @@
       ENDIF
 
+      IF (PRESENT(ntiles_)) THEN
+        ntiles__tmp = cxios_is_defined_domaingroup_ntiles &
+      (domaingroup_hdl%daddr)
+        ntiles_ = ntiles__tmp
+      ENDIF
+
       IF (PRESENT(nvertex_)) THEN
         nvertex__tmp = cxios_is_defined_domaingroup_nvertex &
@@ -1361,4 +1536,40 @@
       ENDIF
 
+      IF (PRESENT(tile_data_ibegin_)) THEN
+        tile_data_ibegin__tmp = cxios_is_defined_domaingroup_tile_data_ibegin &
+      (domaingroup_hdl%daddr)
+        tile_data_ibegin_ = tile_data_ibegin__tmp
+      ENDIF
+
+      IF (PRESENT(tile_data_jbegin_)) THEN
+        tile_data_jbegin__tmp = cxios_is_defined_domaingroup_tile_data_jbegin &
+      (domaingroup_hdl%daddr)
+        tile_data_jbegin_ = tile_data_jbegin__tmp
+      ENDIF
+
+      IF (PRESENT(tile_ibegin_)) THEN
+        tile_ibegin__tmp = cxios_is_defined_domaingroup_tile_ibegin &
+      (domaingroup_hdl%daddr)
+        tile_ibegin_ = tile_ibegin__tmp
+      ENDIF
+
+      IF (PRESENT(tile_jbegin_)) THEN
+        tile_jbegin__tmp = cxios_is_defined_domaingroup_tile_jbegin &
+      (domaingroup_hdl%daddr)
+        tile_jbegin_ = tile_jbegin__tmp
+      ENDIF
+
+      IF (PRESENT(tile_ni_)) THEN
+        tile_ni__tmp = cxios_is_defined_domaingroup_tile_ni &
+      (domaingroup_hdl%daddr)
+        tile_ni_ = tile_ni__tmp
+      ENDIF
+
+      IF (PRESENT(tile_nj_)) THEN
+        tile_nj__tmp = cxios_is_defined_domaingroup_tile_nj &
+      (domaingroup_hdl%daddr)
+        tile_nj_ = tile_nj__tmp
+      ENDIF
+
       IF (PRESENT(type_)) THEN
         type__tmp = cxios_is_defined_domaingroup_type &
