PageSourceSearch

https://rdf-elixir.dev/gno-guide/

html rdf-elixir.dev collected 2026-10-03 23:19:47 UTC 27,861 bytes, 98 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en-US">
3  <head>
4    <meta charset="utf-8">
5    <meta name="viewport" content="width=device-width,initial-scale=1">
6    <title>Introduction | RDF on Elixir</title>
7    <meta name="generator" content="VuePress 1.9.3">
8    <link rel="manifest" href="/icons/manifest.json">
9    <link rel="icon" type="image/x-icon" sizes="16x16 32x32" href="/icons/favicon.ico">
10    <link rel="icon" sizes="192x192" href="/icons/favicon-192.png">
11    <link rel="apple-touch-icon" sizes="180x180" href="/icons/favicon-180-precomposed.png">
12    <meta name="description" content="Implementation of the Linked Data and Semantic Standards for Elixir">
13    <meta name="msapplication-TileImage" content="/icons/favicon-144.png">
14    <meta name="msapplication-TileColor" content="#FFFFFF">
15    <meta name="theme-color" content="#3eaf7c">
16    <meta name="apple-mobile-web-app-capable" content="yes">
17    <meta name="apple-mobile-web-app-status-bar-style" content="black">
18    
19    <link rel="preload" href="/assets/css/0.styles.e42cd381.css" as="style"><link rel="preload" href="/assets/js/app.b0c582fc.js" as="script"><link rel="preload" href="/assets/js/2.fe4a9d0f.js" as="script"><link rel="preload" href="/assets/js/9.26446602.js" as="script"><link rel="preload" href="/assets/js/3.86527ece.js" as="script"><link rel="prefetch" href="/assets/js/10.de0b8c12.js"><link rel="prefetch" href="/assets/js/11.a94ac0b4.js"><link rel="prefetch" href="/assets/js/12.a26c796d.js"><link rel="prefetch" href="/assets/js/13.75704f5d.js"><link rel="prefetch" href="/assets/js/14.cada25d2.js"><link rel="prefetch" href="/assets/js/15.e82ee55d.js"><link rel="prefetch" href="/assets/js/16.17dde813.js"><link rel="prefetch" href="/assets/js/17.d5ecaa01.js"><link rel="prefetch" href="/assets/js/18.a911055c.js"><link rel="prefetch" href="/assets/js/19.119053af.js"><link rel="prefetch" href="/assets/js/20.af1f975e.js"><link rel="prefetch" href="/assets/js/21.3960dbb7.js"><link rel="prefetch" href="/assets/js/22.579eb542.js"><link rel="prefetch" href="/assets/js/23.dbc02dfb.js"><link rel="prefetch" href="/assets/js/24.829a3f49.js"><link rel="prefetch" href="/assets/js/25.9e84add8.js"><link rel="prefetch" href="/assets/js/26.493ee8c5.js"><link rel="prefetch" href="/assets/js/27.7caa48c5.js"><link rel="prefetch" href="/assets/js/28.e66bd41f.js"><link rel="prefetch" href="/assets/js/29.d825b533.js"><link rel="prefetch" href="/assets/js/30.58f375b6.js"><link rel="prefetch" href="/assets/js/31.f36f1aab.js"><link rel="prefetch" href="/assets/js/32.8193558b.js"><link rel="prefetch" href="/assets/js/33.5cf897bc.js"><link rel="prefetch" href="/assets/js/34.a7e195a3.js"><link rel="prefetch" href="/assets/js/35.37d47c04.js"><link rel="prefetch" href="/assets/js/36.ebc2feb7.js"><link rel="prefetch" href="/assets/js/37.c17f10a0.js"><link rel="prefetch" href="/assets/js/38.963abb99.js"><link rel="prefetch" href="/assets/js/39.0883e842.js"><link rel="prefetch" href="/assets/js/4.c7606d02.js"><link rel="prefetch" href="/assets/js/40.dfb0153f.js"><link rel="prefetch" href="/assets/js/41.96a3e0aa.js"><link rel="prefetch" href="/assets/js/42.1e993712.js"><link rel="prefetch" href="/assets/js/43.f0415027.js"><link rel="prefetch" href="/assets/js/44.010cf4e6.js"><link rel="prefetch" href="/assets/js/45.4d0a4fa2.js"><link rel="prefetch" href="/assets/js/46.8ece5d83.js"><link rel="prefetch" href="/assets/js/47.fa732424.js"><link rel="prefetch" href="/assets/js/48.271a4661.js"><link rel="prefetch" href="/assets/js/49.eeb193a5.js"><link rel="prefetch" href="/assets/js/5.eda9e818.js"><link rel="prefetch" href="/assets/js/50.7b6c6289.js"><link rel="prefetch" href="/assets/js/51.c84a896d.js"><link rel="prefetch" href="/assets/js/52.962eecb4.js"><link rel="prefetch" href="/assets/js/53.a0d12ed2.js"><link rel="prefetch" href="/assets/js/54.ffb5a149.js"><link rel="prefetch" href="/assets/js/55.35034e01.js"><link rel="prefetch" href="/assets/js/56.ae034b5b.js"><link rel="prefetch" href="/assets/js/6.c11fc16c.js"><link rel="prefetch" href="/assets/js/7.387005f0.js"><link rel="prefetch" href="/assets/js/8.5ae9ed49.js">
20    <link rel="stylesheet" href="/assets/css/0.styles.e42cd381.css">
21  </head>
22  <body>
23    <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon">
23<path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><!----> <span class="site-name">RDF on Elixir</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/rdf-ex/" class="nav-link">
24  RDF.ex
25</a></div><div class="nav-item"><a href="/sparql-ex/" class="nav-link">
26  SPARQL.ex
27</a></div><div class="nav-item"><a href="/shex-ex/" class="nav-link">
28  ShEx.ex
29</a></div><div class="nav-item"><a href="/gno-guide/" aria-current="page" class="nav-link router-link-exact-active router-link-active">
30  Gno
31</a></div><div class="nav-item"><a href="/grax/" class="nav-link">
32  Grax
33</a></div><div class="nav-item"><a href="/rtc-ex/" class="nav-link">
34  RTC.ex
35</a></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="API Documentation" class="dropdown-title"><span class="title">API Documentation</span> <span class="arrow down"></span></button> <button type="button" aria-label="API Documentation" class="mobile-dropdown-title"><span class="title">API Documentation</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/rdf/" target="_blank" rel="noopener noreferrer" class="nav-link external">
36  RDF.ex
37  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/sparql/" target="_blank" rel="noopener noreferrer" class="nav-link external">
38  SPARQL.ex
39  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/sparql_client/" target="_blank" rel="noopener noreferrer" class="nav-link external">
40  SPARQL.Client
41  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/shex/" target="_blank" rel="noopener noreferrer" class="nav-link external">
42  ShEx.ex
43  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path>
43 <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/json_ld/" target="_blank" rel="noopener noreferrer" class="nav-link external">
44  JSON-LD.ex
45  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/rdf_xml/" target="_blank" rel="noopener noreferrer" class="nav-link external">
46  RDF-XML.ex
47  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/rtc/" target="_blank" rel="noopener noreferrer" class="nav-link external">
48  RTC.ex
49  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/dcatr/" target="_blank" rel="noopener noreferrer" class="nav-link external">
50  DCAT-R.ex
51  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/gno/" target="_blank" rel="noopener noreferrer" class="nav-link external">
52  Gno
53  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li></ul></div></div><div class="nav-item"><a href="/links.html" class="nav-link">
54  Links
55</a></div> <a href="https://github.com/rdf-elixir/website" target="_blank" rel="noopener noreferrer" class="repo-link">
56    GitHub
57    <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path>
57 <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/rdf-ex/" class="nav-link">
58  RDF.ex
59</a></div><div class="nav-item"><a href="/sparql-ex/" class="nav-link">
60  SPARQL.ex
61</a></div><div class="nav-item"><a href="/shex-ex/" class="nav-link">
62  ShEx.ex
63</a></div><div class="nav-item"><a href="/gno-guide/" aria-current="page" class="nav-link router-link-exact-active router-link-active">
64  Gno
65</a></div><div class="nav-item"><a href="/grax/" class="nav-link">
66  Grax
67</a></div><div class="nav-item"><a href="/rtc-ex/" class="nav-link">
68  RTC.ex
69</a></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="API Documentation" class="dropdown-title"><span class="title">API Documentation</span> <span class="arrow down"></span></button> <button type="button" aria-label="API Documentation" class="mobile-dropdown-title"><span class="title">API Documentation</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/rdf/" target="_blank" rel="noopener noreferrer" class="nav-link external">
70  RDF.ex
71  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/sparql/" target="_blank" rel="noopener noreferrer" class="nav-link external">
72  SPARQL.ex
73  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/sparql_client/" target="_blank" rel="noopener noreferrer" class="nav-link external">
74  SPARQL.Client
75  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/shex/" target="_blank" rel="noopener noreferrer" class="nav-link external">
76  ShEx.ex
77  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/json_ld/" target="_blank" rel="noopener noreferrer" class="nav-link external">
78  JSON-LD.ex
79  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound">
79<path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/rdf_xml/" target="_blank" rel="noopener noreferrer" class="nav-link external">
80  RDF-XML.ex
81  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/rtc/" target="_blank" rel="noopener noreferrer" class="nav-link external">
82  RTC.ex
83  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/dcatr/" target="_blank" rel="noopener noreferrer" class="nav-link external">
84  DCAT-R.ex
85  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://hexdocs.pm/gno/" target="_blank" rel="noopener noreferrer" class="nav-link external">
86  Gno
87  <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li></ul></div></div><div class="nav-item"><a href="/links.html" class="nav-link">
88  Links
89</a></div> <a href="https://github.com/rdf-elixir/website" target="_blank" rel="noopener noreferrer" class="repo-link">
90    GitHub
91    <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav>  <ul class="sidebar-links"><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>Gno</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/gno-guide/" aria-current="page" class="active sidebar-link">Introduction</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/gno-guide/#core-concepts" class="sidebar-link">Core Concepts</a></li><li class="sidebar-sub-header"><a href="/gno-guide/#guide-structure" class="sidebar-link">Guide Structure</a></li></ul></li><li><a href="/gno-guide/installation.html" class="sidebar-link">Installation</a></li><li><a href="/gno-guide/configuration.html" class="sidebar-link">Configuration</a></li><li><a href="/gno-guide/querying-data.html" class="sidebar-link">Querying data</a></li><li><a href="/gno-guide/managing-data.html" class="sidebar-link">Managing data</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default">
91<h1 id="introduction"><a href="#introduction" class="header-anchor">#</a> Introduction</h1> <p>Gno is a library for managing RDF datasets in SPARQL triple stores. It provides a unified API that abstracts the differences between storage backends, so you can work with your data the same way regardless of the underlying SPARQL triple store.</p> <p>Gno uses <a href="https://w3id.org/dcatr" target="_blank" rel="noopener noreferrer">DCAT-R<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> (Data Catalog Vocabulary for RDF Repositories) for its structural model. DCAT-R extends the W3C's <a href="https://www.w3.org/TR/vocab-dcat-3/" target="_blank" rel="noopener noreferrer">DCAT<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> vocabulary to describe how RDF repositories are organized internally. In practice, this means your repository structure and configuration are described in RDF itself.</p> <h2 id="core-concepts"><a href="#core-concepts" class="header-anchor">#</a> Core Concepts</h2> <h3 id="service-repository-dataset"><a href="#service-repository-dataset" class="header-anchor">#</a> Service, Repository, Dataset</h3> <p>Gno organizes data in a three-level hierarchy:</p> <ul><li>A <strong>Service</strong> is the entry point. It combines a repository with a store backend and commit operation configuration.</li> <li>A <strong>Repository</strong> is a DCAT-R catalog that contains the dataset and repository metadata.</li> <li>A <strong>Dataset</strong> contains the actual RDF data as named graphs.</li></ul> <p>Services are typically loaded from RDF configuration files (manifests) written in Turtle.</p> <h3 id="changeset-system"><a href="#changeset-system" class="header-anchor">#</a> Changeset System</h3> <p>Gno provides a structured way to express changes to RDF data. A <code>Gno.Changeset</code> declares intended changes through four actions: add, update, replace, and remove. Before applying changes, a changeset can be converted to an effective changeset that computes only the minimal changes needed based on the current state of the data.</p> <h3 id="commit-system"><a href="#commit-system" class="header-anchor">#</a> Commit System</h3> <p>The commit system applies changesets transactionally with automatic rollback on failure. It supports a middleware pipeline for extensible processing such as validation, logging, and metadata enrichment.</p> <h3 id="store-adapters"><a href="#store-adapters" class="header-anchor">#</a> Store Adapters</h3> <p>Gno supports multiple SPARQL backends through a store adapter system. Built-in adapters are available for:</p> <ul><li><strong>Apache Jena Fuseki</strong></li> <li><strong>Oxigraph</strong></li> <li><strong>QLever</strong></li> <li><strong>Ontotext GraphDB</strong></li></ul> <p>You can also configure a generic store with explicit endpoint URLs for any SPARQL 1.1-compatible backend.</p> <h2 id="guide-structure"><a href="#guide-structure" class="header-anchor">#</a> Guide Structure</h2> <p>This guide is structured into the following sections:</p> <ol><li><a href="installation">Installation</a> instructions</li> <li><a href="configuration">Configuration</a> explains the manifest system and store adapter setup</li> <li><a href="querying-data">Querying data</a> covers SPARQL queries and graph retrieval</li> <li><a href="managing-data">Managing data</a> covers data updates, changesets, and commits</li></ol> <p>A basic understanding of RDF.ex is assumed. If this is not given, please consult the <a href="/rdf-ex/">corresponding user guide</a> first. Familiarity with <a href="/sparql-ex/">SPARQL.ex</a> and <a href="/sparql-ex/sparql-client">SPARQL.Client</a> is also helpful but not required.</p></div> <footer class="page-edit"><div class="edit-link"><a href="https://github.com/rdf-elixir/website/edit/master/content/gno-guide/README.md" target="_blank" rel="noopener noreferrer">Edit this page</a> <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound">
91<path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></div> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">3/19/2026, 10:44:02 PM</span></div></footer> <div class="page-nav"><p class="inner"><!----> <span class="next"><a href="/gno-guide/installation.html">
92        Installation
93      </a>
94      →
95    </span></p></div> </main></div><div class="global-ui"><!----><!----></div></div>
96    
96<script src="/assets/js/app.b0c582fc.js" defer></script>
96<script src="/assets/js/2.fe4a9d0f.js" defer></script>
96<script src="/assets/js/9.26446602.js" defer></script>
96<script src="/assets/js/3.86527ece.js" defer></script>
96
97  </body>
98</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.