//! Common traits.
/// Since [`protocol`](crate::protocol) entities are immutable by design (after all, they just
/// represent XML definitions), we use
/// [builder](https://rust-unofficial.github.io/patterns/patterns/creational/builder.html) pattern
/// instead of constructor.
/// Subject of the `builder` pattern.
///
/// See: [`Builder`].