Unfurl Specific
See also the built-in Unfurl types.
Extensions
add ‘any’ schema type for properties and attributes definitions
‘additionalProperties’ field in type and template metadata
allow metadata field on inputs, outputs, artifacts, operations, and repositories
metadata values can be JSON (instead only strings)
add “sensitive” property and datatype metadata field
add “immutable” property metadata field
add “environment” keyword to
implementationdefinitionadd “eval” function
add “type” in capability assignment
allow workflows to be imported
workflow “target” keyword also accepts type names
groups can have other groups as members
an operation’s
operation_hostfield can also be set to a node template’s name.added
OPERATION_HOSTas a reserved function keyword.add “check”, “conditional”, “discover”, “default”, “dependent”, “virtual”, and “protected” directives
add “default_for” keyword to relationship templates
add “defaults” section to interface definitions
add “requirements” keyword to interface definitions
add “types” section to the service template can contain any entity type definition.
add “when” keyword to “imports” to allow conditional imports
add “decorators” section for rule-based enhancements of node templates
add “requirements” and “properties” section to node_filters for applying constraints.
add “match” key to node_filters for selecting nodes
allow “root” to used as alias for the substitution_mappings keyword.
add “node” keyword to substitution_mappings section
add
not_implementedkeyword for operations (set to prevent operation inheritance)add
invokekeyword for operations (delegates to another operation)add
entry_statefor operations (only invoke if target has advanced to given node state)allow
TOSCAVersionto accept Semantic Versioning 2.0 syntaxallow “required” key in artifact definitions on node types
allow “revision” keyword in repository definitions
allow “imported” key on template definitions
derived_fromcan accept a list types, enabling multiple inheritance.add
removedproperty status valueartifacts can be declared on node types.
add
target,contents,order,permissions, andintentkeywords to artifacts (see Artifact enhancements)support
ANONkeyword in get_artifactadd
dependencieskeyword to artifacts and allow interfaces and attributes to be defined on artifact templates.add
artifactskeyword to node_filters to match on artifact properties (syntax matches “capabilities” keyword)add
input_valuessection to service templates (see Topology Inputs).‘implementation’ section on interface can declare a full artifact definition
interface output definitions can now include a full parameter definitions and an optional
mappingfield to define the mapping.add a
versionproperty constraint for matching Version Requirements
Not yet implemented
The following feature are either not yet implemented or don’t currently conform with the TOSCA 1.3 specification:
The
get_operation_outputfunction (use resultTemplate instead)“copy” keyword (use the
dslsection or merge directives instead)the
locationandremovearguments to the get_artifact functionsubstitution mappings: only input mappings are supported (set
nodeto a node template instead)triggers
notifications
xml schema constraints