Index: trunk/include/helpers/except.h
===================================================================
--- trunk/include/helpers/except.h	(revision 62)
+++ trunk/include/helpers/except.h	(revision 64)
@@ -118,4 +118,9 @@
      ********************************************************************/
 
+    VOID _Optlink excExplainException(FILE *file,
+                                      PSZ pszHandlerName,
+                                      PEXCEPTIONREPORTRECORD pReportRec,
+                                      PCONTEXTRECORD pContextRec);
+
     VOID excRegisterHooks(PFNEXCOPENFILE pfnExcOpenFileNew,
                           PFNEXCHOOK pfnExcHookNew,
Index: trunk/include/helpers/gpih.h
===================================================================
--- trunk/include/helpers/gpih.h	(revision 62)
+++ trunk/include/helpers/gpih.h	(revision 64)
@@ -79,6 +79,6 @@
     #define RGBCOL_DARKGRAY         0x00808080
 
-    VOID XWPENTRY gpihManipulateRGB(PLONG plColor, BYTE bMultiplier, BYTE bDivisor);
-    typedef VOID XWPENTRY GPIHMANIPULATERGB(PLONG plColor, BYTE bMultiplier, BYTE bDivisor);
+    VOID XWPENTRY gpihManipulateRGB(PLONG plColor, double dFactor);
+    typedef VOID XWPENTRY GPIHMANIPULATERGB(PLONG plColor, double dFactor);
     typedef GPIHMANIPULATERGB *PGPIHMANIPULATERGB;
 
Index: trunk/include/helpers/procstat.h
===================================================================
--- trunk/include/helpers/procstat.h	(revision 62)
+++ trunk/include/helpers/procstat.h	(revision 64)
@@ -573,5 +573,5 @@
      *@@ QS32EVENT:
      *
-     *@@added V [umoeller]
+     *@@added V0.9.10 (2001-04-08) [umoeller]
      */
 
Index: trunk/include/helpers/ras.h
===================================================================
--- trunk/include/helpers/ras.h	(revision 62)
+++ trunk/include/helpers/ras.h	(revision 64)
@@ -1,2 +1,3 @@
+
 /*
  *@@sourcefile ras.h:
Index: trunk/include/helpers/timer.h
===================================================================
--- trunk/include/helpers/timer.h	(revision 62)
+++ trunk/include/helpers/timer.h	(revision 64)
@@ -1,2 +1,3 @@
+
 /*
  *@@sourcefile threads.h:
Index: trunk/include/helpers/xml.h
===================================================================
--- trunk/include/helpers/xml.h	(revision 62)
+++ trunk/include/helpers/xml.h	(revision 64)
@@ -36,4 +36,10 @@
         #define __SIMPLES_DEFINED
     #endif
+
+    /* ******************************************************************
+     *
+     *   Error handling
+     *
+     ********************************************************************/
 
     typedef enum _DOMERROR
@@ -72,9 +78,16 @@
         ERROR_DOM_NO_ELEMENT,
         ERROR_DOM_DUPLICATE_DOCTYPE,
-        ERROR_DOM_DOCTYPE_STRUCTURE,
+        ERROR_DOM_DOCTYPE_ROOT_NAMES_MISMATCH,
                 // DOCTYPE is given and root element name does not match doctype name
         ERROR_DOM_INTEGRITY,
-        ERROR_DOM_DUPLICATE_ATTRIBUTE
+        ERROR_DOM_DUPLICATE_ATTRIBUTE,
+
+        // @@@todo these
+        ERROR_DOM_VALIDATE_INVALID_ELEMENT,
+        ERROR_DOM_ELEMENT_DECL_OUTSIDE_DOCTYPE,
+        ERROR_DOM_ATTLIST_DECL_OUTSIDE_DOCTYPE
     } DOMERROR;
+
+    const char* xmlDescribeError(int code);
 
     /* ******************************************************************
@@ -185,5 +198,5 @@
      +      --------------+-------------+--------------+------------+--------------
      +                    |             |              |            |
-     +      ELEMENT       | tag name    | 0          8  | ELEMENT    | ATTRIBUTE
+     +      ELEMENT       | tag name    | 0            | ELEMENT    | ATTRIBUTE
      +                    |             |              | nodes      | nodes
      +                    |             |              |            |
@@ -306,4 +319,40 @@
 
     VOID xmlDeleteNode(PNODEBASE pNode);
+
+    /* ******************************************************************
+     *
+     *   Specific DOM node constructors
+     *
+     ********************************************************************/
+
+    APIRET xmlCreateElementNode(PDOMNODE pParent,
+                                const char *pcszElement,
+                                PDOMNODE *ppNew);
+
+    APIRET xmlCreateAttributeNode(PDOMNODE pElement,
+                                  const char *pcszName,
+                                  const char *pcszValue,
+                                  PDOMNODE *ppNew);
+
+    APIRET xmlCreateTextNode(PDOMNODE pParent,
+                             const char *pcszText,
+                             ULONG ulLength,
+                             PDOMNODE *ppNew);
+
+    APIRET xmlCreateCommentNode(PDOMNODE pParent,
+                                const char *pcszText,
+                                PDOMNODE *ppNew);
+
+    APIRET xmlCreatePINode(PDOMNODE pParent,
+                           const char *pcszTarget,
+                           const char *pcszData,
+                           PDOMNODE *ppNew);
+
+    APIRET xmlCreateDocumentTypeNode(PDOMDOCUMENTNODE pDocumentNode,
+                                     const char *pcszDoctypeName,
+                                     const char *pcszSysid,
+                                     const char *pcszPubid,
+                                     int fHasInternalSubset,
+                                     PDOMDOCTYPENODE *ppNew);
 
     /* ******************************************************************
@@ -541,4 +590,8 @@
     } CMNOTATIONDECLNODE, *PCMNOTATIONDECLNODE;
 
+    APIRET xmlCreateElementDecl(const char *pcszName,
+                                PXMLCONTENT pModel,
+                                PCMELEMENTDECLNODE *ppNew);
+
     /* ******************************************************************
      *
@@ -561,4 +614,5 @@
 
         PDOMDOCUMENTNODE pDocumentNode;
+                        // document node (contains all the elements)
 
         PDOMDOCTYPENODE pDocTypeNode;
@@ -593,4 +647,5 @@
     #define DF_PARSECOMMENTS        0x0001
     #define DF_PARSEDTD             0x0002
+    #define DF_FAIL_IF_NO_DTD       0x0004
 
     APIRET xmlCreateDOM(ULONG flParserFlags,
@@ -604,9 +659,15 @@
     APIRET xmlFreeDOM(PXMLDOM pDom);
 
+    /* ******************************************************************
+     *
+     *   DOM lookup
+     *
+     ********************************************************************/
+
     PCMELEMENTDECLNODE xmlFindElementDecl(PXMLDOM pDom,
                                           const XSTRING *pstrElementName);
 
     PCMATTRIBUTEDECLBASE xmlFindAttribDeclBase(PXMLDOM pDom,
-                                                 const XSTRING *pstrElementName);
+                                               const XSTRING *pstrElementName);
 
     PCMATTRIBUTEDECL xmlFindAttribDecl(PXMLDOM pDom,
@@ -615,4 +676,18 @@
                                        PCMATTRIBUTEDECLBASE *ppAttribDeclBase);
 
+    PDOMNODE xmlGetRootElement(PXMLDOM pDom);
+
+    PDOMNODE xmlGetFirstChild(PDOMNODE pDomNode);
+
+    PDOMNODE xmlGetLastChild(PDOMNODE pDomNode);
+
+    PDOMNODE xmlGetFirstText(PDOMNODE pElement);
+
+    PLINKLIST xmlGetElementsByTagName(PDOMNODE pParent,
+                                      const char *pcszName);
+
+    const XSTRING* xmlGetAttribute(PDOMNODE pElement,
+                                   const char *pcszAttribName);
+
 #endif
 
Index: trunk/include/helpers/xprf.h
===================================================================
--- trunk/include/helpers/xprf.h	(revision 62)
+++ trunk/include/helpers/xprf.h	(revision 64)
@@ -4,5 +4,5 @@
  *      header file for xprf.c. See remarks there.
  *
- *      This file is new with V0.82.
+ *      This file was new with V0.9.5 (?).
  *
  *      Note: Version numbering in this file relates to XWorkplace version
Index: trunk/include/helpers/xstring.h
===================================================================
--- trunk/include/helpers/xstring.h	(revision 62)
+++ trunk/include/helpers/xstring.h	(revision 64)
@@ -116,9 +116,11 @@
                            ULONG ulFirstReplOfs,
                            ULONG cReplLen,
-                           const XSTRING *pstrReplaceWith);
+                           const char *pcszReplaceWith,
+                           ULONG cReplaceWithLen);
     typedef ULONG XWPENTRY XSTRRPL(PXSTRING pxstr,
                                    ULONG ulFirstReplOfs,
                                    ULONG cReplLen,
-                                   const XSTRING *pstrReplaceWith);
+                                   const char *pcszReplaceWith,
+                                   ULONG cReplaceWithLen);
     typedef XSTRRPL *PXSTRRPL;
 
