A Tag is an Annotation without a value; its mere presence indicates some characteristic of the Tagged element.
This is an extension point of the Sysl language, allowing the capture of arbitrary information, especially concepts specific to a domain or organization.
A Tag is a name preceded by a
~ in square brackets following the Tagged element. For example, an Application with the
db tag would be written as:
App [~db]: ...
Some Tags have a standard meaning in all Sysl models. They should be used for that purpose, and not for any other. They include:
db: The Application is (or sometimes has) a database.
human: The Application represents a human user.
external: The Application sits outside the organization. This will, for example, force it to the far right of a sequence diagram.
pk: Primary Key in a Table.
unique: Unique Key in a Table.
hex: The Field's value should be interpreted as a hexadecimal string.
body: The Endpoint Parameter is expected in the body of the HTTP request.
header: The Endpoint Parameter is expected in the header of the HTTP request.
cookie: The Endpoint Parameter passed in the Cookie header, such as
Cookie: debug=0; csrftoken=BUSe35dohU3O1MZvDCU