schema compile FEATURE validate non-instantiated groupings
diff --git a/src/tree_schema_internal.h b/src/tree_schema_internal.h
index 4bafa70..6194649 100644
--- a/src/tree_schema_internal.h
+++ b/src/tree_schema_internal.h
@@ -164,6 +164,10 @@
 #define LYSC_OPT_FREE_SP    0x04               /**< Free the input printable schema */
 #define LYSC_OPT_INTERNAL   0x08               /**< Internal compilation caused by dependency */
 #define LYSC_OPT_NOTIFICATION 0x10             /**< Internal option when compiling schema tree of Notification */
+
+#define LYSC_OPT_GROUPING   0x20               /** Compiling (validation) of a non-instantiated grouping.
+                                                   In this case not all the restrictions are checked since they can be valid only
+                                                   in the real placement of the grouping. TODO - what specifically is not done */
 /** @} scflags */
 
 /**
@@ -622,6 +626,17 @@
 void lysc_node_free(struct ly_ctx *ctx, struct lysc_node *node);
 
 /**
+ * @brief Free the compiled container node structure.
+ *
+ * Only the container-specific members are freed, for generic node free function,
+ * use lysc_node_free().
+ *
+ * @param[in] ctx libyang context where the string data resides in a dictionary.
+ * @param[in,out] node Compiled container node structure to be freed.
+ */
+void lysc_node_container_free(struct ly_ctx *ctx, struct lysc_node_container *node);
+
+/**
  * @brief Free the compiled schema structure.
  * @param[in,out] module Compiled schema module structure to free.
  * @param[in] private_destructor Function to remove private data from the compiled schema tree.