92ed6e64e1dca4b62a47b9b5cd086aba9520a760
[htsworkflow.git] / htsworkflow / util / schemas / htsworkflow.turtle
1 @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
2 @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
3 @prefix owl: <http://www.w3.org/2002/07/owl#> .
4 @prefix dc: <http://purl.org/dc/elements/1.1/> .
5 @prefix xml: <http://www.w3.org/XML/1998/namespace> .
6 @prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
7 @prefix htswlib: <http://jumpgate.caltech.edu/wiki/LibraryOntology#> .
8
9 # I'm still learning how to do modeling & validation
10 # this version is just using rdfs:Literal for
11 # any literal node.
12
13 <http://jumpgate.caltech.edu/wiki/LibraryOntology#>
14     dc:title "HTS-Workflow ontology" ;
15     a owl:Ontology .
16
17 htswlib:Class a rdfs:Class .
18
19 htswlib:IlluminaFlowcell
20     a rdfs:Class, htswlib:Class ;
21     rdfs:comment "information about a illumina flowcell" ;
22     rdfs:label "Flowcell" .
23
24 htswlib:IlluminaLane
25     a rdfs:Class, htswlib:Class ;
26     rdfs:comment "information specific to a lane in a flowcell" ;
27     rdfs:label "Lane" .
28
29 htswlib:Library
30     a rdfs:Class, htswlib:Class ;
31     rdfs:comment "a biological library that can be run on a flowcell" ;
32     rdfs:label "library" .
33
34 htswlib:Sequencer
35     a rdfs:Class, htswlib:Class;
36     rdfs:comment "an instrument that converts libraries into sequence reads" ;
37     rdfs:label "Sequencer" .
38
39 htswlib:Species
40     a rdfs:Class, htswlib:Class ;
41     rdfs:comment "What 'species' was our sample created from." ;
42     rdfs:label "Species" .
43
44 htswlib:MappedCount
45     a rdfs:Class, htswlib:Class ;
46     rdfs:comment "Count of reads with locations" ;
47     rdfs:label "Mapped locations" .
48
49 # reused properties?
50 htswlib:flowcell
51     a rdf:Property ;
52     rdfs:comment "link to our source flowcell" ;
53     rdfs:label "Flowcell" ;
54     rdfs:domain htswlib:IlluminaLane ;
55     rdfs:range htswlib:IlluminaFlowcell .
56
57 htswlib:has_lane
58     a rdf:Property ;
59     rdfs:comment "which lanes are attached to a flowcell" ;
60     rdfs:label "lanes" ;
61     # cheating, only flowcells & libraries can have lanes
62     rdfs:domain htswlib:Library ;
63     rdfs:domain htswlib:IlluminaFlowcell ;
64     rdfs:range htswlib:IlluminaLane .
65
66 htswlib:date
67     a rdf:Property ;
68     rdfs:comment "Date thing was constructed" ;
69     rdfs:label "made on" ;
70     rdfs:domain htswlib:IlluminaFlowcell ;
71     rdfs:domain htswlib:Library ;
72     rdfs:range rdfs:Literal .
73
74 htswlib:total_unique_locations
75     a rdf:Property ;
76     rdfs:comment "How many reads mapped uniquely" ;
77     rdfs:label "Unique locations" ;
78     rdfs:domain htswlib:Library ;
79     rdfs:domain htswlib:IlluminaLane ;
80     rdfs:range rdfs:Literal .
81
82 htswlib:has_mappings
83     a rdf:Property ;
84     rdfs:comment "collection of counts against sequence collections" ;
85     rdfs:label "Has mapping" ;
86     rdfs:domain htswlib:Library ;
87     rdfs:domain htswlib:IlluminaLane ;
88     rdfs:range htswlib:MappedCount .
89
90 # flowcell properties
91 htswlib:flowcell_id
92     a rdf:Property ;
93     rdfs:comment "Serial number of a flowcell, used as unique key" ;
94     rdfs:label "Flowcell ID" ;
95     rdfs:domain htswlib:IlluminaFlowcell ;
96     rdfs:range rdfs:Literal .
97
98 htswlib:flowcell_notes
99     a rdf:Property ;
100     rdfs:comment "Comments about flowcell" ;
101     rdfs:label "Notes" ;
102     rdfs:domain htswlib:IlluminaFlowcell ;
103     rdfs:range rdfs:Literal .
104
105 htswlib:control_lane
106     a rdf:Property ;
107     rdfs:comment "Control lane used for image analysis/base calling" ;
108     rdfs:label "Control Lane" ;
109     rdfs:domain htswlib:IlluminaFlowcell ;
110     rdfs:range rdfs:Literal .
111
112 htswlib:read_length
113     a rdf:Property ;
114     rdfs:comment "How many cycles did we run the sequencer for" ;
115     rdfs:label "Read length" ;
116     rdfs:domain htswlib:IlluminaFlowcell ;
117     rdfs:range rdfs:Literal .
118
119 htswlib:flowcell_type
120     a rdf:Property ;
121     rdfs:comment "What kind of flowcell, e.g. single, paired." ;
122     rdfs:label "Flowcell Type" ;
123     rdfs:domain htswlib:IlluminaFlowcell ;
124     rdfs:range rdfs:Literal .
125
126 htswlib:image_software
127     a rdf:Property ;
128     rdfs:comment "Image analysis software name." ;
129     rdfs:label "Image processor" ;
130     rdfs:domain htswlib:IlluminaFlowcell ;
131     rdfs:range rdfs:Literal .
132
133 htswlib:image_version
134     a rdf:Property ;
135     rdfs:comment "Image analysis software version identifier." ;
136     rdfs:label "Image processor version" ;
137     rdfs:domain htswlib:IlluminaFlowcell ;
138     rdfs:range rdfs:Literal .
139
140 htswlib:basecall_software
141     a rdf:Property ;
142     rdfs:comment "Base caller software name." ;
143     rdfs:label "Basecaller" ;
144     rdfs:domain htswlib:IlluminaFlowcell ;
145     rdfs:range rdfs:Literal .
146
147 htswlib:basecall_version
148     a rdf:Property ;
149     rdfs:comment "Base caller software version identifier." ;
150     rdfs:label "Basecaller Version" ;
151     rdfs:domain htswlib:IlluminaFlowcell ;
152     rdfs:range rdfs:Literal .
153
154 htswlib:alignment_software
155     a rdf:Property ;
156     rdfs:comment "Alignment software name." ;
157     rdfs:label "Alignment software" ;
158     rdfs:domain htswlib:IlluminaFlowcell ;
159     rdfs:range rdfs:Literal .
160
161 htswlib:alignment_version
162     a rdf:Property ;
163     rdfs:comment "Alignment software version identifier." ;
164     rdfs:label "Aligner" ;
165     rdfs:domain htswlib:IlluminaFlowcell ;
166     rdfs:range rdfs:Literal .
167
168 htswlib:sequenced_by
169     a rdf:Property ;
170     rdfs:comment "Which sequencer sequenced this flowcell" ;
171     rdfs:label "Sequenced By" ;
172     rdfs:domain htswlib:IlluminaFlowcell ;
173     rdfs:range htswlib:Sequencer .
174
175 htswlib:sequencer_model
176     a rdf:Property ;
177     rdfs:comment "What model of sequencer was this flowcell run on." ;
178     rdfs:label "Sequencer model" ;
179     rdfs:domain htswlib:Sequencer ;
180     rdfs:range rdfs:Literal .
181
182 htswlib:sequencer_instrument
183     a rdf:Property ;
184     rdfs:comment "Sequencer instrument identifier." ;
185     rdfs:label "Instrument ID " ;
186     rdfs:domain htswlib:Sequencer ;
187     rdfs:range rdfs:Literal .
188
189 htswlib:sequencer_name
190     a rdf:Property ;
191     rdfs:comment "Local name for sequencer." ;
192     rdfs:label "Sequencer name " ;
193     rdfs:domain htswlib:Sequencer ;
194     rdfs:range rdfs:Literal .
195
196 # lane properties
197 htswlib:status
198    a rdf:Proprety ;
199    rdfs:comment "Operators opinion of lane status, e.g. were there spots in the pictures" ;
200    rdfs:label "Status" ;
201    rdfs:domain htswlib:IlluminaLane ;
202    rdfs:range htswlib:Literal .
203
204 htswlib:cluster_estimate
205    a rdf:Proprety ;
206    rdfs:comment "Estimate of clusters per tile" ;
207    rdfs:label "Cluster Estimate" ;
208    rdfs:domain htswlib:IlluminaLane ;
209    rdfs:range htswlib:Literal .
210
211 htswlib:pM
212    a rdf:Proprety ;
213    rdfs:comment "picoMolarity" ;
214    rdfs:label "picoMolarity" ;
215    rdfs:domain htswlib:IlluminaLane ;
216    rdfs:range htswlib:Literal .
217
218
219 # library only properties
220 htswlib:library_id
221     a rdf:Property ;
222     rdfs:comment "Library unique identifier" ;
223     rdfs:label "Library ID" ;
224     rdfs:domain htswlib:Library ;
225     rdfs:range rdfs:Literal .
226
227 htswlib:name
228     a rdf:Property ;
229     rdfs:comment "human readable name" ;
230     rdfs:label "Name" ;
231     rdfs:range rdfs:Literal .
232
233 htswlib:library_type
234     a rdf:Property ;
235     rdfs:comment """what type of library are we, which is primarily
236                  determined by the type of adaptors ligated onto
237                  sequence fragments.""" ;
238     rdfs:label "Library Type" ;
239     rdfs:domain htswlib:Library ;
240     rdfs:range rdfs:Literal .
241
242 htswlib:condition
243    a rdf:Property ;
244    rdfs:comment "Describes what treatment has been applied to the cells" ;
245    rdfs:label "Condition" ;
246    rdfs:domain htswlib:Library ;
247    rdfs:range rdfs:Literal .
248
249 htswlib:stopping_point
250     a rdf:Property ;
251     rdfs:comment "Protocol stopping point" ;
252     rdfs:label "Stopping Point" ;
253     rdfs:domain htswlib:Library ;
254     rdfs:range rdfs:Literal .
255
256 htswlib:concentration
257     a rdf:Property ;
258     rdfs:comment "Concentration of sample in nanograms per microliter" ;
259     rdfs:label "Concentration" ;
260     rdfs:domain htswlib:Library ;
261     rdfs:range rdfs:Literal .
262
263 htswlib:insert_size
264     a rdf:Property ;
265     rdfs:comment "The expected size of the sample sequence" ;
266     rdfs:label "Insert Size" ;
267     rdfs:domain htswlib:Library ;
268     rdfs:range rdfs:Literal .
269
270 htswlib:gel_cut
271     a rdf:Property ;
272     rdfs:comment "The estimated fragment sizes cut from gel";
273     rdfs:label "Gel Cut" ;
274     rdfs:domain htswlib:Library ;
275     rdfs:range rdfs:Literal .
276
277 htswlib:made_by
278     a rdf:Property ;
279     rdfs:comment "Name of person who created library" ;
280     rdfs:label "Made by" ;
281     rdfs:domain htswlib:Library ;
282     rdfs:range rdfs:Literal .
283
284 htswlib:multiplex_index
285     a rdf:Property ;
286     rdfs:comment "multiplex sequence" ;
287     rdfs:label "index" ;
288     rdfs:domain htswlib:Library ;
289     rdfs:range rdfs:Literal .
290
291 htswlib:cell_line
292     a rdf:Property ;
293     rdfs:comment "Description of source material" ;
294     rdfs:label "cell line" ;
295     rdfs:domain htswlib:Library ;
296     rdfs:range rdfs:Literal .
297
298 htswlib:experiment_type
299     a rdf:Property ;
300     rdfs:comment "What type of sequencing is this. e.g. RNA-Seq, DeNovo etc." ;
301     rdfs:label "Experiment Type" ;
302     rdfs:domain htswlib:Library ;
303     rdfs:range rdfs:Literal .
304
305 htswlib:affiliation
306     a rdf:Property ;
307     rdfs:comment "Entity associated with this sample" ;
308     rdfs:label "affiliation" ;
309     rdfs:domain htswlib:Library ;
310     rdfs:range rdfs:Literal .
311
312 htswlib:species
313     a rdf:Property ;
314     rdfs:comment "Scientific name of sample species" ;
315     rdfs:label "Species" ;
316     rdfs:domain htswlib:Library ;
317     #rdfs:domain htswlib:IlluminaLane;
318     rdfs:range htswlib:Species .
319
320 htswlib:replicate
321     a rdf:Property ;
322     rdfs:comment "Which replicate this was" ;
323     rdfs:label "replicate" ;
324     rdfs:domain htswlib:Library ;
325     rdfs:range rdfs:Literal .
326
327 # lane only properties
328 htswlib:lane_number
329     a rdf:Property ;
330     rdfs:comment "Which lane were we run in" ;
331     rdfs:label "lane id" ;
332     rdfs:domain htswlib:IlluminaLane ;
333     rdfs:range rdfs:Literal .
334
335 # FIXME: should this be note?
336 htswlib:comment
337     a rdf:Property ;
338     rdfs:comment "Comment about an object" ;
339     rdfs:range rdfs:Literal .
340
341 htswlib:library
342      a rdf:Property ;
343      rdfs:comment "which library was run on this lane." ;
344      rdfs:label "Library" ;
345      rdfs:domain htswlib:IlluminaLane ;
346      rdfs:range htswlib:Library .
347
348 # species properites
349 htswlib:species_name
350      a rdf:Property ;
351      rdfs:comment "Scientific name of species" ;
352      rdfs:label "Species" ;
353      rdfs:domain htswlib:Species ;
354      rdfs:range rdfs:Literal .
355
356 # mapped count properties
357 htswlib:mapped_to
358      a rdf:Property ;
359      rdfs:comment "A sequence collection, genome, chromosome, spike in, etc.";
360      rdfs:label "Mapped to" ;
361      rdfs:domain htswlib:MappedCount ;
362      rdfs:range rdfs:Literal .
363
364 htswlib:reads
365      a rdf:Property ;
366      rdfs:comment "Number of read locations" ;
367      rdfs:label "Reads" ;
368      rdfs:domain htswlib:MappedCount ;
369      rdfs:range rdfs:Literal .