aboutsummaryrefslogtreecommitdiff
path: root/trygvis/eda/kicad/rdf.py
diff options
context:
space:
mode:
Diffstat (limited to 'trygvis/eda/kicad/rdf.py')
-rw-r--r--trygvis/eda/kicad/rdf.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/trygvis/eda/kicad/rdf.py b/trygvis/eda/kicad/rdf.py
index 34b73e1..2984fcd 100644
--- a/trygvis/eda/kicad/rdf.py
+++ b/trygvis/eda/kicad/rdf.py
@@ -1,8 +1,19 @@
import rdflib
+from trygvis.eda import EdaException
KICAD = rdflib.Namespace("https://trygvis/purl/kicad#")
-KICAD_TYPE = rdflib.Namespace("https://trygvis/purl/kicad-type#")
+KICAD_RANDOM = rdflib.Namespace("https://trygvis/purl/kicad-random/")
KICAD_FOOTPRINT = rdflib.Namespace("https://trygvis/purl/kicad-footprints#")
# Namespace for all unknown kicad boards
KICAD_BOARD = rdflib.Namespace("https://trygvis/purl/kicad-board#")
+
+
+def gen_random(key: object):
+ s = str(key)
+
+ if len(s) == 0:
+ raise EdaException("Can't generate a random URI for empty strings.")
+
+ s = str(abs(hash(s)))
+ return KICAD_RANDOM.term(s)