---
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 -> 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...]
[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"