pub trait ItemExtension { // Required method fn get_self(&self) -> &Item; // Provided method fn attributes(&self) -> Option<&Vec<Attribute>> { ... } }