DOML v3.0 Reference#
commons#
BProperty#
Inherits from Property
- Attributes:
value[Boolean]
Configuration#
Inherits from DOMLElement
- Associations:
deployments→ Deployment [0..*]
Credentials#
Inherits from DOMLElement
DOMLElement#
- Associations:
annotations→ Property [0..*]
- Attributes:
name[String]description[String]
DeployableElement#
Inherits from DOMLElement
Deployment#
- Associations:
component→ DeployableElement [1..1]node→ InfrastructureElement [1..1]
FProperty#
Inherits from Property
- Attributes:
value[String]
IProperty#
Inherits from Property
- Attributes:
value[Integer]
KeyPair#
Inherits from Credentials
- Attributes:
user[String]keyfile[String]algorithm[String]bits[Integer]
Property#
- Associations:
reference→ DOMLElement [0..1]
- Attributes:
key[String]
SProperty#
Inherits from Property
- Attributes:
value[String]
Source#
Inherits from DOMLElement
- Attributes:
entry[String]backend[String]
UserPass#
Inherits from Credentials
- Attributes:
username[String]password[String]
application#
ApplicationComponent#
Inherits from DeployableElement
ApplicationLayer#
Inherits from DOMLElement
- Associations:
components→ ApplicationComponent [0..*]
DBMS#
Inherits from SoftwareComponent
SaaS#
Inherits from ApplicationComponent
- Associations:
exposedInterfaces→ SoftwareInterface [0..*]
- Attributes:
licenseCost[String]
SaaSDBMS#
Inherits from SaaS
SoftwareComponent#
Inherits from ApplicationComponent
- Associations:
exposedInterfaces→ SoftwareInterface [0..*]consumedInterfaces→ SoftwareInterface [0..*]src→ Source [0..1]
- Attributes:
isPersistent[Boolean]licenseCost[String]
SoftwareInterface#
Inherits from ApplicationComponent
- Attributes:
endPoint[String]
infrastructure#
AutoScalingGroup#
Inherits from ComputingGroup
- Associations:
machineDefinition→ VirtualMachine [1..1]securityGroup→ SecurityGroup [0..1]
- Attributes:
min[Integer]max[Integer]loadBalancer[String]
ComputingGroup#
Inherits from DOMLElement
- Associations:
groupedNodes→ ComputingNode [0..*]
ComputingNode#
Inherits from Node
- Associations:
location→ Location [0..1]credentials→ Credentials [0..1]group→ ComputingGroup [0..1]nodeSpecificMonitoring→ MonitoringRule [0..1]
- Attributes:
architecture[String]os[String]memory_mb[Integer]memory_kb[Integer]storage[String]cpu_count[Integer]cost[Integer]disabledMonitorings[String]
ComputingNodeGenerator#
Inherits from DOMLElement
- Attributes:
uri[String]kind[GeneratorKind]
Container#
Inherits from ComputingNode
- Associations:
generatedFrom→ ContainerImage [0..1]configs→ ContainerConfig [0..*]
ContainerConfig#
Inherits from DOMLElement
- Associations:
host→ ComputingNode [0..1]iface→ NetworkInterface [0..1]
- Attributes:
container_port[Integer]vm_port[Integer]
ContainerImage#
Inherits from ComputingNodeGenerator
- Associations:
generatedContainers→ Container [0..*]
ExtInfrastructureElement#
Inherits from InfrastructureElement
FunctionAsAService#
Inherits from InfrastructureElement
- Attributes:
cost[Integer]
InfrastructureElement#
Inherits from DeployableElement
InfrastructureLayer#
Inherits from DOMLElement
- Associations:
nodes→ ComputingNode [0..*]generators→ ComputingNodeGenerator [0..*]storages→ Storage [0..*]faas→ FunctionAsAService [0..*]credentials→ Credentials [0..*]groups→ ComputingGroup [0..*]securityGroups→ SecurityGroup [0..*]networks→ Network [0..*]rules→ MonitoringRule [0..*]
InternetGateway#
Inherits from Node
- Attributes:
address[String]
Location#
Inherits from DOMLElement
- Attributes:
region[String]zone[String]
MonitoringRule#
Inherits from DOMLElement
- Attributes:
condition[String]strategy[String]strategyConfigurationString[String]
Network#
Inherits from DOMLElement
- Associations:
connectedIfaces→ NetworkInterface [0..*]gateways→ InternetGateway [0..*]subnets→ Subnet [0..*]
- Attributes:
protocol[String]addressRange[String]cidr[Integer]
NetworkInterface#
Inherits from InfrastructureElement
- Associations:
belongsTo→ Network [0..1]associated→ SecurityGroup [0..1]
- Attributes:
endPoint[Integer]speed[String]
Node#
Inherits from InfrastructureElement
- Associations:
ifaces→ NetworkInterface [0..*]
PhysicalComputingNode#
Inherits from ComputingNode
Rule#
Inherits from DOMLElement
- Attributes:
kind[String]protocol[String]fromPort[Integer]toPort[Integer]cidr[String]
SecurityGroup#
Inherits from DOMLElement
- Associations:
rules→ Rule [0..*]ifaces→ NetworkInterface [0..*]
Storage#
Inherits from Node
- Attributes:
label[String]size_gb[Integer]cost[Integer]
Subnet#
Inherits from Network
- Associations:
connectedTo→ Network [0..*]
Swarm#
Inherits from ComputingGroup
- Associations:
roles→ SwarmRole [0..*]
SwarmRole#
Inherits from DOMLElement
- Associations:
nodes→ ComputingNode [0..*]
- Attributes:
kind[String]
VMImage#
Inherits from ComputingNodeGenerator
- Associations:
generatedVMs→ VirtualMachine [0..*]
VirtualMachine#
Inherits from ComputingNode
- Associations:
generatedFrom→ VMImage [0..1]
- Attributes:
sizeDescription[String]
concrete#
ComputingGroup#
Inherits from ConcreteElement
- Associations:
maps→ ComputingGroup [1..1]
ConcreteElement#
Inherits from DOMLElement
- Associations:
refs→ ConcreteElement [0..*]
- Attributes:
configurationScript[String]preexisting[Boolean]
ConcreteInfrastructure#
Inherits from DOMLElement
- Associations:
providers→ RuntimeProvider [0..*]
ContainerImage#
Inherits from ConcreteElement
- Associations:
maps→ ContainerImage [0..1]
FunctionAsAService#
Inherits from ConcreteElement
- Associations:
maps→ FunctionAsAService [0..1]
GenericResource#
Inherits from ConcreteElement
- Attributes:
type[String]gname[String]
Network#
Inherits from ConcreteElement
- Associations:
maps→ Network [0..1]
RuntimeProvider#
Inherits from DOMLElement
- Associations:
resources→ GenericResource [0..*]vms→ VirtualMachine [0..*]vmImages→ VMImage [0..*]containerImages→ ContainerImage [0..*]networks→ Network [0..*]storages→ Storage [0..*]faas→ FunctionAsAService [0..*]group→ ComputingGroup [0..*]
Storage#
Inherits from ConcreteElement
- Associations:
maps→ Storage [0..1]
VMImage#
Inherits from ConcreteElement
- Associations:
maps→ VMImage [0..1]
- Attributes:
image_name[String]
VirtualMachine#
Inherits from ConcreteElement
- Associations:
maps→ VirtualMachine [0..1]