-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathshexmap.ttl
More file actions
186 lines (147 loc) · 8.04 KB
/
shexmap.ttl
File metadata and controls
186 lines (147 loc) · 8.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
@prefix shexmap: <https://w3id.org/shexmap/ontology#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix dct: <http://purl.org/dc/terms/> .
@prefix schema: <https://schema.org/> .
# ─── Ontology header ──────────────────────────────────────────────────────────
<https://w3id.org/shexmap/ontology>
a owl:Ontology ;
dct:title "ShExMap Repository Ontology" ;
dct:description "OWL vocabulary for describing ShExMaps and their metadata in the ShExMap Repository." .
# ─── Classes ──────────────────────────────────────────────────────────────────
shexmap:ShExMap a owl:Class ;
rdfs:label "ShEx Map" ;
rdfs:comment "An individual ShEx schema file that contains ShExMap annotations (%%Map:{ variable %} expressions). Can participate in one or more pairings." .
shexmap:ShExMapPairing a owl:Class ;
rdfs:label "ShExMap Pairing" ;
rdfs:comment "A declared pairing of a source ShExMap and a target ShExMap that share map variables, enabling bidirectional RDF transformation." .
shexmap:ShExMapVersion a owl:Class ;
rdfs:label "ShExMap Version" ;
rdfs:comment "A specific version snapshot of a ShExMap." .
shexmap:ShExMapPairingVersion a owl:Class ;
rdfs:label "ShExMap Pairing Version" ;
rdfs:comment "A snapshot of a ShExMap Pairing, pinning specific ShExMap versions for source and target." .
shexmap:ShExSchema a owl:Class ;
rdfs:label "ShEx Schema" ;
rdfs:comment "A ShEx schema defining a set of shapes for validating RDF data." .
shexmap:CoverageReport a owl:Class ;
rdfs:label "Coverage Report" ;
rdfs:comment "Computed statistics on how many shapes in a schema have ShExMap coverage." .
# ─── ShExMap properties ───────────────────────────────────────────────────────
shexmap:fileName a owl:DatatypeProperty ;
rdfs:label "file name" ;
rdfs:comment "The filename of the ShEx file, e.g. bpfhir.shex." ;
rdfs:domain shexmap:ShExMap ;
rdfs:range xsd:string .
shexmap:fileFormat a owl:DatatypeProperty ;
rdfs:label "file format" ;
rdfs:comment "The ShEx serialisation format: shexc (default) or shexj." ;
rdfs:domain shexmap:ShExMap ;
rdfs:range xsd:string .
shexmap:mappingContent a owl:DatatypeProperty ;
rdfs:label "mapping content" ;
rdfs:comment "Inline ShExMap source text, used when the map is stored directly in the triplestore rather than as a linked file." ;
rdfs:domain shexmap:ShExMap ;
rdfs:range xsd:string .
shexmap:sampleTurtleData a owl:DatatypeProperty ;
rdfs:label "sample turtle data" ;
rdfs:comment "Sample RDF data in Turtle format for testing and demonstrating this ShExMap." ;
rdfs:domain shexmap:ShExMap ;
rdfs:range xsd:string .
shexmap:hasMapAnnotations a owl:DatatypeProperty ;
rdfs:label "has map annotations" ;
rdfs:comment "True if this ShEx file contains %%Map:{ ... %} annotation expressions." ;
rdfs:domain shexmap:ShExMap ;
rdfs:range xsd:boolean .
shexmap:mapVariable a owl:DatatypeProperty ;
rdfs:label "map variable" ;
rdfs:comment "A %%Map:{ variable %} name declared in this ShEx file. Multi-valued — one triple per variable." ;
rdfs:domain shexmap:ShExMap ;
rdfs:range xsd:string .
shexmap:hasSchema a owl:ObjectProperty ;
rdfs:label "has schema" ;
rdfs:comment "Links a ShExMap to the ShEx schema whose shapes it annotates." ;
rdfs:domain shexmap:ShExMap ;
rdfs:range shexmap:ShExSchema .
shexmap:stars a owl:DatatypeProperty ;
rdfs:label "stars" ;
rdfs:comment "Number of times this resource has been starred by users." ;
rdfs:range xsd:integer .
# ─── ShExMapPairing properties ────────────────────────────────────────────────
shexmap:sourceMap a owl:ObjectProperty ;
rdfs:label "source map" ;
rdfs:comment "The ShExMap on the source side of this pairing." ;
rdfs:domain shexmap:ShExMapPairing ;
rdfs:range shexmap:ShExMap .
shexmap:targetMap a owl:ObjectProperty ;
rdfs:label "target map" ;
rdfs:comment "The ShExMap on the target side of this pairing." ;
rdfs:domain shexmap:ShExMapPairing ;
rdfs:range shexmap:ShExMap .
shexmap:hasVersion a owl:ObjectProperty ;
rdfs:label "has version" ;
rdfs:domain shexmap:ShExMap ;
rdfs:range shexmap:ShExMapVersion .
shexmap:currentVersion a owl:ObjectProperty ;
rdfs:label "current version" ;
rdfs:domain shexmap:ShExMap ;
rdfs:range shexmap:ShExMapVersion .
shexmap:hasPairingVersion a owl:ObjectProperty ;
rdfs:label "has pairing version" ;
rdfs:domain shexmap:ShExMapPairing ;
rdfs:range shexmap:ShExMapPairingVersion .
shexmap:currentPairingVersion a owl:ObjectProperty ;
rdfs:label "current pairing version" ;
rdfs:domain shexmap:ShExMapPairing ;
rdfs:range shexmap:ShExMapPairingVersion .
shexmap:sourceMapVersion a owl:ObjectProperty ;
rdfs:label "source map version" ;
rdfs:comment "Pinned ShExMapVersion used on the source side of this pairing version." ;
rdfs:domain shexmap:ShExMapPairingVersion ;
rdfs:range shexmap:ShExMapVersion .
shexmap:targetMapVersion a owl:ObjectProperty ;
rdfs:label "target map version" ;
rdfs:comment "Pinned ShExMapVersion used on the target side of this pairing version." ;
rdfs:domain shexmap:ShExMapPairingVersion ;
rdfs:range shexmap:ShExMapVersion .
# ─── ShExMapVersion properties ───────────────────────────────────────────────
shexmap:versionNumber a owl:DatatypeProperty ;
rdfs:label "version number" ;
rdfs:comment "Monotonically increasing integer version number, starting at 1." ;
rdfs:domain shexmap:ShExMapVersion ;
rdfs:range xsd:integer .
shexmap:versionFile a owl:DatatypeProperty ;
rdfs:label "version file" ;
rdfs:comment "Relative path to the versioned ShEx file, e.g. bpdam/v2.shex." ;
rdfs:domain shexmap:ShExMapVersion ;
rdfs:range xsd:string .
shexmap:commitMessage a owl:DatatypeProperty ;
rdfs:label "commit message" ;
rdfs:comment "Optional human-readable description of what changed in this version." ;
rdfs:domain shexmap:ShExMapVersion ;
rdfs:range xsd:string .
shexmap:githubSha a owl:DatatypeProperty ;
rdfs:label "GitHub blob SHA" ;
rdfs:comment "The Git blob SHA of the harvested file as returned by the GitHub API. Used by the harvester to detect content changes on subsequent runs without re-downloading unchanged files." ;
rdfs:domain shexmap:ShExMap ;
rdfs:range xsd:string .
# ─── ShExSchema properties ────────────────────────────────────────────────────
shexmap:belongsToSchema a owl:ObjectProperty ;
rdfs:label "belongs to schema" ;
rdfs:comment "Links a shape declaration to its parent schema." ;
rdfs:range shexmap:ShExSchema .
# ─── CoverageReport properties ───────────────────────────────────────────────
shexmap:forSchema a owl:ObjectProperty ;
rdfs:domain shexmap:CoverageReport ;
rdfs:range shexmap:ShExSchema .
shexmap:totalShapes a owl:DatatypeProperty ;
rdfs:domain shexmap:CoverageReport ;
rdfs:range xsd:integer .
shexmap:mappedShapes a owl:DatatypeProperty ;
rdfs:domain shexmap:CoverageReport ;
rdfs:range xsd:integer .
shexmap:coveragePercent a owl:DatatypeProperty ;
rdfs:domain shexmap:CoverageReport ;
rdfs:range xsd:decimal .