Compare commits
41 Commits
a7f4b797e8
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e3cc967a71 | ||
|
|
fca3def892 | ||
| 32c9bf4e66 | |||
|
|
f73edd7692 | ||
| 0bb91c25b7 | |||
|
|
6c1e9f63f2 | ||
| a2fbb6bf20 | |||
| f350685e00 | |||
| ff27f922b8 | |||
| 5c45389af3 | |||
| 7d1ac383ea | |||
|
|
67785960d6 | ||
|
|
f20b7e171f | ||
|
|
ffa81946fc | ||
|
|
742daa1cd8 | ||
| 018a5842d0 | |||
| 275bc49ffd | |||
|
|
0b2ea9650c | ||
| 2d3b93ec61 | |||
| 289062da8d | |||
|
|
17b64357a0 | ||
|
|
775135e6b3 | ||
|
|
0472eb4cfb | ||
|
|
8aa2d1d383 | ||
| 829e4cb608 | |||
| ba5afc852b | |||
|
|
a91a2750c9 | ||
|
|
4358384169 | ||
|
|
79b12d15f0 | ||
| 772acff4e8 | |||
| ae1156bd6c | |||
| 4bfebf2f61 | |||
| 0e212f22a1 | |||
|
|
37e53ddb2b | ||
|
|
4b2e1a2330 | ||
|
|
752610a905 | ||
|
|
8a0e38c13c | ||
|
|
3e80170479 | ||
|
|
47cb483662 | ||
|
|
b4ddd1eefe | ||
|
|
d879a25948 |
3
.gitignore
vendored
3
.gitignore
vendored
@@ -177,5 +177,4 @@ profile_default/
|
|||||||
ipython_config.py
|
ipython_config.py
|
||||||
|
|
||||||
# Remove previous ipynb_checkpoints
|
# Remove previous ipynb_checkpoints
|
||||||
# git rm -r .ipynb_checkpoints/
|
# git rm -r .ipynb_checkpoints/
|
||||||
|
|
||||||
1866
Daten_ohne_relationships.ipynb
Normal file
1866
Daten_ohne_relationships.ipynb
Normal file
File diff suppressed because it is too large
Load Diff
BIN
Datenmodell3.xlsx
Normal file
BIN
Datenmodell3.xlsx
Normal file
Binary file not shown.
BIN
Datenmodell5.xlsx
Normal file
BIN
Datenmodell5.xlsx
Normal file
Binary file not shown.
File diff suppressed because it is too large
Load Diff
923
neofarm/klassendiagramm/classes_neofarm.svg
Normal file
923
neofarm/klassendiagramm/classes_neofarm.svg
Normal file
@@ -0,0 +1,923 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||||
|
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||||
|
<!-- Generated by graphviz version 12.1.2 (0)
|
||||||
|
-->
|
||||||
|
<!-- Title: classes_neofarm Pages: 1 -->
|
||||||
|
<svg width="6468pt" height="405pt"
|
||||||
|
viewBox="0.00 0.00 6467.88 404.50" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 400.5)">
|
||||||
|
<title>classes_neofarm</title>
|
||||||
|
<polygon fill="white" stroke="none" points="-4,4 -4,-400.5 6463.88,-400.5 6463.88,4 -4,4"/>
|
||||||
|
<!-- log.Activity -->
|
||||||
|
<g id="node1" class="node">
|
||||||
|
<title>log.Activity</title>
|
||||||
|
<polygon fill="none" stroke="black" points="0,-39 0,-89.5 82,-89.5 82,-39 0,-39"/>
|
||||||
|
<text text-anchor="start" x="8" y="-72.2" font-family="Times,serif" font-size="14.00">Activity</text>
|
||||||
|
<polyline fill="none" stroke="black" points="0,-64.25 82,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="0,-64.25 82,-64.25"/>
|
||||||
|
<text text-anchor="start" x="36.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Log -->
|
||||||
|
<g id="node8" class="node">
|
||||||
|
<title>log.Log</title>
|
||||||
|
<polygon fill="none" stroke="black" points="255.62,-165 255.62,-396 494.38,-396 494.38,-165 255.62,-165"/>
|
||||||
|
<text text-anchor="start" x="362.62" y="-378.7" font-family="Times,serif" font-size="14.00">Log</text>
|
||||||
|
<polyline fill="none" stroke="black" points="255.62,-370.75 494.38,-370.75"/>
|
||||||
|
<text text-anchor="start" x="263.62" y="-353.45" font-family="Times,serif" font-size="14.00">assets : RelationField</text>
|
||||||
|
<text text-anchor="start" x="263.62" y="-336.2" font-family="Times,serif" font-size="14.00">equipment : RelationField</text>
|
||||||
|
<text text-anchor="start" x="263.62" y="-318.95" font-family="Times,serif" font-size="14.00">isMovement : AttributeField</text>
|
||||||
|
<text text-anchor="start" x="263.62" y="-301.7" font-family="Times,serif" font-size="14.00">json_notes : AttributeField</text>
|
||||||
|
<text text-anchor="start" x="263.62" y="-284.45" font-family="Times,serif" font-size="14.00">location : RelationField</text>
|
||||||
|
<text text-anchor="start" x="263.62" y="-267.2" font-family="Times,serif" font-size="14.00">name : AttributeField</text>
|
||||||
|
<text text-anchor="start" x="263.62" y="-249.95" font-family="Times,serif" font-size="14.00">notes</text>
|
||||||
|
<text text-anchor="start" x="263.62" y="-232.7" font-family="Times,serif" font-size="14.00">plant</text>
|
||||||
|
<text text-anchor="start" x="263.62" y="-215.45" font-family="Times,serif" font-size="14.00">quantities : RelationField</text>
|
||||||
|
<text text-anchor="start" x="263.62" y="-198.2" font-family="Times,serif" font-size="14.00">timestamp : AttributeField</text>
|
||||||
|
<polyline fill="none" stroke="black" points="255.62,-190.25 494.38,-190.25"/>
|
||||||
|
<text text-anchor="start" x="370.88" y="-172.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Activity->log.Log -->
|
||||||
|
<g id="edge13" class="edge">
|
||||||
|
<title>log.Activity->log.Log</title>
|
||||||
|
<path fill="none" stroke="black" d="M56.76,-89.8C65.72,-102.44 77.78,-117.47 91,-128.5 136.93,-166.81 194.14,-199.5 245.15,-224.56"/>
|
||||||
|
<polygon fill="none" stroke="black" points="243.38,-227.59 253.91,-228.81 246.44,-221.3 243.38,-227.59"/>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Asset -->
|
||||||
|
<g id="node2" class="node">
|
||||||
|
<title>asset.Asset</title>
|
||||||
|
<polygon fill="none" stroke="black" points="1217.75,-225.38 1217.75,-335.62 1448.25,-335.62 1448.25,-225.38 1217.75,-225.38"/>
|
||||||
|
<text text-anchor="start" x="1312.38" y="-318.32" font-family="Times,serif" font-size="14.00">Asset</text>
|
||||||
|
<polyline fill="none" stroke="black" points="1217.75,-310.38 1448.25,-310.38"/>
|
||||||
|
<text text-anchor="start" x="1225.75" y="-293.07" font-family="Times,serif" font-size="14.00">location : RelationField</text>
|
||||||
|
<text text-anchor="start" x="1225.75" y="-275.82" font-family="Times,serif" font-size="14.00">name : AttributeField</text>
|
||||||
|
<text text-anchor="start" x="1225.75" y="-258.57" font-family="Times,serif" font-size="14.00">timestamp : AttributeField</text>
|
||||||
|
<polyline fill="none" stroke="black" points="1217.75,-250.62 1448.25,-250.62"/>
|
||||||
|
<text text-anchor="start" x="1242.25" y="-233.32" font-family="Times,serif" font-size="14.00">get_logs_of_type(type)</text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.Crop -->
|
||||||
|
<g id="node3" class="node">
|
||||||
|
<title>taxonomy.Crop</title>
|
||||||
|
<polygon fill="none" stroke="black" points="2040,-39 2040,-89.5 2094,-89.5 2094,-39 2040,-39"/>
|
||||||
|
<text text-anchor="start" x="2050.5" y="-72.2" font-family="Times,serif" font-size="14.00">Crop</text>
|
||||||
|
<polyline fill="none" stroke="black" points="2040,-64.25 2094,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="2040,-64.25 2094,-64.25"/>
|
||||||
|
<text text-anchor="start" x="2062.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.Taxonomy -->
|
||||||
|
<g id="node56" class="node">
|
||||||
|
<title>taxonomy.Taxonomy</title>
|
||||||
|
<polygon fill="none" stroke="black" points="2320.38,-242.62 2320.38,-318.38 2509.62,-318.38 2509.62,-242.62 2320.38,-242.62"/>
|
||||||
|
<text text-anchor="start" x="2382" y="-301.07" font-family="Times,serif" font-size="14.00">Taxonomy</text>
|
||||||
|
<polyline fill="none" stroke="black" points="2320.38,-293.12 2509.62,-293.12"/>
|
||||||
|
<text text-anchor="start" x="2328.38" y="-275.82" font-family="Times,serif" font-size="14.00">name : AttributeField</text>
|
||||||
|
<polyline fill="none" stroke="black" points="2320.38,-267.88 2509.62,-267.88"/>
|
||||||
|
<text text-anchor="start" x="2410.88" y="-250.57" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.Crop->taxonomy.Taxonomy -->
|
||||||
|
<g id="edge35" class="edge">
|
||||||
|
<title>taxonomy.Crop->taxonomy.Taxonomy</title>
|
||||||
|
<path fill="none" stroke="black" d="M2076.72,-89.82C2082.75,-102.62 2091.56,-117.8 2103,-128.5 2161.7,-183.41 2244.07,-222.12 2309.44,-246.6"/>
|
||||||
|
<polygon fill="none" stroke="black" points="2308.18,-249.86 2318.78,-250.03 2310.6,-243.29 2308.18,-249.86"/>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Equipment -->
|
||||||
|
<g id="node4" class="node">
|
||||||
|
<title>asset.Equipment</title>
|
||||||
|
<polygon fill="none" stroke="black" points="747.88,-39 747.88,-89.5 838.12,-89.5 838.12,-39 747.88,-39"/>
|
||||||
|
<text text-anchor="start" x="755.88" y="-72.2" font-family="Times,serif" font-size="14.00">Equipment</text>
|
||||||
|
<polyline fill="none" stroke="black" points="747.88,-64.25 838.12,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="747.88,-64.25 838.12,-64.25"/>
|
||||||
|
<text text-anchor="start" x="788.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Equipment->asset.Asset -->
|
||||||
|
<g id="edge1" class="edge">
|
||||||
|
<title>asset.Equipment->asset.Asset</title>
|
||||||
|
<path fill="none" stroke="black" d="M808.88,-89.87C818.49,-103.01 831.81,-118.49 847,-128.5 956.71,-200.8 1102.95,-240.05 1206.26,-260.26"/>
|
||||||
|
<polygon fill="none" stroke="black" points="1205.42,-263.66 1215.9,-262.11 1206.73,-256.79 1205.42,-263.66"/>
|
||||||
|
</g>
|
||||||
|
<!-- log.Harvest -->
|
||||||
|
<g id="node5" class="node">
|
||||||
|
<title>log.Harvest</title>
|
||||||
|
<polygon fill="none" stroke="black" points="100.12,-39 100.12,-89.5 173.88,-89.5 173.88,-39 100.12,-39"/>
|
||||||
|
<text text-anchor="start" x="108.12" y="-72.2" font-family="Times,serif" font-size="14.00">Harvest</text>
|
||||||
|
<polyline fill="none" stroke="black" points="100.12,-64.25 173.88,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="100.12,-64.25 173.88,-64.25"/>
|
||||||
|
<text text-anchor="start" x="132.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Harvest->log.Log -->
|
||||||
|
<g id="edge15" class="edge">
|
||||||
|
<title>log.Harvest->log.Log</title>
|
||||||
|
<path fill="none" stroke="black" d="M152.58,-89.9C160.88,-102.13 171.7,-116.76 183,-128.5 202.35,-148.59 224.43,-168.32 246.56,-186.56"/>
|
||||||
|
<polygon fill="none" stroke="black" points="244.23,-189.18 254.19,-192.78 248.65,-183.75 244.23,-189.18"/>
|
||||||
|
</g>
|
||||||
|
<!-- log.Input -->
|
||||||
|
<g id="node6" class="node">
|
||||||
|
<title>log.Input</title>
|
||||||
|
<polygon fill="none" stroke="black" points="192.38,-39 192.38,-89.5 249.62,-89.5 249.62,-39 192.38,-39"/>
|
||||||
|
<text text-anchor="start" x="200.38" y="-72.2" font-family="Times,serif" font-size="14.00">Input</text>
|
||||||
|
<polyline fill="none" stroke="black" points="192.38,-64.25 249.62,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="192.38,-64.25 249.62,-64.25"/>
|
||||||
|
<text text-anchor="start" x="216.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Input->log.Log -->
|
||||||
|
<g id="edge17" class="edge">
|
||||||
|
<title>log.Input->log.Log</title>
|
||||||
|
<path fill="none" stroke="black" d="M234.98,-89.99C241.9,-101.84 250.56,-116.11 259,-128.5 265.07,-137.41 271.48,-146.51 278.04,-155.59"/>
|
||||||
|
<polygon fill="none" stroke="black" points="275.04,-157.42 283.75,-163.44 280.7,-153.3 275.04,-157.42"/>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Land -->
|
||||||
|
<g id="node7" class="node">
|
||||||
|
<title>asset.Land</title>
|
||||||
|
<polygon fill="none" stroke="black" points="856.25,-26.38 856.25,-102.12 1119.75,-102.12 1119.75,-26.38 856.25,-26.38"/>
|
||||||
|
<text text-anchor="start" x="971.5" y="-84.83" font-family="Times,serif" font-size="14.00">Land</text>
|
||||||
|
<polyline fill="none" stroke="black" points="856.25,-76.88 1119.75,-76.88"/>
|
||||||
|
<text text-anchor="start" x="864.25" y="-59.58" font-family="Times,serif" font-size="14.00">json_geometry : AttributeField</text>
|
||||||
|
<polyline fill="none" stroke="black" points="856.25,-51.62 1119.75,-51.62"/>
|
||||||
|
<text text-anchor="start" x="983.88" y="-34.33" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Land->asset.Asset -->
|
||||||
|
<g id="edge3" class="edge">
|
||||||
|
<title>asset.Land->asset.Asset</title>
|
||||||
|
<path fill="none" stroke="black" d="M1048.09,-102.57C1099.77,-134.66 1175.29,-181.56 1235.59,-219.01"/>
|
||||||
|
<polygon fill="none" stroke="black" points="1233.51,-221.83 1243.85,-224.13 1237.2,-215.89 1233.51,-221.83"/>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.LogCategory -->
|
||||||
|
<g id="node9" class="node">
|
||||||
|
<title>taxonomy.LogCategory</title>
|
||||||
|
<polygon fill="none" stroke="black" points="2111.62,-39 2111.62,-89.5 2218.38,-89.5 2218.38,-39 2111.62,-39"/>
|
||||||
|
<text text-anchor="start" x="2119.62" y="-72.2" font-family="Times,serif" font-size="14.00">LogCategory</text>
|
||||||
|
<polyline fill="none" stroke="black" points="2111.62,-64.25 2218.38,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="2111.62,-64.25 2218.38,-64.25"/>
|
||||||
|
<text text-anchor="start" x="2160.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.LogCategory->taxonomy.Taxonomy -->
|
||||||
|
<g id="edge37" class="edge">
|
||||||
|
<title>taxonomy.LogCategory->taxonomy.Taxonomy</title>
|
||||||
|
<path fill="none" stroke="black" d="M2187.9,-89.95C2199.33,-101.93 2213.55,-116.32 2227,-128.5 2268.79,-166.36 2318.66,-206.18 2356.52,-235.42"/>
|
||||||
|
<polygon fill="none" stroke="black" points="2354.13,-238 2364.19,-241.32 2358.4,-232.45 2354.13,-238"/>
|
||||||
|
</g>
|
||||||
|
<!-- log.Maintenance -->
|
||||||
|
<g id="node10" class="node">
|
||||||
|
<title>log.Maintenance</title>
|
||||||
|
<polygon fill="none" stroke="black" points="267.62,-39 267.62,-89.5 374.38,-89.5 374.38,-39 267.62,-39"/>
|
||||||
|
<text text-anchor="start" x="275.62" y="-72.2" font-family="Times,serif" font-size="14.00">Maintenance</text>
|
||||||
|
<polyline fill="none" stroke="black" points="267.62,-64.25 374.38,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="267.62,-64.25 374.38,-64.25"/>
|
||||||
|
<text text-anchor="start" x="316.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Maintenance->log.Log -->
|
||||||
|
<g id="edge19" class="edge">
|
||||||
|
<title>log.Maintenance->log.Log</title>
|
||||||
|
<path fill="none" stroke="black" d="M327.19,-89.83C331.35,-106.3 337.16,-129.37 343.31,-153.77"/>
|
||||||
|
<polygon fill="none" stroke="black" points="339.85,-154.36 345.69,-163.2 346.64,-152.65 339.85,-154.36"/>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Material -->
|
||||||
|
<g id="node11" class="node">
|
||||||
|
<title>asset.Material</title>
|
||||||
|
<polygon fill="none" stroke="black" points="1137.5,-26.38 1137.5,-102.12 1318.5,-102.12 1318.5,-26.38 1137.5,-26.38"/>
|
||||||
|
<text text-anchor="start" x="1195" y="-84.83" font-family="Times,serif" font-size="14.00">Material</text>
|
||||||
|
<polyline fill="none" stroke="black" points="1137.5,-76.88 1318.5,-76.88"/>
|
||||||
|
<text text-anchor="start" x="1145.5" y="-59.58" font-family="Times,serif" font-size="14.00">crop : RelationField</text>
|
||||||
|
<polyline fill="none" stroke="black" points="1137.5,-51.62 1318.5,-51.62"/>
|
||||||
|
<text text-anchor="start" x="1223.88" y="-34.33" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Material->asset.Asset -->
|
||||||
|
<g id="edge5" class="edge">
|
||||||
|
<title>asset.Material->asset.Asset</title>
|
||||||
|
<path fill="none" stroke="black" d="M1246.29,-102.57C1261.43,-133.47 1283.31,-178.1 1301.3,-214.81"/>
|
||||||
|
<polygon fill="none" stroke="black" points="1298.05,-216.13 1305.59,-223.57 1304.33,-213.05 1298.05,-216.13"/>
|
||||||
|
</g>
|
||||||
|
<!-- quantity.Material -->
|
||||||
|
<g id="node12" class="node">
|
||||||
|
<title>quantity.Material</title>
|
||||||
|
<polygon fill="none" stroke="black" points="2759.25,-26.38 2759.25,-102.12 3022.75,-102.12 3022.75,-26.38 2759.25,-26.38"/>
|
||||||
|
<text text-anchor="start" x="2858" y="-84.83" font-family="Times,serif" font-size="14.00">Material</text>
|
||||||
|
<polyline fill="none" stroke="black" points="2759.25,-76.88 3022.75,-76.88"/>
|
||||||
|
<text text-anchor="start" x="2767.25" y="-59.58" font-family="Times,serif" font-size="14.00">material_types : RelationField</text>
|
||||||
|
<polyline fill="none" stroke="black" points="2759.25,-51.62 3022.75,-51.62"/>
|
||||||
|
<text text-anchor="start" x="2886.88" y="-34.33" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- quantity.Quantity -->
|
||||||
|
<g id="node50" class="node">
|
||||||
|
<title>quantity.Quantity</title>
|
||||||
|
<polygon fill="none" stroke="black" points="3024.38,-199.5 3024.38,-361.5 3345.62,-361.5 3345.62,-199.5 3024.38,-199.5"/>
|
||||||
|
<text text-anchor="start" x="3152" y="-344.2" font-family="Times,serif" font-size="14.00">Quantity</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3024.38,-336.25 3345.62,-336.25"/>
|
||||||
|
<text text-anchor="start" x="3032.38" y="-318.95" font-family="Times,serif" font-size="14.00">inventory_adjustment : AttributeField</text>
|
||||||
|
<text text-anchor="start" x="3032.38" y="-301.7" font-family="Times,serif" font-size="14.00">inventory_asset : RelationField</text>
|
||||||
|
<text text-anchor="start" x="3032.38" y="-284.45" font-family="Times,serif" font-size="14.00">json_value : AttributeField</text>
|
||||||
|
<text text-anchor="start" x="3032.38" y="-267.2" font-family="Times,serif" font-size="14.00">measure : AttributeField</text>
|
||||||
|
<text text-anchor="start" x="3032.38" y="-249.95" font-family="Times,serif" font-size="14.00">units : RelationField</text>
|
||||||
|
<text text-anchor="start" x="3032.38" y="-232.7" font-family="Times,serif" font-size="14.00">value</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3024.38,-224.75 3345.62,-224.75"/>
|
||||||
|
<text text-anchor="start" x="3180.88" y="-207.45" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- quantity.Material->quantity.Quantity -->
|
||||||
|
<g id="edge29" class="edge">
|
||||||
|
<title>quantity.Material->quantity.Quantity</title>
|
||||||
|
<path fill="none" stroke="black" d="M2942.21,-102.57C2976.31,-127.42 3022.58,-161.14 3065.59,-192.48"/>
|
||||||
|
<polygon fill="none" stroke="black" points="3063.35,-195.18 3073.49,-198.24 3067.47,-189.52 3063.35,-195.18"/>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.MaterialType -->
|
||||||
|
<g id="node13" class="node">
|
||||||
|
<title>taxonomy.MaterialType</title>
|
||||||
|
<polygon fill="none" stroke="black" points="2236.5,-39 2236.5,-89.5 2351.5,-89.5 2351.5,-39 2236.5,-39"/>
|
||||||
|
<text text-anchor="start" x="2244.5" y="-72.2" font-family="Times,serif" font-size="14.00">MaterialType</text>
|
||||||
|
<polyline fill="none" stroke="black" points="2236.5,-64.25 2351.5,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="2236.5,-64.25 2351.5,-64.25"/>
|
||||||
|
<text text-anchor="start" x="2289.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.MaterialType->taxonomy.Taxonomy -->
|
||||||
|
<g id="edge39" class="edge">
|
||||||
|
<title>taxonomy.MaterialType->taxonomy.Taxonomy</title>
|
||||||
|
<path fill="none" stroke="black" d="M2307.88,-89.83C2327.46,-124.5 2363.57,-188.44 2388.41,-232.43"/>
|
||||||
|
<polygon fill="none" stroke="black" points="2385.29,-234.01 2393.26,-241 2391.39,-230.57 2385.29,-234.01"/>
|
||||||
|
</g>
|
||||||
|
<!-- log.Medical -->
|
||||||
|
<g id="node14" class="node">
|
||||||
|
<title>log.Medical</title>
|
||||||
|
<polygon fill="none" stroke="black" points="392.12,-39 392.12,-89.5 465.88,-89.5 465.88,-39 392.12,-39"/>
|
||||||
|
<text text-anchor="start" x="400.12" y="-72.2" font-family="Times,serif" font-size="14.00">Medical</text>
|
||||||
|
<polyline fill="none" stroke="black" points="392.12,-64.25 465.88,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="392.12,-64.25 465.88,-64.25"/>
|
||||||
|
<text text-anchor="start" x="424.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Medical->log.Log -->
|
||||||
|
<g id="edge21" class="edge">
|
||||||
|
<title>log.Medical->log.Log</title>
|
||||||
|
<path fill="none" stroke="black" d="M422.81,-89.83C418.65,-106.3 412.84,-129.37 406.69,-153.77"/>
|
||||||
|
<polygon fill="none" stroke="black" points="403.36,-152.65 404.31,-163.2 410.15,-154.36 403.36,-152.65"/>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Asset.Meta -->
|
||||||
|
<g id="node15" class="node">
|
||||||
|
<title>asset.Asset.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="3738.75,-242.62 3738.75,-318.38 3837.25,-318.38 3837.25,-242.62 3738.75,-242.62"/>
|
||||||
|
<text text-anchor="start" x="3771.5" y="-301.07" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3738.75,-293.12 3837.25,-293.12"/>
|
||||||
|
<text text-anchor="start" x="3746.75" y="-275.82" font-family="Times,serif" font-size="14.00">type : str</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3738.75,-267.88 3837.25,-267.88"/>
|
||||||
|
<text text-anchor="start" x="3783.88" y="-250.57" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Land.Meta -->
|
||||||
|
<g id="node16" class="node">
|
||||||
|
<title>asset.Land.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="3446.75,-9.12 3446.75,-119.38 3545.25,-119.38 3545.25,-9.12 3446.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="3479.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3446.75,-94.12 3545.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="3454.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="3454.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="3454.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3446.75,-34.38 3545.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="3491.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Land.Meta->asset.Asset.Meta -->
|
||||||
|
<g id="edge4" class="edge">
|
||||||
|
<title>asset.Land.Meta->asset.Asset.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M3545.03,-119.65C3548.32,-122.73 3551.66,-125.7 3555,-128.5 3609.95,-174.56 3679.71,-218.08 3728.52,-246.45"/>
|
||||||
|
<polygon fill="none" stroke="black" points="3726.57,-249.37 3736.98,-251.34 3730.07,-243.31 3726.57,-249.37"/>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Plant.Meta -->
|
||||||
|
<g id="node17" class="node">
|
||||||
|
<title>asset.Plant.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="3563.75,-9.12 3563.75,-119.38 3662.25,-119.38 3662.25,-9.12 3563.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="3596.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3563.75,-94.12 3662.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="3571.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="3571.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="3571.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3563.75,-34.38 3662.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="3608.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Plant.Meta->asset.Asset.Meta -->
|
||||||
|
<g id="edge8" class="edge">
|
||||||
|
<title>asset.Plant.Meta->asset.Asset.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M3657.61,-119.87C3686.34,-155.04 3723.25,-200.23 3750.47,-233.55"/>
|
||||||
|
<polygon fill="none" stroke="black" points="3747.53,-235.48 3756.56,-241.01 3752.95,-231.05 3747.53,-235.48"/>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Equipment.Meta -->
|
||||||
|
<g id="node18" class="node">
|
||||||
|
<title>asset.Equipment.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="3680.75,-9.12 3680.75,-119.38 3779.25,-119.38 3779.25,-9.12 3680.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="3713.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3680.75,-94.12 3779.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="3688.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="3688.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="3688.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3680.75,-34.38 3779.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="3725.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Equipment.Meta->asset.Asset.Meta -->
|
||||||
|
<g id="edge2" class="edge">
|
||||||
|
<title>asset.Equipment.Meta->asset.Asset.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M3744.79,-119.87C3754.1,-154.29 3766.02,-198.31 3774.98,-231.41"/>
|
||||||
|
<polygon fill="none" stroke="black" points="3771.51,-231.98 3777.5,-240.72 3778.27,-230.16 3771.51,-231.98"/>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Material.Meta -->
|
||||||
|
<g id="node19" class="node">
|
||||||
|
<title>asset.Material.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="3797.75,-9.12 3797.75,-119.38 3896.25,-119.38 3896.25,-9.12 3797.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="3830.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3797.75,-94.12 3896.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="3805.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="3805.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="3805.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3797.75,-34.38 3896.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="3842.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Material.Meta->asset.Asset.Meta -->
|
||||||
|
<g id="edge6" class="edge">
|
||||||
|
<title>asset.Material.Meta->asset.Asset.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M3831.96,-119.87C3822.48,-154.29 3810.36,-198.31 3801.24,-231.41"/>
|
||||||
|
<polygon fill="none" stroke="black" points="3797.96,-230.15 3798.68,-240.72 3804.71,-232.01 3797.96,-230.15"/>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Seed.Meta -->
|
||||||
|
<g id="node20" class="node">
|
||||||
|
<title>asset.Seed.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="3914.75,-9.12 3914.75,-119.38 4013.25,-119.38 4013.25,-9.12 3914.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="3947.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3914.75,-94.12 4013.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="3922.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="3922.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="3922.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3914.75,-34.38 4013.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="3959.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Seed.Meta->asset.Asset.Meta -->
|
||||||
|
<g id="edge12" class="edge">
|
||||||
|
<title>asset.Seed.Meta->asset.Asset.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M3919.13,-119.87C3890.24,-155.04 3853.12,-200.23 3825.75,-233.55"/>
|
||||||
|
<polygon fill="none" stroke="black" points="3823.26,-231.07 3819.62,-241.01 3828.67,-235.51 3823.26,-231.07"/>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Product.Meta -->
|
||||||
|
<g id="node21" class="node">
|
||||||
|
<title>asset.Product.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="4031.75,-9.12 4031.75,-119.38 4130.25,-119.38 4130.25,-9.12 4031.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="4064.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4031.75,-94.12 4130.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="4039.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="4039.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="4039.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4031.75,-34.38 4130.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="4076.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Product.Meta->asset.Asset.Meta -->
|
||||||
|
<g id="edge10" class="edge">
|
||||||
|
<title>asset.Product.Meta->asset.Asset.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M4031.98,-119.66C4028.68,-122.73 4025.34,-125.71 4022,-128.5 3966.66,-174.79 3896.33,-218.42 3847.29,-246.76"/>
|
||||||
|
<polygon fill="none" stroke="black" points="3845.71,-243.63 3838.78,-251.65 3849.2,-249.7 3845.71,-243.63"/>
|
||||||
|
</g>
|
||||||
|
<!-- log.Log.Meta -->
|
||||||
|
<g id="node22" class="node">
|
||||||
|
<title>log.Log.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="4557.75,-242.62 4557.75,-318.38 4656.25,-318.38 4656.25,-242.62 4557.75,-242.62"/>
|
||||||
|
<text text-anchor="start" x="4590.5" y="-301.07" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4557.75,-293.12 4656.25,-293.12"/>
|
||||||
|
<text text-anchor="start" x="4565.75" y="-275.82" font-family="Times,serif" font-size="14.00">type : str</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4557.75,-267.88 4656.25,-267.88"/>
|
||||||
|
<text text-anchor="start" x="4602.88" y="-250.57" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Activity.Meta -->
|
||||||
|
<g id="node23" class="node">
|
||||||
|
<title>log.Activity.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="4148.75,-9.12 4148.75,-119.38 4247.25,-119.38 4247.25,-9.12 4148.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="4181.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4148.75,-94.12 4247.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="4156.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="4156.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="4156.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4148.75,-34.38 4247.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="4193.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Activity.Meta->log.Log.Meta -->
|
||||||
|
<g id="edge14" class="edge">
|
||||||
|
<title>log.Activity.Meta->log.Log.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M4245.79,-119.73C4249.45,-122.86 4253.19,-125.82 4257,-128.5 4349.11,-193.39 4473.52,-238.76 4546.51,-261.87"/>
|
||||||
|
<polygon fill="none" stroke="black" points="4545.31,-265.16 4555.89,-264.8 4547.39,-258.48 4545.31,-265.16"/>
|
||||||
|
</g>
|
||||||
|
<!-- log.Maintenance.Meta -->
|
||||||
|
<g id="node24" class="node">
|
||||||
|
<title>log.Maintenance.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="4265.75,-9.12 4265.75,-119.38 4364.25,-119.38 4364.25,-9.12 4265.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="4298.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4265.75,-94.12 4364.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="4273.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="4273.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="4273.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4265.75,-34.38 4364.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="4310.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Maintenance.Meta->log.Log.Meta -->
|
||||||
|
<g id="edge20" class="edge">
|
||||||
|
<title>log.Maintenance.Meta->log.Log.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M4364.03,-119.65C4367.32,-122.73 4370.66,-125.7 4374,-128.5 4428.95,-174.56 4498.71,-218.08 4547.52,-246.45"/>
|
||||||
|
<polygon fill="none" stroke="black" points="4545.57,-249.37 4555.98,-251.34 4549.07,-243.31 4545.57,-249.37"/>
|
||||||
|
</g>
|
||||||
|
<!-- log.Purchase.Meta -->
|
||||||
|
<g id="node25" class="node">
|
||||||
|
<title>log.Purchase.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="4382.75,-9.12 4382.75,-119.38 4481.25,-119.38 4481.25,-9.12 4382.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="4415.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4382.75,-94.12 4481.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="4390.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="4390.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="4390.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4382.75,-34.38 4481.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="4427.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Purchase.Meta->log.Log.Meta -->
|
||||||
|
<g id="edge24" class="edge">
|
||||||
|
<title>log.Purchase.Meta->log.Log.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M4476.61,-119.87C4505.34,-155.04 4542.25,-200.23 4569.47,-233.55"/>
|
||||||
|
<polygon fill="none" stroke="black" points="4566.53,-235.48 4575.56,-241.01 4571.95,-231.05 4566.53,-235.48"/>
|
||||||
|
</g>
|
||||||
|
<!-- log.Seeding.Meta -->
|
||||||
|
<g id="node26" class="node">
|
||||||
|
<title>log.Seeding.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="4499.75,-9.12 4499.75,-119.38 4598.25,-119.38 4598.25,-9.12 4499.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="4532.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4499.75,-94.12 4598.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="4507.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="4507.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="4507.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4499.75,-34.38 4598.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="4544.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Seeding.Meta->log.Log.Meta -->
|
||||||
|
<g id="edge28" class="edge">
|
||||||
|
<title>log.Seeding.Meta->log.Log.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M4563.79,-119.87C4573.1,-154.29 4585.02,-198.31 4593.98,-231.41"/>
|
||||||
|
<polygon fill="none" stroke="black" points="4590.51,-231.98 4596.5,-240.72 4597.27,-230.16 4590.51,-231.98"/>
|
||||||
|
</g>
|
||||||
|
<!-- log.Input.Meta -->
|
||||||
|
<g id="node27" class="node">
|
||||||
|
<title>log.Input.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="4616.75,-9.12 4616.75,-119.38 4715.25,-119.38 4715.25,-9.12 4616.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="4649.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4616.75,-94.12 4715.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="4624.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="4624.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="4624.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4616.75,-34.38 4715.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="4661.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Input.Meta->log.Log.Meta -->
|
||||||
|
<g id="edge18" class="edge">
|
||||||
|
<title>log.Input.Meta->log.Log.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M4650.96,-119.87C4641.48,-154.29 4629.36,-198.31 4620.24,-231.41"/>
|
||||||
|
<polygon fill="none" stroke="black" points="4616.96,-230.15 4617.68,-240.72 4623.71,-232.01 4616.96,-230.15"/>
|
||||||
|
</g>
|
||||||
|
<!-- log.Medical.Meta -->
|
||||||
|
<g id="node28" class="node">
|
||||||
|
<title>log.Medical.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="4733.75,-9.12 4733.75,-119.38 4832.25,-119.38 4832.25,-9.12 4733.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="4766.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4733.75,-94.12 4832.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="4741.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="4741.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="4741.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4733.75,-34.38 4832.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="4778.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Medical.Meta->log.Log.Meta -->
|
||||||
|
<g id="edge22" class="edge">
|
||||||
|
<title>log.Medical.Meta->log.Log.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M4738.13,-119.87C4709.24,-155.04 4672.12,-200.23 4644.75,-233.55"/>
|
||||||
|
<polygon fill="none" stroke="black" points="4642.26,-231.07 4638.62,-241.01 4647.67,-235.51 4642.26,-231.07"/>
|
||||||
|
</g>
|
||||||
|
<!-- log.Harvest.Meta -->
|
||||||
|
<g id="node29" class="node">
|
||||||
|
<title>log.Harvest.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="4850.75,-9.12 4850.75,-119.38 4949.25,-119.38 4949.25,-9.12 4850.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="4883.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4850.75,-94.12 4949.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="4858.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="4858.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="4858.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4850.75,-34.38 4949.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="4895.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Harvest.Meta->log.Log.Meta -->
|
||||||
|
<g id="edge16" class="edge">
|
||||||
|
<title>log.Harvest.Meta->log.Log.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M4850.98,-119.66C4847.68,-122.73 4844.34,-125.71 4841,-128.5 4785.66,-174.79 4715.33,-218.42 4666.29,-246.76"/>
|
||||||
|
<polygon fill="none" stroke="black" points="4664.71,-243.63 4657.78,-251.65 4668.2,-249.7 4664.71,-243.63"/>
|
||||||
|
</g>
|
||||||
|
<!-- log.Sale.Meta -->
|
||||||
|
<g id="node30" class="node">
|
||||||
|
<title>log.Sale.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="4967.75,-9.12 4967.75,-119.38 5066.25,-119.38 5066.25,-9.12 4967.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="5000.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4967.75,-94.12 5066.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="4975.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="4975.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="4975.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="4967.75,-34.38 5066.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="5012.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Sale.Meta->log.Log.Meta -->
|
||||||
|
<g id="edge26" class="edge">
|
||||||
|
<title>log.Sale.Meta->log.Log.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M4969.21,-119.73C4965.56,-122.86 4961.81,-125.82 4958,-128.5 4865.5,-193.59 4740.52,-238.96 4667.35,-262"/>
|
||||||
|
<polygon fill="none" stroke="black" points="4666.46,-258.61 4657.95,-264.92 4668.54,-265.3 4666.46,-258.61"/>
|
||||||
|
</g>
|
||||||
|
<!-- quantity.Quantity.Meta -->
|
||||||
|
<g id="node31" class="node">
|
||||||
|
<title>quantity.Quantity.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="5201.75,-242.62 5201.75,-318.38 5300.25,-318.38 5300.25,-242.62 5201.75,-242.62"/>
|
||||||
|
<text text-anchor="start" x="5234.5" y="-301.07" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5201.75,-293.12 5300.25,-293.12"/>
|
||||||
|
<text text-anchor="start" x="5209.75" y="-275.82" font-family="Times,serif" font-size="14.00">type : str</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5201.75,-267.88 5300.25,-267.88"/>
|
||||||
|
<text text-anchor="start" x="5246.88" y="-250.57" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- quantity.Standard.Meta -->
|
||||||
|
<g id="node32" class="node">
|
||||||
|
<title>quantity.Standard.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="5084.75,-9.12 5084.75,-119.38 5183.25,-119.38 5183.25,-9.12 5084.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="5117.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5084.75,-94.12 5183.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="5092.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="5092.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="5092.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5084.75,-34.38 5183.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="5129.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- quantity.Standard.Meta->quantity.Quantity.Meta -->
|
||||||
|
<g id="edge34" class="edge">
|
||||||
|
<title>quantity.Standard.Meta->quantity.Quantity.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M5163.83,-119.87C5182.79,-154.59 5207.08,-199.08 5225.21,-232.27"/>
|
||||||
|
<polygon fill="none" stroke="black" points="5222.03,-233.76 5229.9,-240.85 5228.18,-230.4 5222.03,-233.76"/>
|
||||||
|
</g>
|
||||||
|
<!-- quantity.Price.Meta -->
|
||||||
|
<g id="node33" class="node">
|
||||||
|
<title>quantity.Price.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="5201.75,-9.12 5201.75,-119.38 5300.25,-119.38 5300.25,-9.12 5201.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="5234.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5201.75,-94.12 5300.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="5209.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="5209.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="5209.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5201.75,-34.38 5300.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="5246.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- quantity.Price.Meta->quantity.Quantity.Meta -->
|
||||||
|
<g id="edge32" class="edge">
|
||||||
|
<title>quantity.Price.Meta->quantity.Quantity.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M5251,-119.87C5251,-154.14 5251,-197.93 5251,-230.98"/>
|
||||||
|
<polygon fill="none" stroke="black" points="5247.5,-230.67 5251,-240.67 5254.5,-230.67 5247.5,-230.67"/>
|
||||||
|
</g>
|
||||||
|
<!-- quantity.Material.Meta -->
|
||||||
|
<g id="node34" class="node">
|
||||||
|
<title>quantity.Material.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="5318.75,-9.12 5318.75,-119.38 5417.25,-119.38 5417.25,-9.12 5318.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="5351.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5318.75,-94.12 5417.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="5326.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="5326.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="5326.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5318.75,-34.38 5417.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="5363.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- quantity.Material.Meta->quantity.Quantity.Meta -->
|
||||||
|
<g id="edge30" class="edge">
|
||||||
|
<title>quantity.Material.Meta->quantity.Quantity.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M5338.17,-119.87C5319.21,-154.59 5294.92,-199.08 5276.79,-232.27"/>
|
||||||
|
<polygon fill="none" stroke="black" points="5273.82,-230.4 5272.1,-240.85 5279.97,-233.76 5273.82,-230.4"/>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.Taxonomy.Meta -->
|
||||||
|
<g id="node35" class="node">
|
||||||
|
<title>taxonomy.Taxonomy.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="5786.75,-242.62 5786.75,-318.38 5885.25,-318.38 5885.25,-242.62 5786.75,-242.62"/>
|
||||||
|
<text text-anchor="start" x="5819.5" y="-301.07" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5786.75,-293.12 5885.25,-293.12"/>
|
||||||
|
<text text-anchor="start" x="5794.75" y="-275.82" font-family="Times,serif" font-size="14.00">type : str</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5786.75,-267.88 5885.25,-267.88"/>
|
||||||
|
<text text-anchor="start" x="5831.88" y="-250.57" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.Crop.Meta -->
|
||||||
|
<g id="node36" class="node">
|
||||||
|
<title>taxonomy.Crop.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="5435.75,-9.12 5435.75,-119.38 5534.25,-119.38 5534.25,-9.12 5435.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="5468.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5435.75,-94.12 5534.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="5443.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="5443.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="5443.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5435.75,-34.38 5534.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="5480.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.Crop.Meta->taxonomy.Taxonomy.Meta -->
|
||||||
|
<g id="edge36" class="edge">
|
||||||
|
<title>taxonomy.Crop.Meta->taxonomy.Taxonomy.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M5533.37,-119.73C5536.85,-122.83 5540.41,-125.78 5544,-128.5 5617.41,-184.15 5714.33,-229.66 5775.93,-255.68"/>
|
||||||
|
<polygon fill="none" stroke="black" points="5774.29,-258.79 5784.86,-259.42 5776.99,-252.33 5774.29,-258.79"/>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.LogCategory.Meta -->
|
||||||
|
<g id="node37" class="node">
|
||||||
|
<title>taxonomy.LogCategory.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="5552.75,-9.12 5552.75,-119.38 5651.25,-119.38 5651.25,-9.12 5552.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="5585.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5552.75,-94.12 5651.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="5560.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="5560.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="5560.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5552.75,-34.38 5651.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="5597.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.LogCategory.Meta->taxonomy.Taxonomy.Meta -->
|
||||||
|
<g id="edge38" class="edge">
|
||||||
|
<title>taxonomy.LogCategory.Meta->taxonomy.Taxonomy.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M5651.5,-119.13C5654.68,-122.33 5657.86,-125.48 5661,-128.5 5699.92,-165.94 5746.29,-205.75 5781.52,-235.09"/>
|
||||||
|
<polygon fill="none" stroke="black" points="5779.13,-237.66 5789.06,-241.35 5783.6,-232.27 5779.13,-237.66"/>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.MaterialType.Meta -->
|
||||||
|
<g id="node38" class="node">
|
||||||
|
<title>taxonomy.MaterialType.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="5669.75,-9.12 5669.75,-119.38 5768.25,-119.38 5768.25,-9.12 5669.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="5702.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5669.75,-94.12 5768.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="5677.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="5677.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="5677.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5669.75,-34.38 5768.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="5714.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.MaterialType.Meta->taxonomy.Taxonomy.Meta -->
|
||||||
|
<g id="edge40" class="edge">
|
||||||
|
<title>taxonomy.MaterialType.Meta->taxonomy.Taxonomy.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M5748.83,-119.87C5767.79,-154.59 5792.08,-199.08 5810.21,-232.27"/>
|
||||||
|
<polygon fill="none" stroke="black" points="5807.03,-233.76 5814.9,-240.85 5813.18,-230.4 5807.03,-233.76"/>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.PlantType.Meta -->
|
||||||
|
<g id="node39" class="node">
|
||||||
|
<title>taxonomy.PlantType.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="5786.75,-9.12 5786.75,-119.38 5885.25,-119.38 5885.25,-9.12 5786.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="5819.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5786.75,-94.12 5885.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="5794.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="5794.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="5794.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5786.75,-34.38 5885.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="5831.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.PlantType.Meta->taxonomy.Taxonomy.Meta -->
|
||||||
|
<g id="edge42" class="edge">
|
||||||
|
<title>taxonomy.PlantType.Meta->taxonomy.Taxonomy.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M5836,-119.87C5836,-154.14 5836,-197.93 5836,-230.98"/>
|
||||||
|
<polygon fill="none" stroke="black" points="5832.5,-230.67 5836,-240.67 5839.5,-230.67 5832.5,-230.67"/>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.ProductType.Meta -->
|
||||||
|
<g id="node40" class="node">
|
||||||
|
<title>taxonomy.ProductType.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="5903.75,-9.12 5903.75,-119.38 6002.25,-119.38 6002.25,-9.12 5903.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="5936.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5903.75,-94.12 6002.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="5911.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="5911.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="5911.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="5903.75,-34.38 6002.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="5948.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.ProductType.Meta->taxonomy.Taxonomy.Meta -->
|
||||||
|
<g id="edge44" class="edge">
|
||||||
|
<title>taxonomy.ProductType.Meta->taxonomy.Taxonomy.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M5923.17,-119.87C5904.21,-154.59 5879.92,-199.08 5861.79,-232.27"/>
|
||||||
|
<polygon fill="none" stroke="black" points="5858.82,-230.4 5857.1,-240.85 5864.97,-233.76 5858.82,-230.4"/>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.Season.Meta -->
|
||||||
|
<g id="node41" class="node">
|
||||||
|
<title>taxonomy.Season.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="6020.75,-9.12 6020.75,-119.38 6119.25,-119.38 6119.25,-9.12 6020.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="6053.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="6020.75,-94.12 6119.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="6028.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="6028.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="6028.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="6020.75,-34.38 6119.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="6065.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.Season.Meta->taxonomy.Taxonomy.Meta -->
|
||||||
|
<g id="edge46" class="edge">
|
||||||
|
<title>taxonomy.Season.Meta->taxonomy.Taxonomy.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M6020.5,-119.13C6017.32,-122.33 6014.14,-125.48 6011,-128.5 5972.08,-165.94 5925.71,-205.75 5890.48,-235.09"/>
|
||||||
|
<polygon fill="none" stroke="black" points="5888.4,-232.27 5882.94,-241.35 5892.87,-237.66 5888.4,-232.27"/>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.Unit.Meta -->
|
||||||
|
<g id="node42" class="node">
|
||||||
|
<title>taxonomy.Unit.Meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="6137.75,-9.12 6137.75,-119.38 6236.25,-119.38 6236.25,-9.12 6137.75,-9.12"/>
|
||||||
|
<text text-anchor="start" x="6170.5" y="-102.08" font-family="Times,serif" font-size="14.00">Meta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="6137.75,-94.12 6236.25,-94.12"/>
|
||||||
|
<text text-anchor="start" x="6145.75" y="-76.83" font-family="Times,serif" font-size="14.00">name : str</text>
|
||||||
|
<text text-anchor="start" x="6145.75" y="-59.58" font-family="Times,serif" font-size="14.00">path</text>
|
||||||
|
<text text-anchor="start" x="6145.75" y="-42.33" font-family="Times,serif" font-size="14.00">type</text>
|
||||||
|
<polyline fill="none" stroke="black" points="6137.75,-34.38 6236.25,-34.38"/>
|
||||||
|
<text text-anchor="start" x="6182.88" y="-17.07" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.Unit.Meta->taxonomy.Taxonomy.Meta -->
|
||||||
|
<g id="edge48" class="edge">
|
||||||
|
<title>taxonomy.Unit.Meta->taxonomy.Taxonomy.Meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M6138.63,-119.73C6135.15,-122.83 6131.59,-125.78 6128,-128.5 6054.59,-184.15 5957.67,-229.66 5896.07,-255.68"/>
|
||||||
|
<polygon fill="none" stroke="black" points="5895.01,-252.33 5887.14,-259.42 5897.71,-258.79 5895.01,-252.33"/>
|
||||||
|
</g>
|
||||||
|
<!-- my_meta.MyMeta -->
|
||||||
|
<g id="node43" class="node">
|
||||||
|
<title>my_meta.MyMeta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="6254.12,-30.38 6254.12,-98.12 6459.88,-98.12 6459.88,-30.38 6254.12,-30.38"/>
|
||||||
|
<text text-anchor="start" x="6332.25" y="-80.83" font-family="Times,serif" font-size="14.00">MyMeta</text>
|
||||||
|
<polyline fill="none" stroke="black" points="6254.12,-72.88 6459.88,-72.88"/>
|
||||||
|
<polyline fill="none" stroke="black" points="6254.12,-72.88 6459.88,-72.88"/>
|
||||||
|
<text text-anchor="start" x="6262.12" y="-55.58" font-family="Times,serif" font-size="14.00">get_type_and_path(name)</text>
|
||||||
|
<text text-anchor="start" x="6262.12" y="-38.33" font-family="Times,serif" font-size="14.00">set_api(api)</text>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Plant -->
|
||||||
|
<g id="node44" class="node">
|
||||||
|
<title>asset.Plant</title>
|
||||||
|
<polygon fill="none" stroke="black" points="1336.12,-17.75 1336.12,-110.75 1541.88,-110.75 1541.88,-17.75 1336.12,-17.75"/>
|
||||||
|
<text text-anchor="start" x="1418.38" y="-93.45" font-family="Times,serif" font-size="14.00">Plant</text>
|
||||||
|
<polyline fill="none" stroke="black" points="1336.12,-85.5 1541.88,-85.5"/>
|
||||||
|
<text text-anchor="start" x="1344.12" y="-68.2" font-family="Times,serif" font-size="14.00">crops : RelationField</text>
|
||||||
|
<text text-anchor="start" x="1344.12" y="-50.95" font-family="Times,serif" font-size="14.00">seasons : RelationField</text>
|
||||||
|
<polyline fill="none" stroke="black" points="1336.12,-43 1541.88,-43"/>
|
||||||
|
<text text-anchor="start" x="1434.88" y="-25.7" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Plant->asset.Asset -->
|
||||||
|
<g id="edge7" class="edge">
|
||||||
|
<title>asset.Plant->asset.Asset</title>
|
||||||
|
<path fill="none" stroke="black" d="M1416.26,-111.21C1401.32,-141.41 1381.56,-181.36 1365.03,-214.75"/>
|
||||||
|
<polygon fill="none" stroke="black" points="1361.99,-213.02 1360.69,-223.53 1368.26,-216.12 1361.99,-213.02"/>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.PlantType -->
|
||||||
|
<g id="node45" class="node">
|
||||||
|
<title>taxonomy.PlantType</title>
|
||||||
|
<polygon fill="none" stroke="black" points="2369.88,-39 2369.88,-89.5 2460.12,-89.5 2460.12,-39 2369.88,-39"/>
|
||||||
|
<text text-anchor="start" x="2377.88" y="-72.2" font-family="Times,serif" font-size="14.00">PlantType</text>
|
||||||
|
<polyline fill="none" stroke="black" points="2369.88,-64.25 2460.12,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="2369.88,-64.25 2460.12,-64.25"/>
|
||||||
|
<text text-anchor="start" x="2410.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.PlantType->taxonomy.Taxonomy -->
|
||||||
|
<g id="edge41" class="edge">
|
||||||
|
<title>taxonomy.PlantType->taxonomy.Taxonomy</title>
|
||||||
|
<path fill="none" stroke="black" d="M2415,-89.83C2415,-124.13 2415,-187.1 2415,-231.03"/>
|
||||||
|
<polygon fill="none" stroke="black" points="2411.5,-230.8 2415,-240.8 2418.5,-230.8 2411.5,-230.8"/>
|
||||||
|
</g>
|
||||||
|
<!-- quantity.Price -->
|
||||||
|
<g id="node46" class="node">
|
||||||
|
<title>quantity.Price</title>
|
||||||
|
<polygon fill="none" stroke="black" points="3040.88,-0.5 3040.88,-128 3329.12,-128 3329.12,-0.5 3040.88,-0.5"/>
|
||||||
|
<text text-anchor="start" x="3164.38" y="-110.7" font-family="Times,serif" font-size="14.00">Price</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3040.88,-102.75 3329.12,-102.75"/>
|
||||||
|
<text text-anchor="start" x="3048.88" y="-85.45" font-family="Times,serif" font-size="14.00">json_total_price : AttributeField</text>
|
||||||
|
<text text-anchor="start" x="3048.88" y="-68.2" font-family="Times,serif" font-size="14.00">json_unit_price : AttributeField</text>
|
||||||
|
<text text-anchor="start" x="3048.88" y="-50.95" font-family="Times,serif" font-size="14.00">total_price</text>
|
||||||
|
<text text-anchor="start" x="3048.88" y="-33.7" font-family="Times,serif" font-size="14.00">unit_price</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3040.88,-25.75 3329.12,-25.75"/>
|
||||||
|
<text text-anchor="start" x="3180.88" y="-8.45" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- quantity.Price->quantity.Quantity -->
|
||||||
|
<g id="edge31" class="edge">
|
||||||
|
<title>quantity.Price->quantity.Quantity</title>
|
||||||
|
<path fill="none" stroke="black" d="M3185,-128.37C3185,-147.03 3185,-167.85 3185,-187.92"/>
|
||||||
|
<polygon fill="none" stroke="black" points="3181.5,-187.79 3185,-197.79 3188.5,-187.79 3181.5,-187.79"/>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Product -->
|
||||||
|
<g id="node47" class="node">
|
||||||
|
<title>asset.Product</title>
|
||||||
|
<polygon fill="none" stroke="black" points="1559.5,-26.38 1559.5,-102.12 1806.5,-102.12 1806.5,-26.38 1559.5,-26.38"/>
|
||||||
|
<text text-anchor="start" x="1654.12" y="-84.83" font-family="Times,serif" font-size="14.00">Product</text>
|
||||||
|
<polyline fill="none" stroke="black" points="1559.5,-76.88 1806.5,-76.88"/>
|
||||||
|
<text text-anchor="start" x="1567.5" y="-59.58" font-family="Times,serif" font-size="14.00">product_type : RelationField</text>
|
||||||
|
<polyline fill="none" stroke="black" points="1559.5,-51.62 1806.5,-51.62"/>
|
||||||
|
<text text-anchor="start" x="1678.88" y="-34.33" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Product->asset.Asset -->
|
||||||
|
<g id="edge9" class="edge">
|
||||||
|
<title>asset.Product->asset.Asset</title>
|
||||||
|
<path fill="none" stroke="black" d="M1622.03,-102.57C1569.61,-134.66 1493,-181.56 1431.82,-219.01"/>
|
||||||
|
<polygon fill="none" stroke="black" points="1430.13,-215.94 1423.43,-224.14 1433.79,-221.91 1430.13,-215.94"/>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.ProductType -->
|
||||||
|
<g id="node48" class="node">
|
||||||
|
<title>taxonomy.ProductType</title>
|
||||||
|
<polygon fill="none" stroke="black" points="2478.62,-39 2478.62,-89.5 2585.38,-89.5 2585.38,-39 2478.62,-39"/>
|
||||||
|
<text text-anchor="start" x="2486.62" y="-72.2" font-family="Times,serif" font-size="14.00">ProductType</text>
|
||||||
|
<polyline fill="none" stroke="black" points="2478.62,-64.25 2585.38,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="2478.62,-64.25 2585.38,-64.25"/>
|
||||||
|
<text text-anchor="start" x="2527.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.ProductType->taxonomy.Taxonomy -->
|
||||||
|
<g id="edge43" class="edge">
|
||||||
|
<title>taxonomy.ProductType->taxonomy.Taxonomy</title>
|
||||||
|
<path fill="none" stroke="black" d="M2518.58,-89.83C2499.65,-124.5 2464.73,-188.44 2440.71,-232.43"/>
|
||||||
|
<polygon fill="none" stroke="black" points="2437.75,-230.54 2436.03,-240.99 2443.89,-233.89 2437.75,-230.54"/>
|
||||||
|
</g>
|
||||||
|
<!-- log.Purchase -->
|
||||||
|
<g id="node49" class="node">
|
||||||
|
<title>log.Purchase</title>
|
||||||
|
<polygon fill="none" stroke="black" points="484,-39 484,-89.5 566,-89.5 566,-39 484,-39"/>
|
||||||
|
<text text-anchor="start" x="492" y="-72.2" font-family="Times,serif" font-size="14.00">Purchase</text>
|
||||||
|
<polyline fill="none" stroke="black" points="484,-64.25 566,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="484,-64.25 566,-64.25"/>
|
||||||
|
<text text-anchor="start" x="520.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Purchase->log.Log -->
|
||||||
|
<g id="edge23" class="edge">
|
||||||
|
<title>log.Purchase->log.Log</title>
|
||||||
|
<path fill="none" stroke="black" d="M507.79,-89.83C496,-106.66 479.38,-130.41 461.88,-155.41"/>
|
||||||
|
<polygon fill="none" stroke="black" points="459.13,-153.23 456.26,-163.43 464.86,-157.25 459.13,-153.23"/>
|
||||||
|
</g>
|
||||||
|
<!-- log.Sale -->
|
||||||
|
<g id="node51" class="node">
|
||||||
|
<title>log.Sale</title>
|
||||||
|
<polygon fill="none" stroke="black" points="584,-39 584,-89.5 638,-89.5 638,-39 584,-39"/>
|
||||||
|
<text text-anchor="start" x="594.5" y="-72.2" font-family="Times,serif" font-size="14.00">Sale</text>
|
||||||
|
<polyline fill="none" stroke="black" points="584,-64.25 638,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="584,-64.25 638,-64.25"/>
|
||||||
|
<text text-anchor="start" x="606.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Sale->log.Log -->
|
||||||
|
<g id="edge25" class="edge">
|
||||||
|
<title>log.Sale->log.Log</title>
|
||||||
|
<path fill="none" stroke="black" d="M599.94,-89.88C593.68,-102.26 585.09,-117.01 575,-128.5 554.13,-152.26 528.99,-174.7 503.69,-194.65"/>
|
||||||
|
<polygon fill="none" stroke="black" points="501.68,-191.77 495.93,-200.67 505.98,-197.3 501.68,-191.77"/>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.Season -->
|
||||||
|
<g id="node52" class="node">
|
||||||
|
<title>taxonomy.Season</title>
|
||||||
|
<polygon fill="none" stroke="black" points="2603.25,-39 2603.25,-89.5 2668.75,-89.5 2668.75,-39 2603.25,-39"/>
|
||||||
|
<text text-anchor="start" x="2611.25" y="-72.2" font-family="Times,serif" font-size="14.00">Season</text>
|
||||||
|
<polyline fill="none" stroke="black" points="2603.25,-64.25 2668.75,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="2603.25,-64.25 2668.75,-64.25"/>
|
||||||
|
<text text-anchor="start" x="2631.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.Season->taxonomy.Taxonomy -->
|
||||||
|
<g id="edge45" class="edge">
|
||||||
|
<title>taxonomy.Season->taxonomy.Taxonomy</title>
|
||||||
|
<path fill="none" stroke="black" d="M2621.95,-89.84C2614.41,-102.06 2604.53,-116.69 2594,-128.5 2558.46,-168.37 2512.26,-207.08 2475.7,-235.33"/>
|
||||||
|
<polygon fill="none" stroke="black" points="2473.63,-232.5 2467.82,-241.36 2477.89,-238.05 2473.63,-232.5"/>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Seed -->
|
||||||
|
<g id="node53" class="node">
|
||||||
|
<title>asset.Seed</title>
|
||||||
|
<polygon fill="none" stroke="black" points="1824.25,-17.75 1824.25,-110.75 2021.75,-110.75 2021.75,-17.75 1824.25,-17.75"/>
|
||||||
|
<text text-anchor="start" x="1906.5" y="-93.45" font-family="Times,serif" font-size="14.00">Seed</text>
|
||||||
|
<polyline fill="none" stroke="black" points="1824.25,-85.5 2021.75,-85.5"/>
|
||||||
|
<text text-anchor="start" x="1832.25" y="-68.2" font-family="Times,serif" font-size="14.00">crop : RelationField</text>
|
||||||
|
<text text-anchor="start" x="1832.25" y="-50.95" font-family="Times,serif" font-size="14.00">season : RelationField</text>
|
||||||
|
<polyline fill="none" stroke="black" points="1824.25,-43 2021.75,-43"/>
|
||||||
|
<text text-anchor="start" x="1918.88" y="-25.7" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- asset.Seed->asset.Asset -->
|
||||||
|
<g id="edge11" class="edge">
|
||||||
|
<title>asset.Seed->asset.Asset</title>
|
||||||
|
<path fill="none" stroke="black" d="M1849.51,-111.24C1838.17,-117.47 1826.42,-123.44 1815,-128.5 1698.29,-180.16 1558.49,-221.88 1459.58,-248.28"/>
|
||||||
|
<polygon fill="none" stroke="black" points="1458.87,-244.84 1450.1,-250.79 1460.66,-251.61 1458.87,-244.84"/>
|
||||||
|
</g>
|
||||||
|
<!-- log.Seeding -->
|
||||||
|
<g id="node54" class="node">
|
||||||
|
<title>log.Seeding</title>
|
||||||
|
<polygon fill="none" stroke="black" points="656.12,-39 656.12,-89.5 729.88,-89.5 729.88,-39 656.12,-39"/>
|
||||||
|
<text text-anchor="start" x="664.12" y="-72.2" font-family="Times,serif" font-size="14.00">Seeding</text>
|
||||||
|
<polyline fill="none" stroke="black" points="656.12,-64.25 729.88,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="656.12,-64.25 729.88,-64.25"/>
|
||||||
|
<text text-anchor="start" x="688.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- log.Seeding->log.Log -->
|
||||||
|
<g id="edge27" class="edge">
|
||||||
|
<title>log.Seeding->log.Log</title>
|
||||||
|
<path fill="none" stroke="black" d="M678.78,-89.77C670.61,-102.4 659.51,-117.43 647,-128.5 605.08,-165.59 552.53,-197.4 504.82,-222.12"/>
|
||||||
|
<polygon fill="none" stroke="black" points="503.38,-218.93 496.07,-226.6 506.57,-225.16 503.38,-218.93"/>
|
||||||
|
</g>
|
||||||
|
<!-- quantity.Standard -->
|
||||||
|
<g id="node55" class="node">
|
||||||
|
<title>quantity.Standard</title>
|
||||||
|
<polygon fill="none" stroke="black" points="3347,-39 3347,-89.5 3429,-89.5 3429,-39 3347,-39"/>
|
||||||
|
<text text-anchor="start" x="3355" y="-72.2" font-family="Times,serif" font-size="14.00">Standard</text>
|
||||||
|
<polyline fill="none" stroke="black" points="3347,-64.25 3429,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="3347,-64.25 3429,-64.25"/>
|
||||||
|
<text text-anchor="start" x="3383.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- quantity.Standard->quantity.Quantity -->
|
||||||
|
<g id="edge33" class="edge">
|
||||||
|
<title>quantity.Standard->quantity.Quantity</title>
|
||||||
|
<path fill="none" stroke="black" d="M3369.68,-89.85C3360.5,-101.8 3349.02,-116.2 3338,-128.5 3319.31,-149.36 3298.44,-170.96 3278.26,-191.09"/>
|
||||||
|
<polygon fill="none" stroke="black" points="3275.98,-188.42 3271.34,-197.95 3280.91,-193.39 3275.98,-188.42"/>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.Unit -->
|
||||||
|
<g id="node57" class="node">
|
||||||
|
<title>taxonomy.Unit</title>
|
||||||
|
<polygon fill="none" stroke="black" points="2687,-39 2687,-89.5 2741,-89.5 2741,-39 2687,-39"/>
|
||||||
|
<text text-anchor="start" x="2697.5" y="-72.2" font-family="Times,serif" font-size="14.00">Unit</text>
|
||||||
|
<polyline fill="none" stroke="black" points="2687,-64.25 2741,-64.25"/>
|
||||||
|
<polyline fill="none" stroke="black" points="2687,-64.25 2741,-64.25"/>
|
||||||
|
<text text-anchor="start" x="2709.88" y="-46.95" font-family="Times,serif" font-size="14.00"> </text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy.Unit->taxonomy.Taxonomy -->
|
||||||
|
<g id="edge47" class="edge">
|
||||||
|
<title>taxonomy.Unit->taxonomy.Taxonomy</title>
|
||||||
|
<path fill="none" stroke="black" d="M2703.83,-89.81C2697.71,-102.46 2688.97,-117.49 2678,-128.5 2631.92,-174.75 2568.77,-211.63 2515.9,-237.36"/>
|
||||||
|
<polygon fill="none" stroke="black" points="2514.68,-234.06 2507.18,-241.54 2517.71,-240.37 2514.68,-234.06"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 62 KiB |
2
neofarm/klassendiagramm/generate.sh
Executable file
2
neofarm/klassendiagramm/generate.sh
Executable file
@@ -0,0 +1,2 @@
|
|||||||
|
#/bin/sh
|
||||||
|
pyreverse -o svg -p neofarm ../orm/*.py
|
||||||
67
neofarm/klassendiagramm/packages_neofarm.svg
Normal file
67
neofarm/klassendiagramm/packages_neofarm.svg
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||||
|
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||||
|
<!-- Generated by graphviz version 12.1.2 (0)
|
||||||
|
-->
|
||||||
|
<!-- Title: packages_neofarm Pages: 1 -->
|
||||||
|
<svg width="338pt" height="116pt"
|
||||||
|
viewBox="0.00 0.00 337.62 116.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 112)">
|
||||||
|
<title>packages_neofarm</title>
|
||||||
|
<polygon fill="white" stroke="none" points="-4,4 -4,-112 333.62,-112 333.62,4 -4,4"/>
|
||||||
|
<!-- asset -->
|
||||||
|
<g id="node1" class="node">
|
||||||
|
<title>asset</title>
|
||||||
|
<polygon fill="none" stroke="black" points="57.25,-36 0,-36 0,0 57.25,0 57.25,-36"/>
|
||||||
|
<text text-anchor="middle" x="28.62" y="-13.32" font-family="Times,serif" font-size="14.00">asset</text>
|
||||||
|
</g>
|
||||||
|
<!-- my_meta -->
|
||||||
|
<g id="node3" class="node">
|
||||||
|
<title>my_meta</title>
|
||||||
|
<polygon fill="none" stroke="black" points="182.5,-108 108.75,-108 108.75,-72 182.5,-72 182.5,-108"/>
|
||||||
|
<text text-anchor="middle" x="145.62" y="-85.33" font-family="Times,serif" font-size="14.00">my_meta</text>
|
||||||
|
</g>
|
||||||
|
<!-- asset->my_meta -->
|
||||||
|
<g id="edge1" class="edge">
|
||||||
|
<title>asset->my_meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M57.55,-36.3C72.59,-45.31 91.18,-56.43 107.4,-66.13"/>
|
||||||
|
<polygon fill="black" stroke="black" points="115.59,-71.03 104.69,-69.75 112.34,-69.09 107,-65.89 107,-65.89 107,-65.89 112.34,-69.09 109.31,-62.03 115.59,-71.03"/>
|
||||||
|
</g>
|
||||||
|
<!-- log -->
|
||||||
|
<g id="node2" class="node">
|
||||||
|
<title>log</title>
|
||||||
|
<polygon fill="none" stroke="black" points="129.62,-36 75.62,-36 75.62,0 129.62,0 129.62,-36"/>
|
||||||
|
<text text-anchor="middle" x="102.62" y="-13.32" font-family="Times,serif" font-size="14.00">log</text>
|
||||||
|
</g>
|
||||||
|
<!-- log->my_meta -->
|
||||||
|
<g id="edge2" class="edge">
|
||||||
|
<title>log->my_meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M113.25,-36.3C118.1,-44.19 123.94,-53.7 129.32,-62.45"/>
|
||||||
|
<polygon fill="black" stroke="black" points="134.48,-70.86 125.41,-64.69 132.5,-67.64 129.25,-62.34 129.25,-62.34 129.25,-62.34 132.5,-67.64 133.08,-59.98 134.48,-70.86"/>
|
||||||
|
</g>
|
||||||
|
<!-- quantity -->
|
||||||
|
<g id="node4" class="node">
|
||||||
|
<title>quantity</title>
|
||||||
|
<polygon fill="none" stroke="black" points="229.62,-36 147.62,-36 147.62,0 229.62,0 229.62,-36"/>
|
||||||
|
<text text-anchor="middle" x="188.62" y="-13.32" font-family="Times,serif" font-size="14.00">quantity</text>
|
||||||
|
</g>
|
||||||
|
<!-- quantity->my_meta -->
|
||||||
|
<g id="edge3" class="edge">
|
||||||
|
<title>quantity->my_meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M178,-36.3C173.15,-44.19 167.31,-53.7 161.93,-62.45"/>
|
||||||
|
<polygon fill="black" stroke="black" points="156.77,-70.86 158.17,-59.98 158.75,-67.64 162,-62.34 162,-62.34 162,-62.34 158.75,-67.64 165.84,-64.69 156.77,-70.86"/>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy -->
|
||||||
|
<g id="node5" class="node">
|
||||||
|
<title>taxonomy</title>
|
||||||
|
<polygon fill="none" stroke="black" points="329.62,-36 247.62,-36 247.62,0 329.62,0 329.62,-36"/>
|
||||||
|
<text text-anchor="middle" x="288.62" y="-13.32" font-family="Times,serif" font-size="14.00">taxonomy</text>
|
||||||
|
</g>
|
||||||
|
<!-- taxonomy->my_meta -->
|
||||||
|
<g id="edge4" class="edge">
|
||||||
|
<title>taxonomy->my_meta</title>
|
||||||
|
<path fill="none" stroke="black" d="M252.91,-36.48C234.08,-45.7 210.8,-57.1 190.74,-66.92"/>
|
||||||
|
<polygon fill="black" stroke="black" points="181.98,-71.2 188.98,-62.77 185.38,-69.54 190.96,-66.81 190.96,-66.81 190.96,-66.81 185.38,-69.54 192.94,-70.85 181.98,-71.2"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 3.4 KiB |
45
neofarm/lib.py
Normal file
45
neofarm/lib.py
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
import requests
|
||||||
|
from oauthlib.oauth2 import BackendApplicationClient
|
||||||
|
from requests_oauthlib import OAuth2Session, OAuth2
|
||||||
|
import jsonapi_requests
|
||||||
|
from . orm.my_meta import MyMeta
|
||||||
|
|
||||||
|
# constants:
|
||||||
|
root_url = 'https://farmos.wagframe.duckdns.org/'
|
||||||
|
api_root = root_url + 'api/'
|
||||||
|
token_url = root_url + 'oauth/token/'
|
||||||
|
client_id = 'neofarm'
|
||||||
|
client_secret = 'Wk&%g#d8lYFUDrU7k7k%5ZS$V@hHauBq'
|
||||||
|
fetch_retries = 10;
|
||||||
|
|
||||||
|
def init_api():
|
||||||
|
client = BackendApplicationClient(client_id=client_id)
|
||||||
|
oauth_session = OAuth2Session(client=client)
|
||||||
|
for i in range(fetch_retries):
|
||||||
|
try:
|
||||||
|
token = oauth_session.fetch_token(
|
||||||
|
token_url = token_url,
|
||||||
|
client_id = client_id,
|
||||||
|
client_secret = client_secret
|
||||||
|
)
|
||||||
|
break
|
||||||
|
except:
|
||||||
|
print("Fehler bei Verbindung mit Server (wahrscheinlich DuckDns) probiere erneut...")
|
||||||
|
|
||||||
|
oauth = OAuth2(client_id=client_id, client=client, token=token)
|
||||||
|
|
||||||
|
api = jsonapi_requests.orm.OrmApi.config({
|
||||||
|
'API_ROOT': api_root,
|
||||||
|
'AUTH': oauth,
|
||||||
|
'TIMEOUT': 1,
|
||||||
|
})
|
||||||
|
jsonapi_requests.configuration.default = api
|
||||||
|
return api
|
||||||
|
|
||||||
|
api = init_api()
|
||||||
|
MyMeta.set_api(api)
|
||||||
|
# orm stuff classes imported here to allow inheritance from MyMeta
|
||||||
|
import neofarm.orm.log as Log
|
||||||
|
import neofarm.orm.asset as Asset
|
||||||
|
import neofarm.orm.quantity as Quantity
|
||||||
|
import neofarm.orm.taxonomy as Taxonomy
|
||||||
72
neofarm/orm/asset.py
Normal file
72
neofarm/orm/asset.py
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
import jsonapi_requests
|
||||||
|
import neofarm.orm.log as Log
|
||||||
|
from . my_meta import MyMeta
|
||||||
|
|
||||||
|
|
||||||
|
class Asset(jsonapi_requests.orm.ApiModel):
|
||||||
|
class Meta(MyMeta):
|
||||||
|
type = 'asset'
|
||||||
|
|
||||||
|
name = jsonapi_requests.orm.AttributeField('name')
|
||||||
|
timestamp = jsonapi_requests.orm.AttributeField('timestamp')
|
||||||
|
location = jsonapi_requests.orm.RelationField('location')
|
||||||
|
|
||||||
|
def get_logs_of_type(self, type):
|
||||||
|
if not issubclass(type, Log.Log):
|
||||||
|
raise ValueError("type specified is not a type of log use for example: get_logs_of_type(Log.Harvest)")
|
||||||
|
logs = type.get_list()
|
||||||
|
related = []
|
||||||
|
for log in logs:
|
||||||
|
for asset in log.assets:
|
||||||
|
if asset.id == self.id:
|
||||||
|
related.append(log)
|
||||||
|
break;
|
||||||
|
return related
|
||||||
|
|
||||||
|
def get_inventory_logs_of_type(self, type):
|
||||||
|
if not issubclass(type, Log.Log):
|
||||||
|
raise ValueError("type specified is not a type of log use for example: get_logs_of_type(Log.Harvest)")
|
||||||
|
logs = type.get_list()
|
||||||
|
related = []
|
||||||
|
for log in logs:
|
||||||
|
for quantity in log.quantities:
|
||||||
|
if quantity.inventory_asset:
|
||||||
|
if quantity.inventory_asset.id == self.id:
|
||||||
|
related.append(log)
|
||||||
|
break;
|
||||||
|
return related
|
||||||
|
|
||||||
|
class Land(Asset):
|
||||||
|
class Meta(Asset.Meta):
|
||||||
|
name = 'land'
|
||||||
|
type, path = Asset.Meta.get_type_and_path(name)
|
||||||
|
json_geometry = jsonapi_requests.orm.AttributeField('intrinsic_geometry')
|
||||||
|
|
||||||
|
class Plant(Asset):
|
||||||
|
class Meta(Asset.Meta):
|
||||||
|
name = 'plant'
|
||||||
|
type, path = Asset.Meta.get_type_and_path(name)
|
||||||
|
crops = jsonapi_requests.orm.RelationField('plant_type')
|
||||||
|
seasons = jsonapi_requests.orm.RelationField('season')
|
||||||
|
class Equipment(Asset):
|
||||||
|
class Meta(Asset.Meta):
|
||||||
|
name = 'equipment'
|
||||||
|
type, path = Asset.Meta.get_type_and_path(name)
|
||||||
|
class Material(Asset):
|
||||||
|
class Meta(Asset.Meta):
|
||||||
|
name = 'material'
|
||||||
|
type, path = Asset.Meta.get_type_and_path(name)
|
||||||
|
crop = jsonapi_requests.orm.RelationField('material_type')
|
||||||
|
class Seed(Asset):
|
||||||
|
class Meta(Asset.Meta):
|
||||||
|
name = 'seed'
|
||||||
|
type, path = Asset.Meta.get_type_and_path(name)
|
||||||
|
crop = jsonapi_requests.orm.RelationField('plant_type')
|
||||||
|
season = jsonapi_requests.orm.RelationField('season')
|
||||||
|
class Product(Asset):
|
||||||
|
class Meta(Asset.Meta):
|
||||||
|
name = 'product'
|
||||||
|
type, path = Asset.Meta.get_type_and_path(name)
|
||||||
|
# do not rename to type as that will end in infinite recursion
|
||||||
|
product_type = jsonapi_requests.orm.RelationField('product_type')
|
||||||
|
|
||||||
59
neofarm/orm/log.py
Normal file
59
neofarm/orm/log.py
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
import jsonapi_requests
|
||||||
|
from . my_meta import MyMeta
|
||||||
|
|
||||||
|
class Log(jsonapi_requests.orm.ApiModel):
|
||||||
|
class Meta(MyMeta):
|
||||||
|
type = 'log'
|
||||||
|
|
||||||
|
name = jsonapi_requests.orm.AttributeField('name')
|
||||||
|
timestamp = jsonapi_requests.orm.AttributeField('timestamp')
|
||||||
|
isMovement = jsonapi_requests.orm.AttributeField('is_movement')
|
||||||
|
assets = jsonapi_requests.orm.RelationField('asset')
|
||||||
|
location = jsonapi_requests.orm.RelationField('location')
|
||||||
|
equipment = jsonapi_requests.orm.RelationField('equipment')
|
||||||
|
quantities = jsonapi_requests.orm.RelationField('quantity')
|
||||||
|
json_notes = jsonapi_requests.orm.AttributeField('notes')
|
||||||
|
|
||||||
|
@property
|
||||||
|
def notes(self):
|
||||||
|
return self.json_notes['value']
|
||||||
|
|
||||||
|
@property
|
||||||
|
def plant(self):
|
||||||
|
for asset in self.assets:
|
||||||
|
if asset.type == 'asset--plant':
|
||||||
|
return asset
|
||||||
|
|
||||||
|
class Activity(Log):
|
||||||
|
class Meta(Log.Meta):
|
||||||
|
name = 'activity'
|
||||||
|
type, path = Log.Meta.get_type_and_path(name)
|
||||||
|
class Maintenance(Log):
|
||||||
|
class Meta(Log.Meta):
|
||||||
|
name = 'maintenance'
|
||||||
|
type, path = Log.Meta.get_type_and_path(name)
|
||||||
|
class Purchase(Log):
|
||||||
|
class Meta(Log.Meta):
|
||||||
|
name = 'purchase'
|
||||||
|
type, path = Log.Meta.get_type_and_path(name)
|
||||||
|
class Seeding(Log):
|
||||||
|
class Meta(Log.Meta):
|
||||||
|
name = 'seeding'
|
||||||
|
type, path = Log.Meta.get_type_and_path(name)
|
||||||
|
class Input(Log):
|
||||||
|
class Meta(Log.Meta):
|
||||||
|
name = 'input'
|
||||||
|
type, path = Log.Meta.get_type_and_path(name)
|
||||||
|
class Medical(Log):
|
||||||
|
class Meta(Log.Meta):
|
||||||
|
name = 'medical'
|
||||||
|
type, path = Log.Meta.get_type_and_path(name)
|
||||||
|
class Harvest(Log):
|
||||||
|
class Meta(Log.Meta):
|
||||||
|
name = 'harvest'
|
||||||
|
type, path = Log.Meta.get_type_and_path(name)
|
||||||
|
class Sale(Log):
|
||||||
|
class Meta(Log.Meta):
|
||||||
|
name = 'sale'
|
||||||
|
type, path = Log.Meta.get_type_and_path(name)
|
||||||
|
|
||||||
10
neofarm/orm/my_meta.py
Normal file
10
neofarm/orm/my_meta.py
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
api_path_separator = '/'
|
||||||
|
api_type_separator = '--'
|
||||||
|
|
||||||
|
class MyMeta:
|
||||||
|
@classmethod
|
||||||
|
def get_type_and_path(cls, name):
|
||||||
|
return (f"{cls.type}{api_type_separator}{name}", f"{cls.type}{api_path_separator}{name}")
|
||||||
|
@classmethod
|
||||||
|
def set_api(cls, api):
|
||||||
|
cls.api = api
|
||||||
41
neofarm/orm/quantity.py
Normal file
41
neofarm/orm/quantity.py
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
import jsonapi_requests
|
||||||
|
from . my_meta import MyMeta
|
||||||
|
|
||||||
|
|
||||||
|
class Quantity(jsonapi_requests.orm.ApiModel):
|
||||||
|
class Meta(MyMeta):
|
||||||
|
type = 'quantity'
|
||||||
|
|
||||||
|
measure = jsonapi_requests.orm.AttributeField('measure')
|
||||||
|
json_value = jsonapi_requests.orm.AttributeField('value')
|
||||||
|
units = jsonapi_requests.orm.RelationField('units')
|
||||||
|
inventory_adjustment = jsonapi_requests.orm.AttributeField('inventory_adjustment')
|
||||||
|
inventory_asset = jsonapi_requests.orm.RelationField('inventory_asset')
|
||||||
|
|
||||||
|
@property
|
||||||
|
def value(self):
|
||||||
|
return float(self.json_value['decimal'])
|
||||||
|
|
||||||
|
class Standard(Quantity):
|
||||||
|
class Meta(Quantity.Meta):
|
||||||
|
name = 'standard'
|
||||||
|
type, path = Quantity.Meta.get_type_and_path(name)
|
||||||
|
class Price(Quantity):
|
||||||
|
class Meta(Quantity.Meta):
|
||||||
|
name = 'price'
|
||||||
|
type, path = Quantity.Meta.get_type_and_path(name)
|
||||||
|
json_unit_price = jsonapi_requests.orm.AttributeField('unit_price')
|
||||||
|
json_total_price = jsonapi_requests.orm.AttributeField('total_price')
|
||||||
|
|
||||||
|
@property
|
||||||
|
def unit_price(self):
|
||||||
|
return float(self.json_unit_price['decimal'])
|
||||||
|
@property
|
||||||
|
def total_price(self):
|
||||||
|
return float(self.json_total_price['decimal'])
|
||||||
|
|
||||||
|
class Material(Quantity):
|
||||||
|
class Meta(Quantity.Meta):
|
||||||
|
name = 'material'
|
||||||
|
type, path = Quantity.Meta.get_type_and_path(name)
|
||||||
|
material_types = jsonapi_requests.orm.RelationField('material_type')
|
||||||
38
neofarm/orm/taxonomy.py
Normal file
38
neofarm/orm/taxonomy.py
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
import jsonapi_requests
|
||||||
|
from . my_meta import MyMeta
|
||||||
|
|
||||||
|
|
||||||
|
class Taxonomy(jsonapi_requests.orm.ApiModel):
|
||||||
|
class Meta(MyMeta):
|
||||||
|
type = 'taxonomy_term'
|
||||||
|
|
||||||
|
name = jsonapi_requests.orm.AttributeField('name')
|
||||||
|
|
||||||
|
class Crop(Taxonomy):
|
||||||
|
class Meta(Taxonomy.Meta):
|
||||||
|
name = 'crop_family'
|
||||||
|
type, path = Taxonomy.Meta.get_type_and_path(name)
|
||||||
|
class LogCategory(Taxonomy):
|
||||||
|
class Meta(Taxonomy.Meta):
|
||||||
|
name = 'log_category'
|
||||||
|
type, path = Taxonomy.Meta.get_type_and_path(name)
|
||||||
|
class MaterialType(Taxonomy):
|
||||||
|
class Meta(Taxonomy.Meta):
|
||||||
|
name = 'material_type'
|
||||||
|
type, path = Taxonomy.Meta.get_type_and_path(name)
|
||||||
|
class PlantType(Taxonomy):
|
||||||
|
class Meta(Taxonomy.Meta):
|
||||||
|
name = 'plant_type'
|
||||||
|
type, path = Taxonomy.Meta.get_type_and_path(name)
|
||||||
|
class ProductType(Taxonomy):
|
||||||
|
class Meta(Taxonomy.Meta):
|
||||||
|
name = 'product_type'
|
||||||
|
type, path = Taxonomy.Meta.get_type_and_path(name)
|
||||||
|
class Season(Taxonomy):
|
||||||
|
class Meta(Taxonomy.Meta):
|
||||||
|
name = 'season'
|
||||||
|
type, path = Taxonomy.Meta.get_type_and_path(name)
|
||||||
|
class Unit(Taxonomy):
|
||||||
|
class Meta(Taxonomy.Meta):
|
||||||
|
name = 'unit'
|
||||||
|
type, path = Taxonomy.Meta.get_type_and_path(name)
|
||||||
3333
reporting.ipynb
Normal file
3333
reporting.ipynb
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user