gxformat2.schema package#

Submodules#

gxformat2.schema.v19_09 module#

gxformat2.schema.v19_09.AnyLoader = Any#

The Any type validates for any non-null value.

class gxformat2.schema.v19_09.ArraySchema(items: Any, type_: Any, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: Saveable

attrs = frozenset({'items', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) ArraySchema[source]#

Construct this object from the result of yaml.load().

save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.BaseComment[source]#

Bases: Saveable

Base fields shared by all comment types.

class gxformat2.schema.v19_09.BaseCreator[source]#

Bases: Saveable

Base fields shared by all creator types, corresponding to schema.org Thing properties common to both Person and Organization.

class gxformat2.schema.v19_09.BaseDataParameter(optional: Any, label: Any | None = None, doc: Any | None = None, id: Any | None = None, default: Any | None = None, position: Any | None = None, format: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: BaseInputParameter

attrs = frozenset({'default', 'doc', 'format', 'id', 'label', 'optional', 'position'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) BaseDataParameter[source]#

Construct this object from the result of yaml.load().

id: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.BaseInputParameter(optional: Any, label: Any | None = None, doc: Any | None = None, id: Any | None = None, default: Any | None = None, position: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: InputParameter, HasStepPosition

attrs = frozenset({'default', 'doc', 'id', 'label', 'optional', 'position'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) BaseInputParameter[source]#

Construct this object from the result of yaml.load().

id: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.CreatorOrganization(name: Any | None = None, identifier: Any | None = None, url: Any | None = None, email: Any | None = None, image: Any | None = None, address: Any | None = None, alternateName: Any | None = None, telephone: Any | None = None, faxNumber: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: BaseCreator

An organization that created or contributed to the workflow. Corresponds to a schema.org Organization.

attrs = frozenset({'address', 'alternateName', 'class', 'email', 'faxNumber', 'identifier', 'image', 'name', 'telephone', 'url'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) CreatorOrganization[source]#

Construct this object from the result of yaml.load().

name: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

gxformat2.schema.v19_09.CreatorOrganizationTypeLoader = CreatorOrganizationType#

Discriminator for schema.org Organization creators.

class gxformat2.schema.v19_09.CreatorPerson(name: Any | None = None, identifier: Any | None = None, url: Any | None = None, email: Any | None = None, image: Any | None = None, address: Any | None = None, alternateName: Any | None = None, telephone: Any | None = None, faxNumber: Any | None = None, givenName: Any | None = None, familyName: Any | None = None, honorificPrefix: Any | None = None, honorificSuffix: Any | None = None, jobTitle: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: BaseCreator

A person who created or contributed to the workflow. Corresponds to a schema.org Person.

attrs = frozenset({'address', 'alternateName', 'class', 'email', 'familyName', 'faxNumber', 'givenName', 'honorificPrefix', 'honorificSuffix', 'identifier', 'image', 'jobTitle', 'name', 'telephone', 'url'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) CreatorPerson[source]#

Construct this object from the result of yaml.load().

name: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

gxformat2.schema.v19_09.CreatorPersonTypeLoader = CreatorPersonType#

Discriminator for schema.org Person creators.

class gxformat2.schema.v19_09.Documented[source]#

Bases: Saveable

class gxformat2.schema.v19_09.EnumSchema(symbols: Any, type_: Any, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: Saveable

Define an enumerated type.

attrs = frozenset({'symbols', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) EnumSchema[source]#

Construct this object from the result of yaml.load().

save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.FrameComment(type_: Any, position: Any | None = None, size: Any | None = None, color: Any | None = None, label: Any | None = None, title: Any | None = None, contains_steps: Any | None = None, contains_comments: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: BaseComment

A rectangular grouping box that visually contains steps and other comments.

attrs = frozenset({'color', 'contains_comments', 'contains_steps', 'label', 'position', 'size', 'title', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) FrameComment[source]#

Construct this object from the result of yaml.load().

save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.FreehandComment(type_: Any, position: Any | None = None, size: Any | None = None, color: Any | None = None, label: Any | None = None, thickness: Any | None = None, line: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: BaseComment

A freehand drawn line on the editor canvas.

attrs = frozenset({'color', 'label', 'line', 'position', 'size', 'thickness', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) FreehandComment[source]#

Construct this object from the result of yaml.load().

save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

gxformat2.schema.v19_09.GalaxyTypeLoader = GalaxyType#

Extends primitive types with the native Galaxy concepts such as datasets and collections. Normalized gxformat2 workflow input declaration spellings are data, collection, string, int, float, and boolean. Other spellings are accepted as compatibility aliases on import but normalized gxformat2 output emits the normalized spellings. data: one Galaxy dataset input. Native Galaxy data_input converts to this spelling. File: accepted alias for data, but normalized gxformat2 output emits data. Note: workflow test job YAML uses type: File to mean ‘stage this file as test input data’, which is a separate concept from workflow input declaration. collection: one Galaxy dataset collection input. Native Galaxy data_collection_input converts to this spelling. string: normalized gxformat2 spelling for native Galaxy text workflow parameters. text: accepted alias for string because native Galaxy parameter state and Galaxy tool XML terminology use text. int: normalized gxformat2 spelling for native Galaxy integer workflow parameters. integer: accepted alias for int because native Galaxy parameter state and Galaxy tool XML terminology use integer.

class gxformat2.schema.v19_09.GalaxyWorkflow(inputs: Any, outputs: Any, steps: Any, tags: Any, id: Any | None = None, label: Any | None = None, doc: Any | None = None, uuid: Any | None = None, report: Any | None = None, comments: Any | None = None, creator: Any | None = None, license: Any | None = None, release: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: Process, HasUUID

A Galaxy workflow description. This record corresponds to the description of a workflow that should be executable on a Galaxy server that includes the contained tool definitions.

The workflows API or the user interface of Galaxy instances that are of version 19.09 or newer should be able to import a document defining this record.

## A note about label field.

This is the name of the workflow in the Galaxy user interface. This is the mechanism that users will primarily identify the workflow using. Legacy support - this may also be called ‘name’ and Galaxy will consume the workflow document fine and treat this attribute correctly - however in order to validate against this workflow definition schema the attribute should be called label.

attrs = frozenset({'class', 'comments', 'creator', 'doc', 'id', 'inputs', 'label', 'license', 'outputs', 'release', 'report', 'steps', 'tags', 'uuid'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) GalaxyWorkflow[source]#

Construct this object from the result of yaml.load().

id: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.HasStepErrors[source]#

Bases: Saveable

class gxformat2.schema.v19_09.HasStepPosition[source]#

Bases: Saveable

class gxformat2.schema.v19_09.HasUUID[source]#

Bases: Saveable

class gxformat2.schema.v19_09.Identified[source]#

Bases: Saveable

class gxformat2.schema.v19_09.InputParameter[source]#

Bases: Parameter

class gxformat2.schema.v19_09.Labeled[source]#

Bases: Saveable

class gxformat2.schema.v19_09.LoadingOptions(fetcher: Fetcher | None = None, namespaces: dict[str, str] | None = None, schemas: list[str] | None = None, fileuri: str | None = None, copyfrom: LoadingOptions | None = None, original_doc: Any | None = None, addl_metadata: dict[str, str] | None = None, baseuri: str | None = None, idx: MutableMapping[str, tuple[Any, LoadingOptions]] | None = None, imports: list[str] | None = None, includes: list[str] | None = None, no_link_check: bool | None = None, container: str | None = None)[source]#

Bases: object

addl_metadata: Final[MutableMapping[str, Any]]#
baseuri: Final[str]#
cache: Final[dict[str, str | Graph | bool]]#
container: Final[str | None]#
fetcher: Final[Fetcher]#
fileuri: Final[str | None]#
property graph: Graph#

Generate a merged rdflib.Graph from all entries in self.schemas.

idx: Final[MutableMapping[str, tuple[Any, LoadingOptions]]]#
imports: Final[list[str]]#
includes: Final[list[str]]#
namespaces: Final[MutableMapping[str, str]]#
original_doc: Final[Any | None]#
rvocab: Final[dict[str, str]]#
schemas: Final[MutableSequence[str]]#
vocab: Final[dict[str, str]]#
class gxformat2.schema.v19_09.MarkdownComment(type_: Any, position: Any | None = None, size: Any | None = None, color: Any | None = None, label: Any | None = None, text: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: BaseComment

A Markdown-rendered annotation in the workflow editor.

attrs = frozenset({'color', 'label', 'position', 'size', 'text', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) MarkdownComment[source]#

Construct this object from the result of yaml.load().

save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.MinMax(min: Any, max: Any, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: Saveable

attrs = frozenset({'max', 'min'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) MinMax[source]#

Construct this object from the result of yaml.load().

save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.OutputParameter[source]#

Bases: Parameter

class gxformat2.schema.v19_09.Parameter[source]#

Bases: Labeled, Documented, Identified

Define an input or output parameter to a process.

gxformat2.schema.v19_09.PrimitiveTypeLoader = PrimitiveType#

Salad data types are based on Avro schema declarations. Refer to the [Avro schema declaration documentation](https://avro.apache.org/docs/current/spec.html#schemas) for detailed information.

null: no value boolean: a binary value int: 32-bit signed integer long: 64-bit signed integer float: single precision (32-bit) IEEE 754 floating-point number double: double precision (64-bit) IEEE 754 floating-point number string: Unicode character sequence

class gxformat2.schema.v19_09.Process[source]#

Bases: Identified, Labeled, Documented

The base executable type in CWL is the Process object defined by the document. Note that the Process object is abstract and cannot be directly executed.

class gxformat2.schema.v19_09.RecordField(name: Any, type_: Any, doc: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: Documented

A field of a record.

attrs = frozenset({'doc', 'name', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) RecordField[source]#

Construct this object from the result of yaml.load().

name: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.RecordFieldDefinition(name: Any, type_: Any, format: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: Saveable

Describes one field of a record collection input. Used in fields on a collection_type containing record (e.g. record, list:record, sample_sheet:record). Mirrors a subset of the CWL InputRecordSchema shape that Galaxy persists on DatasetCollection.fields.

attrs = frozenset({'format', 'name', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) RecordFieldDefinition[source]#

Construct this object from the result of yaml.load().

name: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.RecordSchema(type_: Any, fields: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: Saveable

attrs = frozenset({'fields', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) RecordSchema[source]#

Construct this object from the result of yaml.load().

save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.ReferencesTool[source]#

Bases: Saveable

class gxformat2.schema.v19_09.Report(markdown: Any, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: Saveable

Definition of an invocation report for this workflow. Currently the only field is ‘markdown’.

attrs = frozenset({'markdown'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) Report[source]#

Construct this object from the result of yaml.load().

save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.SampleSheetColumnDefinition(name: Any, type_: Any, optional: Any, description: Any | None = None, default_value: Any | None = None, validators: Any | None = None, restrictions: Any | None = None, suggestions: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: Saveable

Describes one column of a sample-sheet collection input. Used in column_definitions on a collection_type: sample_sheet[:<type>] workflow input.

attrs = frozenset({'default_value', 'description', 'name', 'optional', 'restrictions', 'suggestions', 'type', 'validators'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) SampleSheetColumnDefinition[source]#

Construct this object from the result of yaml.load().

name: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.Saveable[source]#

Bases: ABC

Mark classes than have a save() and fromDoc() function.

abstractmethod classmethod fromDoc(_doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) Saveable[source]#

Construct this object from the result of yaml.load().

abstractmethod save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.Sink[source]#

Bases: Saveable

class gxformat2.schema.v19_09.StepPosition(top: Any, left: Any, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: Saveable

This field specifies the location of the step’s node when rendered in the workflow editor.

attrs = frozenset({'left', 'top'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) StepPosition[source]#

Construct this object from the result of yaml.load().

save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.TextComment(type_: Any, position: Any | None = None, size: Any | None = None, color: Any | None = None, label: Any | None = None, text: Any | None = None, bold: Any | None = None, italic: Any | None = None, text_size: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: BaseComment

A plain text annotation in the workflow editor.

attrs = frozenset({'bold', 'color', 'italic', 'label', 'position', 'size', 'text', 'text_size', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) TextComment[source]#

Construct this object from the result of yaml.load().

save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.ToolShedRepository(changeset_revision: Any, name: Any, owner: Any, tool_shed: Any, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: Saveable

attrs = frozenset({'changeset_revision', 'name', 'owner', 'tool_shed'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) ToolShedRepository[source]#

Construct this object from the result of yaml.load().

name: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.WorkflowBooleanParameter(optional: Any, type_: Any, label: Any | None = None, doc: Any | None = None, id: Any | None = None, default: Any | None = None, position: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: BaseInputParameter

A boolean input parameter for a Galaxy workflow.

attrs = frozenset({'default', 'doc', 'id', 'label', 'optional', 'position', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) WorkflowBooleanParameter[source]#

Construct this object from the result of yaml.load().

id: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.WorkflowCollectionParameter(optional: Any, type_: Any, label: Any | None = None, doc: Any | None = None, id: Any | None = None, default: Any | None = None, position: Any | None = None, format: Any | None = None, collection_type: Any | None = None, column_definitions: Any | None = None, fields: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: BaseDataParameter

A collection input parameter for a Galaxy workflow - represents a dataset collection.

attrs = frozenset({'collection_type', 'column_definitions', 'default', 'doc', 'fields', 'format', 'id', 'label', 'optional', 'position', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) WorkflowCollectionParameter[source]#

Construct this object from the result of yaml.load().

id: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.WorkflowDataParameter(optional: Any, type_: Any, label: Any | None = None, doc: Any | None = None, id: Any | None = None, default: Any | None = None, position: Any | None = None, format: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: BaseDataParameter

A data input parameter for a Galaxy workflow. Represents one Galaxy dataset. Normalized gxformat2 output uses type: data. type: File is accepted as an alias, but should not be confused with workflow test job syntax where type: File means stage a file as test input data.

attrs = frozenset({'default', 'doc', 'format', 'id', 'label', 'optional', 'position', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) WorkflowDataParameter[source]#

Construct this object from the result of yaml.load().

id: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.WorkflowFloatParameter(optional: Any, min: Any, max: Any, type_: Any, label: Any | None = None, doc: Any | None = None, id: Any | None = None, default: Any | None = None, position: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: BaseInputParameter, MinMax

A float input parameter for a Galaxy workflow.

attrs = frozenset({'default', 'doc', 'id', 'label', 'max', 'min', 'optional', 'position', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) WorkflowFloatParameter[source]#

Construct this object from the result of yaml.load().

id: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.WorkflowInputParameter(optional: Any, min: Any, max: Any, type_: Any, label: Any | None = None, doc: Any | None = None, id: Any | None = None, default: Any | None = None, position: Any | None = None, format: Any | None = None, collection_type: Any | None = None, column_definitions: Any | None = None, fields: Any | None = None, restrictions: Any | None = None, suggestions: Any | None = None, restrictOnConnections: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: BaseDataParameter, MinMax

An input parameter to a Galaxy workflow. This is the catch-all type used by the Schema Salad codegen. The pydantic layer uses a discriminated union of the specific parameter types instead.

attrs = frozenset({'collection_type', 'column_definitions', 'default', 'doc', 'fields', 'format', 'id', 'label', 'max', 'min', 'optional', 'position', 'restrictOnConnections', 'restrictions', 'suggestions', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) WorkflowInputParameter[source]#

Construct this object from the result of yaml.load().

id: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.WorkflowIntegerParameter(optional: Any, min: Any, max: Any, type_: Any, label: Any | None = None, doc: Any | None = None, id: Any | None = None, default: Any | None = None, position: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: BaseInputParameter, MinMax

A scalar integer workflow parameter. Normalized gxformat2 output uses type: int. type: integer is accepted for compatibility with native Galaxy parameter state and Galaxy tool XML terminology.

attrs = frozenset({'default', 'doc', 'id', 'label', 'max', 'min', 'optional', 'position', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) WorkflowIntegerParameter[source]#

Construct this object from the result of yaml.load().

id: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.WorkflowOutputParameter(label: Any | None = None, doc: Any | None = None, id: Any | None = None, outputSource: Any | None = None, type_: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: OutputParameter

Describe an output parameter of a workflow. The parameter must be connected to one parameter defined in the workflow that will provide the value of the output parameter. It is legal to connect a WorkflowInputParameter to a WorkflowOutputParameter.

attrs = frozenset({'doc', 'id', 'label', 'outputSource', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) WorkflowOutputParameter[source]#

Construct this object from the result of yaml.load().

id: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.WorkflowStep(out: Any, id: Any | None = None, label: Any | None = None, doc: Any | None = None, position: Any | None = None, tool_id: Any | None = None, tool_shed_repository: Any | None = None, tool_version: Any | None = None, errors: Any | None = None, uuid: Any | None = None, in_: Any | None = None, state: Any | None = None, tool_state: Any | None = None, post_job_actions: Any | None = None, type_: Any | None = None, run: Any | None = None, runtime_inputs: Any | None = None, when: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: Identified, Labeled, Documented, HasStepPosition, ReferencesTool, HasStepErrors, HasUUID

This represents a non-input step a Galaxy Workflow.

# A note about state and tool_state fields.

Only one or the other should be specified. These are two ways to represent the “state” of a tool at this workflow step. Both are essentially maps from parameter names to parameter values.

tool_state is much more low-level and expects a flat dictionary with each value a JSON dump. Nested tool structures such as conditionals and repeats should have all their values in the JSON dumped string. In general tool_state may be present in workflows exported from Galaxy but shouldn’t be written by humans.

state can contained a typed map. Repeat values can be represented as YAML arrays. An alternative to representing state this way is defining inputs with default values.

attrs = frozenset({'doc', 'errors', 'id', 'in', 'label', 'out', 'position', 'post_job_actions', 'run', 'runtime_inputs', 'state', 'tool_id', 'tool_shed_repository', 'tool_state', 'tool_version', 'type', 'uuid', 'when'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) WorkflowStep[source]#

Construct this object from the result of yaml.load().

id: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.WorkflowStepInput(id: Any | None = None, source: Any | None = None, label: Any | None = None, default: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: Identified, Sink, Labeled

TODO:

attrs = frozenset({'default', 'id', 'label', 'source'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) WorkflowStepInput[source]#

Construct this object from the result of yaml.load().

id: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.WorkflowStepOutput(id: Any | None = None, add_tags: Any | None = None, change_datatype: Any | None = None, delete_intermediate_datasets: Any | None = None, hide: Any | None = None, remove_tags: Any | None = None, rename: Any | None = None, set_columns: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: Identified

Associate an output parameter of the underlying process with a workflow parameter. The workflow parameter (given in the id field) be may be used as a source to connect with input parameters of other workflow steps, or with an output parameter of the process.

A unique identifier for this workflow output parameter. This is the identifier to use in the source field of WorkflowStepInput to connect the output value to downstream parameters.

attrs = frozenset({'add_tags', 'change_datatype', 'delete_intermediate_datasets', 'hide', 'id', 'remove_tags', 'rename', 'set_columns'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) WorkflowStepOutput[source]#

Construct this object from the result of yaml.load().

id: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

gxformat2.schema.v19_09.WorkflowStepTypeLoader = WorkflowStepType#

Module types used by Galaxy steps. Galaxy’s native format allows additional types such as data_input, data_input_collection, and parameter_type but these should be represented as inputs in Format2.

tool: Run a tool. subworkflow: Run a subworkflow. pause: Pause computation on this branch of workflow until user allows it to continue. pick_value: Select the first non-null value from multiple inputs. Used to merge branches of conditional or optional workflow paths.

class gxformat2.schema.v19_09.WorkflowTextOption(value: Any, label: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: Saveable

A {value, label} option used in restrictions or suggestions on a text workflow parameter. Plain strings are also accepted in those arrays as shorthand for {value: <str>, label: <str>}.

attrs = frozenset({'label', 'value'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) WorkflowTextOption[source]#

Construct this object from the result of yaml.load().

save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

class gxformat2.schema.v19_09.WorkflowTextParameter(optional: Any, type_: Any, label: Any | None = None, doc: Any | None = None, id: Any | None = None, default: Any | None = None, position: Any | None = None, restrictions: Any | None = None, suggestions: Any | None = None, restrictOnConnections: Any | None = None, extension_fields: dict[str, Any] | None = None, loadingOptions: LoadingOptions | None = None)[source]#

Bases: BaseInputParameter

A scalar text workflow parameter. Normalized gxformat2 output uses type: string. type: text is accepted for compatibility with native Galaxy parameter state and Galaxy tool XML terminology.

attrs = frozenset({'default', 'doc', 'id', 'label', 'optional', 'position', 'restrictOnConnections', 'restrictions', 'suggestions', 'type'})#
classmethod fromDoc(doc: Any, baseuri: str, loadingOptions: LoadingOptions, docRoot: str | None = None) WorkflowTextParameter[source]#

Construct this object from the result of yaml.load().

id: str#
save(top: bool = False, base_url: str = '', relative_uris: bool = True) dict[str, Any][source]#

Convert this object to a JSON/YAML friendly dictionary.

gxformat2.schema.v19_09.convert_typing(val_type: str) str[source]#

Normalize type names to schema-salad types.

gxformat2.schema.v19_09.expand_url(url: str, base_url: str, loadingOptions: LoadingOptions, scoped_id: bool = False, vocab_term: bool = False, scoped_ref: int | None = None) str[source]#
gxformat2.schema.v19_09.extract_type(val_type: type[Any]) str[source]#

Take a type of value, and extracts the value as a string.

gxformat2.schema.v19_09.file_uri(path: str, split_frag: bool = False) str[source]#

Transform a file path into a URL with file scheme.

gxformat2.schema.v19_09.load_document(doc: Any, baseuri: str | None = None, loadingOptions: LoadingOptions | None = None) Any[source]#
gxformat2.schema.v19_09.load_document_by_string(string: Any, uri: str, loadingOptions: LoadingOptions | None = None) Any[source]#
gxformat2.schema.v19_09.load_document_by_yaml(yaml: Any, uri: str, loadingOptions: LoadingOptions | None = None) Any[source]#

Shortcut to load via a YAML object. yaml: must be from ruamel.yaml.main.YAML.load with preserve_quotes=True

gxformat2.schema.v19_09.load_document_with_metadata(doc: Any, baseuri: str | None = None, loadingOptions: LoadingOptions | None = None, addl_metadata_fields: MutableSequence[str] | None = None) Any[source]#
gxformat2.schema.v19_09.load_field(val: str | dict[str, str], fieldtype: _Loader, baseuri: str, loadingOptions: LoadingOptions, lc: list[Any] | None = None) Any[source]#

Load field.

gxformat2.schema.v19_09.parse_errors(error_message: str) tuple[str, str, str][source]#

Parse error messages from several loaders into one error message.

gxformat2.schema.v19_09.parser_info() str[source]#
gxformat2.schema.v19_09.prefix_url(url: str, namespaces: dict[str, str]) str[source]#

Expand short forms into full URLs using the given namespace dictionary.

gxformat2.schema.v19_09.save(val: Any, top: bool = True, base_url: str = '', relative_uris: bool = True) MutableMapping[str, Any] | MutableSequence[Any] | int | float | bool | str | None[source]#
gxformat2.schema.v19_09.save_relative_uri(uri: Any, base_url: str, scoped_id: bool, ref_scope: int | None, relative_uris: bool) Any[source]#

Convert any URI to a relative one, obeying the scoping rules.

gxformat2.schema.v19_09.save_with_metadata(val: Any, valLoadingOpts: LoadingOptions, top: bool = True, base_url: str = '', relative_uris: bool = True) MutableMapping[str, Any] | MutableSequence[Any] | int | float | bool | str | None[source]#

Save and set $namespaces, $schemas, $base and any other metadata fields at the top level.

gxformat2.schema.v19_09.shortname(inputid: str) str[source]#

Compute the shortname of a fully qualified identifier.

See https://w3id.org/cwl/v1.2/SchemaSalad.html#Short_names.

Module contents#

Parsers for workflows dervied from schema-salad descriptions and codegen.

Python files in this package probably shouldn’t be modified manually. See build_schema.sh for more information.