Boost logo

Boost :

Subject: Re: [boost] [GSOC] XML library of Boost
From: Marshall Clow (mclow.lists_at_[hidden])
Date: 2013-04-29 14:23:11

On Apr 28, 2013, at 2:16 PM, Amos Ji <jmc891205_at_[hidden]> wrote:

> 2013/4/29 Marshall Clow <mclow.lists_at_[hidden]>
>> On Apr 28, 2013, at 12:11 PM, Andrey Semashev <andrey.semashev_at_[hidden]>
>> wrote:
>>> On Monday 29 April 2013 02:08:01 Amos Ji wrote:
>>>> Hi All,
>>>> I'm a graduate student from Fudan University in China. And I hope to
>>>> contribute some code to Boost during the GSOC.
>>>> I've scanned the idea page. The ideas in the page are all very interesting
>>>> and challenging. But what I'm interested in most is XML library, which is
>>>> at the bottom of page. I think the XML format is the most popular standard
>>>> for storing information so it's important for Boost to have a good XML
>>>> library.
>>> Agreed, a good and fast XML library would be most useful.
>> Yes, yes, please. I would add "with a good native C++ interface".
>> Get the interface right first.
> What does "native C++ interface" mean?

A "C++ interface", in my opinion, uses the same principles/concepts as the standard library.

As opposed to, say, looking like Java or Python.

> Are the other libraries in Boost are not allowed to use?

No, no - that's not what I meant.

>>>> In my opinion, an XML parser must be able to do these things:
>>>> 1. To Iterate over DOM nodes tree;
>>>> 2. To access the values of nodes and their attributes quickly;
>>>> 3. To insert or delete nodes or attribute of an exact node easily;
>>>> 4. To generate new XML from the structure which stores XML in the
>>>> library.
>>> IMHO, support for SAX is also mandatory. I would even say that SAX should be
>>> the first and the primary thing to be implemented in Boost.XML, as DOM can be
>>> added later on top of it if the time for GSOC allows.
>>> You also listed support for encodings in the optional features. I agree with
>>> it being optional with exception for Unicode. At least UTF-8 should be
>>> supported from the very start. But that should not be a problem now that
>>> we have Boost.Locale.
>> I am looking forward to seeing your design.
> Thank you. I have a long way towards success.
> BTW, will you mentor this XML library project?

Sadly, I do not have time to be a mentor this year :-(
I would be happy to look over your design and code and offer suggestions, though.

-- Marshall

Marshall Clow Idio Software <mailto:mclow.lists_at_[hidden]>

A.D. 1517: Martin Luther nails his 95 Theses to the church door and is promptly moderated down to (-1, Flamebait).
        -- Yu Suzuki

Boost list run by bdawes at, gregod at, cpdaniel at, john at