XML-Grove
view release on metacpan or search on metacpan
lib/XML/Grove.pm view on Meta::CPAN
$type_name = 'subdoc';
package XML::Grove::Characters;
use vars qw{ @ISA $type_name };
@ISA = qw{XML::Grove};
$type_name = 'characters';
package XML::Grove::CData;
use vars qw{ @ISA $type_name };
@ISA = qw{XML::Grove};
$type_name = 'cdata';
package XML::Grove::ElementDecl;
use vars qw{ @ISA $type_name };
@ISA = qw{XML::Grove};
$type_name = 'element_decl';
package XML::Grove::AttListDecl;
use vars qw{ @ISA $type_name };
@ISA = qw{XML::Grove};
$type_name = 'attlist_decl';
lib/XML/Grove/Path.pm view on Meta::CPAN
/html/body/ul/li[4]
/html/body/#pi[2]
The path segments can be element names or object types, the objects
types are named using:
#element
#pi
#comment
#text
#cdata
#any
The `C<#any>' object type matches any type of object, it is
essentially an index into the contents of the parent object.
The `C<#text>' object type treats text objects as if they are not
normalized. Two consecutive text objects are seperate text objects.
=head1 AUTHOR
lib/XML/Grove/XPointer.pm view on Meta::CPAN
my $self = shift;
my $instance = shift;
my $node_type = shift;
my $look_for;
if (defined($node_type) && substr($node_type, 0, 1) eq '#') {
$node_type eq '#element' and do { $look_for = 'XML::Grove::Element' };
$node_type eq '#pi' and do { $look_for = 'XML::Grove::PI' };
$node_type eq '#comment' and do { $look_for = 'XML::Grove::Comment' };
$node_type eq '#text' and do { $look_for = 'XML::Grove::Characters' };
$node_type eq '#cdata' and do { $look_for = 'XML::Grove::CData' };
$node_type eq '#any' and do { $node_type = undef };
} elsif (defined($node_type)) {
$look_for = 'element-name';
}
my $contents = $self->{Contents};
my $object = undef;
$instance--; # 0 based
( run in 0.257 second using v1.01-cache-2.11-cpan-454fe037f31 )