1
1
{
2
- "title" : " The smartAPI extension to OpenAPI 3.0." ,
3
- "id" : " http://smart-api.info/schema/smartapi-oas3.0.0.json#" ,
4
- "$schema" : " http://json-schema.org/draft-04/schema#" ,
5
- "type" : " object" ,
6
- "description" : " This is the root document object of the smartAPI definition file." ,
7
- "properties" : {
8
- "x-externalResources" : {
9
- "type" : " array" ,
10
- "items" : {
11
- "$ref" : " #/definitions/externalResource"
12
- }
13
- }
14
- },
15
- "definitions" : {
16
- "info" : {
17
- "properties" : {
18
- "x-otherContacts" : {
2
+ "title" : " The smartAPI extension to OpenAPI 3.0." ,
3
+ "id" : " http://smart-api.info/schema/smartapi-oas3.0.0.json#" ,
4
+ "$schema" : " http://json-schema.org/draft-06/schema#" ,
5
+ "type" : " object" ,
6
+ "description" : " This is the root document object of the smartAPI definition file." ,
7
+ "properties" : {
8
+ "x-externalResources" : {
19
9
"type" : " array" ,
20
10
"items" : {
21
- "$ref" : " #/definitions/contact "
11
+ "$ref" : " #/definitions/externalResource "
22
12
}
23
- },
24
- "x-accessRestriction" : {
25
- "type" : " string" ,
26
- "enum" : [
27
- " none" ,
28
- " limited" ,
29
- " fee"
30
- ],
31
- "description" : " Indicate whether there are restrictions to using the API. Values to use: none, limited, fee."
32
- },
33
- "x-implementationLanguage" : {
34
- "type" : " string" ,
35
- "description" : " API Implementation Language"
36
- }
37
- }
38
- },
39
- "contact" : {
40
- "properties" : {
41
- "x-role" : {
42
- "type" : " string" ,
43
- "enum" : [
44
- " responsible organization" ,
45
- " responsible developer" ,
46
- " contributor" ,
47
- " support"
48
- ],
49
- },
50
- "x-id" : {
51
- "type" : " string" ,
52
- "description" : " A resolvable HTTP URI that uniqely identifies the contact (e.g. orcid id github id)"
53
- }
54
- }
55
- },
56
- "server" : {
57
- "properties" : {
58
- "x-___location" : {
59
- "type" : " string" ,
60
- "description" : " Location, city and country of the server hosting the API."
61
- },
62
- "x-maturity" : {
63
- "type" : " string" ,
64
- "enum" : [
65
- " development" ,
66
- " staging" ,
67
- " production"
68
- ],
69
- }
70
- }
71
- },
72
- "operation" : {
73
- "properties" : {
74
- "x-accessRestriction" : {
75
- "type" : " string" ,
76
- "description" : " Access restrictions to invoke the operation. values: none, limited, fee." ,
77
- "enum" : [
78
- " none" ,
79
- " limited" ,
80
- " fee"
81
- ]
82
- }
83
- }
84
- },
85
- "externalResource" : {
86
- "type" : " object" ,
87
- "additionalProperties" : false ,
88
- "description" : " information about external documentation" ,
89
- "required" : [
90
- " x-description" ,
91
- " x-url" ,
92
- " x-type"
93
- ],
94
- "properties" : {
95
- "x-description" : {
96
- "type" : " string" ,
97
- "description" : " A short description of the target documentation. CommonMark syntax can be used for rich text representation."
98
- },
99
- "x-url" : {
100
- "type" : " string" ,
101
- "format" : " url"
102
- },
103
- "x-type" : {
104
- "type" : " string" ,
105
- "enum" : [
106
- " api documentation" ,
107
- " website" ,
108
- " developer forum" ,
109
- " mailing list" ,
110
- " social media" ,
111
- " publication"
112
- ]
113
- }
114
- },
115
- "patternProperties" : {
116
- "^x-" : {
117
- "$ref" : " #/definitions/specificationExtension"
118
- }
119
- }
120
- },
121
- "parameter" : {
122
- "properties" : {
123
- "x-parameterType" : {
124
- "type" : " string" ,
125
- "description" : " Type of parameter, e.g. InputParameter, NumberOfResultsReturned, OffsetParameter, SortParameter."
126
- },
127
- "x-valueType" : {
128
- "type" : " array" ,
129
- "description" : " a list of semantic identifiers of the parameter from identifiers.org, e.g. [http://identifiers.org/ncbigene/]" ,
130
- "items" : {
131
- "type" : " string" ,
132
- "format" : " url"
133
- },
134
- "uniqueItems" : true
135
- }
136
- },
137
- },
138
- "mediaType" : {
139
- "properties" : {
140
- " x-responseValueType" {
141
- "$ref" : " #/definitions/responseValueType"
142
13
}
143
- }
144
- },
145
- "responseValueType" : {
146
- "properties" : {
147
- "x-path" : {
148
- "type" : " string" ,
149
- "description" : " The path, using dot notation, to the element of interest"
14
+ },
15
+ "definitions" : {
16
+ "info" : {
17
+ "properties" : {
18
+ "x-otherContacts" : {
19
+ "type" : " array" ,
20
+ "items" : {
21
+ "$ref" : " #/definitions/contact"
22
+ }
23
+ },
24
+ "x-accessRestriction" : {
25
+ "type" : " string" ,
26
+ "enum" : [
27
+ " none" ,
28
+ " limited" ,
29
+ " fee"
30
+ ],
31
+ "description" : " Indicate whether there are restrictions to using the API. Values to use: none, limited, fee."
32
+ },
33
+ "x-implementationLanguage" : {
34
+ "type" : " string" ,
35
+ "description" : " API Implementation Language"
36
+ }
37
+ }
38
+ },
39
+ "contact" : {
40
+ "properties" : {
41
+ "x-role" : {
42
+ "type" : " string" ,
43
+ "enum" : [
44
+ " responsible organization" ,
45
+ " responsible developer" ,
46
+ " contributor" ,
47
+ " support"
48
+ ]
49
+ },
50
+ "x-id" : {
51
+ "type" : " string" ,
52
+ "description" : " A resolvable HTTP URI that uniqely identifies the contact (e.g. orcid id github id)"
53
+ }
54
+ }
55
+ },
56
+ "server" : {
57
+ "properties" : {
58
+ "x-___location" : {
59
+ "type" : " string" ,
60
+ "description" : " Location, city and country of the server hosting the API."
61
+ },
62
+ "x-maturity" : {
63
+ "type" : " string" ,
64
+ "enum" : [
65
+ " development" ,
66
+ " staging" ,
67
+ " production"
68
+ ]
69
+ }
70
+ }
71
+ },
72
+ "operation" : {
73
+ "properties" : {
74
+ "x-accessRestriction" : {
75
+ "type" : " string" ,
76
+ "description" : " Access restrictions to invoke the operation. values: none, limited, fee." ,
77
+ "enum" : [
78
+ " none" ,
79
+ " limited" ,
80
+ " fee"
81
+ ]
82
+ }
83
+ }
84
+ },
85
+ "externalResource" : {
86
+ "type" : " object" ,
87
+ "additionalProperties" : false ,
88
+ "description" : " information about external documentation" ,
89
+ "required" : [
90
+ " x-description" ,
91
+ " x-url" ,
92
+ " x-type"
93
+ ],
94
+ "properties" : {
95
+ "x-description" : {
96
+ "type" : " string" ,
97
+ "description" : " A short description of the target documentation. CommonMark syntax can be used for rich text representation."
98
+ },
99
+ "x-url" : {
100
+ "type" : " string" ,
101
+ "format" : " url"
102
+ },
103
+ "x-type" : {
104
+ "type" : " string" ,
105
+ "enum" : [
106
+ " api documentation" ,
107
+ " website" ,
108
+ " developer forum" ,
109
+ " mailing list" ,
110
+ " social media" ,
111
+ " publication"
112
+ ]
113
+ }
114
+ },
115
+ "patternProperties" : {
116
+ "^x-" : {
117
+ "$ref" : " #/definitions/specificationExtension"
118
+ }
119
+ }
150
120
},
151
- "x-valueType" : {
152
- "type" : " string" ,
153
- "description" : " The value type as specified by a concept URI for the element of interest"
121
+ "parameter" : {
122
+ "properties" : {
123
+ "x-parameterType" : {
124
+ "type" : " string" ,
125
+ "description" : " Type of parameter, e.g. InputParameter, NumberOfResultsReturned, OffsetParameter, SortParameter."
126
+ },
127
+ "x-valueType" : {
128
+ "type" : " array" ,
129
+ "description" : " a list of semantic identifiers of the parameter from identifiers.org, e.g. [http://identifiers.org/ncbigene/]" ,
130
+ "items" : {
131
+ "type" : " string" ,
132
+ "format" : " url"
133
+ },
134
+ "uniqueItems" : true
135
+ }
136
+ }
137
+ },
138
+ "mediaType" : {
139
+ "properties" : {
140
+ "x-responseValueType" : {
141
+ "$ref" : " #/definitions/responseValueType"
142
+ }
143
+ }
144
+ },
145
+ "responseValueType" : {
146
+ "properties" : {
147
+ "x-path" : {
148
+ "type" : " string" ,
149
+ "description" : " The path, using dot notation, to the element of interest"
150
+ },
151
+ "x-valueType" : {
152
+ "type" : " string" ,
153
+ "description" : " The value type as specified by a concept URI for the element of interest"
154
+ }
155
+ }
156
+ },
157
+ "tag" : {
158
+ "x-id" : {
159
+ "type" : " string" ,
160
+ "description" : " The name of the tag. Recommend that you use URI to specify the concept."
161
+ }
154
162
}
155
- }
156
163
},
157
- "tag" : {
158
- "x-id" : {
159
- "type" : " string" ,
160
- "description" : " The name of the tag. Recommend that you use URI to specify the concept."
161
- }
162
- }
163
- },
164
- "schema" : {
165
- "properties" : {
166
- "x-url" : {
167
- "type" : " string" ,
168
- "description" : " The URL to a non-JSON schema."
169
- }
170
- }
171
- }
172
- }
164
+ "schema" : {
165
+ "properties" : {
166
+ "x-url" : {
167
+ "type" : " string" ,
168
+ "description" : " The URL to a non-JSON schema."
169
+ }
170
+ }
171
+ }
172
+ }
0 commit comments