view env/lib/python3.9/site-packages/cwltool/schemas/v1.2.0-dev3/salad/schema_salad/metaschema/typedsl_res.yml @ 0:4f3585e2f14b draft default tip

"planemo upload commit 60cee0fc7c0cda8592644e1aad72851dec82c959"
author shellac
date Mon, 22 Mar 2021 18:12:50 +0000
parents
children
line wrap: on
line source

- |
  ## Domain Specific Language for types

  Fields may be tagged `typeDSL: true` in `jsonldPredicate`.  If so, the field is expanded using the
  following micro-DSL for schema salad types:

  * If the type ends with a question mark `?`, the question mark is stripped off and the type is expanded to a union with `null`
  * If the type ends with square brackets `[]` it is expanded to an array with items of the preceeding type symbol
  * The type may end with both `[]?` to indicate it is an optional array.
  * Identifier resolution is applied after type DSL expansion.

  ### Type DSL example

  Given the following schema:

  ```
- $include: typedsl_res_schema.yml
- |
  ```

  Process the following example:

  ```
- $include: typedsl_res_src.yml
- |
  ```

  This becomes:

  ```
- $include: typedsl_res_proc.yml
- |
  ```