schema_salad.metaschema

Attributes

IdxType

save_type

strtype

inttype

floattype

booltype

None_type

Any_type

PrimitiveTypeLoader

Names of salad data types (based on Avro schema declarations).

AnyLoader

The Any type validates for any non-null value.

RecordFieldLoader

RecordSchemaLoader

EnumSchemaLoader

ArraySchemaLoader

MapSchemaLoader

UnionSchemaLoader

JsonldPredicateLoader

SpecializeDefLoader

SaladRecordFieldLoader

SaladRecordSchemaLoader

SaladEnumSchemaLoader

SaladMapSchemaLoader

SaladUnionSchemaLoader

DocumentationLoader

array_of_strtype

union_of_None_type_or_strtype_or_array_of_strtype

uri_strtype_True_False_None_None

union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype

array_of_union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype

union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype_or_array_of_union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype

typedsl_union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype_or_array_of_union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype_2

array_of_RecordFieldLoader

union_of_None_type_or_array_of_RecordFieldLoader

idmap_fields_union_of_None_type_or_array_of_RecordFieldLoader

Record_nameLoader

typedsl_Record_nameLoader_2

union_of_None_type_or_strtype

uri_union_of_None_type_or_strtype_True_False_None_None

uri_array_of_strtype_True_False_None_None

Enum_nameLoader

typedsl_Enum_nameLoader_2

uri_union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype_or_array_of_union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype_False_True_2_None

Array_nameLoader

typedsl_Array_nameLoader_2

Map_nameLoader

typedsl_Map_nameLoader_2

Union_nameLoader

typedsl_Union_nameLoader_2

union_of_None_type_or_booltype

union_of_None_type_or_inttype

uri_strtype_False_False_1_None

uri_union_of_None_type_or_strtype_False_False_None_None

uri_union_of_None_type_or_strtype_or_array_of_strtype_False_False_None_None

union_of_None_type_or_strtype_or_JsonldPredicateLoader

union_of_None_type_or_Any_type

array_of_SaladRecordFieldLoader

union_of_None_type_or_array_of_SaladRecordFieldLoader

idmap_fields_union_of_None_type_or_array_of_SaladRecordFieldLoader

uri_union_of_None_type_or_strtype_or_array_of_strtype_False_False_1_None

array_of_SpecializeDefLoader

union_of_None_type_or_array_of_SpecializeDefLoader

idmap_specialize_union_of_None_type_or_array_of_SpecializeDefLoader

Documentation_nameLoader

typedsl_Documentation_nameLoader_2

union_of_SaladRecordSchemaLoader_or_SaladEnumSchemaLoader_or_SaladMapSchemaLoader_or_SaladUnionSchemaLoader_or_DocumentationLoader

array_of_union_of_SaladRecordSchemaLoader_or_SaladEnumSchemaLoader_or_SaladMapSchemaLoader_or_SaladUnionSchemaLoader_or_DocumentationLoader

union_of_SaladRecordSchemaLoader_or_SaladEnumSchemaLoader_or_SaladMapSchemaLoader_or_SaladUnionSchemaLoader_or_DocumentationLoader_or_array_of_union_of_SaladRecordSchemaLoader_or_SaladEnumSchemaLoader_or_SaladMapSchemaLoader_or_SaladUnionSchemaLoader_or_DocumentationLoader

Classes

LoadingOptions

Saveable

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

Documented

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

RecordField

A field of a record.

RecordSchema

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

EnumSchema

Define an enumerated type.

ArraySchema

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

MapSchema

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

UnionSchema

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

JsonldPredicate

Attached to a record field to define how the parent record field is handled for

SpecializeDef

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

NamedType

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

DocType

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

SchemaDefinedType

Abstract base for schema-defined types.

SaladRecordField

A field of a record.

SaladRecordSchema

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

SaladEnumSchema

Define an enumerated type.

SaladMapSchema

Define a map type.

SaladUnionSchema

Define a union type.

Documentation

A documentation section. This type exists to facilitate self-documenting

Functions

load_field(val, fieldtype, baseuri, loadingOptions[, lc])

Load field.

extract_type(val_type)

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

convert_typing(val_type)

Normalize type names to schema-salad types.

parse_errors(error_message)

Parse error messages from several loaders into one error message.

save(val[, top, base_url, relative_uris])

save_with_metadata(val, valLoadingOpts[, top, ...])

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

expand_url(url, base_url, loadingOptions[, scoped_id, ...])

file_uri(path[, split_frag])

Transform a file path into a URL with file scheme.

prefix_url(url, namespaces)

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

save_relative_uri(uri, base_url, scoped_id, ref_scope, ...)

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

shortname(inputid)

Compute the shortname of a fully qualified identifier.

parser_info()

load_document(doc[, baseuri, loadingOptions])

load_document_with_metadata(doc[, baseuri, ...])

load_document_by_string(string, uri[, loadingOptions])

load_document_by_yaml(yaml, uri[, loadingOptions])

Shortcut to load via a YAML object.

Module Contents

schema_salad.metaschema.IdxType
class schema_salad.metaschema.LoadingOptions(fetcher=None, namespaces=None, schemas=None, fileuri=None, copyfrom=None, original_doc=None, addl_metadata=None, baseuri=None, idx=None, imports=None, includes=None, no_link_check=None, container=None)
Parameters:
idx: IdxType
fileuri: str | None
baseuri: str
namespaces: collections.abc.MutableMapping[str, str]
schemas: collections.abc.MutableSequence[str]
original_doc: Any | None
addl_metadata: collections.abc.MutableMapping[str, Any]
fetcher: schema_salad.fetcher.Fetcher
vocab: dict[str, str]
rvocab: dict[str, str]
cache: schema_salad.utils.CacheType
imports: list[str]
includes: list[str]
container: str | None
property graph: rdflib.Graph

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

Return type:

rdflib.Graph

class schema_salad.metaschema.Saveable

Bases: abc.ABC

digraph inheritanced0872ffd38 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

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

classmethod fromDoc(_doc, baseuri, loadingOptions, docRoot=None)
Abstractmethod:

Parameters:
Return type:

Saveable

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

abstract save(top=False, base_url='', relative_uris=True)

Convert this object to a JSON/YAML friendly dictionary.

Parameters:
Return type:

dict[str, Any]

schema_salad.metaschema.load_field(val, fieldtype, baseuri, loadingOptions, lc=None)

Load field.

Parameters:
Return type:

Any

schema_salad.metaschema.save_type
schema_salad.metaschema.extract_type(val_type)

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

Parameters:

val_type (type[Any])

Return type:

str

schema_salad.metaschema.convert_typing(val_type)

Normalize type names to schema-salad types.

Parameters:

val_type (str)

Return type:

str

schema_salad.metaschema.parse_errors(error_message)

Parse error messages from several loaders into one error message.

Parameters:

error_message (str)

Return type:

tuple[str, str, str]

schema_salad.metaschema.save(val, top=True, base_url='', relative_uris=True)
Parameters:
  • val (Any)

  • top (bool)

  • base_url (str)

  • relative_uris (bool)

Return type:

save_type

schema_salad.metaschema.save_with_metadata(val, valLoadingOpts, top=True, base_url='', relative_uris=True)

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

Parameters:
Return type:

save_type

schema_salad.metaschema.expand_url(url, base_url, loadingOptions, scoped_id=False, vocab_term=False, scoped_ref=None)
Parameters:
Return type:

str

schema_salad.metaschema.file_uri(path, split_frag=False)

Transform a file path into a URL with file scheme.

Parameters:
Return type:

str

schema_salad.metaschema.prefix_url(url, namespaces)

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

Parameters:
Return type:

str

schema_salad.metaschema.save_relative_uri(uri, base_url, scoped_id, ref_scope, relative_uris)

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

Parameters:
  • uri (Any)

  • base_url (str)

  • scoped_id (bool)

  • ref_scope (Optional[int])

  • relative_uris (bool)

Return type:

Any

schema_salad.metaschema.shortname(inputid)

Compute the shortname of a fully qualified identifier.

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

Parameters:

inputid (str)

Return type:

str

schema_salad.metaschema.parser_info()
Return type:

str

class schema_salad.metaschema.Documented

Bases: Saveable

digraph inheritancea7a74ee728 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "Documented" [URL="#schema_salad.metaschema.Documented",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "Documented" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

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

class schema_salad.metaschema.RecordField(name, type_, doc=None, extension_fields=None, loadingOptions=None)

Bases: Documented

digraph inheritance2c5cf93dd6 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "Documented" [URL="#schema_salad.metaschema.Documented",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "Documented" [arrowsize=0.5,style="setlinewidth(0.5)"]; "RecordField" [URL="#schema_salad.metaschema.RecordField",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="A field of a record."]; "Documented" -> "RecordField" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

A field of a record.

Parameters:
  • name (Any)

  • type_ (Any)

  • doc (Optional[Any])

  • extension_fields (Optional[dict[str, Any]])

  • loadingOptions (Optional[LoadingOptions])

class_uri = 'https://w3id.org/cwl/salad#RecordField'
doc = None
name
type_
__eq__(other)
Parameters:

other (Any)

Return type:

bool

__hash__()
Return type:

int

classmethod fromDoc(doc, baseuri, loadingOptions, docRoot=None)

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

Parameters:
Return type:

RecordField

save(top=False, base_url='', relative_uris=True)

Convert this object to a JSON/YAML friendly dictionary.

Parameters:
Return type:

dict[str, Any]

attrs
class schema_salad.metaschema.RecordSchema(type_, fields=None, extension_fields=None, loadingOptions=None)

Bases: Saveable

digraph inheritance1f940565de { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "RecordSchema" [URL="#schema_salad.metaschema.RecordSchema",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "RecordSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

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

Parameters:
  • type_ (Any)

  • fields (Optional[Any])

  • extension_fields (Optional[dict[str, Any]])

  • loadingOptions (Optional[LoadingOptions])

class_uri = 'https://w3id.org/cwl/salad#RecordSchema'
fields = None
type_
__eq__(other)
Parameters:

other (Any)

Return type:

bool

__hash__()
Return type:

int

classmethod fromDoc(doc, baseuri, loadingOptions, docRoot=None)

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

Parameters:
Return type:

RecordSchema

save(top=False, base_url='', relative_uris=True)

Convert this object to a JSON/YAML friendly dictionary.

Parameters:
Return type:

dict[str, Any]

attrs
class schema_salad.metaschema.EnumSchema(symbols, type_, name=None, extension_fields=None, loadingOptions=None)

Bases: Saveable

digraph inheritancea9629043e4 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "EnumSchema" [URL="#schema_salad.metaschema.EnumSchema",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Define an enumerated type."]; "Saveable" -> "EnumSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

Define an enumerated type.

Parameters:
  • symbols (Any)

  • type_ (Any)

  • name (Optional[Any])

  • extension_fields (Optional[dict[str, Any]])

  • loadingOptions (Optional[LoadingOptions])

class_uri = 'https://w3id.org/cwl/salad#EnumSchema'
name = None
symbols
type_
__eq__(other)
Parameters:

other (Any)

Return type:

bool

__hash__()
Return type:

int

classmethod fromDoc(doc, baseuri, loadingOptions, docRoot=None)

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

Parameters:
Return type:

EnumSchema

save(top=False, base_url='', relative_uris=True)

Convert this object to a JSON/YAML friendly dictionary.

Parameters:
Return type:

dict[str, Any]

attrs
class schema_salad.metaschema.ArraySchema(items, type_, extension_fields=None, loadingOptions=None)

Bases: Saveable

digraph inheritance40ad3e0a5b { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "ArraySchema" [URL="#schema_salad.metaschema.ArraySchema",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "ArraySchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

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

Parameters:
  • items (Any)

  • type_ (Any)

  • extension_fields (Optional[dict[str, Any]])

  • loadingOptions (Optional[LoadingOptions])

class_uri = 'https://w3id.org/cwl/salad#ArraySchema'
items
type_
__eq__(other)
Parameters:

other (Any)

Return type:

bool

__hash__()
Return type:

int

classmethod fromDoc(doc, baseuri, loadingOptions, docRoot=None)

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

Parameters:
Return type:

ArraySchema

save(top=False, base_url='', relative_uris=True)

Convert this object to a JSON/YAML friendly dictionary.

Parameters:
Return type:

dict[str, Any]

attrs
class schema_salad.metaschema.MapSchema(type_, values, extension_fields=None, loadingOptions=None)

Bases: Saveable

digraph inheritance73dd454783 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "MapSchema" [URL="#schema_salad.metaschema.MapSchema",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "MapSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

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

Parameters:
  • type_ (Any)

  • values (Any)

  • extension_fields (Optional[dict[str, Any]])

  • loadingOptions (Optional[LoadingOptions])

class_uri = 'https://w3id.org/cwl/salad#MapSchema'
type_
values
__eq__(other)
Parameters:

other (Any)

Return type:

bool

__hash__()
Return type:

int

classmethod fromDoc(doc, baseuri, loadingOptions, docRoot=None)

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

Parameters:
Return type:

MapSchema

save(top=False, base_url='', relative_uris=True)

Convert this object to a JSON/YAML friendly dictionary.

Parameters:
Return type:

dict[str, Any]

attrs
class schema_salad.metaschema.UnionSchema(names, type_, extension_fields=None, loadingOptions=None)

Bases: Saveable

digraph inheritance987c9db977 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; "UnionSchema" [URL="#schema_salad.metaschema.UnionSchema",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "UnionSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

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

Parameters:
  • names (Any)

  • type_ (Any)

  • extension_fields (Optional[dict[str, Any]])

  • loadingOptions (Optional[LoadingOptions])

class_uri = 'https://w3id.org/cwl/salad#UnionSchema'
names
type_
__eq__(other)
Parameters:

other (Any)

Return type:

bool

__hash__()
Return type:

int

classmethod fromDoc(doc, baseuri, loadingOptions, docRoot=None)

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

Parameters:
Return type:

UnionSchema

save(top=False, base_url='', relative_uris=True)

Convert this object to a JSON/YAML friendly dictionary.

Parameters:
Return type:

dict[str, Any]

attrs
class schema_salad.metaschema.JsonldPredicate(_id=None, _type=None, _container=None, identity=None, noLinkCheck=None, mapSubject=None, mapPredicate=None, refScope=None, typeDSL=None, secondaryFilesDSL=None, subscope=None, extension_fields=None, loadingOptions=None)

Bases: Saveable

digraph inheritance471ed4e28d { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "JsonldPredicate" [URL="#schema_salad.metaschema.JsonldPredicate",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Attached to a record field to define how the parent record field is handled for"]; "Saveable" -> "JsonldPredicate" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

Attached to a record field to define how the parent record field is handled for URI resolution and JSON-LD context generation.

Parameters:
  • _id (Optional[Any])

  • _type (Optional[Any])

  • _container (Optional[Any])

  • identity (Optional[Any])

  • noLinkCheck (Optional[Any])

  • mapSubject (Optional[Any])

  • mapPredicate (Optional[Any])

  • refScope (Optional[Any])

  • typeDSL (Optional[Any])

  • secondaryFilesDSL (Optional[Any])

  • subscope (Optional[Any])

  • extension_fields (Optional[dict[str, Any]])

  • loadingOptions (Optional[LoadingOptions])

class_uri = 'https://w3id.org/cwl/salad#JsonldPredicate'
identity = None
noLinkCheck = None
mapSubject = None
mapPredicate = None
refScope = None
typeDSL = None
secondaryFilesDSL = None
subscope = None
__eq__(other)
Parameters:

other (Any)

Return type:

bool

__hash__()
Return type:

int

classmethod fromDoc(doc, baseuri, loadingOptions, docRoot=None)

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

Parameters:
Return type:

JsonldPredicate

save(top=False, base_url='', relative_uris=True)

Convert this object to a JSON/YAML friendly dictionary.

Parameters:
Return type:

dict[str, Any]

attrs
class schema_salad.metaschema.SpecializeDef(specializeFrom, specializeTo, extension_fields=None, loadingOptions=None)

Bases: Saveable

digraph inheritance80113f5fcc { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SpecializeDef" [URL="#schema_salad.metaschema.SpecializeDef",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "SpecializeDef" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

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

Parameters:
  • specializeFrom (Any)

  • specializeTo (Any)

  • extension_fields (Optional[dict[str, Any]])

  • loadingOptions (Optional[LoadingOptions])

class_uri = 'https://w3id.org/cwl/salad#SpecializeDef'
specializeFrom
specializeTo
__eq__(other)
Parameters:

other (Any)

Return type:

bool

__hash__()
Return type:

int

classmethod fromDoc(doc, baseuri, loadingOptions, docRoot=None)

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

Parameters:
Return type:

SpecializeDef

save(top=False, base_url='', relative_uris=True)

Convert this object to a JSON/YAML friendly dictionary.

Parameters:
Return type:

dict[str, Any]

attrs
class schema_salad.metaschema.NamedType

Bases: Saveable

digraph inheritancebb9c2c4a34 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "NamedType" [URL="#schema_salad.metaschema.NamedType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "NamedType" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

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

class schema_salad.metaschema.DocType

Bases: Documented

digraph inheritance1fed15c982 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "DocType" [URL="#schema_salad.metaschema.DocType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Documented" -> "DocType" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Documented" [URL="#schema_salad.metaschema.Documented",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "Documented" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

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

class schema_salad.metaschema.SchemaDefinedType

Bases: DocType

digraph inheritanceb6322b30aa { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "DocType" [URL="#schema_salad.metaschema.DocType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Documented" -> "DocType" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Documented" [URL="#schema_salad.metaschema.Documented",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "Documented" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SchemaDefinedType" [URL="#schema_salad.metaschema.SchemaDefinedType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Abstract base for schema-defined types."]; "DocType" -> "SchemaDefinedType" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

Abstract base for schema-defined types.

class schema_salad.metaschema.SaladRecordField(name, type_, doc=None, jsonldPredicate=None, default=None, extension_fields=None, loadingOptions=None)

Bases: RecordField

digraph inheritancea1b912dff2 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "Documented" [URL="#schema_salad.metaschema.Documented",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "Documented" [arrowsize=0.5,style="setlinewidth(0.5)"]; "RecordField" [URL="#schema_salad.metaschema.RecordField",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="A field of a record."]; "Documented" -> "RecordField" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SaladRecordField" [URL="#schema_salad.metaschema.SaladRecordField",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="A field of a record."]; "RecordField" -> "SaladRecordField" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

A field of a record.

Parameters:
  • name (Any)

  • type_ (Any)

  • doc (Optional[Any])

  • jsonldPredicate (Optional[Any])

  • default (Optional[Any])

  • extension_fields (Optional[dict[str, Any]])

  • loadingOptions (Optional[LoadingOptions])

class_uri = 'https://w3id.org/cwl/salad#SaladRecordField'
doc = None
name
type_
jsonldPredicate = None
default = None
__eq__(other)
Parameters:

other (Any)

Return type:

bool

__hash__()
Return type:

int

classmethod fromDoc(doc, baseuri, loadingOptions, docRoot=None)

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

Parameters:
Return type:

SaladRecordField

save(top=False, base_url='', relative_uris=True)

Convert this object to a JSON/YAML friendly dictionary.

Parameters:
Return type:

dict[str, Any]

attrs
class schema_salad.metaschema.SaladRecordSchema(name, type_, inVocab=None, fields=None, doc=None, docParent=None, docChild=None, docAfter=None, jsonldPredicate=None, documentRoot=None, abstract=None, extends=None, specialize=None, extension_fields=None, loadingOptions=None)

Bases: NamedType, RecordSchema, SchemaDefinedType

digraph inheritance3af8ae8c7e { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "DocType" [URL="#schema_salad.metaschema.DocType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Documented" -> "DocType" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Documented" [URL="#schema_salad.metaschema.Documented",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "Documented" [arrowsize=0.5,style="setlinewidth(0.5)"]; "NamedType" [URL="#schema_salad.metaschema.NamedType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "NamedType" [arrowsize=0.5,style="setlinewidth(0.5)"]; "RecordSchema" [URL="#schema_salad.metaschema.RecordSchema",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "RecordSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SaladRecordSchema" [URL="#schema_salad.metaschema.SaladRecordSchema",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "NamedType" -> "SaladRecordSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "RecordSchema" -> "SaladRecordSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SchemaDefinedType" -> "SaladRecordSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SchemaDefinedType" [URL="#schema_salad.metaschema.SchemaDefinedType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Abstract base for schema-defined types."]; "DocType" -> "SchemaDefinedType" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

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

Parameters:
  • name (Any)

  • type_ (Any)

  • inVocab (Optional[Any])

  • fields (Optional[Any])

  • doc (Optional[Any])

  • docParent (Optional[Any])

  • docChild (Optional[Any])

  • docAfter (Optional[Any])

  • jsonldPredicate (Optional[Any])

  • documentRoot (Optional[Any])

  • abstract (Optional[Any])

  • extends (Optional[Any])

  • specialize (Optional[Any])

  • extension_fields (Optional[dict[str, Any]])

  • loadingOptions (Optional[LoadingOptions])

class_uri = 'https://w3id.org/cwl/salad#SaladRecordSchema'
name
inVocab = None
fields = None
type_
doc = None
docParent = None
docChild = None
docAfter = None
jsonldPredicate = None
documentRoot = None
abstract = None
extends = None
specialize = None
__eq__(other)
Parameters:

other (Any)

Return type:

bool

__hash__()
Return type:

int

classmethod fromDoc(doc, baseuri, loadingOptions, docRoot=None)

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

Parameters:
Return type:

SaladRecordSchema

save(top=False, base_url='', relative_uris=True)

Convert this object to a JSON/YAML friendly dictionary.

Parameters:
Return type:

dict[str, Any]

attrs
class schema_salad.metaschema.SaladEnumSchema(symbols, type_, name=None, inVocab=None, doc=None, docParent=None, docChild=None, docAfter=None, jsonldPredicate=None, documentRoot=None, extends=None, extension_fields=None, loadingOptions=None)

Bases: NamedType, EnumSchema, SchemaDefinedType

digraph inheritance81f83ceda7 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "DocType" [URL="#schema_salad.metaschema.DocType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Documented" -> "DocType" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Documented" [URL="#schema_salad.metaschema.Documented",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "Documented" [arrowsize=0.5,style="setlinewidth(0.5)"]; "EnumSchema" [URL="#schema_salad.metaschema.EnumSchema",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Define an enumerated type."]; "Saveable" -> "EnumSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "NamedType" [URL="#schema_salad.metaschema.NamedType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "NamedType" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SaladEnumSchema" [URL="#schema_salad.metaschema.SaladEnumSchema",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Define an enumerated type."]; "NamedType" -> "SaladEnumSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "EnumSchema" -> "SaladEnumSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SchemaDefinedType" -> "SaladEnumSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SchemaDefinedType" [URL="#schema_salad.metaschema.SchemaDefinedType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Abstract base for schema-defined types."]; "DocType" -> "SchemaDefinedType" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

Define an enumerated type.

Parameters:
  • symbols (Any)

  • type_ (Any)

  • name (Optional[Any])

  • inVocab (Optional[Any])

  • doc (Optional[Any])

  • docParent (Optional[Any])

  • docChild (Optional[Any])

  • docAfter (Optional[Any])

  • jsonldPredicate (Optional[Any])

  • documentRoot (Optional[Any])

  • extends (Optional[Any])

  • extension_fields (Optional[dict[str, Any]])

  • loadingOptions (Optional[LoadingOptions])

class_uri = 'https://w3id.org/cwl/salad#SaladEnumSchema'
name = None
inVocab = None
symbols
type_
doc = None
docParent = None
docChild = None
docAfter = None
jsonldPredicate = None
documentRoot = None
extends = None
__eq__(other)
Parameters:

other (Any)

Return type:

bool

__hash__()
Return type:

int

classmethod fromDoc(doc, baseuri, loadingOptions, docRoot=None)

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

Parameters:
Return type:

SaladEnumSchema

save(top=False, base_url='', relative_uris=True)

Convert this object to a JSON/YAML friendly dictionary.

Parameters:
Return type:

dict[str, Any]

attrs
class schema_salad.metaschema.SaladMapSchema(name, type_, values, inVocab=None, doc=None, docParent=None, docChild=None, docAfter=None, jsonldPredicate=None, documentRoot=None, extension_fields=None, loadingOptions=None)

Bases: NamedType, MapSchema, SchemaDefinedType

digraph inheritanceb18bc14448 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "DocType" [URL="#schema_salad.metaschema.DocType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Documented" -> "DocType" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Documented" [URL="#schema_salad.metaschema.Documented",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "Documented" [arrowsize=0.5,style="setlinewidth(0.5)"]; "MapSchema" [URL="#schema_salad.metaschema.MapSchema",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "MapSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "NamedType" [URL="#schema_salad.metaschema.NamedType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "NamedType" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SaladMapSchema" [URL="#schema_salad.metaschema.SaladMapSchema",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Define a map type."]; "NamedType" -> "SaladMapSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "MapSchema" -> "SaladMapSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SchemaDefinedType" -> "SaladMapSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SchemaDefinedType" [URL="#schema_salad.metaschema.SchemaDefinedType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Abstract base for schema-defined types."]; "DocType" -> "SchemaDefinedType" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

Define a map type.

Parameters:
  • name (Any)

  • type_ (Any)

  • values (Any)

  • inVocab (Optional[Any])

  • doc (Optional[Any])

  • docParent (Optional[Any])

  • docChild (Optional[Any])

  • docAfter (Optional[Any])

  • jsonldPredicate (Optional[Any])

  • documentRoot (Optional[Any])

  • extension_fields (Optional[dict[str, Any]])

  • loadingOptions (Optional[LoadingOptions])

class_uri = 'https://w3id.org/cwl/salad#SaladMapSchema'
name
inVocab = None
type_
values
doc = None
docParent = None
docChild = None
docAfter = None
jsonldPredicate = None
documentRoot = None
__eq__(other)
Parameters:

other (Any)

Return type:

bool

__hash__()
Return type:

int

classmethod fromDoc(doc, baseuri, loadingOptions, docRoot=None)

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

Parameters:
Return type:

SaladMapSchema

save(top=False, base_url='', relative_uris=True)

Convert this object to a JSON/YAML friendly dictionary.

Parameters:
Return type:

dict[str, Any]

attrs
class schema_salad.metaschema.SaladUnionSchema(name, names, type_, inVocab=None, doc=None, docParent=None, docChild=None, docAfter=None, documentRoot=None, extension_fields=None, loadingOptions=None)

Bases: NamedType, UnionSchema, DocType

digraph inheritance14f6e2c366 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "DocType" [URL="#schema_salad.metaschema.DocType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Documented" -> "DocType" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Documented" [URL="#schema_salad.metaschema.Documented",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "Documented" [arrowsize=0.5,style="setlinewidth(0.5)"]; "NamedType" [URL="#schema_salad.metaschema.NamedType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "NamedType" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SaladUnionSchema" [URL="#schema_salad.metaschema.SaladUnionSchema",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Define a union type."]; "NamedType" -> "SaladUnionSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "UnionSchema" -> "SaladUnionSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "DocType" -> "SaladUnionSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; "UnionSchema" [URL="#schema_salad.metaschema.UnionSchema",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "UnionSchema" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

Define a union type.

Parameters:
  • name (Any)

  • names (Any)

  • type_ (Any)

  • inVocab (Optional[Any])

  • doc (Optional[Any])

  • docParent (Optional[Any])

  • docChild (Optional[Any])

  • docAfter (Optional[Any])

  • documentRoot (Optional[Any])

  • extension_fields (Optional[dict[str, Any]])

  • loadingOptions (Optional[LoadingOptions])

class_uri = 'https://w3id.org/cwl/salad#SaladUnionSchema'
name
inVocab = None
names
type_
doc = None
docParent = None
docChild = None
docAfter = None
documentRoot = None
__eq__(other)
Parameters:

other (Any)

Return type:

bool

__hash__()
Return type:

int

classmethod fromDoc(doc, baseuri, loadingOptions, docRoot=None)

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

Parameters:
Return type:

SaladUnionSchema

save(top=False, base_url='', relative_uris=True)

Convert this object to a JSON/YAML friendly dictionary.

Parameters:
Return type:

dict[str, Any]

attrs
class schema_salad.metaschema.Documentation(name, type_, inVocab=None, doc=None, docParent=None, docChild=None, docAfter=None, extension_fields=None, loadingOptions=None)

Bases: NamedType, DocType

digraph inheritancebe54ef369d { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "DocType" [URL="#schema_salad.metaschema.DocType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Documented" -> "DocType" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Documentation" [URL="#schema_salad.metaschema.Documentation",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="A documentation section. This type exists to facilitate self-documenting"]; "NamedType" -> "Documentation" [arrowsize=0.5,style="setlinewidth(0.5)"]; "DocType" -> "Documentation" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Documented" [URL="#schema_salad.metaschema.Documented",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "Documented" [arrowsize=0.5,style="setlinewidth(0.5)"]; "NamedType" [URL="#schema_salad.metaschema.NamedType",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "Saveable" -> "NamedType" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Saveable" [URL="#schema_salad.metaschema.Saveable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mark classes than have a save() and fromDoc() function."]; "ABC" -> "Saveable" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

A documentation section. This type exists to facilitate self-documenting schemas but has no role in formal validation.

Parameters:
  • name (Any)

  • type_ (Any)

  • inVocab (Optional[Any])

  • doc (Optional[Any])

  • docParent (Optional[Any])

  • docChild (Optional[Any])

  • docAfter (Optional[Any])

  • extension_fields (Optional[dict[str, Any]])

  • loadingOptions (Optional[LoadingOptions])

class_uri = 'https://w3id.org/cwl/salad#Documentation'
name
inVocab = None
doc = None
docParent = None
docChild = None
docAfter = None
type_
__eq__(other)
Parameters:

other (Any)

Return type:

bool

__hash__()
Return type:

int

classmethod fromDoc(doc, baseuri, loadingOptions, docRoot=None)

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

Parameters:
Return type:

Documentation

save(top=False, base_url='', relative_uris=True)

Convert this object to a JSON/YAML friendly dictionary.

Parameters:
Return type:

dict[str, Any]

attrs
schema_salad.metaschema.strtype
schema_salad.metaschema.inttype
schema_salad.metaschema.floattype
schema_salad.metaschema.booltype
schema_salad.metaschema.None_type
schema_salad.metaschema.Any_type
schema_salad.metaschema.PrimitiveTypeLoader

Names of salad data types (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

schema_salad.metaschema.AnyLoader

The Any type validates for any non-null value.

schema_salad.metaschema.RecordFieldLoader
schema_salad.metaschema.RecordSchemaLoader
schema_salad.metaschema.EnumSchemaLoader
schema_salad.metaschema.ArraySchemaLoader
schema_salad.metaschema.MapSchemaLoader
schema_salad.metaschema.UnionSchemaLoader
schema_salad.metaschema.JsonldPredicateLoader
schema_salad.metaschema.SpecializeDefLoader
schema_salad.metaschema.SaladRecordFieldLoader
schema_salad.metaschema.SaladRecordSchemaLoader
schema_salad.metaschema.SaladEnumSchemaLoader
schema_salad.metaschema.SaladMapSchemaLoader
schema_salad.metaschema.SaladUnionSchemaLoader
schema_salad.metaschema.DocumentationLoader
schema_salad.metaschema.array_of_strtype
schema_salad.metaschema.union_of_None_type_or_strtype_or_array_of_strtype
schema_salad.metaschema.uri_strtype_True_False_None_None
schema_salad.metaschema.union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype
schema_salad.metaschema.array_of_union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype
schema_salad.metaschema.union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype_or_array_of_union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype
schema_salad.metaschema.typedsl_union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype_or_array_of_union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype_2
schema_salad.metaschema.array_of_RecordFieldLoader
schema_salad.metaschema.union_of_None_type_or_array_of_RecordFieldLoader
schema_salad.metaschema.idmap_fields_union_of_None_type_or_array_of_RecordFieldLoader
schema_salad.metaschema.Record_nameLoader
schema_salad.metaschema.typedsl_Record_nameLoader_2
schema_salad.metaschema.union_of_None_type_or_strtype
schema_salad.metaschema.uri_union_of_None_type_or_strtype_True_False_None_None
schema_salad.metaschema.uri_array_of_strtype_True_False_None_None
schema_salad.metaschema.Enum_nameLoader
schema_salad.metaschema.typedsl_Enum_nameLoader_2
schema_salad.metaschema.uri_union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype_or_array_of_union_of_PrimitiveTypeLoader_or_RecordSchemaLoader_or_EnumSchemaLoader_or_ArraySchemaLoader_or_MapSchemaLoader_or_UnionSchemaLoader_or_strtype_False_True_2_None
schema_salad.metaschema.Array_nameLoader
schema_salad.metaschema.typedsl_Array_nameLoader_2
schema_salad.metaschema.Map_nameLoader
schema_salad.metaschema.typedsl_Map_nameLoader_2
schema_salad.metaschema.Union_nameLoader
schema_salad.metaschema.typedsl_Union_nameLoader_2
schema_salad.metaschema.union_of_None_type_or_booltype
schema_salad.metaschema.union_of_None_type_or_inttype
schema_salad.metaschema.uri_strtype_False_False_1_None
schema_salad.metaschema.uri_union_of_None_type_or_strtype_False_False_None_None
schema_salad.metaschema.uri_union_of_None_type_or_strtype_or_array_of_strtype_False_False_None_None
schema_salad.metaschema.union_of_None_type_or_strtype_or_JsonldPredicateLoader
schema_salad.metaschema.union_of_None_type_or_Any_type
schema_salad.metaschema.array_of_SaladRecordFieldLoader
schema_salad.metaschema.union_of_None_type_or_array_of_SaladRecordFieldLoader
schema_salad.metaschema.idmap_fields_union_of_None_type_or_array_of_SaladRecordFieldLoader
schema_salad.metaschema.uri_union_of_None_type_or_strtype_or_array_of_strtype_False_False_1_None
schema_salad.metaschema.array_of_SpecializeDefLoader
schema_salad.metaschema.union_of_None_type_or_array_of_SpecializeDefLoader
schema_salad.metaschema.idmap_specialize_union_of_None_type_or_array_of_SpecializeDefLoader
schema_salad.metaschema.Documentation_nameLoader
schema_salad.metaschema.typedsl_Documentation_nameLoader_2
schema_salad.metaschema.union_of_SaladRecordSchemaLoader_or_SaladEnumSchemaLoader_or_SaladMapSchemaLoader_or_SaladUnionSchemaLoader_or_DocumentationLoader
schema_salad.metaschema.array_of_union_of_SaladRecordSchemaLoader_or_SaladEnumSchemaLoader_or_SaladMapSchemaLoader_or_SaladUnionSchemaLoader_or_DocumentationLoader
schema_salad.metaschema.union_of_SaladRecordSchemaLoader_or_SaladEnumSchemaLoader_or_SaladMapSchemaLoader_or_SaladUnionSchemaLoader_or_DocumentationLoader_or_array_of_union_of_SaladRecordSchemaLoader_or_SaladEnumSchemaLoader_or_SaladMapSchemaLoader_or_SaladUnionSchemaLoader_or_DocumentationLoader
schema_salad.metaschema.load_document(doc, baseuri=None, loadingOptions=None)
Parameters:
Return type:

Any

schema_salad.metaschema.load_document_with_metadata(doc, baseuri=None, loadingOptions=None, addl_metadata_fields=None)
Parameters:
Return type:

Any

schema_salad.metaschema.load_document_by_string(string, uri, loadingOptions=None)
Parameters:
Return type:

Any

schema_salad.metaschema.load_document_by_yaml(yaml, uri, loadingOptions=None)

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

Parameters:
Return type:

Any