diff options
Diffstat (limited to 'trygvis/eda/kicad/rdf.py')
-rw-r--r-- | trygvis/eda/kicad/rdf.py | 13 |
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) |