Can someone direct me to documentation on where to find documents on
runtime linking of dynamic C/C++ libraries?  I wish to develop an
architecture whereby new dynamic libraries can be treated as plug-in
enhancements to previously compiled products.

A plug-in architecture may allow future XML studio products to effectively use
custom XPATH functions in their stylesheet development activities.

I may be willing to submit some of my libraries for open-source
development and maintenance.  Some guidance on how to accomplish this
would be appreciated.

XALAN-C xslt is a powerful XSLT-1 stylesheet processor that is Xpath-1 compliant. When will the XALAN-C current subversion be published as a production package?
Do you need help with documentation?  What documentation tools are required?

I am currently satisfied with the features of Xpath-1 in XALAN-C. Some features
of Xpath-2 may be useful but are currently not essential for the products
I support.

I prefer getting the current sources for XALAN-C from the source subversion
repository.  These sources are supported by the newer C/C++ development
environments.

I have had no problems compiling the XALAN-C on Linux and creating
applications with the GNU toolset.  I did have a linker problem which
needed enhanced stack framing to accommodate error propagation between
shared dynamic libraries.

I have no current problems compiling XALAN-C on Microsoft Windows
using Studio 2003, 2005, and 2008.

I have had no problem creating custom XPATH extensions, albeit non-portable,
to enhance stylesheet operations. These are C++ enhancements to the function
class that are registered into XALAN transformer using custom namespaces
and XPATH function names.

1. "ns:cvdate(...)" converts between over a dozen date presentation formats
to other date presentation formats, and includes a floating century window
to accommodate 2-digit years.

2. virtual XPATH database functions that can load named key-value tables,
search and sort the key-value tables, add delete and update key-value tables,
export the key-value tables to a nodeset for "foreach" statements, etc.

3. custom ODBC database connections via XPATH to accommodate complex
database inquiry and reporting activities.

To date, the XALAN-C transformer applications require knowledge of the
functions to be installed.  I am trying to design an architecture that
will accommodate the installation of custom XPATH functions as
runtime plug-ins.  A plug-in architecture may allow future XML studio
products to effectively use custom XPATH functions in their stylesheet
development activities.

I am still trying experiments with dynamic libraries of XPATH functions.
The goal is to create an XALAN-C transformer that knows how to link
separately-compiled dynamic libraries at runtime instead of project
build time.  The resulting XALAN-C transformer will need the intelligence
of a system linker to load the dynamic libraries and acquire the symbol
table linkages without apriori knowledge of the library symbol tables.

In effect, the dynamic libraries of extended XPATH functions are to be
treated as runtime plug-in enhancements.  I already handle compile-time
custom XPATH functions.

The plug-in tasks may be easier with JAVA, but our systems have millions of
dollars of vested interest in the C/C++ architectures.  The interpretive
nature of JAVA (albeit .jar) can become a significant performance
bottleneck when incorporated into the heart of a high-volume database
transaction message switch.

The error trapping capabilities of XALAN-C and XERCES-C are compatible
with creating reliable infrastructures with error-recovery try/catch
wrappers.

Sincerely,
Steve

Reply via email to