code: def from_etree(root, received=pytz.UTC.localize(datetime.utcnow())):
          
          ivorn = root.attrib['ivorn']
          # Stream- Everything except before the '#' separator,
          # with the prefix 'ivo://' removed:
          stream = ivorn.split('#')[0][6:]
          row = Voevent(ivorn=ivorn,
                        role=root.attrib['role'],
                        version=root.attrib['version'],
                        stream=stream,
                        xml=vp.dumps(root),
                        received=received,
                        )
          row.author_datetime = _grab_xpath(root, 'Who/Date',
                                            converter=iso8601.parse_date)
          row.author_ivorn = _grab_xpath(root, 'Who/AuthorIVORN')
  
          row.cites = Cite.from_etree(root)
          if not _has_bad_coords(root, stream):
              try:
                  row.coords = Coord.from_etree(root)
              except:
                  logger.exception(
                      'Error loading coords for ivorn {}, coords dropped.'.format(
                          ivorn)
                  )
          return row
docs: Init a Voevent row from an LXML etree loaded with voevent-parse