docs: def separated(self, separator='-'):
          """Return a string representation of the identifier with its elements
          separated by the given separator."""
          return separator.join((part for part in self.elements() if part))