abstract item's components