{ * Module: System-oHome-DeepTelos * --------------------------------------------------------- * This file has been extracted from a ConceptBase database. * Copyright is with the respective authors! * Time extracted: 2019-07-15T12:24:59,705Z (UTC) * Active user: jeusfeld@myon * CBserver version: 8.1.03 (2019-07-11) * * -author: Manfred Jeusfeld, Bernd Neumayr * -license: Creative Commons Attribution-ShareAlike International 4.0 (CC BY-SA 4.0) } {$set module=System-oHome-DeepTelos} { 2019-07-15 12:10:10.771 } DeepTelos with comment author : "Manfred Jeusfeld, Bernd Neumayr"; license : "Creative Commons Attribution-ShareAlike International 4.0 (CC BY-SA 4.0)" end Proposition with attribute ISA : Proposition; IN : Proposition end DeepTelosRules in Class with rule mrule1 : $ forall m,x,c/Proposition (x in c) and (m IN c) and not (x isA m) ==> (x ISA m) $; mrule2 : $ forall x,c,d/Proposition (c ISA d) and (x in c) ==> (x in d) $; mrule3 : $ forall c,d,m,n/Proposition (m IN c) and (n IN d) and (c ISA d) ==> (m ISA n) $; mrule4 : $ forall m,x,c/Proposition (m IN c) and (x isA m) and not (x in QueryClass) ==> (x in c) $; mrule5 : $ forall m,mx,x,c/Proposition (m IN c) and :(x isA mx): and (mx ISA m) and not (x in QueryClass) ==> (x in c) $ constraint mconstr1 : $ forall x,m,c/Proposition (m IN c) and (x in c) ==> not (x in m) $ end {---} {* Enumerations allow to aggregate explicit objects (members) and instances of classes (memberset) into a single class *} Enumeration in Class with attribute member: Proposition; memberset: Proposition rule rmember: $ forall x/Proposition EN/Enumeration (EN member x) ==> (x in EN) $; rmemberset: $ forall x,S/Proposition EN/Enumeration (EN memberset S) and (x in S) ==> (x in EN) $ end {---} {* realize last update time as a derived attribute of any object (not just DeepTelos) *} Proposition with attribute lastupdate: TransactionTime; {* attribute definition for the lastupdate time *} updatetime: TransactionTime {* this attribute is for any update time of any attribute/relation of the object *} end {* auxiliary function to compute the minimum of all update times of a given object (= first update time) *} firstUpdateTime in Function isA TransactionTime with required,parameter object: Proposition constraint mintime: $ (this = MIN_Attribute(Proposition!updatetime,object)) $ end {* auxiliary function to compute the maximum of all update times of a given object (= last update time) *} lastUpdateTime in Function isA TransactionTime with required,parameter object: Proposition constraint maxtime: $ (this = MAX_Attribute(Proposition!updatetime,object)) $ end {* as name says *} allUpdateTimes in GenericQueryClass isA TransactionTime with parameter object: Proposition constraint alltimes: $ (object updatetime this) $ end {* these rules do the work, in particular the last one *} UpdateTimeRules in Class with rule anyupdaterule: $ forall o/Proposition a/Attribute n/Label y/Proposition tt/TransactionTime Pa(a,o,n,y) and Known(a,tt) ==> (o updatetime tt) $; lastupdaterule: $ forall o/Proposition tt/TransactionTime (tt = lastUpdateTime(o)) ==> (o lastupdate tt) $ end {---} { 2019-07-15 12:10:11.023 } XPalette in Class,JavaGraphicalPalette with contains,defaultIndividual xx1 : DefaultIndividualGT contains,defaultLink xx2 : DefaultLinkGT contains,implicitIsA xx3 : ImplicitIsAGT contains,implicitInstanceOf xx4 : ImplicitInstanceOfGT contains,implicitAttribute xx5 : ImplicitAttributeGT contains xx6 : DefaultIsAGT; xx7 : DefaultInstanceOfGT; xx8 : DefaultAttributeGT; xx9 : MetametaGT; xx10 : SimpleClassGT; xx11 : MetaClassGT; xx12 : ClassGT; xx13 : QueryClassGT rule inheritGTs : $ forall gt/JavaGraphicalType pal/JavaGraphicalPalette (pal isA XPalette) and (DefaultJavaPalette contains gt) ==> (pal contains gt) $; inheritDef1 : $ forall gt/JavaGraphicalType pal/JavaGraphicalPalette (pal isA XPalette) and (DefaultJavaPalette defaultIndividual gt) ==> (pal defaultIndividual gt) $; inheritDef2 : $ forall gt/JavaGraphicalType pal/JavaGraphicalPalette (pal isA XPalette) and (DefaultJavaPalette defaultLink gt) ==> (pal defaultLink gt) $; inheritDef3 : $ forall gt/JavaGraphicalType pal/JavaGraphicalPalette (pal isA XPalette) and (DefaultJavaPalette implicitIsA gt) ==> (pal implicitIsA gt) $; inheritDef4 : $ forall gt/JavaGraphicalType pal/JavaGraphicalPalette (pal isA XPalette) and (DefaultJavaPalette implicitInstanceOf gt) ==> (pal implicitInstanceOf gt) $; inheritDef5 : $ forall gt/JavaGraphicalType pal/JavaGraphicalPalette (pal isA XPalette) and (DefaultJavaPalette implicitAttribute gt) ==> (pal implicitAttribute gt) $ end DefaultAttributeGT with property bgcolor : "255,255,255,120" end DeepTelosPalette in Class,JavaGraphicalPalette isA XPalette with palproperty bgcolor : "255,255,255"; longtitle : "DeepTelos rev2" contains,implicitInstanceOf sp4 : INSTOFDEDUCED_GT end INSTOFDEDUCED_GT end ATTRDEDUCED_GT end DeepTelosPalette with contains,implicitAttribute sp5 : ATTRDEDUCED_GT contains,implicitIsA sp6 : ISADEDUCED_GT end ISADEDUCED_GT end ISA_GT end DeepTelosPalette with contains sp7 : ISA_GT; sp1 : INDIVIDUAL_GT end INDIVIDUAL_GT end INSTOF_GT end DeepTelosPalette with contains sp2 : INSTOF_GT; sp3 : ATTR_GT end ATTR_GT end IN_Link_GT end DeepTelosPalette with contains dt15 : IN_Link_GT; dt16 : SPEC_Link_GT end SPEC_Link_GT end ImplicitGT_ISA end DeepTelosPalette with contains dt17 : ImplicitGT_ISA end IN_Link_GT in JavaGraphicalType,Class with property textcolor : "0,0,0"; edgecolor : "240,50,50"; edgewidth : "2"; bgcolor : "255,255,255"; label : "IN" implementedBy implBy : "i5.cb.graph.cbeditor.CBLink" priority p : 22 rule gtrule : $ forall a/Proposition!IN (a graphtype IN_Link_GT) $ end SPEC_Link_GT in JavaGraphicalType,Class with property bgcolor : "0,50,200"; textcolor : "0,0,0"; edgecolor : "0,0,0"; edgeheadcolor : "255,255,255"; edgeheadshape : "Arrow"; edgewidth : "1"; label : "" implementedBy implBy : "i5.cb.graph.cbeditor.CBLink" priority p : 23 rule gtrule : $ forall a/Proposition!ISA (a graphtype SPEC_Link_GT) $ end INSTOF_GT in JavaGraphicalType,Class with property bgcolor : "255,255,255"; textcolor : "0,0,0"; edgecolor : "0,0,0"; edgewidth : "1"; edgeheadshape : "Caret"; edgestyle : "ldashed"; label : "instance of"; font: "SansSerif"; fontsize : "9" implementedBy implBy : "i5.cb.graph.cbeditor.CBLink" priority p : 6 rule gtrule : $ forall a/InstanceOf (a graphtype INSTOF_GT) $ end INSTOFDEDUCED_GT in JavaGraphicalType,Class with property bgcolor : "255,255,255"; textcolor : "0,0,0"; edgecolor : "120,120,120"; edgewidth : "1"; edgeheadshape : "Caret"; edgestyle : "ldashed"; label : "instance of"; font: "SansSerif"; fontsize : "9" implementedBy implBy : "i5.cb.graph.cbeditor.CBLink" priority p : 7 end ISA_GT in JavaGraphicalType,Class with property bgcolor : "100,100,255"; textcolor : "0,0,0"; edgecolor : "50,50,240"; edgeheadcolor : "255,255,255"; edgeheadshape : "Arrow"; edgewidth : "1"; label : "" implementedBy implBy : "i5.cb.graph.cbeditor.CBLink" priority p : 6 rule gtrule : $ forall a/IsA (a graphtype ISA_GT) $ end ISADEDUCED_GT in JavaGraphicalType,Class with property bgcolor : "0,50,200"; textcolor : "0,0,0"; edgecolor : "120,120,120"; edgewidth : "1"; edgestyle : "dashed"; label : ""; edgeheadcolor : "255,255,255"; edgeheadshape : "Arrow" implementedBy implBy : "i5.cb.graph.cbeditor.CBLink" priority p : 7 end ATTR_GT in Class,JavaGraphicalType with property textcolor : "0,0,0"; edgecolor : "0,0,0"; edgewidth : "1"; font: "SansSerif"; fontsize : "10"; bgcolor : "255,255,255,240" implementedBy implBy : "i5.cb.graph.cbeditor.CBLink" priority p : 5 rule gtrule : $ forall x/Proposition!attribute (x graphtype ATTR_GT) $ end ATTRDEDUCED_GT in JavaGraphicalType with property textcolor : "0,0,0"; edgecolor : "0,0,0"; edgewidth : "2"; edgestyle : "dashed"; fontsize : "10"; bgcolor : "255,255,255,240" implementedBy implBy : "i5.cb.graph.cbeditor.CBLink" priority p : 7 end INDIVIDUAL_GT in Class,JavaGraphicalType with property bgcolor : "255,255,255"; textcolor : "0,0,0"; linecolor : "0,0,0"; font: "SansSerif"; shape : "i5.cb.graph.shapes.Rect"; size : "resizable"; linewidth : "1" implementedBy implBy : "i5.cb.graph.cbeditor.CBIndividual" priority pr : 5 rule gtrule : $ forall x/Individual (x graphtype INDIVIDUAL_GT) $ end ImplicitGT_ISA in Class,JavaGraphicalType with property bgcolor : "0,255,150"; textcolor : "0,0,0"; edgecolor : "120,120,120"; edgewidth : "1"; label : ""; edgeheadcolor : "255,255,255"; edgeheadshape : "Arrow" implementedBy implBy : "i5.cb.graph.cbeditor.CBLink" priority p : 20 end {---} { 2019-07-15 12:10:11.263 } ProcessModels in Module end {---} { 2019-07-15 12:10:11.374 } CarExample in Module end {---} { 2019-07-15 12:10:11.478 } GeneratedRules in QueryClass isA Class with computed_attribute genrule : MSFOLrule constraint c1 : $ (this rule genrule) and exists mlrule/MSFOLrule (DeepTelosRules rule mlrule) and :(genrule isA mlrule): $ end { -/- }