// January 19, 2014 //---------------------------------------------------------------------------------------- // Multilayer architecture // from // Mikhail Auguston, Example 13 in Monterey Phoenix System and Software Architecture // Modeling Language (Draft): Examples of architecture models // Naval Postgraduate School, Monterey, CA, USA // http://faculty.nps.edu/maugusto/ // implementation for COORDINATE with IN relation using SHARE ALL // for Eagle6: Unfortunately, Eagle6 has an issue with SHARE ALL within composite events. // If you comment out // Bottom_layer, TopBottom SHARE ALL bottom_event; // it works. //---------------------------------------------------------------------------------------- //SCHEMA Multilayer ROOT Top_layer: (*<1-2> do_something top_event do_anything_else *); ROOT Bottom_layer: (*<1-5> something bottom_event anything_else *); //----------------------------------------------------------------- // simulating COORDINATE with inclusion //----------------------------------------------------------------- //COORDINATE (* $x: top_event *) FROM Top_layer, // (* $y: (+ bottom_event +) *) FROM Bottom_layer // ADD $y IN $x; //------------------------------------------------------------------ ROOT TopBottom: (*<1-2> top_event *); top_event: (+<1-4> bottom_event +); Top_layer, TopBottom SHARE ALL top_event; Bottom_layer, TopBottom SHARE ALL bottom_event; // should be commented out