diff --git a/hl7templates/hl7templates-generator-jar/src/main/java/net/ihe/gazelle/tempgen/flatten/action/RuleDefinitionFlattenProc.java b/hl7templates/hl7templates-generator-jar/src/main/java/net/ihe/gazelle/tempgen/flatten/action/RuleDefinitionFlattenProc.java
index cd1216604beccaedb455c4db40047444fbb18cce..cad54677919d81ddfe33b0cc6d5c33b070b47904 100644
--- a/hl7templates/hl7templates-generator-jar/src/main/java/net/ihe/gazelle/tempgen/flatten/action/RuleDefinitionFlattenProc.java
+++ b/hl7templates/hl7templates-generator-jar/src/main/java/net/ihe/gazelle/tempgen/flatten/action/RuleDefinitionFlattenProc.java
@@ -8,10 +8,7 @@ import net.ihe.gazelle.tempmodel.dpath.model.DElement;
 import net.ihe.gazelle.tempmodel.dpath.model.DParent;
 import net.ihe.gazelle.tempmodel.dpath.utils.DPathExtractor;
 import net.ihe.gazelle.tempmodel.org.decor.art.model.*;
-import net.ihe.gazelle.tempmodel.org.decor.art.utils.RuleDefinitionUtil;
-import net.ihe.gazelle.tempmodel.org.decor.art.utils.RulesUtil;
-import net.ihe.gazelle.tempmodel.org.decor.art.utils.TemplateDefinitionUtil;
-import net.ihe.gazelle.tempmodel.org.decor.art.utils.VocabularyUtil;
+import net.ihe.gazelle.tempmodel.org.decor.art.utils.*;
 import org.apache.commons.lang.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -111,9 +108,9 @@ public class RuleDefinitionFlattenProc extends RuleDefinitionProcessorImpl {
 
     @Override
     public void processName(String nameParam) {
-        if(currentRuleDefinition.getParentObject() instanceof ChoiceDefinition){
-            return;
-        }
+//        if(currentRuleDefinition.getParentObject() instanceof ChoiceDefinition){
+//            return;
+//        }
         String name = nameParam;
         if (name == null) {
             return;
@@ -141,6 +138,10 @@ public class RuleDefinitionFlattenProc extends RuleDefinitionProcessorImpl {
                 }
             }
         } else {
+            Assert customAssert = new Assert();
+            customAssert.setTest(AssertUtil.extractAssertFromName(this.currentRuleDefinition.getName()));
+            this.currentRuleDefinition.getLetOrAssertOrReport().add(customAssert);
+            this.currentRuleDefinition.setName(RuleDefinitionUtil.getRealNameOfRuleDefinition(currentRuleDefinition));
             this.currentRdNameAsXpath.setProcessed(false);
             ProblemHandler.handleRuleDefinitionError(currentRuleDefinition,
                     "The name specified cannot be processed by the tool : " + name,