Improved links and configuration file for dot

Restructured data to support block and node level links.
Added hidden nodes and edges in blocks to improve link
visualization.

Introduced support for configuring dot file parameters with
a config file.
This commit is contained in:
Lauri Koskenniemi 2025-05-30 22:54:36 +03:00
parent 76c4dfb528
commit 93e2554457
8 changed files with 3384 additions and 2451 deletions

View File

@ -1,7 +1,7 @@
import json import json
import yaml import yaml
def load_yaml(filename): def load_data(filename):
# Check file extension # Check file extension
if not filename.lower().endswith(('.yaml', '.yml')): if not filename.lower().endswith(('.yaml', '.yml')):
raise ValueError(f"File '{filename}' is not a YAML file") raise ValueError(f"File '{filename}' is not a YAML file")
@ -19,8 +19,29 @@ def load_yaml(filename):
except yaml.YAMLError as e: except yaml.YAMLError as e:
raise ValueError(f"Invalid YAML format in file '{filename}': {str(e)}") raise ValueError(f"Invalid YAML format in file '{filename}': {str(e)}")
def load_config(filename):
# Check file extension
if not filename.lower().endswith(('.yaml', '.yml')):
raise ValueError(f"File '{filename}' is not a YAML file")
# Read file content
try:
with open(filename, 'r') as f:
content = f.read()
except FileNotFoundError:
return {}
# Try to load as YAML
try:
config = yaml.safe_load(content)
if not isinstance(config, dict):
raise ValueError("YAML content does not contain a dictionary")
return config
except yaml.YAMLError as e:
raise ValueError(f"Invalid YAML format in file '{filename}': {str(e)}")
#def main(): #def main():
# data = load_yaml(DATA) # data = load_data(DATA)
# json_data = json.dumps(data, indent=2) # json_data = json.dumps(data, indent=2)
# print(json_data) # print(json_data)

View File

@ -2,110 +2,141 @@
import os import os
import uuid import uuid
HEADER = """
graph {
graph [splines=ortho, nodesep=1]
node [color=white]
edge [headport=n, tailport=s]
compound=true
"""
FOOTER = """
}
"""
# TODO: # TODO:
# Add hidden nodes in each cluster above visible nodes connected by hidden edges and attach visible edges to them # Add hidden nodes in each cluster above visible nodes connected by hidden edges and attach visible edges to them
# - also see: https://stackoverflow.com/questions/53862417/how-to-set-head-and-tail-position-in-nodes-graphviz # - also see: https://stackoverflow.com/questions/53862417/how-to-set-head-and-tail-position-in-nodes-graphviz
# Solve layering of clusters # Solve layering of clusters
# - https://observablehq.com/@gordonsmith/church # - https://observablehq.com/@gordonsmith/church
def make_header(config):
return "graph {\n" + config["graph"] + "\n"
def make_footer():
return "}\n"
def make_node_line(node, config):
line = f"{node['id']} [label=\"{node['text']}\"\n"
if node['hidden']:
line += config["node"]["hidden"]
else:
line += config["node"]["text"]
return line + "]\n"
def make_link_line(link, config):
configs = []
if link['head'] != "":
configs.append(f"lhead=cluster_{link['head']}")
if link['hidden']:
configs.append(config["edge"]["hidden"])
else:
configs.append(config["edge"]["default"])
line = f"{link['from']} -- {link['to']}"
if len(configs) > 0:
line += " [" + ", ".join(configs) + "]"
return line + "\n"
def make_block_line(block, config):
line = f"subgraph cluster_{block['id']} {{\n{config["subgraph"]}\nlabel=\"{block['label']}\"\n"
for node in block["texts"]:
line += f"{node}\n"
return line + "}\n\n"
def add_nodes(nodes, config):
line = ""
for node in nodes:
line += make_node_line(node, config)
return line
def add_links(links, config):
line = ""
for link in links:
line += make_link_line(link, config)
return line
def add_blocks(blocks, config):
line = ""
for block in blocks:
line += make_block_line(block, config)
return line
def get_id():
return "id" + str(uuid.uuid4().hex)
class Graph: class Graph:
def __init__(self): def __init__(self):
self.config = {}
self.layers = {} self.layers = {}
self.blocks = {} self.blocks = []
self.nodes = [] self.nodes = []
self.links = {} self.links = []
self.dot_file = "" self.dot_file = ""
def __str__(self): def __str__(self):
return self.dot_file return self.dot_file
def get_id(self): def set_config(self, config):
return "id" + str(uuid.uuid4().hex) dot = config.get("dot", {})
if dot != {}:
dot["graph"] = dot.get("graph", "")
dot["subgraph"] = dot.get("subgraph", "")
dot["node"] = dot.get("node", {})
dot["node"]["text"] = dot["node"].get("text", "")
dot["node"]["hidden"] = dot["node"].get("hidden", "")
dot["edge"] = dot.get("edge", {})
dot["edge"]["default"] = dot["edge"].get("default", "")
dot["edge"]["hidden"] = dot["edge"].get("hidden", "")
self.config = dot
def process_blocks(self, data): def process_blocks(self, data):
blocks = data.get('blocks', []) blocks = data.get('blocks', [])
linker = {}
for block in blocks: for block in blocks:
block_id = self.get_id() block_id = get_id()
new_block = { new_block = {
"id": block_id,
"label": block.get("label", ""), "label": block.get("label", ""),
#"layer": block.get("layer", 0),
"texts": [] "texts": []
} }
hidden_node_id = get_id()
self.nodes.append({"id": hidden_node_id, "text": "", "hidden": True})
new_block["texts"].append(hidden_node_id)
#layer = block.get("layer", 0) links = block.get("links", [])
#if layer not in self.layers: for link in links:
# self.layers[layer] = [] if link in linker:
self.links.append({"from": linker[link], "to": hidden_node_id, "head": block_id, "hidden": False})
del linker[link]
for text in block.get("texts", []): for text in block.get("texts", []):
node_id = self.get_id() node_id = get_id()
self.nodes.append({"id": node_id, "text": text.get("text", "")}) self.nodes.append({"id": node_id, "text": text.get("text", ""), "hidden": False})
self.links.append({"from": hidden_node_id, "to": node_id, "head": "", "hidden": True})
new_block["texts"].append(node_id) new_block["texts"].append(node_id)
#self.layers[layer].append(node_id)
links = text.get("links", {}) links = text.get("links", [])
if links != {}: for link in links:
from_links = links.get("from", []) linker[link] = node_id
to_links = links.get("to", [])
for from_link in from_links:
self.links[from_link] = {"from": node_id, "to": "", "head": ""}
for to_link in to_links:
if to_link in self.links:
self.links[to_link]["to"] = node_id
self.links[to_link]["head"] = block_id
self.blocks[block_id] = new_block self.blocks.append(new_block)
def build_dot(self): def build_dot(self):
self.dot_file = HEADER self.dot_file = make_header(self.config)
self.dot_file += add_nodes(self.nodes, self.config)
for node in self.nodes: self.dot_file += add_blocks(self.blocks, self.config)
self.dot_file += f"{node['id']} [label=\"{node['text']}\"]\n" self.dot_file += add_links(self.links, self.config)
self.dot_file += "\n" self.dot_file += make_footer()
for block_id, block in self.blocks.items():
self.dot_file += f"subgraph cluster_{block_id} {{\n"
self.dot_file += f"label=\"{block['label']}\"\n"
self.dot_file += f"labeljust=l\n"
for node in block["texts"]:
self.dot_file += f"{node}\n"
self.dot_file += "}\n\n"
#for layer in self.layers.keys():
# self.dot_file += f"layer{layer} [style=invis]\n"
#ranking = " -- ".join([f"layer{layer}" for layer in self.layers.keys()])
#self.dot_file += f"{ranking} [style=invis]\n"
for link in self.links:
if self.links[link]["to"] != "":
self.dot_file += f"{self.links[link]['from']} -- {self.links[link]['to']}"
if self.links[link]["head"] != "":
self.dot_file += f" [lhead=cluster_{self.links[link]['head']}]"
self.dot_file += "\n"
#for layer, nodes in self.layers.items():
# self.dot_file += "{rank=same; "
# self.dot_file += "layer{layer}; "
# for node in nodes:
# self.dot_file += f"{node}; "
# self.dot_file += "}\n"
self.dot_file += FOOTER
def make_dot(self, format="svg", dot_file="dot.gv", svg_file="graph.svg"): def make_dot(self, format="svg", dot_file="dot.gv", svg_file="graph.svg"):
if self.dot_file != "": if self.dot_file != "":

View File

@ -1,20 +1,22 @@
from db import load_yaml from db import load_data, load_config
from graph import Graph from graph import Graph
import os import os
#DATA="../data/styrman-blocks.yml"
#DATA="../data/test.yml"
DATA_DIR="/data" DATA_DIR="/data"
CONFIG_FILE="/config.yaml"
def main(): def main():
# Get all YAML files in the data directory # Get all YAML files in the data directory
yaml_files = [f for f in os.listdir(DATA_DIR) if f.endswith(('.yaml', '.yml'))] yaml_files = [f for f in os.listdir(DATA_DIR) if f.endswith(('.yaml', '.yml'))]
config = load_config(CONFIG_FILE)
for yaml_file in yaml_files: for yaml_file in yaml_files:
print(f"Processing {yaml_file}...") print(f"Processing {yaml_file}...")
data = load_yaml(os.path.join(DATA_DIR, yaml_file)) data = load_data(os.path.join(DATA_DIR, yaml_file))
graph = Graph() graph = Graph()
graph.set_config(config)
graph.process_blocks(data) graph.process_blocks(data)
graph.build_dot() graph.build_dot()
# Use the base name of the YAML file (without extension) as the output name # Use the base name of the YAML file (without extension) as the output name

23
config.yaml Normal file
View File

@ -0,0 +1,23 @@
dot:
graph: |
graph [splines=ortho, nodesep=0.2]
//node [color=white]
//edge [headport=n, tailport=s]
compound=true
center=true
subgraph: |
labeljust=l
node:
text: |
shape=plaintext
hidden: |
//style=invis
shape=point
width=0
height=0
edge:
default: |
headport=n
tailport=s
hidden: |
style=invis

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 151 KiB

After

Width:  |  Height:  |  Size: 158 KiB

View File

@ -13,8 +13,7 @@ blocks:
Elisabet Jaakontr Elisabet Jaakontr
s.xx.xx.1728 s.xx.xx.1728
k.17.05.1803 Elimäki k.17.05.1803 Elimäki
links: links: [1]
from: [1]
- text: | - text: |
Eerik Matinpk Styrman Eerik Matinpk Styrman
lienee ollut Matti Matinpojan nuorempi lienee ollut Matti Matinpojan nuorempi
@ -27,6 +26,7 @@ blocks:
v. 1749-1779 v. 1749-1779
- layer: 2 - layer: 2
label: 2 sukupolvi, Matti Matinpk lapset label: 2 sukupolvi, Matti Matinpk lapset
links: [1]
texts: texts:
- text: | - text: |
Elisabet Matintr Elisabet Matintr
@ -40,9 +40,7 @@ blocks:
pso xx.xx.xxxx pso xx.xx.xxxx
Anna Matintr Anna Matintr
s.xx.xx.1750 s.xx.xx.1750
links: links: [2]
to: [1]
from: [2]
- text: | - text: |
Kaarina Matintr Kaarina Matintr
s.xx.xx.1754 s.xx.xx.1754
@ -70,10 +68,10 @@ blocks:
Takalan talon isäntä, joina hänen jälkeensä Takalan talon isäntä, joina hänen jälkeensä
Juho Jaakonpk, Mauno Junonpk, Paavo Maunonpk, Juho Jaakonpk, Mauno Junonpk, Paavo Maunonpk,
ja Olli Paavonpk Takala ja Olli Paavonpk Takala
links: links: [3]
from: [3]
- layer: 3 - layer: 3
label: 3 sukupolvi, Kustaa Matinpk lapset label: 3 sukupolvi, Kustaa Matinpk lapset
links: [2]
texts: texts:
- text: | - text: |
Eerik Kustaanpk Eerik Kustaanpk
@ -84,9 +82,7 @@ blocks:
Britha Abrahamintr Britha Abrahamintr
s.xx.xx.1798 s.xx.xx.1798
k.03.03.1874 k.03.03.1874
links: links: [4]
to: [2]
from: [4]
- text: | - text: |
Antti Kustaanpk Antti Kustaanpk
Mikkola Mikkola
@ -101,8 +97,7 @@ blocks:
Maria Antintr Maria Antintr
s.xx.xx.1797 s.xx.xx.1797
k.xx.xx.xxxx k.xx.xx.xxxx
links: links: [5]
from: [5]
- text: | - text: |
Anna Stina Kustaantr Anna Stina Kustaantr
Mikkola Mikkola
@ -110,6 +105,7 @@ blocks:
k.xx.xx.xxxx k.xx.xx.xxxx
- layer: 3 - layer: 3
label: 3. sukupolvi, Matti Matinpk lapset label: 3. sukupolvi, Matti Matinpk lapset
links: [3]
texts: texts:
- text: | - text: |
(Johan) Fredrik Matinpk (Johan) Fredrik Matinpk
@ -122,9 +118,7 @@ blocks:
Haapalan Sutelasta Haapalan Sutelasta
s.12.05.1807 s.12.05.1807
k.25.04.1875 k.25.04.1875
links: links: [6]
to: [3]
from: [6]
- text: | - text: |
Anton Matinpk Anton Matinpk
Mikkola Mikkola
@ -139,14 +133,13 @@ blocks:
Rantala Rantala
- layer: 4 - layer: 4
label: 4. sukupolvi, Eerik Kustaanpk lapset label: 4. sukupolvi, Eerik Kustaanpk lapset
links: [4]
texts: texts:
- text: | - text: |
Eerik Eerikinpk Eerik Eerikinpk
Mikkola Mikkola
s.06.12.1826 s.06.12.1826
k.17.11.1904 k.17.11.1904
links:
to: [4]
- text: | - text: |
Matti Eerikinpk Matti Eerikinpk
Mikkola Mikkola
@ -156,8 +149,7 @@ blocks:
Eeva Eerikintr Eeva Eerikintr
s.08.10.1833 s.08.10.1833
k.17.10.1923 k.17.10.1923
links: links: [7]
from: [7]
- text: | - text: |
Juho Eerikinpk Juho Eerikinpk
Mikkola Mikkola
@ -165,6 +157,7 @@ blocks:
k.xx.xx.xxxx k.xx.xx.xxxx
- layer: 4 - layer: 4
label: 4. sukupolvi, Kustaa Kustaanpk lapsi label: 4. sukupolvi, Kustaa Kustaanpk lapsi
links: [5]
texts: texts:
- text: | - text: |
Jaakko Kustaanpk Jaakko Kustaanpk
@ -175,11 +168,10 @@ blocks:
Anna-Liisa Matintr Anna-Liisa Matintr
s.29.03.1832 s.29.03.1832
k.xx.xx.xxxx k.xx.xx.xxxx
links: links: [8]
to: [5]
from: [8]
- layer: 4 - layer: 4
label: 4. sukupolvi, (Johan) Fredrik Matinpk lapset label: 4. sukupolvi, (Johan) Fredrik Matinpk lapset
links: [6]
texts: texts:
- text: | - text: |
Juho Fredrikinpk Juho Fredrikinpk
@ -193,9 +185,7 @@ blocks:
Maria Jeremiaantr Maria Jeremiaantr
s.10.11.1833 Iitti s.10.11.1833 Iitti
k.01.05.1917 Elimäki, Ratula k.01.05.1917 Elimäki, Ratula
links: links: [9]
to: [6]
from: [9]
- text: | - text: |
Matti Fredrinpk Matti Fredrinpk
Mikkola Mikkola
@ -212,8 +202,7 @@ blocks:
s.26.01.183x Iitti s.26.01.183x Iitti
asui vielä v.1923 leskenä asui vielä v.1923 leskenä
Penttilässä Penttilässä
links: links: [10]
from: [10]
- text: | - text: |
Elisabet Fredrikintr Elisabet Fredrikintr
Mikkola Mikkola
@ -224,8 +213,7 @@ blocks:
Kalkela Kalkela
s. xx.xx.1822 Elimäki s. xx.xx.1822 Elimäki
k.08.12.1904 Elimäki k.08.12.1904 Elimäki
links: links: [11]
from: [11]
- text: | - text: |
Maria (Kri)stiina Fredrikintr Maria (Kri)stiina Fredrikintr
Mikkola Mikkola
@ -245,6 +233,7 @@ blocks:
ja heille jälkeläisiä ja heille jälkeläisiä
- layer: 5 - layer: 5
label: 5. sukupolvi, Matti Eerikinpk Mikkolan lapset label: 5. sukupolvi, Matti Eerikinpk Mikkolan lapset
links: [7]
texts: texts:
- text: | - text: |
Matti Matinpk Matti Matinpk
@ -259,9 +248,7 @@ blocks:
Matti Matinpk lienee Matti Matinpk lienee
omistanut Penttilän omistanut Penttilän
tilan n:o 5 v.1909-1919 tilan n:o 5 v.1909-1919
links: links: [12]
to: [7]
from: [12]
- text: | - text: |
Maria Matintr Maria Matintr
Mikkola Mikkola
@ -283,18 +270,16 @@ blocks:
Aino Elin Topiaantr Koho Aino Elin Topiaantr Koho
s.13.07.1900 s.13.07.1900
k.09.11.1963 Elimäki k.09.11.1963 Elimäki
links: links: [13]
from: [13]
- layer: 5 - layer: 5
label: 5. sukupolvi, Jaakko Kustaanpk Mikkolan Lapset label: 5. sukupolvi, Jaakko Kustaanpk Mikkolan Lapset
links: [8]
texts: texts:
- text: | - text: |
Matti Jaakonpk Matti Jaakonpk
Mikkola Mikkola
s.22.9.1855 s.22.9.1855
k.xx.xx.xxxx k.xx.xx.xxxx
links:
to: [8]
- text: | - text: |
Eeva Liisa Jaakontr Eeva Liisa Jaakontr
Mikkola Mikkola
@ -302,13 +287,12 @@ blocks:
k.xx.xx.xxxx k.xx.xx.xxxx
- layer: 5 - layer: 5
label: 5. sukupolvi, Juho Fredrikinpk Styrman lapset label: 5. sukupolvi, Juho Fredrikinpk Styrman lapset
links: [9]
texts: texts:
- text: | - text: |
Juho Juhonpk Styrman Juho Juhonpk Styrman
s.26.2.1854 s.26.2.1854
k.15.3.1854 k.15.3.1854
links:
to: [9]
- text: | - text: |
Elisabet Juhontr Elisabet Juhontr
Styrman Styrman
@ -320,8 +304,7 @@ blocks:
Taavila Taavila
s.25.08.1841 Iitti s.25.08.1841 Iitti
k.12.02.1908 Iitti k.12.02.1908 Iitti
links: links: [14]
from: [14]
- text: | - text: |
Matti Styrman Matti Styrman
s.22.1.1858 s.22.1.1858
@ -337,8 +320,7 @@ blocks:
Engblomille. 1880-luvulla Engblomille. 1880-luvulla
oli jo isäntänä Matti Juhonpk oli jo isäntänä Matti Juhonpk
”Styrman/Höysti” ”Styrman/Höysti”
links: links: [15]
from: [15]
- text: | - text: |
Maria Styrman Maria Styrman
s.6.9.1864 Elimäki s.6.9.1864 Elimäki
@ -360,8 +342,7 @@ blocks:
(Muckis, Mukkila) (Muckis, Mukkila)
s.18.03.1875 Ruotsinpyhtää s.18.03.1875 Ruotsinpyhtää
k.17.01.1947 Ruotsinpyhtää k.17.01.1947 Ruotsinpyhtää
links: links: [16]
from: [16]
- text: | - text: |
Mauno (Mangnus) Styrman Mauno (Mangnus) Styrman
s.28.02.1872 Elimäki s.28.02.1872 Elimäki
@ -372,8 +353,7 @@ blocks:
pso 23.09.1987 pso 23.09.1987
Anna Matintr Kohola Anna Matintr Kohola
s.18.08.1877 Elimäki s.18.08.1877 Elimäki
links: links: [17]
from: [17]
- text: | - text: |
Juho Styrman Juho Styrman
muutti nimen v.1906 muutti nimen v.1906
@ -384,17 +364,15 @@ blocks:
Wilhelmiina Koskenniemi Wilhelmiina Koskenniemi
s.15.03.1883 Elimäki s.15.03.1883 Elimäki
k.16.04.1960 Kouvola k.16.04.1960 Kouvola
links: links: [18]
from: [18]
- layer: 5 - layer: 5
label: 5. sukupolvi, Matti Fredrikinpk Mikkolan lapset label: 5. sukupolvi, Matti Fredrikinpk Mikkolan lapset
links: [10]
texts: texts:
- text: | - text: |
Anna Matintr Anna Matintr
s.30.04.1861 s.30.04.1861
k.03.09.1907 k.03.09.1907
links:
to: [10]
- text: | - text: |
Juho Matinpk Juho Matinpk
s.22.12.1869 s.22.12.1869
@ -413,6 +391,7 @@ blocks:
k.13.10.1899 k.13.10.1899
- layer: 5 - layer: 5
label: 5. sukupolvi, Elisabet Mikkolan lapset label: 5. sukupolvi, Elisabet Mikkolan lapset
links: [11]
texts: texts:
- text: | - text: |
Juho Pietarinpk Juho Pietarinpk
@ -423,9 +402,7 @@ blocks:
Elisabeth Tuomaantr Elisabeth Tuomaantr
s.05.08.1854 Iitti s.05.08.1854 Iitti
k.18.07.1933 Elimäki k.18.07.1933 Elimäki
links: links: [19]
to: [11]
from: [19]
- text: | - text: |
Anna Pietarintr Anna Pietarintr
Kalkela Kalkela
@ -438,6 +415,7 @@ blocks:
k.xx.xx.xxxx k.xx.xx.xxxx
- layer: 6 - layer: 6
label: 6. sukupolvi, Matti Matinpk Mikkolan lapsi label: 6. sukupolvi, Matti Matinpk Mikkolan lapsi
links: [12]
texts: texts:
- text: | - text: |
Eino Valmari Eino Valmari
@ -447,19 +425,16 @@ blocks:
pso xx.xx.xxxx pso xx.xx.xxxx
Elma Eerikintr Tura Elma Eerikintr Tura
s.30.12.1914 s.30.12.1914
links: links: [35]
to: [12]
from: [35]
- layer: 6 - layer: 6
label: 6. sukupolvi, Mauno (Magnus) Matinpk Mikkolan lapset label: 6. sukupolvi, Mauno (Magnus) Matinpk Mikkolan lapset
links: [13]
texts: texts:
- text: | - text: |
Hellä Eeva Linnea Hellä Eeva Linnea
Mikkola Mikkola
s.13.07.1923 s.13.07.1923
k.05.04.1923 Elimäki k.05.04.1923 Elimäki
links:
to: [13]
- text: | - text: |
Oiva Mauno Johannes Oiva Mauno Johannes
Mikkola Mikkola
@ -479,8 +454,7 @@ blocks:
Eira Anna-Liisa Rajala Eira Anna-Liisa Rajala
s.12.04.1934 s.12.04.1934
k.xx.xx.xxxx k.xx.xx.xxxx
links: links: [34]
from: [34]
- text: | - text: |
Eliisa Anneli Eliisa Anneli
Mikkola Mikkola
@ -492,6 +466,7 @@ blocks:
k.xx.xx.xxxx k.xx.xx.xxxx
- layer: 6 - layer: 6
label: 6. sukupolvi, Elisabeth Juhontr Styrmanin lapsi label: 6. sukupolvi, Elisabeth Juhontr Styrmanin lapsi
links: [14]
texts: texts:
- text: | - text: |
Iida Taavila Iida Taavila
@ -502,11 +477,10 @@ blocks:
Sääksjärveltä Sääksjärveltä
s.15.01.1867 Iitti s.15.01.1867 Iitti
k.29.02.1928 Iitti k.29.02.1928 Iitti
links: links: [33]
to: [14]
from: [33]
- layer: 6 - layer: 6
label: 6. sukupolvi, Matti Styrman lapset label: 6. sukupolvi, Matti Styrman lapset
links: [15]
texts: texts:
- text: | - text: |
Anton Styrman Anton Styrman
@ -521,9 +495,7 @@ blocks:
k.09.02.1957 Kotka k.09.02.1957 Kotka
muutivat Ratulasta muutivat Ratulasta
Kotkaan 23.12.1907 Kotkaan 23.12.1907
links: links: [32]
to: [15]
from: [32]
- text: | - text: |
Eemil Alfred Styrman Eemil Alfred Styrman
myöh. Höysti myöh. Höysti
@ -535,8 +507,7 @@ blocks:
myöh.Höysti myöh.Höysti
s.11.10.1885 s.11.10.1885
k.22.08.1973 k.22.08.1973
links: links: [31]
from: [31]
- text: | - text: |
Alma Ingeborg Alma Ingeborg
Styrman Styrman
@ -552,8 +523,7 @@ blocks:
s.16.04.1897 s.16.04.1897
k.xx.xx.xxxx k.xx.xx.xxxx
Riihimäelle 19.01.1931 Riihimäelle 19.01.1931
links: links: [30]
from: [30]
- text: | - text: |
Martti Aleksanteri Martti Aleksanteri
Höysti Höysti
@ -563,10 +533,10 @@ blocks:
Laura Maria Laine Laura Maria Laine
s.26.04.1908 Vanaja s.26.04.1908 Vanaja
k.26.01.1988 k.26.01.1988
links: links: [29]
from: [29]
- layer: 6 - layer: 6
label: 6. sukupolvi, Anna Styrman lapset label: 6. sukupolvi, Anna Styrman lapset
links: [16]
texts: texts:
- text: | - text: |
Hilma Irene Hilma Irene
@ -574,8 +544,6 @@ blocks:
s.05.04.1894 Ruotsinpyhtää s.05.04.1894 Ruotsinpyhtää
k.07.08.1984 Ruotsinpyhtää k.07.08.1984 Ruotsinpyhtää
naimaton, lapseton naimaton, lapseton
links:
to: [16]
- text: | - text: |
Jenny Emilia Jenny Emilia
Katajala Katajala
@ -593,18 +561,16 @@ blocks:
Kaarlo Mauritz Kivinen Kaarlo Mauritz Kivinen
s.22.09.1904 Iitti s.22.09.1904 Iitti
k.22.05.1928 Iitti k.22.05.1928 Iitti
links: links: [28]
from: [28]
- layer: 6 - layer: 6
label: 6. sukupolvi, Mauno (Magnus) Styrman lapset label: 6. sukupolvi, Mauno (Magnus) Styrman lapset
links: [17]
texts: texts:
- text: | - text: |
Alma Emilia Alma Emilia
Styrman Styrman
s.19.08.1898 s.19.08.1898
k.18.02.1915 k.18.02.1915
links:
to: [17]
- text: | - text: |
Aarne Ilmari Aarne Ilmari
Styrman Styrman
@ -617,8 +583,7 @@ blocks:
Mäkelä Mäkelä
s.29.12.1908 Vehkalahti s.29.12.1908 Vehkalahti
k.23.6.2003 Kouvola k.23.6.2003 Kouvola
links: links: [27]
from: [27]
- text: | - text: |
Lauri Hilmeri Lauri Hilmeri
Styrman Styrman
@ -635,8 +600,7 @@ blocks:
Anna Lyyti Antintr Inki Anna Lyyti Antintr Inki
s.04.12.1907 Taipalsaari s.04.12.1907 Taipalsaari
k.08.10.1963 Elimäki k.08.10.1963 Elimäki
links: links: [26]
from: [26]
- text: | - text: |
Emil Edvard Emil Edvard
Styrman Styrman
@ -646,8 +610,7 @@ blocks:
Iida Sofia Virta Iida Sofia Virta
s.12.09.1917 Sysmä s.12.09.1917 Sysmä
k.xx.xx.xxxx k.xx.xx.xxxx
links: links: [25]
from: [25]
- text: | - text: |
Eino Arvid Eino Arvid
Styrman Styrman
@ -663,8 +626,7 @@ blocks:
Koskenniemi Koskenniemi
s.24.01.1894 Elimäki s.24.01.1894 Elimäki
k.13.11.1978 Kotka k.13.11.1978 Kotka
links: links: [24]
from: [24]
- text: | - text: |
Lempi Raakel Lempi Raakel
Styrman Styrman
@ -673,8 +635,7 @@ blocks:
pso 30.06.1935 pso 30.06.1935
Aarne Olavi Tuomala Aarne Olavi Tuomala
ero xx.xx.xxxx ero xx.xx.xxxx
links: links: [23]
from: [23]
- text: | - text: |
Tauno Jalmari Tauno Jalmari
Styrman Styrman
@ -688,10 +649,10 @@ blocks:
Arvi Jokinen Arvi Jokinen
15.08.1914 Elimäki 15.08.1914 Elimäki
k.26.12.1985 Elimäki k.26.12.1985 Elimäki
links: links: [22]
from: [22]
- layer: 6 - layer: 6
label: 6. sukupolvi, Juho Styrman lapset label: 6. sukupolvi, Juho Styrman lapset
links: [18]
texts: texts:
- text: | - text: |
Maire Anna-Liisa Maire Anna-Liisa
@ -699,8 +660,6 @@ blocks:
s.01.07.1915 s.01.07.1915
k.xx.xx.xxxx k.xx.xx.xxxx
asunut v1993 asunut v1993
links:
to: [18]
- text: | - text: |
Eeva Annikki Eeva Annikki
Koskivaara Koskivaara
@ -711,10 +670,10 @@ blocks:
Petäjä Petäjä
s.02.02.1915 Sippola s.02.02.1915 Sippola
k.22.04.1992 Kouvola k.22.04.1992 Kouvola
links: links: [21]
from: [21]
- layer: 6 - layer: 6
label: 6. sukupolvi, Juho Pietarinpk Kalkelan lapsi label: 6. sukupolvi, Juho Pietarinpk Kalkelan lapsi
links: [19]
texts: texts:
- text: | - text: |
Tilda Juhontr Tilda Juhontr
@ -732,18 +691,15 @@ blocks:
Niiranen Niiranen
s.01.08.1873 s.01.08.1873
k.23.10.1950 k.23.10.1950
links: links: [20]
to: [19]
from: [20]
- layer: 7 - layer: 7
label: 7. sukupolvi, Eino Valmari Mikkolan lapset label: 7. sukupolvi, Eino Valmari Mikkolan lapset
links: [35]
texts: texts:
- text: | - text: |
Else Aira Annikki Else Aira Annikki
Torvasti os.Mikkola Torvasti os.Mikkola
s.26.02.1934 s.26.02.1934
links:
to: [35]
- text: | - text: |
Raija Marjatta Raija Marjatta
Mikkola Mikkola
@ -766,13 +722,12 @@ blocks:
s.29.01.1950 s.29.01.1950
- layer: 7 - layer: 7
label: 7. sukupolvi, Unto Kalevi Mikkolan lapset label: 7. sukupolvi, Unto Kalevi Mikkolan lapset
links: [34]
texts: texts:
- text: | - text: |
Eija-Liisa Inkeri Eija-Liisa Inkeri
Mikkola Mikkola
s.12.07.1959 - Elimäki s.12.07.1959 - Elimäki
links:
to: [34]
- text: | - text: |
Irma Eira Anneli Irma Eira Anneli
Mikkola Mikkola
@ -792,6 +747,7 @@ blocks:
s.17.01.1961 s.17.01.1961
- layer: 7 - layer: 7
label: 7.sukupolvi, Ida Taavilan/Kalle Kivisen lapset label: 7.sukupolvi, Ida Taavilan/Kalle Kivisen lapset
links: [33]
texts: texts:
- text: | - text: |
Valde Rudolf Valde Rudolf
@ -805,9 +761,7 @@ blocks:
Aili Peltonen Aili Peltonen
s.18.03.1902 s.18.03.1902
k.09.09.1971 k.09.09.1971
links: links: [35a] # 35 exists???
to: [33]
from: [35a] # 35 exists???
- text: | - text: |
Kaarlo Mauritz Kaarlo Mauritz
Kivinen Kivinen
@ -822,6 +776,7 @@ blocks:
täälle 28.02.1931 täälle 28.02.1931
- layer: 7 - layer: 7
label: 7.sukupolvi, Anton Styrman myöh Höysti lapsi label: 7.sukupolvi, Anton Styrman myöh Höysti lapsi
links: [32]
texts: texts:
- text: | - text: |
Elsa Maria Elsa Maria
@ -838,11 +793,10 @@ blocks:
k.19.02.1974 Kotka k.19.02.1974 Kotka
tal.hoit. Kaupunginjohtaja, tal.hoit. Kaupunginjohtaja,
Kaupunkineuvos Kaupunkineuvos
links: links: [36]
to: [32]
from: [36]
- layer: 7 - layer: 7
label: 7. sukupolvi, Hilja Maria Styrmanin tyttäret label: 7. sukupolvi, Hilja Maria Styrmanin tyttäret
links: [31]
texts: texts:
- text: | - text: |
Elsa Aallotar Hiljantr Elsa Aallotar Hiljantr
@ -855,9 +809,7 @@ blocks:
2 pso 20.2.1947 2 pso 20.2.1947
Esteri Hyvönen Esteri Hyvönen
s.07.05.1947 Pyhäjärvi s.07.05.1947 Pyhäjärvi
links: links: [37]
to: [31]
from: [37]
- text: | - text: |
Maili Margareta Maili Margareta
Höysti Höysti
@ -866,6 +818,7 @@ blocks:
kansak.opettaja kansak.opettaja
- layer: 7 - layer: 7
label: 7. sukupolvi, Impi Irene Styrman/Höysti lapsi label: 7. sukupolvi, Impi Irene Styrman/Höysti lapsi
links: [30]
texts: texts:
- text: | - text: |
Veikko Valio Veikko Valio
@ -878,11 +831,10 @@ blocks:
pso Merja Inkeri Simonsuuri pso Merja Inkeri Simonsuuri
xx.xx.1961 xx.xx.1961
s.xx.xx.xxxx s.xx.xx.xxxx
links: links: [38]
to: [30]
from: [38]
- layer: 7 - layer: 7
label: 7. sukupolvi, Martti ja Laura Höystin lapset label: 7. sukupolvi, Martti ja Laura Höystin lapset
links: [29]
texts: texts:
- text: | - text: |
Pekka Martti Uolevi Pekka Martti Uolevi
@ -893,9 +845,7 @@ blocks:
Raija Kyllikki Laaksonen Raija Kyllikki Laaksonen
s.08.02.1935 Elimäki s.08.02.1935 Elimäki
k. k.
links: links: [39]
to: [29]
from: [39]
- text: | - text: |
Sakari Aarre Antero Sakari Aarre Antero
Höysti Höysti
@ -905,8 +855,7 @@ blocks:
Birgitta Anna Haddas Birgitta Anna Haddas
s.09.12.1944 Liljendal s.09.12.1944 Liljendal
k. k.
links: links: [40]
from: [40]
- text: | - text: |
Markku Jukka Tapani Markku Jukka Tapani
Höysti Höysti
@ -929,6 +878,7 @@ blocks:
k. k.
- layer: 7 - layer: 7
label: 7. sukupolvi, Tyyne Adele Katajalan lapsi label: 7. sukupolvi, Tyyne Adele Katajalan lapsi
links: [28]
texts: texts:
- text: | - text: |
Tyyni Seija-Liisa Tyyni Seija-Liisa
@ -939,19 +889,16 @@ blocks:
Kuningas Kuningas
s.31.03.1927 Säkkijärvi s.31.03.1927 Säkkijärvi
k.xx.xx.xxxx k.xx.xx.xxxx
links: links: [41]
to: [28]
from: [41]
- layer: 7 - layer: 7
label: 7. sukupolvi, Aarne Ilmari Styrmanin myöh. Varavan lapset label: 7. sukupolvi, Aarne Ilmari Styrmanin myöh. Varavan lapset
links: [27]
texts: texts:
- text: | - text: |
Armi Anelma Armi Anelma
Styrman Styrman
s.07.08.1929 Elimäki s.07.08.1929 Elimäki
k.07.08.1933 Elimäki k.07.08.1933 Elimäki
links:
to: [27]
- text: | - text: |
Anna-Liisa Anna-Liisa
Styrman Styrman
@ -963,8 +910,7 @@ blocks:
Timo-Simo Laherto Timo-Simo Laherto
s. 27.11.1935 Helsinki s. 27.11.1935 Helsinki
k. 03.03.2001 Kouvola k. 03.03.2001 Kouvola
links: links: [42]
from: [42]
- text: | - text: |
Seija Marjatta Seija Marjatta
Varava Varava
@ -982,8 +928,7 @@ blocks:
3 pso Matti Juhani 3 pso Matti Juhani
Nykänen Nykänen
s.03.08.1942 (ero) s.03.08.1942 (ero)
links: links: [43]
from: [43]
- text: | - text: |
Aila Sisko Irmeli Aila Sisko Irmeli
Varava Varava
@ -993,18 +938,16 @@ blocks:
Juhani Pitkänen Juhani Pitkänen
s.21.07.1941 Kouvola s.21.07.1941 Kouvola
k.24.05.2022 Kouvola k.24.05.2022 Kouvola
links: links: [44]
from: [44]
- layer: 7 - layer: 7
label: 7. sukupolvi, Lauri Hilmeri Styrman, myöh. Penttilän lapset label: 7. sukupolvi, Lauri Hilmeri Styrman, myöh. Penttilän lapset
links: [26]
texts: texts:
- text: | - text: |
Lea Anneli Lea Anneli
Penttilä Penttilä
s.12.07.1933 Elimäki s.12.07.1933 Elimäki
k.xx.xx.xxxx k.xx.xx.xxxx
links:
to: [26]
- text: | - text: |
Jouko Lauri Kalevi Jouko Lauri Kalevi
Penttilä Penttilä
@ -1016,8 +959,7 @@ blocks:
Ampuja Ampuja
s.23.06.1936 Vahviala s.23.06.1936 Vahviala
muutti 27.10.1960 Iittiin muutti 27.10.1960 Iittiin
links: links: [45]
from: [45]
- text: | - text: |
Jorma Tauno Jorma Tauno
Penttilä Penttilä
@ -1037,10 +979,10 @@ blocks:
s.26.06.1940 Kauhajoki s.26.06.1940 Kauhajoki
k.xx.xx.xxxx k.xx.xx.xxxx
(ero 04.06.1984) (ero 04.06.1984)
links: links: [46]
from: [46]
- layer: 7 - layer: 7
label: 7 .sukupolvi, Emil Edvard Styrmanin lapset label: 7 .sukupolvi, Emil Edvard Styrmanin lapset
links: [25]
texts: texts:
- text: | - text: |
Seppo Eemil Seppo Eemil
@ -1051,9 +993,7 @@ blocks:
Ros-Mari Synnove Ros-Mari Synnove
s.15.05.1940 Lapinjärvi s.15.05.1940 Lapinjärvi
k.07.03.xxxxxxx k.07.03.xxxxxxx
links: links: [47]
to: [25]
from: [47]
- text: | - text: |
Satu Inkeri Satu Inkeri
Styrman Styrman
@ -1073,8 +1013,7 @@ blocks:
Heikki Niilo Koivo Heikki Niilo Koivo
s.18.09.1943 Vaasa s.18.09.1943 Vaasa
k. k.
links: links: [48]
from: [48]
- text: | - text: |
Sisko Tellervo Sisko Tellervo
Styrman Styrman
@ -1089,10 +1028,10 @@ blocks:
Esa Jukka Riitala Esa Jukka Riitala
s.27.10.1946 Iitti s.27.10.1946 Iitti
k. k.
links: links: [49]
from: [49]
- layer: 7 - layer: 7
label: 7. sukupolvi, Aino ja Lauri Koskenniemen Lapset label: 7. sukupolvi, Aino ja Lauri Koskenniemen Lapset
links: [24]
texts: texts:
- text: | - text: |
Erkki Juhani Erkki Juhani
@ -1102,9 +1041,7 @@ blocks:
Pso 09.07.1955 Pso 09.07.1955
Terttu Heikuksela Terttu Heikuksela
s.13.11.1930 Elimäki s.13.11.1930 Elimäki
links: links: [50]
to: [24]
from: [50]
- text: | - text: |
Pentti Kullervo Pentti Kullervo
Koskenniemi Koskenniemi
@ -1113,8 +1050,7 @@ blocks:
pso 25.09.1960 pso 25.09.1960
Irma Marjatta Hohtela Irma Marjatta Hohtela
s.17.10.1934 Sippola s.17.10.1934 Sippola
links: links: [51]
from: [51]
- text: | - text: |
Irma Elisa Irma Elisa
Koskenniemi Koskenniemi
@ -1122,6 +1058,7 @@ blocks:
k. k.
- layer: 7 - layer: 7
label: 7. sukupolvi, Lempi Rakel Styrmanin lapset label: 7. sukupolvi, Lempi Rakel Styrmanin lapset
links: [23]
texts: texts:
- text: | - text: |
Heikki Olavi Heikki Olavi
@ -1131,9 +1068,7 @@ blocks:
Pso 25.08.1962 Pso 25.08.1962
Ulla-Maija Oksanen Ulla-Maija Oksanen
s.25.04.1939 Kymi s.25.04.1939 Kymi
links: links: [52]
to: [23]
from: [52]
- text: | - text: |
Rauno Sakari Rauno Sakari
Tuomala Tuomala
@ -1142,18 +1077,16 @@ blocks:
pso 05.12.1969 pso 05.12.1969
Seija Sinikka Seija Sinikka
s.20.03.1950 Vanaja s.20.03.1950 Vanaja
links: links: [53]
from: [53]
- layer: 7 - layer: 7
label: 7. sukupolvi, Maire ja Arvi Jokisen lapset label: 7. sukupolvi, Maire ja Arvi Jokisen lapset
links: [22]
texts: texts:
- text: | - text: |
Matti Juhani Matti Juhani
Jokinen Jokinen
s.27.12.1938 Elimäki s.27.12.1938 Elimäki
k.29.04.1939 Elimäki k.29.04.1939 Elimäki
links:
to: [22]
- text: | - text: |
Antti Juhani Antti Juhani
Jokinen Jokinen
@ -1163,8 +1096,7 @@ blocks:
Leena Marjatta Leena Marjatta
Mälkiä Mälkiä
s.11.11.1949 - s.11.11.1949 -
links: links: [54]
from: [54]
- text: | - text: |
Maija-Liisa Maija-Liisa
Jokinen Jokinen
@ -1174,8 +1106,7 @@ blocks:
Esa Suntio Esa Suntio
s.25.09.1969 - s.25.09.1969 -
ero 31.11.1984 ero 31.11.1984
links: links: [55]
from: [55]
- text: | - text: |
Kaisa Tellervo Kaisa Tellervo
Jokinen Jokinen
@ -1185,8 +1116,7 @@ blocks:
Rauno Koponen Rauno Koponen
s.22.01.1950 - Rovaniemi s.22.01.1950 - Rovaniemi
k.19.10.2022 k.19.10.2022
links: links: [56]
from: [56]
- text: | - text: |
Mikko Samuli Mikko Samuli
Jokinen Jokinen
@ -1196,8 +1126,7 @@ blocks:
Marjut Hannele Marjut Hannele
Vuorinen Vuorinen
s.19.03.1956 Elimäki s.19.03.1956 Elimäki
links: links: [57]
from: [57]
- text: | - text: |
Jukka Sakari Jukka Sakari
Jokinen Jokinen
@ -1208,8 +1137,7 @@ blocks:
Mäkelä Mäkelä
s.20.08.1958 Elimäki s.20.08.1958 Elimäki
k. k.
links: links: [58]
from: [58]
- text: | - text: |
Eeva Kaarina Eeva Kaarina
Jokinen Jokinen
@ -1220,18 +1148,16 @@ blocks:
Virtanen Virtanen
s.11.10.1948 Orimattila s.11.10.1948 Orimattila
k.15.1.2015 k.15.1.2015
links: links: [60]
from: [60]
- layer: 7 - layer: 7
label: 7. sukupolvi, Eeva Annikki Koskivaaran lapset label: 7. sukupolvi, Eeva Annikki Koskivaaran lapset
links: [21]
texts: texts:
- text: | - text: |
Heljä Marjaana Heljä Marjaana
Petäjä Petäjä
s.06.11.1954 Kouvola s.06.11.1954 Kouvola
k. k.
links:
to: [21]
- text: | - text: |
Pirkko Helena Pirkko Helena
Petäjä Petäjä
@ -1239,6 +1165,7 @@ blocks:
k. k.
- layer: 7 - layer: 7
label: 7. sukupolvi, Tilda Juhontr Kalkelan lapset label: 7. sukupolvi, Tilda Juhontr Kalkelan lapset
links: [20]
texts: texts:
- text: | - text: |
Evald Volmari Evald Volmari
@ -1252,9 +1179,7 @@ blocks:
k.15.11.1988 k.15.11.1988
muuttivat v.1935 muuttivat v.1935
Sippolaan Sippolaan
links: links: [61]
to: [20]
from: [61]
- text: | - text: |
Martta Pakkala Martta Pakkala
s.05.01.1904 s.05.01.1904
@ -1264,8 +1189,7 @@ blocks:
Ari ent.Bly Ari ent.Bly
s.26.11.1901 s.26.11.1901
k.22.10.1977 Elimäki k.22.10.1977 Elimäki
links: links: [62]
from: [62]
- text: | - text: |
Aili Elisabet Aili Elisabet
Pakkala Pakkala
@ -1298,7 +1222,6 @@ blocks:
Koivisto Koivisto
s.16.02.1906 s.16.02.1906
k.17.03.1985 Elimäki k.17.03.1985 Elimäki
links: links: [63]
from: [63]
- layer: 8 - layer: 8
label: TODO... label: TODO...

View File

@ -7,3 +7,4 @@ services:
image: puudot:latest image: puudot:latest
volumes: volumes:
- ./data:/data - ./data:/data
- ./config.yaml:/config.yaml