Skip to content
This repository was archived by the owner on Jun 17, 2020. It is now read-only.

Supported YAML and XML Types

Sebastian Hesse edited this page Apr 7, 2015 · 1 revision

In YAML and XML exist some predefined types which can be used directly and don't have to be declared explicitly. The YAML specification calls this types "normative type definitions" and "non-normative type definitions" whereas the XML specification calls them "Base Types" and "Specific Types". Most of them are similar in YAML and XML and only their names differ, thus we've created a mapping from YAML to XML where we defined which YAML type is mapped to an XML type (one-to-one relation):

tosca.relationships.X

  • Root => RootRelationshipType
  • DependsOn => DependsOn
  • HostedOn => HostedOn
  • ConnectsTo => ConnectsTo

tosca.capabilities.X

  • Root => RootCapabilityType
  • Feature => FeatureCapability
  • Container => ContainerCapability
  • Endpoint => EndpointCapability
  • DatabaseEndpoint => DatabaseEndpointCapability

tosca.nodes.X

  • Root => RootNodeType
  • Compute => Server
  • SoftwareComponent => OperatingSystem
  • WebServer => WebServer
  • WebApplication => WebApplication
  • DBMS => DBMS

Not supported here: ObjectStorage, BlockStorage, Network

tosca.artifacts.X

  • Root => RootArtifactType
  • File => FileArtifact
  • impl.Bash => ScriptArtifact

Mapping Notation

  • For each type category (relationships, capabilities, node types, artifacts) there is a base name like tosca.nodes. and X is the specific name
  • The mapping is defined as YAML => XML
  • cursive words mark a mapping which is more or less a guess
Clone this wiki locally