include "primitives.alh" SimpleAttribute Integer { constraint = $ String function constraint(value : Element): if (is_physical_int(value)): return "OK"! else: return "Integer has a non-integer value"! $ } SimpleAttribute String { constraint = $ String function constraint(value : Element): if (is_physical_string(value)): return "OK"! else: return "String has a non-string value"! $ } Class GraphicalElement { name = "GraphicalElement" x : Integer y : Integer } Class Symbol : GraphicalElement { name = "Icon" typeID : String __asid : String } Class TextLabel : GraphicalElement { name = "TextLabel" text : String } Association ConnectingLine(Symbol, Symbol) { name = "ConnectingLine" } Association SymbolTextLabel(Symbol, TextLabel) { name = "SymbolTextLabel" }