Skip to content

Instantly share code, notes, and snippets.

@kenwebb
Last active June 10, 2017 14:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kenwebb/120fff8ec1d5128f7f44c2b786bfed78 to your computer and use it in GitHub Desktop.
Save kenwebb/120fff8ec1d5128f7f44c2b786bfed78 to your computer and use it in GitHub Desktop.
Categorical Data IDE - AQL - Sigma
<?xml version="1.0" encoding="UTF-8"?>
<!--Xholon Workbook http://www.primordion.com/Xholon/gwt/ MIT License, Copyright (C) Ken Webb, Sat Jun 10 2017 10:04:53 GMT-0400 (EDT)-->
<XholonWorkbook>
<Notes><![CDATA[
Xholon
------
Title: Categorical Data IDE - AQL - Sigma
Description:
Url: http://www.primordion.com/Xholon/gwt/
InternalName: 120fff8ec1d5128f7f44c2b786bfed78 based on 9a17661d43849ee9eeb0aaf2cc395c8d
Keywords:
My Notes
--------
June 10, 2017
Test of CatAql.java
Sigma example in Categorical Data IDE; see categoricaldata.net/fql.html
Graphviz
--------
$wnd.xh.xport("Graphviz", $wnd.xh.root().parent().xpath("Chameleon/CattSystem/CatTheorySchema"), '{"gvFileExt":".gv","gvGraph":"digraph","layout":"dot","edgeOp":"->","gvCluster":"","shouldShowStateMachineEntities":false,"filter":"--Behavior,Script","nameTemplateNodeId":"^^^^i^","nameTemplateNodeLabel":"R^^^^^","shouldQuoteLabels":true,"shouldShowLinks":true,"shouldShowLinkLabels":true,"shouldSpecifyLayout":false,"maxLabelLen":-1,"shouldColor":true,"defaultColor":"#f0f8ff","shouldSpecifyShape":true,"shape":"ellipse","shouldSpecifySize":false,"size":"6","shouldSpecifyFontname":false,"fontname":"\"Courier New\"","shouldSpecifyArrowhead":true,"arrowhead":"vee","shouldSpecifyStylesheet":true,"stylesheet":"Xholon.css","shouldSpecifyRankdir":false,"rankdir":"LR","shouldDisplayGraph":true,"outputFormat":"svg"}');
$wnd.xh.xport("Graphviz", $wnd.xh.root().parent().xpath("Chameleon/CattSystem/CatTheoryInstance"), '{"gvFileExt":".gv","gvGraph":"digraph","layout":"dot","edgeOp":"->","gvCluster":"","shouldShowStateMachineEntities":false,"filter":"--Behavior,Script","nameTemplateNodeId":"^^^^i^","nameTemplateNodeLabel":"r C^^^","shouldQuoteLabels":true,"shouldShowLinks":true,"shouldShowLinkLabels":true,"shouldSpecifyLayout":false,"maxLabelLen":-1,"shouldColor":true,"defaultColor":"#f0f8ff","shouldSpecifyShape":true,"shape":"ellipse","shouldSpecifySize":false,"size":"6","shouldSpecifyFontname":false,"fontname":"\"Courier New\"","shouldSpecifyArrowhead":true,"arrowhead":"vee","shouldSpecifyStylesheet":true,"stylesheet":"Xholon.css","shouldSpecifyRankdir":true,"rankdir":"LR","shouldDisplayGraph":true,"outputFormat":"svg"}');
$wnd.xh.xport("Graphviz", $wnd.xh.root().parent().xpath("Chameleon/CattSystem"), '{"gvFileExt":".gv","gvGraph":"digraph","layout":"dot","edgeOp":"->","gvCluster":"","shouldShowStateMachineEntities":false,"filter":"--Behavior,Script","nameTemplateNodeId":"^^^^i^","nameTemplateNodeLabel":"R^^^^^","shouldQuoteLabels":true,"shouldShowLinks":true,"shouldShowLinkLabels":true,"shouldSpecifyLayout":false,"maxLabelLen":-1,"shouldColor":true,"defaultColor":"#f0f8ff","shouldSpecifyShape":true,"shape":"ellipse","shouldSpecifySize":false,"size":"6","shouldSpecifyFontname":false,"fontname":"\"Courier New\"","shouldSpecifyArrowhead":true,"arrowhead":"vee","shouldSpecifyStylesheet":true,"stylesheet":"Xholon.css","shouldSpecifyRankdir":false,"rankdir":"LR","shouldDisplayGraph":true,"outputFormat":"svg"}');
Graphviz DOT
------------
/*
Automatically generated by Xholon version 0.8.1, using org.primordion.ef.Xholon2Graphviz.java
Sat Jun 10 09:46:11 GMT-400 2017 1497102371418
model: Categorical Data IDE - AQL - Sigma
www.primordion.com/Xholon
To view this file, use Graphviz dot|fdp|neato|twopi|circo|sfdp from http://www.graphviz.org/
For example, to generate an SVG file:
dot -Tsvg -O CattSystem_47_1497102371418.gv
Alternatively try one of these:
dot -Tsvg -O CattSystem_47_1497102371418.gv
dot -Tsvg -O -Grankdir=LR CattSystem_47_1497102371418.gv
fdp -Tsvg -O CattSystem_47_1497102371418.gv
neato -Tsvg -O CattSystem_47_1497102371418.gv
circo -Tsvg -O CattSystem_47_1497102371418.gv
Or use one of: -Tgif -Tjpg -Tpdf -Tpng -Txdot -Txlib
See also: http://hughesbennett.net/Graphviz
See also: http://graphviz-dev.appspot.com/
See also: http://www.webgraphviz.com/
See also: http://rise4fun.com/agl/
To repeat this Xholon export:
$wnd.xh.xport("Graphviz", $wnd.xh.root().parent().xpath("Chameleon/CattSystem"), '{"gvFileExt":".gv","gvGraph":"digraph","layout":"dot","edgeOp":"->","gvCluster":"","shouldShowStateMachineEntities":false,"filter":"--Behavior,Script","nameTemplateNodeId":"^^^^i^","nameTemplateNodeLabel":"R^^^^^","shouldQuoteLabels":true,"shouldShowLinks":true,"shouldShowLinkLabels":true,"shouldSpecifyLayout":false,"maxLabelLen":-1,"shouldColor":true,"defaultColor":"#f0f8ff","shouldSpecifyShape":true,"shape":"ellipse","shouldSpecifySize":false,"size":"6","shouldSpecifyFontname":false,"fontname":"\"Courier New\"","shouldSpecifyArrowhead":true,"arrowhead":"vee","shouldSpecifyStylesheet":true,"stylesheet":"Xholon.css","shouldSpecifyRankdir":false,"rankdir":"LR","shouldDisplayGraph":true,"outputFormat":"svg"}');
*/
digraph 47 {
graph [label="CattSystem",id="CattSystem",stylesheet="Xholon.css"]
node [style=filled,fillcolor="#f0f8ff",shape=ellipse]
edge [arrowhead=vee]
subgraph 74 { label="CatTheorySchema" id="CattSystem/CatTheorySchema"
48 [label="String" id="CattSystem/CatTheorySchema/String"]
49 [label="Amphibian" id="CattSystem/CatTheorySchema/Amphibian"]
49 -> 50 [label="IsAL"];
49 -> 51 [label="IsAW"];
49 -> 48 [label="attA"];
50 [label="LandAnimal" id="CattSystem/CatTheorySchema/LandAnimal"]
50 -> 48 [label="attL"];
51 [label="WaterAnimal" id="CattSystem/CatTheorySchema/WaterAnimal"]
51 -> 48 [label="attW"];
}
subgraph 75 { label="CatTheoryInstance" id="CattSystem/CatTheoryInstance"
52 [label="a1" id="CattSystem/CatTheoryInstance/Amphibian[@roleName='a1']"]
52 -> 56 [label="IsAL"];
52 -> 68 [label="IsAW"];
54 [label="a2" id="CattSystem/CatTheoryInstance/Amphibian[@roleName='a2']"]
54 -> 58 [label="IsAL"];
54 -> 70 [label="IsAW"];
56 [label="l1" id="CattSystem/CatTheoryInstance/LandAnimal[@roleName='l1']"]
58 [label="l2" id="CattSystem/CatTheoryInstance/LandAnimal[@roleName='l2']"]
60 [label="l3" id="CattSystem/CatTheoryInstance/LandAnimal[@roleName='l3']"]
62 [label="l4" id="CattSystem/CatTheoryInstance/LandAnimal[@roleName='l4']"]
64 [label="l5" id="CattSystem/CatTheoryInstance/LandAnimal[@roleName='l5']"]
66 [label="w1" id="CattSystem/CatTheoryInstance/WaterAnimal[@roleName='w1']"]
68 [label="w2" id="CattSystem/CatTheoryInstance/WaterAnimal[@roleName='w2']"]
70 [label="w3" id="CattSystem/CatTheoryInstance/WaterAnimal[@roleName='w3']"]
72 [label="w4" id="CattSystem/CatTheoryInstance/WaterAnimal[@roleName='w4']"]
}
52 -> 49 [label="schema"]; 54 -> 49 [label="schema"]; 56 -> 50 [label="schema"]; 58 -> 50 [label="schema"]; 60 -> 50 [label="schema"]; 62 -> 50 [label="schema"]; 64 -> 50 [label="schema"]; 66 -> 51 [label="schema"]; 68 -> 51 [label="schema"]; 70 -> 51 [label="schema"]; 72 -> 51 [label="schema"];
}
SQL
---
/*
To view this file, download an open-source relational database product such as mysql or postgresql.
Automatically generated by Xholon version 0.9.1, using Xholon2Sql.java
Sat Jun 10 09:54:49 GMT-400 2017 1497102889955
model: Categorical Data IDE - AQL - Sigma
www.primordion.com/Xholon
In MySQL, you will need to temporarily disable foreign keys while loading in this file:
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS;
SET FOREIGN_KEY_CHECKS=0;
source thenameofthisfile.sql;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
*/
DROP TABLE IF EXISTS CatTheoryInstance;
CREATE TABLE IF NOT EXISTS CatTheoryInstance (
ID int NOT NULL,
xhcID int NOT NULL,
$H int,
PRIMARY KEY (ID),
FOREIGN KEY (xhcID) REFERENCES XholonClass(ID));
INSERT INTO CatTheoryInstance (ID, xhcID, $H) VALUES
(75, 8, 1364);
DROP TABLE IF EXISTS Amphibian;
CREATE TABLE IF NOT EXISTS Amphibian (
ID int NOT NULL,
xhcID int NOT NULL,
roleName varchar(80) NOT NULL default '',
attA varchar(80) NOT NULL default '',
IsAL int,
IsAW int,
PRIMARY KEY (ID),
FOREIGN KEY (xhcID) REFERENCES XholonClass(ID),
FOREIGN KEY (IsAL) REFERENCES LandAnimal(ID),
FOREIGN KEY (IsAW) REFERENCES WaterAnimal(ID));
INSERT INTO Amphibian (ID, xhcID, roleName, attA, IsAL, IsAW) VALUES
(52, 10, 'a1', 'gecko', 56, 68);
INSERT INTO Amphibian (ID, xhcID, roleName, attA, IsAL, IsAW) VALUES
(54, 10, 'a2', 'frog', 58, 70);
DROP TABLE IF EXISTS LandAnimal;
CREATE TABLE IF NOT EXISTS LandAnimal (
ID int NOT NULL,
xhcID int NOT NULL,
roleName varchar(80) NOT NULL default '',
attL varchar(80) NOT NULL default '',
PRIMARY KEY (ID),
FOREIGN KEY (xhcID) REFERENCES XholonClass(ID));
INSERT INTO LandAnimal (ID, xhcID, roleName, attL) VALUES
(56, 11, 'l1', 'gecko');
INSERT INTO LandAnimal (ID, xhcID, roleName, attL) VALUES
(58, 11, 'l2', 'frog');
INSERT INTO LandAnimal (ID, xhcID, roleName, attL) VALUES
(60, 11, 'l3', 'human');
INSERT INTO LandAnimal (ID, xhcID, roleName, attL) VALUES
(62, 11, 'l4', 'cow');
INSERT INTO LandAnimal (ID, xhcID, roleName, attL) VALUES
(64, 11, 'l5', 'horse');
DROP TABLE IF EXISTS WaterAnimal;
CREATE TABLE IF NOT EXISTS WaterAnimal (
ID int NOT NULL,
xhcID int NOT NULL,
roleName varchar(80) NOT NULL default '',
attW varchar(80) NOT NULL default '',
PRIMARY KEY (ID),
FOREIGN KEY (xhcID) REFERENCES XholonClass(ID));
INSERT INTO WaterAnimal (ID, xhcID, roleName, attW) VALUES
(66, 12, 'w1', 'fish');
INSERT INTO WaterAnimal (ID, xhcID, roleName, attW) VALUES
(68, 12, 'w2', 'gecko');
INSERT INTO WaterAnimal (ID, xhcID, roleName, attW) VALUES
(70, 12, 'w3', 'frog');
INSERT INTO WaterAnimal (ID, xhcID, roleName, attW) VALUES
(72, 12, 'w4', 'dolphin');
DROP TABLE IF EXISTS XholonClass;
CREATE TABLE IF NOT EXISTS XholonClass (
ID int NOT NULL,
xhcName varchar(80),
parentID int,
PRIMARY KEY (ID),
FOREIGN KEY (parentID) REFERENCES XholonClass(ID));
INSERT INTO XholonClass (ID, xhcName, parentID) VALUES
(0, 'XholonClass', 0),
(1, 'Chameleon', 0),
(2, 'Quantity', 0),
(5, 'PhysicalSystem', 0),
(6, 'CattSystem', 0),
(7, 'CatTheorySchema', 0),
(8, 'CatTheoryInstance', 0),
(9, 'String', 0),
(10, 'Amphibian', 0),
(11, 'LandAnimal', 0),
(12, 'WaterAnimal', 0);
Convert SVG to PNG
------------------
inkscape -z -e CattSystem_47_1496936410785.gv.svg.png CattSystem_47_1496936410785.gv.svg
]]></Notes>
<_-.XholonClass>
<PhysicalSystem/>
<!-- check the Schema after everything has been loaded and configured -->
<!--<AqlSchemaChecker/>-->
</_-.XholonClass>
<xholonClassDetails>
</xholonClassDetails>
<PhysicalSystem>
<!--
I've put each statement on its own line, where possible.
I had to add a space before ":"
-->
<CatAql instances="true" schemas="true" separateSchemaInstance="true" xhcName_System="CattSystem" setNodeSuffix="" pointToSchema="true"><![CDATA[
typeside Type = literal {
types
String
constants
gecko frog human cow horse dolphin fish : String
}
schema C = literal : Type {
entities
Amphibian
LandAnimal
WaterAnimal
foreign_keys
IsAL : Amphibian -> LandAnimal
IsAW : Amphibian -> WaterAnimal
attributes
attA : Amphibian -> String
attL : LandAnimal -> String
attW : WaterAnimal -> String
}
instance I = literal : C {
generators
a1 a2 : Amphibian
l1 l2 l3 l4 l5 : LandAnimal
w1 w2 w3 w4 : WaterAnimal
equations
attA(a1) = gecko
attA(a2) = frog
attL(l1) = gecko
attL(l2) = frog
attL(l3) = human
attL(l4) = cow
attL(l5) = horse
attW(w1) = fish
attW(w2) = gecko
attW(w3) = frog
attW(w4) = dolphin
IsAL(a1) = l1
IsAL(a2) = l2
IsAW(a1) = w2
IsAW(a2) = w3
}
]]></CatAql>
<!--<AqlSchemaChecker/>-->
</PhysicalSystem>
<SvgClient><Attribute_String roleName="svgUri"><![CDATA[data:image/svg+xml,
<?xml-stylesheet href="Xholon.css" type="text/css"?>
<!-- Generated by graphviz version 2.28.0 (20140111.2315)
-->
<!-- Title: 47 Pages: 1 -->
<svg width="764pt" height="339pt"
viewBox="0.00 0.00 764.00 338.80" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="CattSystem" class="graph" transform="scale(1 1) rotate(0) translate(4 334.8)">
<title>47</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-334.8 760,-334.8 760,4 -4,4"/>
<text text-anchor="middle" x="378" y="-8.2" font-family="Times,serif" font-size="14.00">CattSystem</text>
<!-- 48 -->
<g id="CattSystem/CatTheorySchema/String" class="node"><title>48</title>
<ellipse fill="#f0f8ff" stroke="black" cx="349" cy="-42.8" rx="34.4651" ry="18"/>
<text text-anchor="middle" x="349" y="-38.6" font-family="Times,serif" font-size="14.00">String</text>
</g>
<!-- 49 -->
<g id="CattSystem/CatTheorySchema/Amphibian" class="node"><title>49</title>
<ellipse fill="#f0f8ff" stroke="black" cx="342" cy="-222.8" rx="54.232" ry="18"/>
<text text-anchor="middle" x="342" y="-218.6" font-family="Times,serif" font-size="14.00">Amphibian</text>
</g>
<!-- 49&#45;&gt;48 -->
<g id="CattSystem_edge3" class="edge"><title>49&#45;&gt;48</title>
<path fill="none" stroke="black" d="M342.671,-204.733C343.889,-173.766 346.471,-108.099 347.933,-70.9292"/>
<polygon fill="black" stroke="black" points="348.331,-60.8157 352.434,-70.9849 348.134,-65.8119 347.938,-70.808 347.938,-70.808 347.938,-70.808 348.134,-65.8119 343.441,-70.6311 348.331,-60.8157 348.331,-60.8157"/>
<text text-anchor="middle" x="359.051" y="-128.6" font-family="Times,serif" font-size="14.00">attA</text>
</g>
<!-- 50 -->
<g id="CattSystem/CatTheorySchema/LandAnimal" class="node"><title>50</title>
<ellipse fill="#f0f8ff" stroke="black" cx="513" cy="-132.8" rx="59.2699" ry="18"/>
<text text-anchor="middle" x="513" y="-128.6" font-family="Times,serif" font-size="14.00">LandAnimal</text>
</g>
<!-- 49&#45;&gt;50 -->
<g id="CattSystem_edge1" class="edge"><title>49&#45;&gt;50</title>
<path fill="none" stroke="black" d="M363.329,-206.135C379.301,-194.845 401.97,-179.734 423.236,-168.8 436.531,-161.964 451.484,-155.635 465.316,-150.293"/>
<polygon fill="black" stroke="black" points="474.68,-146.757 466.914,-154.5 470.002,-148.523 465.324,-150.29 465.324,-150.29 465.324,-150.29 470.002,-148.523 463.735,-146.08 474.68,-146.757 474.68,-146.757"/>
<text text-anchor="middle" x="438.382" y="-173.6" font-family="Times,serif" font-size="14.00">IsAL</text>
</g>
<!-- 51 -->
<g id="CattSystem/CatTheorySchema/WaterAnimal" class="node"><title>51</title>
<ellipse fill="#f0f8ff" stroke="black" cx="204" cy="-132.8" rx="63.3841" ry="18"/>
<text text-anchor="middle" x="204" y="-128.6" font-family="Times,serif" font-size="14.00">WaterAnimal</text>
</g>
<!-- 49&#45;&gt;51 -->
<g id="CattSystem_edge2" class="edge"><title>49&#45;&gt;51</title>
<path fill="none" stroke="black" d="M322.738,-205.779C309.029,-194.741 289.933,-180.085 272,-168.8 263.319,-163.337 253.685,-157.984 244.464,-153.172"/>
<polygon fill="black" stroke="black" points="235.431,-148.556 246.384,-149.099 239.884,-150.831 244.336,-153.106 244.336,-153.106 244.336,-153.106 239.884,-150.831 242.288,-157.114 235.431,-148.556 235.431,-148.556"/>
<text text-anchor="middle" x="314.713" y="-173.6" font-family="Times,serif" font-size="14.00">IsAW</text>
</g>
<!-- 50&#45;&gt;48 -->
<g id="CattSystem_edge4" class="edge"><title>50&#45;&gt;48</title>
<path fill="none" stroke="black" d="M485.18,-116.872C456.359,-101.407 411.375,-77.2693 381.074,-61.0106"/>
<polygon fill="black" stroke="black" points="372.176,-56.2362 383.116,-56.9992 376.582,-58.6003 380.988,-60.9644 380.988,-60.9644 380.988,-60.9644 376.582,-58.6003 378.86,-64.9296 372.176,-56.2362 372.176,-56.2362"/>
<text text-anchor="middle" x="457.274" y="-83.6" font-family="Times,serif" font-size="14.00">attL</text>
</g>
<!-- 51&#45;&gt;48 -->
<g id="CattSystem_edge5" class="edge"><title>51&#45;&gt;48</title>
<path fill="none" stroke="black" d="M229.589,-116.27C254.462,-101.175 292.244,-78.245 318.628,-62.2328"/>
<polygon fill="black" stroke="black" points="327.445,-56.8817 321.231,-65.917 323.171,-59.4758 318.896,-62.07 318.896,-62.07 318.896,-62.07 323.171,-59.4758 316.561,-58.223 327.445,-56.8817 327.445,-56.8817"/>
<text text-anchor="middle" x="303.605" y="-83.6" font-family="Times,serif" font-size="14.00">attW</text>
</g>
<!-- 52 -->
<g id="CattSystem/CatTheoryInstance/Amphibian[@roleName=&#39;a1&#39;]" class="node"><title>52</title>
<ellipse fill="#f0f8ff" stroke="black" cx="304" cy="-312.8" rx="27" ry="18"/>
<text text-anchor="middle" x="304" y="-308.6" font-family="Times,serif" font-size="14.00">a1</text>
</g>
<!-- 52&#45;&gt;49 -->
<g id="CattSystem_edge10" class="edge"><title>52&#45;&gt;49</title>
<path fill="none" stroke="black" d="M303.308,-294.374C303.519,-283.671 304.962,-269.928 310.021,-258.8 311.784,-254.923 314.141,-251.182 316.78,-247.683"/>
<polygon fill="black" stroke="black" points="323.302,-240.001 320.26,-250.537 320.065,-243.813 316.829,-247.624 316.829,-247.624 316.829,-247.624 320.065,-243.813 313.399,-244.712 323.302,-240.001 323.302,-240.001"/>
<text text-anchor="middle" x="331.99" y="-263.6" font-family="Times,serif" font-size="14.00">schema</text>
</g>
<!-- 56 -->
<g id="CattSystem/CatTheoryInstance/LandAnimal[@roleName=&#39;l1&#39;]" class="node"><title>56</title>
<ellipse fill="#f0f8ff" stroke="black" cx="441" cy="-222.8" rx="27" ry="18"/>
<text text-anchor="middle" x="441" y="-218.6" font-family="Times,serif" font-size="14.00">l1</text>
</g>
<!-- 52&#45;&gt;56 -->
<g id="CattSystem_edge6" class="edge"><title>52&#45;&gt;56</title>
<path fill="none" stroke="black" d="M325.047,-301.077C329.888,-298.831 335.065,-296.601 340,-294.8 369.368,-284.081 382.856,-295.378 408,-276.8 417.381,-269.869 424.706,-259.4 430.047,-249.592"/>
<polygon fill="black" stroke="black" points="434.561,-240.528 434.131,-251.486 432.332,-245.004 430.103,-249.48 430.103,-249.48 430.103,-249.48 432.332,-245.004 426.075,-247.473 434.561,-240.528 434.561,-240.528"/>
<text text-anchor="middle" x="439.382" y="-263.6" font-family="Times,serif" font-size="14.00">IsAL</text>
</g>
<!-- 68 -->
<g id="CattSystem/CatTheoryInstance/WaterAnimal[@roleName=&#39;w2&#39;]" class="node"><title>68</title>
<ellipse fill="#f0f8ff" stroke="black" cx="171" cy="-222.8" rx="27" ry="18"/>
<text text-anchor="middle" x="171" y="-218.6" font-family="Times,serif" font-size="14.00">w2</text>
</g>
<!-- 52&#45;&gt;68 -->
<g id="CattSystem_edge7" class="edge"><title>52&#45;&gt;68</title>
<path fill="none" stroke="black" d="M277.113,-310.542C251.17,-307.912 212.418,-300.038 188.574,-276.8 181.613,-270.016 177.409,-260.416 174.87,-251.246"/>
<polygon fill="black" stroke="black" points="172.653,-241.25 179.211,-250.038 173.735,-246.131 174.818,-251.012 174.818,-251.012 174.818,-251.012 173.735,-246.131 170.425,-251.987 172.653,-241.25 172.653,-241.25"/>
<text text-anchor="middle" x="205.713" y="-263.6" font-family="Times,serif" font-size="14.00">IsAW</text>
</g>
<!-- 56&#45;&gt;50 -->
<g id="CattSystem_edge12" class="edge"><title>56&#45;&gt;50</title>
<path fill="none" stroke="black" d="M446.955,-204.879C451.375,-193.852 458.166,-179.567 467.021,-168.8 470.858,-164.134 475.435,-159.727 480.19,-155.714"/>
<polygon fill="black" stroke="black" points="488.262,-149.359 483.189,-159.08 484.334,-152.452 480.405,-155.545 480.405,-155.545 480.405,-155.545 484.334,-152.452 477.621,-152.009 488.262,-149.359 488.262,-149.359"/>
<text text-anchor="middle" x="488.99" y="-173.6" font-family="Times,serif" font-size="14.00">schema</text>
</g>
<!-- 68&#45;&gt;51 -->
<g id="CattSystem_edge18" class="edge"><title>68&#45;&gt;51</title>
<path fill="none" stroke="black" d="M168.317,-204.483C167.387,-193.821 167.517,-180.082 172.021,-168.8 173.523,-165.038 175.629,-161.428 178.052,-158.052"/>
<polygon fill="black" stroke="black" points="184.564,-150.186 181.654,-160.758 181.375,-154.037 178.187,-157.889 178.187,-157.889 178.187,-157.889 181.375,-154.037 174.721,-155.02 184.564,-150.186 184.564,-150.186"/>
<text text-anchor="middle" x="193.99" y="-173.6" font-family="Times,serif" font-size="14.00">schema</text>
</g>
<!-- 54 -->
<g id="CattSystem/CatTheoryInstance/Amphibian[@roleName=&#39;a2&#39;]" class="node"><title>54</title>
<ellipse fill="#f0f8ff" stroke="black" cx="376" cy="-312.8" rx="27" ry="18"/>
<text text-anchor="middle" x="376" y="-308.6" font-family="Times,serif" font-size="14.00">a2</text>
</g>
<!-- 54&#45;&gt;49 -->
<g id="CattSystem_edge11" class="edge"><title>54&#45;&gt;49</title>
<path fill="none" stroke="black" d="M369.605,-295.248C364.728,-282.627 357.914,-264.989 352.276,-250.395"/>
<polygon fill="black" stroke="black" points="348.598,-240.878 356.4,-248.584 350.4,-245.542 352.202,-250.206 352.202,-250.206 352.202,-250.206 350.4,-245.542 348.005,-251.828 348.598,-240.878 348.598,-240.878"/>
<text text-anchor="middle" x="383.99" y="-263.6" font-family="Times,serif" font-size="14.00">schema</text>
</g>
<!-- 58 -->
<g id="CattSystem/CatTheoryInstance/LandAnimal[@roleName=&#39;l2&#39;]" class="node"><title>58</title>
<ellipse fill="#f0f8ff" stroke="black" cx="513" cy="-222.8" rx="27" ry="18"/>
<text text-anchor="middle" x="513" y="-218.6" font-family="Times,serif" font-size="14.00">l2</text>
</g>
<!-- 54&#45;&gt;58 -->
<g id="CattSystem_edge8" class="edge"><title>54&#45;&gt;58</title>
<path fill="none" stroke="black" d="M399.792,-304.025C416.548,-297.966 439.094,-288.605 457,-276.8 470.002,-268.228 482.753,-256.5 492.795,-246.256"/>
<polygon fill="black" stroke="black" points="499.905,-238.789 496.268,-249.134 496.457,-242.41 493.009,-246.031 493.009,-246.031 493.009,-246.031 496.457,-242.41 489.75,-242.928 499.905,-238.789 499.905,-238.789"/>
<text text-anchor="middle" x="493.382" y="-263.6" font-family="Times,serif" font-size="14.00">IsAL</text>
</g>
<!-- 70 -->
<g id="CattSystem/CatTheoryInstance/WaterAnimal[@roleName=&#39;w3&#39;]" class="node"><title>70</title>
<ellipse fill="#f0f8ff" stroke="black" cx="243" cy="-222.8" rx="27" ry="18"/>
<text text-anchor="middle" x="243" y="-218.6" font-family="Times,serif" font-size="14.00">w3</text>
</g>
<!-- 54&#45;&gt;70 -->
<g id="CattSystem_edge9" class="edge"><title>54&#45;&gt;70</title>
<path fill="none" stroke="black" d="M354.969,-301.033C350.127,-298.79 344.945,-296.572 340,-294.8 309.181,-283.758 293.946,-297.488 268.574,-276.8 260.287,-270.044 254.502,-259.955 250.558,-250.387"/>
<polygon fill="black" stroke="black" points="247.087,-240.766 254.714,-248.645 248.784,-245.469 250.481,-250.172 250.481,-250.172 250.481,-250.172 248.784,-245.469 246.248,-251.7 247.087,-240.766 247.087,-240.766"/>
<text text-anchor="middle" x="285.713" y="-263.6" font-family="Times,serif" font-size="14.00">IsAW</text>
</g>
<!-- 58&#45;&gt;50 -->
<g id="CattSystem_edge13" class="edge"><title>58&#45;&gt;50</title>
<path fill="none" stroke="black" d="M513,-204.414C513,-192.04 513,-175.169 513,-161.02"/>
<polygon fill="black" stroke="black" points="513,-150.85 517.5,-160.85 513,-155.85 513,-160.85 513,-160.85 513,-160.85 513,-155.85 508.5,-160.85 513,-150.85 513,-150.85"/>
<text text-anchor="middle" x="533.99" y="-173.6" font-family="Times,serif" font-size="14.00">schema</text>
</g>
<!-- 70&#45;&gt;51 -->
<g id="CattSystem_edge19" class="edge"><title>70&#45;&gt;51</title>
<path fill="none" stroke="black" d="M235.664,-205.248C230.071,-192.627 222.254,-174.989 215.787,-160.395"/>
<polygon fill="black" stroke="black" points="211.569,-150.878 219.735,-158.197 213.595,-155.449 215.621,-160.021 215.621,-160.021 215.621,-160.021 213.595,-155.449 211.506,-161.844 211.569,-150.878 211.569,-150.878"/>
<text text-anchor="middle" x="247.99" y="-173.6" font-family="Times,serif" font-size="14.00">schema</text>
</g>
<!-- 60 -->
<g id="CattSystem/CatTheoryInstance/LandAnimal[@roleName=&#39;l3&#39;]" class="node"><title>60</title>
<ellipse fill="#f0f8ff" stroke="black" cx="585" cy="-222.8" rx="27" ry="18"/>
<text text-anchor="middle" x="585" y="-218.6" font-family="Times,serif" font-size="14.00">l3</text>
</g>
<!-- 60&#45;&gt;50 -->
<g id="CattSystem_edge14" class="edge"><title>60&#45;&gt;50</title>
<path fill="none" stroke="black" d="M578.66,-204.918C574.006,-193.909 566.945,-179.627 558,-168.8 554.204,-164.205 549.704,-159.835 545.041,-155.839"/>
<polygon fill="black" stroke="black" points="537.136,-149.492 547.751,-152.243 541.035,-152.622 544.933,-155.752 544.933,-155.752 544.933,-155.752 541.035,-152.622 542.116,-159.261 537.136,-149.492 537.136,-149.492"/>
<text text-anchor="middle" x="590.99" y="-173.6" font-family="Times,serif" font-size="14.00">schema</text>
</g>
<!-- 62 -->
<g id="CattSystem/CatTheoryInstance/LandAnimal[@roleName=&#39;l4&#39;]" class="node"><title>62</title>
<ellipse fill="#f0f8ff" stroke="black" cx="657" cy="-222.8" rx="27" ry="18"/>
<text text-anchor="middle" x="657" y="-218.6" font-family="Times,serif" font-size="14.00">l4</text>
</g>
<!-- 62&#45;&gt;50 -->
<g id="CattSystem_edge15" class="edge"><title>62&#45;&gt;50</title>
<path fill="none" stroke="black" d="M647.843,-205.849C640.366,-194.112 628.802,-178.562 615,-168.8 601.519,-159.265 585.221,-152.146 569.646,-146.91"/>
<polygon fill="black" stroke="black" points="560.074,-143.888 570.965,-142.607 564.842,-145.393 569.61,-146.898 569.61,-146.898 569.61,-146.898 564.842,-145.393 568.256,-151.19 560.074,-143.888 560.074,-143.888"/>
<text text-anchor="middle" x="654.99" y="-173.6" font-family="Times,serif" font-size="14.00">schema</text>
</g>
<!-- 64 -->
<g id="CattSystem/CatTheoryInstance/LandAnimal[@roleName=&#39;l5&#39;]" class="node"><title>64</title>
<ellipse fill="#f0f8ff" stroke="black" cx="729" cy="-222.8" rx="27" ry="18"/>
<text text-anchor="middle" x="729" y="-218.6" font-family="Times,serif" font-size="14.00">l5</text>
</g>
<!-- 64&#45;&gt;50 -->
<g id="CattSystem_edge16" class="edge"><title>64&#45;&gt;50</title>
<path fill="none" stroke="black" d="M718.161,-205.857C709.106,-193.803 695.108,-177.835 679,-168.8 649.098,-152.029 612.069,-143.273 580.575,-138.711"/>
<polygon fill="black" stroke="black" points="570.561,-137.372 581.069,-134.237 575.517,-138.035 580.473,-138.697 580.473,-138.697 580.473,-138.697 575.517,-138.035 579.876,-143.157 570.561,-137.372 570.561,-137.372"/>
<text text-anchor="middle" x="721.99" y="-173.6" font-family="Times,serif" font-size="14.00">schema</text>
</g>
<!-- 66 -->
<g id="CattSystem/CatTheoryInstance/WaterAnimal[@roleName=&#39;w1&#39;]" class="node"><title>66</title>
<ellipse fill="#f0f8ff" stroke="black" cx="27" cy="-222.8" rx="27" ry="18"/>
<text text-anchor="middle" x="27" y="-218.6" font-family="Times,serif" font-size="14.00">w1</text>
</g>
<!-- 66&#45;&gt;51 -->
<g id="CattSystem_edge17" class="edge"><title>66&#45;&gt;51</title>
<path fill="none" stroke="black" d="M35.0326,-205.517C41.7298,-193.607 52.3699,-177.986 66.021,-168.8 86.4735,-155.038 111.936,-146.687 135.4,-141.619"/>
<polygon fill="black" stroke="black" points="145.312,-139.642 136.386,-146.011 140.409,-140.62 135.505,-141.598 135.505,-141.598 135.505,-141.598 140.409,-140.62 134.625,-137.185 145.312,-139.642 145.312,-139.642"/>
<text text-anchor="middle" x="87.9895" y="-173.6" font-family="Times,serif" font-size="14.00">schema</text>
</g>
<!-- 72 -->
<g id="CattSystem/CatTheoryInstance/WaterAnimal[@roleName=&#39;w4&#39;]" class="node"><title>72</title>
<ellipse fill="#f0f8ff" stroke="black" cx="99" cy="-222.8" rx="27" ry="18"/>
<text text-anchor="middle" x="99" y="-218.6" font-family="Times,serif" font-size="14.00">w4</text>
</g>
<!-- 72&#45;&gt;51 -->
<g id="CattSystem_edge20" class="edge"><title>72&#45;&gt;51</title>
<path fill="none" stroke="black" d="M103.268,-204.627C106.874,-193.209 113.077,-178.571 123.021,-168.8 130.883,-161.075 140.725,-154.927 150.812,-150.08"/>
<polygon fill="black" stroke="black" points="160.094,-145.987 152.76,-154.139 155.519,-148.004 150.944,-150.022 150.944,-150.022 150.944,-150.022 155.519,-148.004 149.129,-145.904 160.094,-145.987 160.094,-145.987"/>
<text text-anchor="middle" x="144.99" y="-173.6" font-family="Times,serif" font-size="14.00">schema</text>
</g>
</g>
</svg>
]]></Attribute_String><Attribute_String roleName="setup">${MODELNAME_DEFAULT},${SVGURI_DEFAULT}</Attribute_String></SvgClient>
</XholonWorkbook>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment