# This file is governed by the Creative Commons license # Attribution-NonCommercial 4.0 Unported # http://creativecommons.org/licenses/by-nc/4.0/ # http://creativecommons.org/licenses/by-nc/4.0/legalcode # # Extended licenses, in particular commercial licenses, can be obtained from the # author of the source code. # Any re-distribution as source code must acknowledge the original author of this file. # # File: deeptelos-telos.cbs # Author: Manfred Jeusfeld, manfred.jeusfeld@acm.org # Date: 2016-09-21 (2016-10-05) #---------------------------------------------------------------- # Use most general instances to formalize the (now outdated( Telos abstraction levels # for proper objects, simple classes, meta classes, and metameta classes cbserver -port 4411 -t low -new TELOSDB tellModel deeptelos.sml.txt tellModel deeptelos-GTs.sml.txt cd oHome mkdir TELOS cd TELOS tell ' TELOS with comment onTelos: "The original Telos specification by Mylopoulos, Borgida et al. introduced builtin classes for proper objects (objects with no instances), simple classes (classes with only proper objects as instances), meta classes (classes with simple classes as instances), metameta classes (classes with meta classes as instances, and omega classes (classes with any object as instance). This module shows how DeepTelos can formalize the meaning of those classes." end' tell " M3Object end M2Object with IN cl: M3Object end M1Object with IN cl: M2Object end M0Object with IN cl: M1Object end " mkdir EXAMPLE cd EXAMPLE # use some easy example to populate the levels tell " Node in M3Object with attribute connectedTo: Node end " tell " EntityType in Node with connectedTo entattr: Domain end Domain in Node end " tell " Integer in Domain end Employee in EntityType with entattr salary: Integer end " tell " bill in Employee with salary billsalary: 1000 end "