Referencing External Geometry with Atom link

Pain point: It's inefficient to have the potentially copious XML for places repeated over and over again. For example, it makes sense to refer to a common repository of country boundaries, rather than have everyone figure them out on their own.

Solution: Use <atom:link> to reference the geometry.

Notes:

  1. To reference an element within an XML document instead of the entire document, first give the XML element you want to reference an id, then reference it from <atom:link> using the format for referencing an anchor (see Example 3).
  2. Even though the GeoRSS community is mainly into Atom, this solution works for RSS1 and RSS2 as well. Just import the Atom namespace and implement the semantics properly.

Example 1 – reference to GeoRSS Simple geometry in an Atom entry

<entry>
   ...
   <link 
      rel="http://ww.georss.org/relations/location"
      type="application/georss-simple+xml"
      href="http://example.com/us/state/ma/mass_boundary.xml" />
</entry>

Example 2 – reference to GeoRSS GML geometry in an Atom entry

<entry>
   ...
      <link 
         rel="http://ww.georss.org/relations/location"
         type="application/vnd.ogc.gml"
         href="http://example.com/us/state/ma/mass_boundary.gml" />
</entry>

Example 3 – reference to a child element in a GeoRSS GML document from within an Atom entry

<entry>
   ...
      <link 
         rel="http://ww.georss.org/relations/location"
         type="application/vnd.ogc.gml"
         href="http://example.com/us/state/ma/mass.gml#cambridge" />
</entry>