Pular para o conteúdo

Campos do YAML

Referência para consulta rápida. Para aprender o formato, comece em A anatomia de uma modelagem.

Um arquivo .yaml do modelo declara o que carrega de duas formas, que podem conviver no mesmo arquivo separadas por ---:

  • singularkind: <tipo> no topo, e os campos logo abaixo;
  • coleção — sem kind, com as listas elements:, relations:, diagrams:, flows:, notes:.

Valores de kind: project, element, relation, diagram, flow, note, folder. Um kind desconhecido faz o documento ser ignorado, com aviso.

CampoTipoObrigatórioPadrãoO que faz
versionnúmeronãoa versão do formato do registro
idtextonãoo identificador deste registro. Serve para escolher a chave de publicação deste repositório
activetextonãoqual modelagem abre quando ninguém diz qual
modelagenslistasimas modelagens registradas
modelagens[].idtextosimo identificador
modelagens[].nametextonãoo ido nome legível; perde para o name do modelagem.yaml
modelagens[].pathtextosima pasta da modelagem. Aceita relativo e ~
federacoeslistanãoleituras conjuntas nomeadas
federacoes[].idtextosimo identificador
federacoes[].nametextonãoo ido rótulo
federacoes[].modelagenslista de textosimos membros
federacoes[].curadortextonãoo primeiro membrode quem vale a configuração

Um id de modelagem repetido é erro. Uma federação citando modelagem não registrada é aviso.

CampoTipoObrigatórioPadrãoO que faz
versionnúmeronão
idtextonãotem de bater com o do registro; discordar é aviso
nametextonãoo do registroo nome legível
descriptiontextonãopara que ela existe
statustextonãoactiveactive, reference ou archived. active é publicado
federacaotextonãoa leitura conjunta de que ela participa
CampoTipoObrigatórioPadrãoO que faz
idtextonãoo nome da pastadiscordar da pasta é aviso, e a pasta vence
nametextonãoo ido nome exibido
ordernúmeronão500a posição entre os projetos
tagslista de textonão[]
metamapanão{}
CampoTipoObrigatórioO que faz
nametextonãoo nome da pasta na árvore de navegação
ordernúmeronãoa posição dela
CampoTipoObrigatórioPadrãoO que faz
idtextosim[A-Za-z0-9][A-Za-z0-9._-]*. A barra é reservada
nametextonãoo id
shapetextonãosystemchave em shapes. Desconhecida: caixa neutra + aviso
parentreferêncianãodecide o nível C4
descriptiontextonão
technologytextonão
leveltextonãoderivadocontext, container, component, code. Discordar da árvore é aviso, e a árvore vence
tagslista de textonão[]
metamapanão{}valores de texto, número ou booleano
bindmapanãoespelho de um elemento de outra modelagem
bind.modelagemtextosim, dentro de bind
bind.reftextosim, dentro de bindtem de ser qualificado
relationslistanãosó em documento singular; from implícito
noteslistanãosó em documento singular; target implícito
CampoTipoObrigatórioPadrãoO que faz
fromreferênciasimimplícito num documento singular de elemento
toreferênciasim
kindtextonãosyncchave em relationKinds. Desconhecida: linha cheia + aviso
labeltextonão
descriptiontextonão
bidirectionalbooleanonãotrue põe ponta também na origem
routetextonãoo padrão do diagramastraight, orthogonal, bezier
tagslista de textonão[]
metamapanão{}
idtextonão<from>~<kind>~<to>duplicatas recebem #2, #3

Uma relação de uma caixa para ela mesma é ignorada, com aviso.

CampoTipoObrigatórioPadrãoO que faz
idtextonãoo nome do arquivo
titletextonãoo id
leveltextonãoderivadoem que nível o leitor o abre
scopereferêncianãoa caixa detalhada; vira a fronteira
ordernúmeronão500
includelista de seletoresnão[{children: scope}] quando há scopequem entra
excludelista de seletoresnãoquem sai
whereseletor de predicadonãofiltra o que include trouxe
neighborsnúmeronão0saltos de contexto mudo
relationsváriosnãoautoauto, none, lista de ids, {exclude: [ids]}
groupslistanãogrupos escritos à mão
groupBytextonãometa.<chave>, level, shape, project
subjectreferência ou listanãoquem está em foco
tagslista de textonão[]
metamapanão{}
noteslistanãonotas confinadas a este diagrama

groupBy: tag:<prefixo> não existe, e escrevê-lo é erro.

CampoTipoObrigatórioPadrãoO que faz
idtextosimúnico dentro do diagrama
nametextonãoo id
orientationtextonãoempilharow ou column
includelista de seletoresnão
matchseletor de predicadonãoatalho para um include de uma cláusula
groupslistanãogrupos aninhados
CampoTipoObrigatórioPadrãoO que faz
texttextosim
targetreferêncianãoa caixa. Implícito em documento singular de elemento
scopereferência de diagramanãoo diagrama. Implícito em documento de diagrama
kindtextonãoinfochave em noteKinds. Desconhecida: neutro + aviso
metamapanão{}

Sem target e sem scope, a nota é descartada com aviso.

CampoTipoObrigatórioPadrãoO que faz
idtextonãoo nome do arquivodivide o espaço de nomes com diagramas
titletextonãoo id
scopereferêncianãoonde o caso de uso mora. Não escolhe participantes
leveltextonãoo mais fino que os passos citam
ordernúmeronão500
main.nametextonãoPrincipalo nome do caminho principal
main.outcometextonãosuccesschave em flowOutcomes
participantslista de referênciasnãoordem de apariçãofixa as primeiras colunas
stepslistasimos passos do caminho principal
pathslistanãoos caminhos alternativos
tagslista de textonão[]
metamapanão{}
CampoTipoObrigatórioPadrãoO que faz
toreferênciasim
fromreferêncianãoo to do passo anteriorno primeiro passo, omitir é erro
kindtextonãoo da seta declarada, ou sync
labeltextonãoo rótulo da seta declarada
descriptiontextonão
replytextonãoresposta curta, tracejada
idtextonãonecessário só para ser ponto de desvio
CampoTipoObrigatórioPadrãoO que faz
idtextosim
nametextonãoo id
outcometextonãoalternatechave em flowOutcomes
fromid de passonãode onde ele desvia, inclusive
stepslistasim
Como está escritoComo resolve
com barra, reservas/apiabsoluta: projeto e identificador
sem barra, apio projeto que declara; depois shared/

Todo campo que cita uma caixa segue essa regra: parent, from, to, scope, subject, target, os seletores e os participantes de fluxo.

Escrita pelo leitor, nunca lida como modelo. Um arquivo JSON por diagrama, em <projeto>/.layout/<id>.json, com as posições das caixas e das notas soltas, o estado dos grupos, as arestas ajustadas e o estilo de linha. Fluxos não têm arquivo de arrumação.

Está em Configuração da aparência.