=====================
File: xerces-c-BEOS-g++-1_0.tar.gz
Author: Alain Gautherot <agautherot@hotmail.com>
Release: 1.0
Compatibility: >= R4
Location: contrib/util
Description: This is a port of a C++ XML parser/validator from Apache
(visit xml.apache.org) called Xerces (v1.0).
This package contains binaries for BeOS x86 as well as sample application
along with source code. This is a very good starting point for whoever
wants to learn/use XML.
=====================


Xerces-C V1.0 (copy-paste from documentation)
*************************************************************

Xerces-C is a validating XML parser written in a portable subset of C++.
Xerces-C makes it easy to give your application the ability to read and
write XML data. A shared library is provided for parsing, generating,
manipulating, and validating XML documents. Xerces-C is faithful to the
XML 1.0 recommendation and associated standards (DOM 1.0, SAX 1.0,
Namespaces).
It also provides early implementations of DOM Level 2.0 and soon it will
support XMLSchema. The parser provides high performance, modularity, and
scalability. Source code, samples and API documentation are provided with
the parser. For portability, care has been taken to make minimal use of
templates, no RTTI, no C++ namespaces, limited use of exceptions and minimal
use of #ifdefs.
Xerces-C is fully compliant with Unicode 3.0 specification, making it the
first Unicode 3.0 compliant application.

Features (copy-paste from documentation)
*************************************************************

Conforms to XML Spec 1.0
Tracking of latest DOM (Level 1.0), SAX and namespace specs
Experimental DOM Level 2.0 implementation
Source code, samples, and docs provided
Programmatic generation, validation of XML
Pluggable catalogs, validators, encodings
High performance
Customizable error handling

About the port
*************************************************************

Given that BeOS doesn't support wide characters, references to functions like
iswspace and the likely have been rewritten as their isspace and Co counterparts.

The applications haven't been tested in a multi-threaded test-case. However, it
should work (I used the condvar.zip package found on Be's ftp site to implement
UN*X's mutex)

What else to say?
I have not scheduled a PPC port, given that my BeBox is damn too slow. If anyone
interested, I guess it's not too much work based on what I had to do under x86.

How to install
*************************************************************

Just ungzip and untar the package (by double-clicking or from a Terminal).
You can update your environment so that the binaries and the library can be
found easily:
export PATH=$PATH:$XERCESROOT/bin
export LIBRARY_PATH=$LIBRARY_PATH:$XERCESROOT/lib

Alternatively, you can link/copy the binaries and library to $HOME/config/bin
and $HOME/config/lib, which I find better.