docs: def from_etree(root):
          """
          Load up the coords, if present, for initializing with the Voevent.
  
          .. note::
  
              Current implementation is quite slack with regard to co-ordinate
              systems - it is assumed that, for purposes of searching the database
              using spatial queries, the FK5 / ICRS reference systems and and
              geocentric/barycentric reference frames are sufficiently similar
              that we can just take the RA/Dec and insert it 'as-is' into the
              database.
  
              This is partly justified on the assumption that anyone in
              need of ultra-high precision co-ordinates will need to take
              account of mission specific properties anyway (e.g. position
              of GAIA at time of detection) and so will only be using the
              spatial query for a coarse search, then parsing packets
              to determine precise locations.
          """
  
          acceptable_coord_systems = (
              vp.definitions.sky_coord_system.utc_fk5_geo,
              vp.definitions.sky_coord_system.utc_fk5_topo,
              vp.definitions.sky_coord_system.utc_icrs_geo,
              vp.definitions.sky_coord_system.utc_icrs_topo,
              vp.definitions.sky_coord_system.tdb_fk5_bary,
              vp.definitions.sky_coord_system.tdb_icrs_bary,
          )
  
          position_list = []
          astrocoords = root.xpath(
              'WhereWhen/ObsDataLocation/ObservationLocation/AstroCoords'
          )
          if astrocoords:
              for idx, entry in enumerate(astrocoords):
                  posn = vp.get_event_position(root,idx)
                  if posn.system not in acceptable_coord_systems:
                      raise NotImplementedError(
                          "Loading position from coord-sys "
                          "is not yet implemented: {} ".format(
                              posn.system
                          )
                      )
                  if posn.units != vp.definitions.units.degrees:
                      raise NotImplementedError(
                          "Loading positions in formats other than degrees "
                          "is not yet implemented."
                      )
                  try:
                      isotime = vp.get_event_time_as_utc(root,idx)
                  except:
                      logger.warning(
                          "Error pulling event time for ivorn {}, "
                          "setting to NULL".format(root.attrib['ivorn'])
                      )
                      isotime = None
  
                  position_list.append(
                      Coord(ra = posn.ra,
                            dec = posn.dec,
                            error = posn.err,
                            time = isotime)
                  )
          return position_list