--- format: html: default --- ## 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, 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, udtryk2 } -> sprog [ label="udtrykker" ] } ``` På samme måde kan *JSON-LD* være mere effektivt at behandle[^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...] [Protegé] []: https://en.wikipedia.org/wiki/Prot%C3%A9g%C3%A9_(software) "Protegé - ontologi-editor" ### Graflagring [FIXME: lidt intro til emnet...] [Oxigraph] [Oxigraph]: https://github.com/oxigraph/oxigraph "Oxigraph - effektiv RDF quad-store med SPARQL-brugerflade" ### 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] [Mermaid] [Graphviz]: https://graphviz.org/ "Graphviz - fleksibel grafvisualiseringsgenerator fra tekst-baseret kilde" [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"