|
211 | 211 | },
|
212 | 212 | "title": "Log and other info"
|
213 | 213 | },
|
214 |
| - "ga4gh_wes_parameter": { |
215 |
| - "type": "object", |
216 |
| - "properties": { |
217 |
| - "name": { |
218 |
| - "type": "string", |
219 |
| - "title": "REQUIRED\nname of the parameter" |
220 |
| - }, |
221 |
| - "value": { |
222 |
| - "type": "string", |
223 |
| - "title": "OPTIONAL\nValue" |
224 |
| - }, |
225 |
| - "location": { |
226 |
| - "type": "string", |
227 |
| - "title": "REQUIRED\nlocation in long term storage, is a url specific to the implementing\nsystem. For example s3://my-object-store/file1 or gs://my-bucket/file2 or\nfile:///path/to/my/file" |
228 |
| - }, |
229 |
| - "type": { |
230 |
| - "$ref": "#/definitions/ga4gh_wes_parameter_types", |
231 |
| - "title": "REQUIRED\nType of data, \"Parameter\", \"File\" or \"Directory\"\nif used for an output all the files in the directory\nwill be copied to the storage location" |
232 |
| - } |
233 |
| - }, |
234 |
| - "description": "Parameters for workflows or tasks, these are either output parameters, files, or directories, the latter two are stagged to an object store or something similar for hand back to the caller." |
235 |
| - }, |
236 |
| - "ga4gh_wes_parameter_types": { |
237 |
| - "type": "string", |
238 |
| - "enum": [ |
239 |
| - "Directory", |
240 |
| - "File", |
241 |
| - "Parameter" |
242 |
| - ], |
243 |
| - "default": "Directory", |
244 |
| - "title": "Enum for parameter types" |
245 |
| - }, |
246 | 214 | "ga4gh_wes_service_info": {
|
247 | 215 | "type": "object",
|
248 | 216 | "properties": {
|
|
387 | 355 | "title": "the logs, and other key info like timing and exit code, for each step in the workflow"
|
388 | 356 | },
|
389 | 357 | "outputs": {
|
390 |
| - "type": "array", |
391 |
| - "items": { |
392 |
| - "$ref": "#/definitions/ga4gh_wes_parameter" |
393 |
| - }, |
| 358 | + "$ref": "#/definitions/protobufStruct", |
394 | 359 | "title": "the outputs"
|
395 | 360 | }
|
396 | 361 | }
|
|
400 | 365 | "properties": {
|
401 | 366 | "workflow_descriptor": {
|
402 | 367 | "type": "string",
|
403 |
| - "title": "OPTIONAL\nthe workflow CWL or WDL document" |
| 368 | + "title": "OPTIONAL\nthe workflow CWL or WDL document, must provide either this or workflow_url" |
404 | 369 | },
|
405 | 370 | "workflow_params": {
|
406 |
| - "type": "string", |
| 371 | + "$ref": "#/definitions/protobufStruct", |
407 | 372 | "title": "REQUIRED\nthe workflow parameterization document (typically a JSON file), includes all parameterizations for the workflow including input and output file locations"
|
408 | 373 | },
|
409 | 374 | "workflow_type": {
|
|
423 | 388 | },
|
424 | 389 | "workflow_url": {
|
425 | 390 | "type": "string",
|
426 |
| - "title": "OPTIONAL\nthe workflow CWL or WDL document" |
| 391 | + "title": "OPTIONAL\nthe workflow CWL or WDL document, must provide either this or workflow_descriptor" |
427 | 392 | }
|
428 | 393 | },
|
429 | 394 | "title": "workflow request object"
|
|
462 | 427 | }
|
463 | 428 | },
|
464 | 429 | "title": "available workflow types supported by this WES"
|
| 430 | + }, |
| 431 | + "protobufListValue": { |
| 432 | + "type": "object", |
| 433 | + "properties": { |
| 434 | + "values": { |
| 435 | + "type": "array", |
| 436 | + "items": { |
| 437 | + "$ref": "#/definitions/protobufValue" |
| 438 | + }, |
| 439 | + "description": "Repeated field of dynamically typed values." |
| 440 | + } |
| 441 | + }, |
| 442 | + "description": "`ListValue` is a wrapper around a repeated field of values.\n\nThe JSON representation for `ListValue` is JSON array." |
| 443 | + }, |
| 444 | + "protobufNullValue": { |
| 445 | + "type": "string", |
| 446 | + "enum": [ |
| 447 | + "NULL_VALUE" |
| 448 | + ], |
| 449 | + "default": "NULL_VALUE", |
| 450 | + "description": "`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value." |
| 451 | + }, |
| 452 | + "protobufStruct": { |
| 453 | + "type": "object", |
| 454 | + "properties": { |
| 455 | + "fields": { |
| 456 | + "type": "object", |
| 457 | + "additionalProperties": { |
| 458 | + "$ref": "#/definitions/protobufValue" |
| 459 | + }, |
| 460 | + "description": "Unordered map of dynamically typed values." |
| 461 | + } |
| 462 | + }, |
| 463 | + "description": "`Struct` represents a structured data value, consisting of fields\nwhich map to dynamically typed values. In some languages, `Struct`\nmight be supported by a native representation. For example, in\nscripting languages like JS a struct is represented as an\nobject. The details of that representation are described together\nwith the proto support for the language.\n\nThe JSON representation for `Struct` is JSON object." |
| 464 | + }, |
| 465 | + "protobufValue": { |
| 466 | + "type": "object", |
| 467 | + "properties": { |
| 468 | + "null_value": { |
| 469 | + "$ref": "#/definitions/protobufNullValue", |
| 470 | + "description": "Represents a null value." |
| 471 | + }, |
| 472 | + "number_value": { |
| 473 | + "type": "number", |
| 474 | + "format": "double", |
| 475 | + "description": "Represents a double value." |
| 476 | + }, |
| 477 | + "string_value": { |
| 478 | + "type": "string", |
| 479 | + "description": "Represents a string value." |
| 480 | + }, |
| 481 | + "bool_value": { |
| 482 | + "type": "boolean", |
| 483 | + "format": "boolean", |
| 484 | + "description": "Represents a boolean value." |
| 485 | + }, |
| 486 | + "struct_value": { |
| 487 | + "$ref": "#/definitions/protobufStruct", |
| 488 | + "description": "Represents a structured value." |
| 489 | + }, |
| 490 | + "list_value": { |
| 491 | + "$ref": "#/definitions/protobufListValue", |
| 492 | + "description": "Represents a repeated `Value`." |
| 493 | + } |
| 494 | + }, |
| 495 | + "description": "`Value` represents a dynamically typed value which can be either\nnull, a number, a string, a boolean, a recursive struct value, or a\nlist of values. A producer of value is expected to set one of that\nvariants, absence of any variant indicates an error.\n\nThe JSON representation for `Value` is JSON value." |
465 | 496 | }
|
466 | 497 | }
|
467 | 498 | }
|
0 commit comments