diff --git a/tenet/scheme/amr_master_rule/transduction/phenomena_analyzer/mod_analyzer_1.py b/tenet/scheme/amr_master_rule/transduction/phenomena_analyzer/mod_analyzer_1.py
index b3b2cfc455cace089c88972828de6fa547c59833..58ce68cece95d79671bd6c4c7fef394d6af4ee4b 100644
--- a/tenet/scheme/amr_master_rule/transduction/phenomena_analyzer/mod_analyzer_1.py
+++ b/tenet/scheme/amr_master_rule/transduction/phenomena_analyzer/mod_analyzer_1.py
@@ -13,7 +13,7 @@ from rdflib import Graph
 
 import transduction
 from transduction import net
-from transduction.query_builder import generate_select_query
+from transduction.query_builder import generate_select_distinct_query
 from transduction.rdfterm_computer import produce_uriref, produce_literal
 
 ENTITY_CLASS_TYPE = 'base-out:Entity'
@@ -33,7 +33,21 @@ def __search_pattern(graph):
     clause_list = [f'?class_net_1 a [rdfs:subClassOf* net:Class_Net].',
                    f'?class_net_2 a [rdfs:subClassOf* net:Class_Net].',
                    f'?class_net_1 {MOD_RELATION} ?class_net_2.']
-    query_code = generate_select_query(graph, select_data_list, clause_list)
+    query_code = generate_select_distinct_query(graph, select_data_list, clause_list)
+    result_set = graph.query(query_code) 
+    return query_code, result_set
+
+
+#==============================================================================
+# Useful Additional Search
+#==============================================================================
+
+def __search_mod(graph, class_net_uri):
+    select_data_list = ['?mod_class_net']
+    clause_list = [(class_net_uri, MOD_RELATION, '?mod_class_net'),
+                   '?mod_class_net a [rdfs:subClassOf* net:Class_Net].', 
+                   'FILTER NOT EXISTS {{ ?mod_class_net a net:Deprecated_Net. }}']
+    query_code = generate_select_distinct_query(graph, select_data_list, clause_list)
     result_set = graph.query(query_code) 
     return query_code, result_set
 
@@ -55,10 +69,13 @@ def __define_feature_restriction_naming(class_net):
     name = __extract_naming(class_net, default='something')
     return f'{name}-feature'
 
-def __define_composite_naming(class_net_1, class_net_2):
+def __define_composite_naming(class_net_1, class_net_2_set):
     name_1 = __extract_naming(class_net_1, default='something')
-    name_2 = __extract_naming(class_net_2, default='something')
-    return f'{name_2}-{name_1}'
+    result_name = f'{name_1}'
+    for class_net_2 in class_net_2_set:
+        name_2 = __extract_naming(class_net_2, default='something')
+        result_name = f'{name_2}-{result_name}'
+    return result_name
 
 
 def __filter_relation(relation_list):
@@ -104,11 +121,12 @@ def __construct_feature_restriction_net(graph, individual_net):
     
     
 
-def __construct_composite_class_net(graph, class_net_1, individual_net):
+def __construct_composite_class_net(graph, class_net_1, feature_individual_net_list):
 
     # -- Net Composition
     composite_class_net = net.CompositeClassNet(graph)
-    composite_class_net.compose(class_net_1, individual_net)
+    composing_net_list = [class_net_1] + feature_individual_net_list
+    composite_class_net.compose(*composing_net_list)
     
     # -- Data Computation
     composite_class_net.mother_class_net = class_net_1.uri
@@ -116,11 +134,15 @@ def __construct_composite_class_net(graph, class_net_1, individual_net):
 
     # -- Restriction Computation
     triple_list_1 = []
-    restriction_net, triple_list_1 = __construct_feature_restriction_net(graph, individual_net)
-    composite_class_net.restriction = restriction_net.uri 
+    restriction_list = []
+    for feature_individual_net in feature_individual_net_list:
+        restriction_net, triple_list = __construct_feature_restriction_net(graph, feature_individual_net)
+        restriction_list.append(restriction_net.uri)
+        triple_list_1 += triple_list
+    composite_class_net.restriction = restriction_list
 
     # -- Net Naming
-    composite_class_net.naming = __define_composite_naming(class_net_1, individual_net)
+    composite_class_net.naming = __define_composite_naming(class_net_1, feature_individual_net_list)
     
     # -- Relation Propagation
     __propagate_relation(composite_class_net, class_net_1)
@@ -134,7 +156,7 @@ def __construct_composite_class_net(graph, class_net_1, individual_net):
     
     
 
-def __construct_individual_net(graph, class_net):
+def __construct_feature_individual_net(graph, class_net):
 
     # -- Net Composition
     individual_net = net.IndividualNet(graph)
@@ -172,17 +194,20 @@ def analyze_phenomena_mod_1(graph):
     rule_triple_list = []
     for pattern in pattern_set:
         class_net_1 = net.ClassNet(graph, uri=pattern.class_net_1)
-        class_net_2 = net.ClassNet(graph, uri=pattern.class_net_2)
         
-        # -- New Net Construction(s)
-        individual_net, triple_list_1 = __construct_individual_net(graph, class_net_2)
-        _, triple_list_2 = __construct_composite_class_net(graph, class_net_1, individual_net)  
+        # -- Feature Handle (MOD)
+        _, mod_class_net_set = __search_mod(graph, class_net_1.uri)
+        feature_individual_net_list = []
+        for row in mod_class_net_set:
+            mod_class_net = net.ClassNet(graph, uri=row.mod_class_net)
+            individual_net, triple_list_1 = __construct_feature_individual_net(graph, mod_class_net)
+            feature_individual_net_list.append(individual_net)
+            rule_triple_list += triple_list_1
+            rule_triple_list += mod_class_net.deprecate()
         
-        # -- Resulting List Update
-        rule_triple_list += triple_list_1 + triple_list_2
-        
-        # -- Deprecation: Origin Class Nets
+        # -- New Net Construction(s)
+        _, triple_list_2 = __construct_composite_class_net(graph, class_net_1, feature_individual_net_list)  
+        rule_triple_list += triple_list_2
         rule_triple_list += class_net_1.deprecate()
-        rule_triple_list += class_net_2.deprecate()
     
     return rule_label, rule_triple_list
\ No newline at end of file
diff --git a/tests/main_tests/test_main_owl_extraction.py b/tests/main_tests/test_main_owl_extraction.py
index 650ed33ca85b6b8cf86e284ad08243a29656af9a..a89785c4312a0625fb6f3ad8634bc37a66562a5b 100644
--- a/tests/main_tests/test_main_owl_extraction.py
+++ b/tests/main_tests/test_main_owl_extraction.py
@@ -56,7 +56,7 @@ test_data_dir = f'{INPUT_DIR_PATH}amrDocuments/'
 # onto_prefix = f'SimpleTest'
 # base_output_name = f'SimpleTest'
 
-uuid_num = '03'
+uuid_num = '02'
 amrld_dir_path = f'{test_data_dir}dev/solar-system-{uuid_num}/'
 amrld_file_path = f'{amrld_dir_path}SSC-{uuid_num}-01.stog.amr.ttl'
 base_output_name = f'SolarSystemDev{uuid_num}'