Statements are identifiers, e.g. 1,2,3, UUIDS, or Double-quoted Strings
One expression per line
Each expression comprises a head and a body separated by a colon, e.g. HEAD : BODY
The heads comprises a single ID, e.g. Unique, monontonically incrementing integer
An expression body consists of:
a quoted string (atom)
a comma separated list of IDs followed by a relation followed by a single ID, e.g. > = attacks or } = supports
A single ID followed by a relation followed by a comma separated list of IDs, e.g.< = attacked by or { = supported by
Reverse oriented expressions, a la Prolog can be used. In these the conclusion is given first and an inverse operator, e.g. < = attacked by or { = supported by, can be used, followed by the comma separated list of IDs
The "<> = conflicts with" relator can be used as syntactic sugar to indicate a form of bi-directional attack
Simple Argument Description Notation (SADN)
Examples