Expressing semantics in a machine-readable form