Subject: ANN: 4Suite XML 1.0b2
Uche Ogbuji
uche.ogbuji at fourthought.com
Tue Oct 25 02:21:53 CEST 2005
Today we release 4Suite XML 1.0 beta 2, now available from Sourceforge
and ftp.4suite.org.
The most important development is that 4Suite is being split into three
separate packages:
4Suite XML - XML, XPath, XSLT, related technologies and support
libraries
4Suite RDF - RDF processing libraries and stand-alone DBMS
4Suite Repository - XML and RDF repository
The main reasons for this split are
* The core XML libraries are much more mature than the rest of 4Suite,
and indeed have been 1.0 quality for a long time
* The size of the overall package gives pause to people who just want
a basic XML processing toolkit
The plans are to push 4Suite XML to 1.0 and then focus on 4Suite RDF and
4Suite Repository.
Highlights of changes in 4Suite XML since the last release
--
* New user manual and improvements to API documentation
* Domlette: Convenience parse functions Ft.Xml.Parse
and Ft.Xml.ParsePath
* XSLT: XSLT processing convenience functions Ft.Xml.Xslt.Transform and
Ft.Xml.Xslt.TransformPath
* XML Catalogs: improved implementation and compliance
* XInclude and XPointer: improved coverage of the spec
* Yet more significant performance increases throughout:
* XSLT: Fixed huge performance bug with large, complex transforms
* Combined XML string routines into a single module
Ft.Xml.Lib.XmlString
- IsQName, IsNCName, IsName and IsNmtoken implemented in C
- Removed Python versions of implemented functions
* Domlette: switched struct allocs to use the Python object allocator
(speed)
* Domlette: changed callback qualified names to be reported as a
struct instead of a string with parts separated by a special
character (speed & memory)
* Domlette: changed Node.prefix to be computed runtime rather than
stored (memory)
* Domlette: added interning of individual name parts (speed & memory)
* Domlette: new parsing function ParseFragment (to replace
NonvalParse(parseAsEntity=True))
* Saxlette: Ft.Xml.Domlette.SaxWalker class for walking a DOM and
emitting SAX events as if from a parse
* Saxlette: suspend and resume support, which allows users to create
SAX applications using Python generator semantics
* Saxlette: new ContentHandler (Ft.Xml.Sax.DomBuilder) for constructing
Domlette Documents
* Saxlette: improved compatability with PySAX
* Saxlette: support for full LexicalHandler and ContentHandler
interfaces
* Fix case-sensitivity clashes in modules in some Windows set-ups
* Improved DocBook utilities
* moved SourceArgToInputSource from Ft.Xml.Lib to
Ft.Lib.CommandLine.CommandLineUtil
* RELAX NG: Add support for wxs string type facets maxLength, minLength
and pattern
* XPath: Added extension function typing information. Currently only
used for documentation purposes but could lead to automatic type
conversions.
* Installation locations should be accessed in the form
Ft.GetConfigVar('xxxDIR'), rather than the original Ft.xxxDIR
* XPointer: new Ft.Xml.XPointer.Compile convenience function
* XSLT: Add i18n in XSLT support (f:setup-translations and
f:gettext ext elements)
* XSLT: implement Extended versions of XSLT elements for debugging and
execution tracing (Ft.Xml.Xslt.ExtendedProcessingElements)
* XSLT: Support UTF-8 BOM in xsl:output and exsl:document (extension
attribute f:utfbom)Support safegaurs against file overwrite in
exsl:document (extension attribute f:overwrite-safeguard)
* XSLT: Add prefix to namespace mapping to 4XSLT command line
* Internal detail: Added UCS4/UTF-32 internal encoding support to Expat
to allow for direct copying of XML_Char into Py_UNICODE thus
preventing an unnecessary decoding step on our part. This also
greatly simplifies XML_Char routines.
4Suite is a comprehensive platform for XML and RDF processing, with base
libraries and a server framework. It is implemented in Python and C,
and provides Python and XSLT APIs, Web and command line interfaces.
4Suite XML is the core set of XML, XPath, XSLT, related technologies
and support libraries.
For general information, see:
http://4suite.org
http://uche.ogbuji.net/tech/4Suite/
http://uche.ogbuji.net/tech/akara/nodes/2003-01-01/4suite-section
For the files, see:
ftp://ftp.4suite.org/pub/4Suite/
Sources:
ftp://ftp.4suite.org/pub/4Suite/4Suite-XML-1.0b2.tar.gz
ftp://ftp.4suite.org/pub/4Suite/4Suite-XML-1.0b2.tar.bz2
ftp://ftp.4suite.org/pub/4Suite/4Suite-XML-1.0b2.zip
Windows installer:
ftp://ftp.4suite.org/pub/4Suite/4Suite-XML-1.0b2.win32-py2.2.exe
ftp://ftp.4suite.org/pub/4Suite/4Suite-XML-1.0b2.win32-py2.3.exe
ftp://ftp.4suite.org/pub/4Suite/4Suite-XML-1.0b2.win32-py2.4.exe
You can also get the files on Sourceforge:
https://sourceforge.net/projects/foursuite/
https://sourceforge.net/project/showfiles.php?group_id=39954
Documentation:
In the locations specified above, with filenames of the form
4Suite-XML-docs-1.0b1.*
Release notes
--
The current installation directory layout document tells where package
files
are installed:
http://4suite.org/docs/installation-locations.xhtml
For insulation from Domlette implementation changes, developers should
always use the generic Ft.Xml.Domlette APIs (rather than, say
Ft.Xml.cDomlette).
--
Uche Ogbuji Fourthought, Inc.
http://uche.ogbuji.net http://fourthought.com
http://copia.ogbuji.net http://4Suite.org
Articles: http://uche.ogbuji.net/tech/publications/
More information about the Python-announce-list
mailing list