-
Notifications
You must be signed in to change notification settings - Fork 0
/
get-dtm-and-associated-info.rq
164 lines (160 loc) · 8.95 KB
/
get-dtm-and-associated-info.rq
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
prefix obo: <http://purl.obolibrary.org/obo/>
prefix dc: <http://purl.org/dc/elements/1.1/>
select ?x ?prefTerm ?title ?sourceCodeRelease ?version ?doi ?doiURL ?synopsis ?sourceCodeRepositoryUrl ?executableName ?executableUrl ?webAppUrl ?licenseName ?licenseUrl ?documentationDescription ?documentationUrl ?websiteUrl ?developerName ?pubAbout ?pubThatUsedRelease ?inputSpecLabel ?outputSpecLabel ?olympus ?uidsConc ?measureLabel
from <http://www.pitt.edu/obc/ide/apollo-sv>
from <http://www.pitt.edu/obc/ide/classes-and-indexing-instances>
from <http://www.pitt.edu/obc/ide/article-instances>
from <http://www.pitt.edu/obc/ide/article-deleted-instances>
from <http://ide.obc.io/auth>
from <http://www.pitt.edu/obc/mdc/content>
where {
?x rdf:type <http://purl.obolibrary.org/obo/APOLLO_SV_00000561> .
?x obo:IAO_0000111 ?prefTerm .
#if there is a title annotation, get the title
OPTIONAL { ?x dc:title ?title } .
#get URL to source code for this version if present
OPTIONAL { ?x obo:ERO_0000480 ?sourceCodeRelease } .
#get version if present
OPTIONAL { ?y rdf:type obo:APOLLO_SV_00000108 .
?y obo:IAO_0000219 ?x .
?y rdfs:label ?version } .
#get DOI if present
OPTIONAL { ?z rdf:type obo:OBI_0002110 .
?z obo:IAO_0000219 ?x .
?z rdfs:label ?doi } .
#get DOI URL if present
OPTIONAL { ?z rdf:type obo:OBI_0002110 .
?z obo:IAO_0000219 ?x .
?z obo:ERO_0000480 ?doiURL } .
#get human readable synopsis if present
OPTIONAL { ?x obo:APOLLO_SV_00000523 ?synopsis } .
#get source code repository information if present
OPTIONAL { ?w rdf:type obo:APOLLO_SV_00000522 .
?x obo:BFO_0000050 ?w .
?w obo:ERO_0000480 ?sourceCodeRepositoryUrl } .
#get executable(s) name if present
OPTIONAL { ?v rdf:type obo:APOLLO_SV_00000525 .
?u rdf:type obo:APOLLO_SV_00000524 .
?u obo:OBI_0000293 ?x .
?u obo:OBI_0000299 ?v .
?v rdfs:label ?executableName } .
#get executable(s) url if present
OPTIONAL { ?v rdf:type obo:APOLLO_SV_00000525 .
?u rdf:type obo:APOLLO_SV_00000524 .
?u obo:OBI_0000293 ?x .
?u obo:OBI_0000299 ?v .
?v obo:ERO_0000480 ?executableUrl } .
#get web application url if present
OPTIONAL { ?v rdf:type obo:APOLLO_SV_00000525 .
?u rdf:type obo:APOLLO_SV_00000524 .
?u obo:OBI_0000293 ?x .
?u obo:OBI_0000299 ?v .
?g obo:OBI_0000417 ?v .
?g rdf:type obo:OBIws_0000050 .
?g obo:ERO_0000480 ?webAppUrl } .
#get license name if present
OPTIONAL { ?t rdf:type obo:APOLLO_SV_00000535 .
?t obo:BFO_0000050 ?x .
?t rdfs:label ?licenseName } .
#get license URL if present
OPTIONAL { ?t rdf:type obo:APOLLO_SV_00000535 .
?t obo:BFO_0000050 ?x .
?t obo:ERO_0000480 ?licenseUrl } .
#get documentation description if present
OPTIONAL { ?s rdf:type obo:IAO_0000310 .
?s obo:IAO_0000136 ?x .
?s rdfs:label ?documentationDescription } .
#get documentation URL if present
OPTIONAL { ?s rdf:type obo:IAO_0000310 .
?s obo:IAO_0000136 ?x .
?s obo:ERO_0000480 ?documentationUrl } .
#get website URL if present
OPTIONAL { ?o rdf:type obo:FBcv_0000667 .
?o obo:IAO_0000136 ?x .
?o obo:ERO_0000480 ?websiteUrl } .
#get developer(s) if any
OPTIONAL { ?r rdf:type obo:BFO_0000040 .
?r obo:RO_0000053 ?q .
?q rdf:type obo:OMRSE_00000038 .
?p rdf:type obo:APOLLO_SV_00000008 .
?p obo:RO_0002218 ?r .
?p obo:OBI_0000299 ?x .
?r rdfs:label ?developerName } .
#get publication(s) about if any
OPTIONAL { ?n obo:IAO_0000136 ?x .
?n rdf:type obo:IAO_0000311 .
?n dc:title ?pubAbout
} .
#get publication(s) that used release if any
OPTIONAL { ?m obo:IAO_0000136 ?k . #m is about k
?k rdf:type obo:OBI_0000471 . #k is instance of study
?m rdf:type obo:IAO_0000311 . #m is instance of pub
?m dc:title ?pubThatUsedRelease . #m has label pubThatUsedRelease
?j obo:OBI_0000417 ?i . #j achieves planned objective of i
?j rdf:type obo:OBIws_0000050 . #j is instance of code execution
?j obo:BFO_0000050 ?k . #j (execution) part of k (study)
?i rdf:type obo:APOLLO_SV_00000525 . #i instance of executable
?h obo:OBI_0000299 ?i . #i specified output of h
?h rdf:type obo:APOLLO_SV_00000524 . #h instance of compiling
?h obo:OBI_0000293 ?x #h has input the dtm
} .
#get data input formats if any
OPTIONAL { ?v rdf:type obo:APOLLO_SV_00000525 . #v is executable
?u rdf:type obo:APOLLO_SV_00000524 . #u is compiling
?u obo:OBI_0000293 ?x . #compiling has source code as input
?u obo:OBI_0000299 ?v . #compiling has executable as output
?parsingPlan obo:BFO_0000050 ?v . #data parsing plan spec part of executable
?dataParsing obo:OBI_0000417 ?parsingPlan . #parsing achieves parsing plan objective
?dataParsing obo:OBI_0000417 ?inputSpec . #parsing achieves spec objective
?dataParsing rdf:type obo:APOLLO_SV_00000566 . #parsing individual is instance of parsing
?inputSpec rdf:type obo:IAO_0000098 . #input spec is data format spec
?inputSpec rdfs:label ?inputSpecLabel #input spec label
} .
#get data output formats if any
OPTIONAL { ?v rdf:type obo:APOLLO_SV_00000525 . #v is executable
?u rdf:type obo:APOLLO_SV_00000524 . #u is compiling
?u obo:OBI_0000293 ?x . #compiling has source code as input
?u obo:OBI_0000299 ?v . #compiling has executable as output
?encodingPlan obo:BFO_0000050 ?v . #data encoding plan spec part of executable
?dataEncoding obo:OBI_0000417 ?encodingPlan . #encoding achieves encoding plan objective
?dataEncoding obo:OBI_0000417 ?outputSpec . #encoding achieves spec objective
?dataEncoding rdf:type obo:OBI_0000227 . #encoding individusal is instance of encoding
?outputSpec rdf:type obo:IAO_0000098 . #output spec is data format spec
?outputSpec rdfs:label ?outputSpecLabel #output spec label
} .
#get RROO info if any
OPTIONAL { ?v rdf:type obo:APOLLO_SV_00000525 . #v is executable
?u rdf:type obo:APOLLO_SV_00000524 . #u is compiling
?u obo:OBI_0000293 ?x . #compiling has source code as input
?u obo:OBI_0000299 ?v . #compiling has executable as output
?execConc rdf:type obo:IAO_0000015 . #the executable concretization is an instance of information carrier
?v obo:RO_0000058 ?execConc . #and the executable is concretized by executable concretization
obo:IDE_0000000270 obo:RO_0000053 ?execConc . #and Olympus is the bearer of the executable concretization
obo:IDE_0000000270 rdfs:label ?olympus #get label of Olympus individual
} .
#get UIDS info if any
OPTIONAL { ?v1 rdf:type obo:APOLLO_SV_00000525 . #v1 is executable
?u1 rdf:type obo:APOLLO_SV_00000524 . #u1 is compiling
?u1 obo:OBI_0000293 ?x . #compiling has source code as input
?u1 obo:OBI_0000299 ?v1 . #compiling has executable as output
?execConc1 rdf:type obo:IAO_0000015 . #the executable concretization is an instance of information carrier
?v1 obo:RO_0000058 ?execConc1 . #and the executable is concretized by executable concretization
?execDisp obo:APOLLO_SV_00000543 ?execConc1 . #the disposition to execute the software has its basis in the concretization
?invokeDisp obo:BFO_0000169 ?execDisp . #the UIDS disp to invoke the software specifically depends on the execute disposition
?invokeDisp obo:APOLLO_SV_00000543 ?uidsConc . #the concretization of UIDS software is the basis for the invoke disposition
} .
#get control measures if any
OPTIONAL { ?v3 rdf:type obo:APOLLO_SV_00000525 . #v2 is executable
?u3 rdf:type obo:APOLLO_SV_00000524 . #u2 is compiling
?u3 obo:OBI_0000293 ?x . #compiling has source code as input
?u3 obo:OBI_0000299 ?v3 . #compiling has executable as output
?simulatingx obo:OBI_0000417 ?v3 . #simulatingx achieves objective of executable
?simulatingx rdf:type obo:APOLLO_SV_00000005 . #simulatingx is instance of process of simulating process of type X
?simulatingx obo:OBI_0000299 ?measure . #simulatingx has output an infectious disease control measure
?measure rdf:type ?measureType . #control measure is an instance of a particular type
?measureType rdfs:label ?measureLabel . #get the label on the measure type
?measureType rdfs:subClassOf* obo:APOLLO_SV_00000086 #control measure type must be a type of control measure (otherwise we get other ICE/PIE output by simulation)
} .
#filter out punned individuals
FILTER ( ?x != obo:APOLLO_SV_00000561 )
}