@namespace(uri="comps", prefix="comps")
package comps;

class Component {
	attr String name;
	val Port[*] inPorts;
	val Port[*] outPorts;
	val Component[*]#parent components;
	ref Component#components parent;
	val Connector[*] connectors;
	attr String action;
}

class Port {
	attr String name;
	ref Connector[*]#from outgoing;
	ref Connector[*]#to incoming;
	ref Type type;
}

class Connector {
	ref Port#outgoing from;
	ref Port#incoming to;
}
	
class Type {
	attr String name;
}