From 7002cc5e8c6c17e91d71ce25a0295bc4ac64e3e2 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Wed, 17 Apr 2024 16:29:38 +0200 Subject: reorganize graph/ -> backstage/ --- backstage/_graph_tools.qmd | 140 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 140 insertions(+) create mode 100644 backstage/_graph_tools.qmd (limited to 'backstage/_graph_tools.qmd') diff --git a/backstage/_graph_tools.qmd b/backstage/_graph_tools.qmd new file mode 100644 index 0000000..05eacf7 --- /dev/null +++ b/backstage/_graph_tools.qmd @@ -0,0 +1,140 @@ +--- +breaks: false + +--- + +# Grafredskaber + +## Grafformulering + +Teknologien "RDF" (Resource Description Framework) er en kunstsprog +til at formulere vidensgrafer. + +RDF er i sig selv abstrakt, og kan konkretiseres -- dvs. formuleres -- på flere måder. +det at "udtrykke" RDF kaldes at serialisere, +og en konkret udtryksmåde kaldes en serialisering eller en syntaks. +De mest udbredte RDF-syntakser i dag er Turtle, RDFa og JSON-LD. +(Du vil også støde på [RDF/XML] som i dag er upopulært, +men fortsat udbredt indenfor nogle software-systemer). + +RDF-syntakser kan illustreres ved en sammenligning med menneskesprog: + +```dot +digraph G { +sprog [ label="Sproget dansk" ] +udtryk1 [ label="Dansk tale" ] +udtryk2 [ label="Dansk skrift" ] +udtryk1 -> sprog [ label="udtrykker\nnuanceret" ] +udtryk2 -> sprog [ label="udtrykker" ] +} +``` + +Dansk *skrift* kan være mere effektivt at arbejde med +end dansk *tale*, +f.eks. hvis du vil søge efter et bestemt ord eller en vending i teksten. +Dansk *tale* kan dog indeholde nuancer i brugen af pauser eller intonation, +som kan være svære at medtage i dansk *skrift*. + +```dot +digraph G { +sprog [ label="Sproget RDF" ] +udtryk1 [ label="Turtle" ] +udtryk2 [ label="JSON-LD" ] +udtryk1 -> sprog [ label="udtrykker\nnuanceret" ] +udtryk2 -> sprog [ label="udtrykker" ] +} +``` + +På samme måde kan *JSON-LD* være mere effektivt til at håndtere RDF[^JSON], +men nogle semantiske nuancer kan gå tabt i denne variant, +som mere robust bevares med *Turtle*, + +[^JSON]: JSON-LD kan være særligt effektivt i kode afviklet i web-browsere, +fordi datasproget JSON er direkte afledt af kodesproget JavaScript, +som er det primære kodesprog i web-browsere). + +[RDF/XML]: https://en.wikipedia.org/wiki/RDF/XML + "" + +### Grafmodellering + +Vidensgrafer består af [FIXME: lidt intro til emnet...] + +[Ontospy] + +[SDML] + +[Protégé] + +[Ontospy]: http://lambdamusic.github.io/Ontospy/ + "Ontospy - kommandolinje tool til at undersøge og visualisere ontologier" + +[SDML]: https://sdml.io/ + "Simple Domain Modeling Language (SDML) - domænespecifikt sprog til modellering" + +[Protégé]: https://en.wikipedia.org/wiki/Prot%C3%A9g%C3%A9_(software) + "Protégé - ontologi-editor" + +### Graflagring + +[FIXME: lidt intro til emnet...] + +[Oxigraph] + +[Oxigraph]: https://github.com/oxigraph/oxigraph + "Oxigraph - effektiv RDF quad-store med SPARQL-brugerflade" + +### Grafsøgning + +[FIXME: lidt intro til emnet...] + + + + + + + + + +### Grafberegning + +[FIXME: lidt intro til emnet...] + +[Konclude] + +[EYE] + +[Konclude]: https://www.derivo.de/en/produkte/konclude.html + "Konclude - effektiv OWL 2 reasoner skrevet i C++" + +[EYE]: https://eyereasoner.github.io/eye/ + "EYE (Euler Yet another proof Engine) - fleksibel semantisk reasoner skrevet i Prolog" + +### Grafvisualisering + +[FIXME: lidt intro til emnet...] + +[Graphviz] + +[Qt Visual Graph Editor] + +[Graphviz Online] + +[Mermaid] + +[awesome Graphviz] + +[Graphviz]: https://graphviz.org/ + "Graphviz - fleksibel grafvisualiseringsgenerator fra tekst-baseret kilde" + +[Graphviz Online]: https://dreampuf.github.io/GraphvizOnline/ + "Graphviz Online - Web-based Graphviz editor" + +[Qt Visual Graph Editor]: https://github.com/ArsMasiuk/qvge + "Qt Visual Graph Editor - Grafisk brugerflade til Graphviz" + +[Mermaid]: https://mermaid.js.org/ + "Mermaid - web-baseret grafvisualiseringsgenerator fra tekst-baseret kilde" + +[awesome Graphviz]: https://codefreezr.github.io/awesome-graphviz/ + "Awesome Graphviz - curated list of Graphviz tools and documentation" -- cgit v1.2.3