Revision history for Syndication::NewsML
v0.08 - Released to CPAN 16 Jan 2002
- A three-byte change (initialising a variable) which makes the test
suite pass... sorry about that guys!
v0.07 - Released to CPAN 11 Jan 2002
- Added some generic methods to Syndication::NewsML::Node (and therefore
all object classes): + getXML -- return the current tag and all its
children as an XML tree + getContent -- same as above, but ignores the
current container element (which means the resulting string may not be
well-formed XML) + getText updated to get text of all children (bug fix)
+ getAllText -- return text in all child elements with no sanity
checking, so you can even call this on the NewsML root element to
retrieve all text in a document
v0.06 - 1 Nov 2001 (unreleased)
- Enhanced examples/NewsMLParser.pl: now recurses through all
NewsComponents. It's almost useful!
- Made auto routines handle undefined elements/attributes better: now
returns undef rather than croaks. Calling a method of an undef class
still dies, though: that's Perl, there's nothing I can do about it -- so
test your return codes.
v0.05 - Released to CPAN 11 Oct 2001
- Fixed faulty call to all parent _init functions in
Syndication::NewsML::Node which meant the calls to parent _init classes
could be removed... thanks to Duncan Cameron <dcameron@bcs.org.uk> for
the tip, which allowed me to get rid of 285 lines of crappy code!
- Introduced better error reporting for calling getXXX when you should
be calling getXXXList (for elements that could be "zero or more" or "one
or more")
- Found and fixed a few minor mismatches between the module and the DTD
- added resolveTopicRef to Origin and Party nodes, which uses the
findReference method to get the Topic node referred by a #reference in
Origin's Href and Party's Topic attributes. See tests and examples for
usage.
- added some "helper functions" to grab metadata directly from a
NewsComponent node, rather than having to delve into the metadata
structure to pull out simple items like copyright date and news
provider. This is the first step down the path of creating a simpler API
for NewsML access.
- Filled out more of t/4_reuters.t test and examples/NewsMLParser.pl
v0.04 - Released to CPAN, 26 Sep 2001
- Added resolveTopicSet, resolveTopicSetDescription to FormalNameNode
These routines allow the user to, given a Status node or something else
with a FormalName/Vocabulary pair, automatically look up a related
TopicSet and get its information. Note that this only works for locally
referenced TopicSets (ie in the same document referred by a Duid). The
annotated DTD specifies an algorithm to use when the TopicSet can't be
found locally -- I haven't implemented it yet.
- Added References package including findReference method. Not tested
for external references yet.
- Added getElementByEuid and getElementByDuid methods. These methods can
be used on any tag that inherits IdNode -- ie nearly all of them.
Unfortunately the above methods only return a DOM element, not a NewsMLish
object. Perhaps I can use the tag name to construct them?
- Added DOMUtils class with two methods to begin with:
findElementByAttribute(node, attr, value): starting at "node", walk the
tree and return the node that has attribute "attr" with value "value".
getRootNode(node) follow the path up from "node" and return a reference
to the <NewsML> node at the top of the tree.
- Added getDatePerl method to date elements: converts ISO8601 date/time
format into internal Perl date/time format. Always returns date/time in
UTC (it's easy to then use Perl localtime() to get a representation in
another timezone). (Note: it may be useful to include a
getOriginalTimeZone() or something as we're destroying a bit of
information here: namely the timezone under which the story was filed /
sent) Elements that can use this are: DateAndTime, FirstCreated,
ThisRevisionCreated, DateId
- Updated examples/NewsMLParser to use getNewsItemList -- forgot to fix
in 0.03
- Changed all references of News::NewsML to Syndication::NewsML
- Added getTagName method to all Nodes
- Added getPath method to all Nodes
v0.03, released 16 Sep 2001
- Released to newsml@yahoogroups.com mailing list only.
** This file was automatically generated from **
** doc/Changes.pod. To edit it, see there. **