code: def parts(self):
          
  
          for item in self.__parts_and_divisions:
              if item.tag == 'part':
                  yield item
              else:
                  # Divisions shouldn't be beneath a part, but here's a fallback
                  # for if this does happen
                  for part in item.parts:
                      yield part
docs: Get the parts directly below this element.