OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help



   Re: [xml-dev] genx - abstract output

[ Lists Home | Date Index | Thread Index ]

Tim Bray scripsit:

> 1. The sweet spot for XML is interchange, and FILE * is a nice general 
> basis for almost all kinds of interchange.
> 2. If you're going to build an XML instance in memory, wouldn't it be 
> more natural to pull together a DOM or your own private data structure 
> and then serialize it in one fell swoop?

Not necessarily.  For example, if I want to write to a non-UTF-8 file
stream, then I could write via UTF-8 abstract output and use convert()
to fix things up.

> 3. This lowers the barrier-to-entry to implementers, who are going to 
> see genxStartDocument(genxWriter w, FILE * file) and say "oh yeah I 
> know what to do" as opposed to having to figure out another flavor of 
> I/O abstraction and write a stub of some kind.

A simple implementation strategy would be to keep the FILE * argument,
but also provide a call to set/get an output handler, to be invoked only
if the FILE * argument is NULL.  That makes easy things easy and hard
things possible.

Principles.  You can't say A is         John Cowan <jcowan@reutershealth.com>
made of B or vice versa.  All mass      http://www.reutershealth.com
is interaction.  --Richard Feynman      http://www.ccil.org/~cowan


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS