// CD for Classic version include "general.cd"; package gen; Type = "type" *s Kind *s "[" List(TypeInstance) "]". Kind : Classic | Secret. Classic = "classic". Secret = "secret". TypeInstance = RelationNr. IntermediateProduct = "(assignment:" Assignment ")". RawMaterialInstance = List(Constraint) *s Option(SecretOfRawMaterial). SecretOfRawMaterial = Option(Assignment) *s Quality. Constraint = *l Weight RelationNr List(Variable). Weight = int ":" *s. RelationNr = int *s. Variable = ident *s. Predicate = List(RelationNr). Assignment = "[" List(Literal) "]". Literal = *s Sign *s Variable *s. Sign: Neg | Pos. Pos = . // Can be "+" if desired. Neg = "!". // Can be "-" if desired.