XML::Compile::Util - Utility routines for XML::Compile
components
XML::Compile::Util
is an Exporter
use XML::Compile::Util;
my $node_type = pack_type $ns, $localname;
my ($ns, $localname) = unpack_type $node_type;
The functions provided by this package are used by various
XML::Compile components, which on their own may be unrelated.
The following URIs are exported as constants, to avoid typing in
the same long URIs each time again: XMLNS, SCHEMA1999, SCHEMA2000,
SCHEMA2001, and SCHEMA2001i.
- pack_id($ns,
$id)
- Translates the two arguments into one compact string representation of the
node id.
example:
print pack_id 'http://my-ns', 'my-id';
# shows: http://my-ns#my-id
- pack_type(
[$ns], $localname )
- Translates the arguments into one compact string representation of the
node type. When the $ns is not present,
"undef", or an empty string, then no
namespace is presumed, and no curly braces part made.
example:
print pack_type 'http://my-ns', 'my-type';
# shows: {http://my-ns}my-type
print pack_type 'my-type';
print pack_type undef, 'my-type';
print pack_type '', 'my-type';
# all three show: my-type
- unpack_id($string)
- Returns a LIST of two elements: the name-space and the id, as included in
the $string. That $string
must be compatible with the result of pack_id().
- unpack_type($string)
- Returns a LIST of two elements: the name-space and the localname, as
included in the $string. That
$string must be compatible with the result of
pack_type(). When no name-space is present, an empty string is
used.
- add_duration(
$duration, [$time] )
- [1.44] Add the $duration to the
$time (defaults to 'now') This is an expensive
operation: in many cases the duration2secs() produces useful
results as well.
example:
my $now = time;
my $deadline = add_duration 'P1M', $now; # deadline in 1 month
- duration2secs($duration)
- [1.44] Translate any format into seconds. This is an example of a valid
duration: "-PT1M30.5S" Average month and
year lengths are used. If you need more precise calculations, then use
add_duration().
- even_elements(LIST)
- Returns the even-numbered elements from the LIST.
- odd_elements(LIST)
- Returns the odd-numbered elements from the LIST.
- type_of_node($node)
- Translate an XML::LibXML::Node into a packed type.
This module is part of XML-Compile distribution version 1.64,
built on October 21, 2024. Website:
http://perl.overmeer.net/xml-compile/
Copyrights 2006-2024 by [Mark Overmeer <markov@cpan.org>].
For other contributors see ChangeLog.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself. See
http://dev.perl.org/licenses/