From: Steve B. <Ste...@zv...> - 2001-12-03 03:25:07
|
Dear All, Just thought I'd give a "heads-up" on a couple of checkins to the TclXML project CVS repository. These are for the TclDOM module. Firstly, dom.tcl has been given improved support for XML Namespaces. Specifically, serialisation of documents that contain XML Namespaces should now work correctly (ie. prefixes will be added to element names). I don't think XML Namespace support is complete yet, but this makes it more usable. More significantly, there is now a new subdirectory 'src-libxml2'. This contains an initial implementation of a Tcl wrapper for the Gnome libxml2 library. Early days yet: you can parse and serialize a DOM document, get its document element and some node attributes, such as nodeName. Documents and nodes are wrapped up in Tcl_Obj structures so that manipulating the tree from Tcl is fast[*]. The eventual goal, of course, is to have this package completely TclDOM compatible. At the moment tcldom-libxml2 is a separate implementation to the rest of TclDOM; I have yet to engineer the package loading scripts so that one can choose between implementations. The underlying goal for this work is to integrate it with TclXSLT so that XSLT extensions written in Tcl will be able to handle nodes and nodelists. * In order to conserve memory I have not implemented a token -> node mapping. There is a token -> document mapping since a typical application will not have many documents. Since means that the app must keep a reference to the node. Another thing I have avoided is creating a Tcl command for each node. This is what tDOM does. I think doing so will cause too much memory consumption, but I'm open to suggestions. Does anyone desire compatibility with tDOM model? Enjoy, Steve Ball -- Steve Ball | XSLT Standard Library | Training & Seminars Zveno Pty Ltd | Web Tcl Complete | XML XSL Schemas http://www.zveno.com/ | TclXML TclDOM | Tcl, Web Development Ste...@zv... +---------------------------+--------------------- Ph. +61 2 6242 4099 | Mobile (0413) 594 462 | Fax +61 2 6242 4099 |
From: Steve B. <Ste...@zv...> - 2002-02-18 07:08:31
|
Dear TclXML'ers, Just checked in my changes to the CVS trunk. This work implements two things: a) a generic layer for TclDOM. This allows multiple DOM implementations to be used in a Tcl interpeter, with the DOM API switching between implementations. b) a wrapper for the Gnome libxml2 library that registers itself with the generic layer. This works! I've been able to create a document, parse XML and serialize. The wrapper creates a Tcl_Obj for each document and node, for fast manipulation of DOM objects. Early days yet. I'd like to get an alpha release out very soon (perhaps by the end of the week). The purpose of this message is to give everyone a "heads-up" and invite you all to look at the code and send me suggestions. NB. setting up autoconf/automake/whatever has never been my thing, so if anyone can help sort out the mess... (Peter F?). Enjoy, Steve Ball -- Steve Ball | XSLT Standard Library | Training & Seminars Zveno Pty Ltd | Web Tcl Complete | XML XSL Schemas http://www.zveno.com/ | TclXML TclDOM | Tcl, Web Development Ste...@zv... +---------------------------+--------------------- Ph. +61 2 6242 4099 | Mobile (0413) 594 462 | Fax +61 2 6242 4099 |
From: Peter F. <pet...@zv...> - 2002-02-18 09:21:21
|
On Mon, 18 Feb 2002 15:08, Steve Ball wrote: > > NB. setting up autoconf/automake/whatever has never been > my thing, so if anyone can help sort out the mess... > (Peter F?). Ok my "heads up " now ... so I'll start on the "mess" as soon as I can 8-= ) Peter |
From: Steve B. <Ste...@zv...> - 2002-04-13 03:18:40
|
Dear Developers, Yesterday I checked in my latest changes to the TclDOM and TclXSLT subprojects. The changes are entirely for the libxml2/libxslt wrapper code. Changes include: TclXSLT: register all EXSLT extensions. TclDOM: (Partial) Implementation of DOM L2 Events (compatible with the Tcl version), plus bug fixes and further support for TclDOM API (such as node configure -nodeValue, etc). Cheers, Steve Ball -- Steve Ball | XSLT Standard Library | Training & Seminars Zveno Pty Ltd | Web Tcl Complete | XML XSL Schemas http://www.zveno.com/ | TclXML TclDOM | Tcl, Web Development Ste...@zv... +---------------------------+--------------------- Ph. +61 2 6242 4099 | Mobile (0413) 594 462 | Fax +61 2 6242 4099 |
From: Steve B. <Ste...@zv...> - 2002-09-24 21:26:25
|
Hi All, Back from the Tcl Conference now... those trans-Pacific flights are such a joy because they give you a loooong time to hack code! Well, at least until the TiBook's battery runs out ;-) I have checked in my changes to the TclXML, TclDOM and TclXSLT packages. The main additions are to TclXSLT; extension elements have been implemented as well as preservation of XPath object data types. Implementing extension elements has opened a can of worms :-( I'd stear clear of them until I've sorted out the implications. Specifically, making nodes in the stylesheet available to the application conflicts with TclDOM, since both TclDOM and libxslt use the _private hook in the xmlNode structure. Preserving XPath object data types is a happier story. XPath objects have four types: nodeset, boolean, number and string. These are mapped to a Tcl list of TclDOM nodes, boolean, double and (surprise) string objects. The return result Tcl_Obj is mapped back to one of the XPath data types. No more pesky parsing of string values! Enjoy, Steve Ball -- Steve Ball | XSLT Standard Library | Training & Seminars Zveno Pty Ltd | Web Tcl Complete | XML XSL Schemas http://www.zveno.com/ | TclXML TclDOM | Tcl, Web Development Ste...@zv... +---------------------------+--------------------- Ph. +61 2 6242 4099 | Mobile (0413) 594 462 | Fax +61 2 6242 4099 |
From: Steve B. <Ste...@zv...> - 2003-01-23 19:59:29
|
FYI, I have just committed some changes to the TclDOM/libxml2 codebase: * Implemented missing functionality in document and node commands (-nextSibling, -previousSibling, etc; insertBefore, appendChild, etc). * Revamped event management. * Patches for doctype handling from c.l.t. newsgroup. Roy Nurmi's changes have been incorporated, but I've added event generation. It all compiles OK, and the libxml2 code now passes many more of the tests, but still doesn't complete the test suite correctly so I am continuing work on it. Cheers, Steve -- Steve Ball | XSLT Standard Library | Training & Seminars Zveno Pty Ltd | Web Tcl Complete | XML XSL Schemas http://www.zveno.com/ | TclXML TclDOM | Tcl, Web Development Ste...@zv... +---------------------------+--------------------- Ph. +61 2 6242 4099 | Mobile (0413) 594 462 | Fax +61 2 6242 4099 |