[Home] [By Thread] [By Date] [Recent Entries]

  • From: David Megginson <david@m...>
  • To: "XML Developers' List" <xml-dev@i...>
  • Date: Mon, 19 Apr 1999 17:27:47 -0400 (EDT)

[NOTE: I already announced this on the perl-xml mailing list, but I
realised that I should do so here as well.]

I needed this, so I wrote it this morning:

  http://www.megginson.com/Software/XML-Writer-0.1.tar.gz

(I've also sent an upload to CPAN, but it might take a while to
appear).  Here's a very simple synopsis:

  use XML::Writer;
  use IO;

  my $output = new IO::File(">output.xml");
  my $writer = new XML::Writer($output);

  $writer->startTag("greeting",
                    "class" => "simple");
  $writer->characters("Hello, world!");
  $writer->endTag("greeting");

  $writer->end();
  $output->close();

(You can also leave out the $output argument if you want to go
straight to STDOUT.)

By default, the module does a fair bit of well-formedness checking to
help you catch bugs in your Perl programs -- you can turn the checking 
off for production use if you like to live on the wild side.

Here are the errors that the module catches so far:

- Lack of a (top-level) document element, or multiple document elements.
- Unclosed start tags.
- Misplaced delimiters in the contents of processing instructions or
  comments.
- Misplaced or duplicate XML declaration(s).
- Misplaced or duplicate DOCTYPE declaration(s).
- Mismatch between the document type name in the DOCTYPE declaration and
  the name of the document element.
- Mismatched start and end tags.
- Attempts to insert character data outside the document element.
- Duplicate attributes with the same name.

Full POD documentation and a lot of test cases in test.pl are
included.


Enjoy!


David

-- 
David Megginson                 david@m...
           http://www.megginson.com/

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@i...
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo@i... the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo@i... the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@i...)


Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member