---
name: "HTML::Microformats::Format::geo"
section: "3pm"
platform: "linux"
package: "libhtml-microformats-perl"
version: "0.105-6"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/HTML::Microformats::Format::geo"
---

# HTML::Microformats::Format::geo(3pm)

the geo microformat

## NAME

HTML::Microformats::Format::geo - the geo microformat

## SYNOPSIS

```
 use Data::Dumper;
 use HTML::Microformats::DocumentContext;
 use HTML::Microformats::Format::geo;
 my $context = HTML::Microformats::DocumentContext->new($dom, $uri);
 my @geos    = HTML::Microformats::Format::geo->extract_all(
                   $dom->documentElement, $context);
 foreach my $geo (@geos)
 {
   printf("%s;%s\n", $geo->get_latitude, $geo->get_longitude);
 }
```

## DESCRIPTION

HTML::Microformats::Format::geo inherits from HTML::Microformats::Format. See the base class definition for a description of property getter/setter methods, constructors, etc.

### Additional Method

- •

  `"to_kml"`

  This method exports the geo object as KML. It requires RDF::KML::Exporter to work, and will throw an error at run-time if it's not available.

## MICROFORMAT

HTML::Microformats::Format::geo supports geo as described at \<http://microformats.org/wiki/geo\>, with the following additions:

- •

  'altitude' property

  You may provide an altitude as either a number (taken to be metres above sea level) or an embedded hMeasure. e.g.:

  ```
   <span class="geo">
    lat:  <span class="latitude">12.34</span>,
    long: <span class="longitude">56.78</span>,
    alt:  <span class="altitude">90</span> metres.
   </span>

   <span class="geo">
    lat:  <span class="latitude">12.34</span>,
    long: <span class="longitude">56.78</span>,
    alt:  <span class="altitude hmeasure">
            <span class="num">90</span>
            <span class="unit">m</span>
          </span>.
   </span>
  ```

- •

  'body' and 'reference-frame'

  The geo microformat is normally only defined for WGS84 co-ordinates on Earth. Using 'body' and 'reference-frame' properties (each of which take string values), you may give co-ordinates on other planets, asteroids, moons, etc; or on Earth but using a non-WGS84 system.

## RDF OUTPUT

Data is returned using the W3C's vCard vocabulary (\<http://www.w3.org/2006/vcard/ns#\>) and the W3C's  WGS84 vocabulary (\<http://www.w3.org/2003/01/geo/wgs84\_pos#\>).

For non-WGS84 co-ordinates, UNGEO (\<http://buzzword.org.uk/rdf/ungeo#\>) is used instead.

## BUGS

Please report any bugs to \<http://rt.cpan.org/\>.

## SEE ALSO

HTML::Microformats::Format, HTML::Microformats, HTML::Microformats::Format::hCard.

## AUTHOR

Toby Inkster \<tobyink@cpan.org\>.

## COPYRIGHT AND LICENCE

Copyright 2008-2012 Toby Inkster

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

## DISCLAIMER OF WARRANTIES

THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
