SYNOPSIS

 my $duration = HTML::Microformats::Datatype::Duration->new($d);
 print "$duration\n";

DESCRIPTION

Constructors

Creates a new HTML::Microformats::Datatype::Duration object. $duration is a DateTime::Duration object. Creates a new HTML::Microformats::Datatype::Duration object. $string is a duration represented in \s-1ISO\s0 8601 format, for example: 'P1Y' or '\s-1PT2H29M58\s0.682S'. $elem is the XML::LibXML::Element being parsed. $context is the document context. The standard way of representing durations in Microformats is as an \s-1ISO\s0 8601 string: <abbr class="duration" title="P4DT4H">4 and a half days</abbr> This constructor also supports a number of experimental microformat duration patterns. \s-1ISO-31\s0 class names are supported: <div class="duration"> <span claa="d">4</span> and <abbr title="12" class="h">a half</abbr> days. </div> As are metric/SI measures (in seconds): <span class="duration">124 s</span> <span class="duration">124</span> seconds Or using an hMeasure microformat with no 'item' property, the 'type' property either absent or a case-insensitive match of 'duration' and a unit property of 's'/'sec'/'seconds', 'min'/'minutes', 'h'/'hours' or 'd'/'days'. For example: <span class="duration hmeasure"> <b class="unit">Days</b>: <span class="num">4.5</span> </span>

Public Methods

Returns a DateTime::Duration object. Returns an \s-1ISO\s0 8601 formatted string representing the duration. Returns an the \s-1RDF\s0 datatype \s-1URI\s0 representing the data type of this literal.

Functions

Compares durations $a and $b. Return values are as per 'cmp' (see perlfunc). Note that there is not always a consistent answer when comparing durations. 30 days is longer than a month in February, but shorter than a month in January. Durations are compared as if they were applied to the current datetime (i.e. now). This function is not exported by default. Can also be used as a method: $a->compare($b); Adds two durations together. This function is not exported by default. Can also be used as a method: $c = $a->add($b); Subtracts duration $b from $a. This function is not exported by default. Can also be used as a method: $c = $a->subtract($b);

BUGS

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

RELATED TO HTML::Microformats::Datatype::Duration…

HTML::Microformats, HTML::Microformats::Datatype, DateTime::Duration.

AUTHOR

Toby Inkster <[email protected]>.

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

\s-1THIS\s0 \s-1PACKAGE\s0 \s-1IS\s0 \s-1PROVIDED\s0 \*(L"\s-1AS\s0 \s-1IS\s0\*(R" \s-1AND\s0 \s-1WITHOUT\s0 \s-1ANY\s0 \s-1EXPRESS\s0 \s-1OR\s0 \s-1IMPLIED\s0 \s-1WARRANTIES\s0, \s-1INCLUDING\s0, \s-1WITHOUT\s0 \s-1LIMITATION\s0, \s-1THE\s0 \s-1IMPLIED\s0 \s-1WARRANTIES\s0 \s-1OF\s0 \s-1MERCHANTIBILITY\s0 \s-1AND\s0 \s-1FITNESS\s0 \s-1FOR\s0 A \s-1PARTICULAR\s0 \s-1PURPOSE\s0.