Mercurial > repos > shellac > sam_consensus_v3
diff env/lib/python3.9/site-packages/cwltool/schemas/v1.2.0-dev4/salad/schema_salad/metaschema/link_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 diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/env/lib/python3.9/site-packages/cwltool/schemas/v1.2.0-dev4/salad/schema_salad/metaschema/link_res.yml Mon Mar 22 18:12:50 2021 +0000 @@ -0,0 +1,55 @@ +- | + ## Link resolution + + The schema may designate one or more fields as link fields reference other + objects. Processing must resolve links to either absolute URIs using the + following rules: + + * If a reference URI is prefixed with `#` it is a relative + fragment identifier. It is resolved relative to the base URI by setting + or replacing the fragment portion of the base URI. + + * If a reference URI does not contain a scheme and is not prefixed with `#` + it is a path relative reference. If the reference URI contains `#` in any + position other than the first character, the reference URI must be divided + into a path portion and a fragment portion split on the first instance of + `#`. The path portion is resolved relative to the base URI by the following + rule: if the path portion of the base URI ends in a slash `/`, append the + path portion of the reference URI to the path portion of the base URI. If + the path portion of the base URI does not end in a slash, replace the final + path segment with the path portion of the reference URI. Replace the + fragment portion of the base URI with the fragment portion of the reference + URI. + + * If a reference URI begins with a namespace prefix declared in `$namespaces` + followed by a colon `:`, the prefix and colon must be replaced by the + namespace declared in `$namespaces`. + + * If a reference URI is an absolute URI consisting of a scheme and path, + no processing occurs. + + Link resolution must not affect the base URI used to resolve identifiers + and other links. + + ### Link resolution example + + Given the following schema: + + ``` +- $include: link_res_schema.yml +- | + ``` + + Process the following example: + + ``` +- $include: link_res_src.yml +- | + ``` + + This becomes: + + ``` +- $include: link_res_proc.yml +- | + ```