File Coverage

blib/lib/XML/NewsML_G2/Writer/Concept_Item.pm
Criterion Covered Total %
statement 25 25 100.0
branch n/a
condition n/a
subroutine 7 7 100.0
pod n/a
total 32 32 100.0


line stmt bran cond sub pod time code
1             package XML::NewsML_G2::Writer::Concept_Item;
2              
3 18     18   131 use Moose;
  18         40  
  18         139  
4 18     18   114719 use Carp;
  18         48  
  18         1262  
5 18     18   144 use namespace::autoclean;
  18         42  
  18         162  
6              
7             extends 'XML::NewsML_G2::Writer::Substancial_Item';
8              
9             has '+_root_node_name', default => 'conceptItem';
10             has '+_nature_qcode_prefix', default => 'cinat';
11              
12       2     sub _create_rights_info {
13             }
14              
15             sub _create_subjects {
16 2     2   25 my $self = shift;
17 2         3 my @res;
18 2         11 push @res, $self->_create_subjects_media_topic();
19 2         9 push @res, $self->_create_subjects_concepts();
20 2         4 return @res;
21             }
22              
23             sub _create_content_meta {
24 2     2   6 my ( $self, $root ) = @_;
25              
26 2         5 $root->appendChild( my $cm = $self->create_element('contentMeta') );
27 2         6 my @subjects = $self->_create_subjects();
28 2         14 $cm->appendChild($_) foreach (@subjects);
29 2         24 return;
30             }
31              
32             sub _create_content {
33 2     2   3 my ( $self, $root ) = @_;
34              
35 2         6 $root->appendChild( my $concept = $self->create_element('concept') );
36 2         5 $concept->appendChild( $self->_create_id_element() );
37 2         5 $concept->appendChild( $self->_create_type_element() );
38 2         14 $self->_create_inner_content($concept);
39              
40 2         43 return;
41             }
42              
43             __PACKAGE__->meta->make_immutable;
44              
45             1;
46              
47             __END__
48              
49             =head1 NAME
50              
51             XML::NewsML_G2::Writer::Concept_Item - base class for writers
52             creating DOM trees conforming to Concept Items
53              
54             =head1 DESCRIPTION
55              
56             This module acts as a base class e.g. for event item writers.
57             See L<XML::NewsML_G2::Writer::Event_Item>.
58              
59              
60             =head1 AUTHOR
61              
62             Christian Eder C<< <christian.eder@apa.at> >>
63              
64             =head1 LICENCE AND COPYRIGHT
65              
66             Copyright (c) 2019, APA-IT. All rights reserved.
67              
68             See L<XML::NewsML_G2> for the license.