Skip to content
XML::NewsML_G2 - generate NewsML-G2 news items
Perl Perl 6 Shell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib/XML
t
.gitignore
.shipit
.travis.yml
Build.PL
Changes
LICENSE
MANIFEST
MANIFEST.SKIP
README
TODO
build.sh

README

NAME

    XML::NewsML_G2 - generate NewsML-G2 news items

VERSION

    0.3.3

INSTALLATION

    To install this module, run the following commands:

        perl Build.PL
        ./Build
        ./Build test
        ./Build install

SYNOPSIS

        use XML::NewsML_G2;
    
        my $provider = XML::NewsML_G2::Provider->new
            (qcode => 'nsa', name => 'News Somewhere Agency');
    
        my $ni = XML::NewsML_G2::News_Item_Text->new
            (title => 'My first NewsML-G2 news item',
             language => 'en', provider => $provider);
    
        my $writer = XML::NewsML_G2::Writer::News_Item->new(news_item => $ni);
        my $dom = $writer->create_dom();
        print $dom->serialize(1);

DESCRIPTION

    This module tries to implement the creation of XML files conforming to
    the NewsML-G2 specification as published by the IPTC. It does not aim
    to implement the complete standard, but to cover the most common use
    cases in a best-practice manner.

    For the full specification of the format, visit
    http://www.newsml-g2.org/. For a quick introduction, you might prefer
    the Quick Start Guides
    <http://www.iptc.org/download?g2quickstartguides>.

GETTING STARTED

    To start, you need to create an instance of the item class of your
    choice, e.g. XML::NewsML_G2::News_Item_Text for a text story, or
    XML::NewsML_G2::News_Item_Picture for an image. Each of these classes
    might have some required attributes (e.g. title, language, provider),
    which you will have to provide when creating the instance, as well as a
    number of optional ones (e.g. note). While for some attributes scalar
    values will do, others will require further instances of classes, e.g.
    for provider you will need an instance of XML::NewsML_G2::Provider.
    Please see each class' documentation for details.

    Once you're done setting up your data structure, you have to create a
    writer instance in order to retrieve your DOM. For simple news items
    like text or picture, XML::NewsML_G2::Writer::News_Item will be the
    writer class to use.

CURRENT STATUS

    The implementation currently supports text, picture, video, audio,
    graphics, as well as multimedia packages and slideshows.

    Version 2.18 is the latest version of the standard supported by this
    software, and should be your first choice. Using versions 2.9, 2.12 and
    2.15 is deprecated, and support for it will beremoved in future
    releases.

DEPENDENCIES

    Moose, XML::LibXML, DateTime, DateTime::Format::XSD, UUID::Tiny,
    Module::Runtime

BUGS AND LIMITATIONS

    No bugs have been reported.

    Please report any bugs or feature requests at
    https://github.com/apa-it/xml-newsml-g2/issues.

    Be aware that the API for this module will change with each upcoming
    release.

SEE ALSO

    XML::NewsML - Simple interface for creating NewsML documents

AUTHORS

    Philipp Gortan <philipp.gortan@apa.at>

    Mario Paumann <mario.paumann@apa.at>

    Christian Eder <christian.eder@apa.at>

    Stefan Hrdlicka <stefan.hrdlicka@apa.at>

LICENCE AND COPYRIGHT

    Copyright (c) 2013-2015, APA-IT. All rights reserved.

    This module is free software; you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published by the
    Free Software Foundation; either version 2 of the License, or (at your
    option) any later version.

    This module is distributed in the hope that it will be useful, but
    WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
    General Public License for more details.

    You should have received a copy of the GNU General Public License along
    with this module. If not, see http://www.gnu.org/licenses/.

You can’t perform that action at this time.