In #5 @MattesWhite suggested to introduce the super-trait TermData for convienence:
/// Supertrait for all properties data of a `Term<T>` must provide.
pub trait TermData: AsRef<str> + Clone + Eq + Hash {}
impl<T> TermData for T where T: AsRef<str> + Clone + Eq + Hash {}
In #5 @MattesWhite suggested to introduce the super-trait TermData for convienence:
That would indeed simplify a lot of code.