Provided by: libhtml-microformats-perl_0.105-6_all bug

NAME

       HTML::Microformats::Datatype::Duration - floating periods of time

SYNOPSIS

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

DESCRIPTION

   Constructors
       "$d = HTML::Microformats::Datatype::Duration->new($duration)"
           Creates a new HTML::Microformats::Datatype::Duration object.

           $duration is a DateTime::Duration object.

       "$d = HTML::Microformats::Datatype::Duration->parse($string, $elem, $context)"
           Creates a new HTML::Microformats::Datatype::Duration object.

           $string  is  a duration represented in ISO 8601 format, for example: 'P1Y' or 'PT2H29M58.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 ISO 8601 string:

            <abbr class="duration" title="P4DT4H">4 and a half days</abbr>

           This constructor also supports a number of experimental microformat duration patterns.  ISO-31  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
       "$d->duration"
           Returns a DateTime::Duration object.

       "$d->to_string"
           Returns an ISO 8601 formatted string representing the duration.

       "$d->datatype"
           Returns an the RDF datatype URI representing the data type of this literal.

   Functions
       "compare($a, $b)"
           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);

       "$c = add($a, $b)"
           Adds two durations together.

           This function is not exported by default.

           Can also be used as a method:

            $c = $a->add($b);

       "$c = subtract($a, $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/>.

SEE ALSO

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

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.

perl v5.32.1                                       2021-09-12             HTML::Microform...atype::Duration(3pm)