macro_rules! define_id {
($name:ident) => { ... };
($name:ident, non_empty) => { ... };
($name:ident, validated, $validator:expr) => { ... };
($name:ident, generate) => { ... };
($name:ident, system) => { ... };
($name:ident, generate, system) => { ... };
($name:ident, schema) => { ... };
($name:ident, generate, schema) => { ... };
(@ $name:ident, schema) => { ... };
}