W3C home > Mailing lists > Public > www-style@w3.org > December 2000

Re: SAC and Flute : A C++ version integrated in the Xerces project

From: Philippe Le Hegaret <plh@w3.org>
Date: Mon, 11 Dec 2000 15:29:44 -0500
Message-ID: <3A353938.32FB990A@w3.org>
To: Pol-Brieuc LEMETAYER <pol-brieuc.lemetayer@eleve.emn.fr>
Cc: www-style@w3.org
Pol-Brieuc LEMETAYER wrote:
> We are a group of students from the Ecole des Mines de Nantes and from the
> Vrije Universiteit Brussel. We have a project in which we have to implement
> SAC in C++. We have made a C++ version of the Java implementation of SAC,
> translating the Java code and reusing some classes from the Xerces Lib. We
> are now trying to implement an equivalent of the Flute parser in C++.

This is a good news. Hakon and Bert were asking for that since a long time.

> What we would like to know :
> 
> - are there existing implementations of SAC and Flute in C++ and where  can
> we find them ?

As far as I know, no.

> - is there any equivalent of JavaCCParser for C++ and the definition file
> for CSS ?

As far as I know, no. You might want to consider using lex/yacc to achieve
that but I heard that they are not multi-threads compliant.

> - what should be the header information of each file we generated in C++ in
> order to respect the work of each authors ? ( shall we include the whole W3
> license, just mention it, etc ? ). The information on the W3 server is not
> very clear.

I don't think that there is a requirement from the W3C regarding the files
generated in C++. Since the project is done under the Apache project, I suggest
that you use the Apache conventions. You probably wants to have a look on the
C++ implementation of the DOM and do the same thing.

> Thank you for your answers.

Is there a document available on the Apache site? I'll add a link to it from
the SAC page.

> PS : For information, here is a short description of our project :
> 
> The Apache XML project aims at providing a free software library for
> managing XML documents in the most popular languages. Xerces/C is the C++
> bindings for managing XML documents using the "DOM" API. So far, Xerces/C
> lacks several parts of the XML DOM2 API because of lack of workforce. We
> propose here to implement and documents, according to the Apache XML
> project, a XML DOM2 module for managing Cascading Style Sheets (CSS).
> This project will provide a good experience for students and be useful for a
> large user community!
> To implement CSS into the Xerces/C project, two levels of API have to be
> written. The first, called "SAC" for "Simple API for CSS", is low level and
> simple, as its name suggests. The second is the CSS management in the DOM,
> which is bigger and high level.
> The project is therefore divided into four parts:
> 1- Specification of the C++ binding of SAC,
> 2- Implementation of the C++ binding of SAC,
> 3- Implementation of the DOM2 CSS API,

  A Java implementation of the CSS OM is available in Java in the Batik
  XML Apache project. You might want to have a look at it.

> 4- Documentation an sample programs.
> Parts 1 should come first an as early as possible.
> Part 2 and 3 come in parallel, although part 3 is substantially larger than
> part 2.
> Part 4 should be done during the whole project and be finalized.


Regards,
Philippe
Received on Monday, 11 December 2000 15:29:45 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 27 April 2009 13:54:06 GMT