Skip to content

1. Introduction

Contents of DID 0.1

1.1 What DID is

Each kind of ADP tool has a specification language and a definition language. For diagrams they are DISL and DID. In DISL a tool engineer writes a specification (a .dis file): one diagram type, with its metamodel, coordinates, notation, toolbox, constraints, behavior, layout and persistence settings. The diagrams users then create of that type are stored as definitions in DID (.did files): the elements and relations a user added, their attribute values, and the view data of each diagram.

A DID definition is always read together with the specification it names in its language object. The specification says which types and attributes exist, how view data relates to the model, and which persistence settings apply (DISL section 11); this document says what the stored result looks like and how it is read and written.

"Document" stays the word for the content a user works on in a host; for a diagram, its stored form is a DID definition.

1.2 Relation to DISL (informative)

  • A DID definition names its DISL specification in language (section 3).
  • The specification's persistence layer (DISL section 11) configures how the definition is written: format, file split, identifiers, view data, ordering and precision.
  • A runtime loads the specification, then reads and writes definitions with it (section 8).

The schema of DID references DISL's shared primitives (QualifiedId, SemVer, Point) by their absolute $id instead of copying them, so each is defined once.