Ignore:
Timestamp:
Apr 26, 2001, 10:21:31 PM (24 years ago)
Author:
umoeller
Message:

Sources as for V0.9.11.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/helpers/xml.h

    r39 r64  
    3636        #define __SIMPLES_DEFINED
    3737    #endif
     38
     39    /* ******************************************************************
     40     *
     41     *   Error handling
     42     *
     43     ********************************************************************/
    3844
    3945    typedef enum _DOMERROR
     
    7278        ERROR_DOM_NO_ELEMENT,
    7379        ERROR_DOM_DUPLICATE_DOCTYPE,
    74         ERROR_DOM_DOCTYPE_STRUCTURE,
     80        ERROR_DOM_DOCTYPE_ROOT_NAMES_MISMATCH,
    7581                // DOCTYPE is given and root element name does not match doctype name
    7682        ERROR_DOM_INTEGRITY,
    77         ERROR_DOM_DUPLICATE_ATTRIBUTE
     83        ERROR_DOM_DUPLICATE_ATTRIBUTE,
     84
     85        // @@@todo these
     86        ERROR_DOM_VALIDATE_INVALID_ELEMENT,
     87        ERROR_DOM_ELEMENT_DECL_OUTSIDE_DOCTYPE,
     88        ERROR_DOM_ATTLIST_DECL_OUTSIDE_DOCTYPE
    7889    } DOMERROR;
     90
     91    const char* xmlDescribeError(int code);
    7992
    8093    /* ******************************************************************
     
    185198     +      --------------+-------------+--------------+------------+--------------
    186199     +                    |             |              |            |
    187      +      ELEMENT       | tag name    | 0          8  | ELEMENT    | ATTRIBUTE
     200     +      ELEMENT       | tag name    | 0            | ELEMENT    | ATTRIBUTE
    188201     +                    |             |              | nodes      | nodes
    189202     +                    |             |              |            |
     
    306319
    307320    VOID xmlDeleteNode(PNODEBASE pNode);
     321
     322    /* ******************************************************************
     323     *
     324     *   Specific DOM node constructors
     325     *
     326     ********************************************************************/
     327
     328    APIRET xmlCreateElementNode(PDOMNODE pParent,
     329                                const char *pcszElement,
     330                                PDOMNODE *ppNew);
     331
     332    APIRET xmlCreateAttributeNode(PDOMNODE pElement,
     333                                  const char *pcszName,
     334                                  const char *pcszValue,
     335                                  PDOMNODE *ppNew);
     336
     337    APIRET xmlCreateTextNode(PDOMNODE pParent,
     338                             const char *pcszText,
     339                             ULONG ulLength,
     340                             PDOMNODE *ppNew);
     341
     342    APIRET xmlCreateCommentNode(PDOMNODE pParent,
     343                                const char *pcszText,
     344                                PDOMNODE *ppNew);
     345
     346    APIRET xmlCreatePINode(PDOMNODE pParent,
     347                           const char *pcszTarget,
     348                           const char *pcszData,
     349                           PDOMNODE *ppNew);
     350
     351    APIRET xmlCreateDocumentTypeNode(PDOMDOCUMENTNODE pDocumentNode,
     352                                     const char *pcszDoctypeName,
     353                                     const char *pcszSysid,
     354                                     const char *pcszPubid,
     355                                     int fHasInternalSubset,
     356                                     PDOMDOCTYPENODE *ppNew);
    308357
    309358    /* ******************************************************************
     
    541590    } CMNOTATIONDECLNODE, *PCMNOTATIONDECLNODE;
    542591
     592    APIRET xmlCreateElementDecl(const char *pcszName,
     593                                PXMLCONTENT pModel,
     594                                PCMELEMENTDECLNODE *ppNew);
     595
    543596    /* ******************************************************************
    544597     *
     
    561614
    562615        PDOMDOCUMENTNODE pDocumentNode;
     616                        // document node (contains all the elements)
    563617
    564618        PDOMDOCTYPENODE pDocTypeNode;
     
    593647    #define DF_PARSECOMMENTS        0x0001
    594648    #define DF_PARSEDTD             0x0002
     649    #define DF_FAIL_IF_NO_DTD       0x0004
    595650
    596651    APIRET xmlCreateDOM(ULONG flParserFlags,
     
    604659    APIRET xmlFreeDOM(PXMLDOM pDom);
    605660
     661    /* ******************************************************************
     662     *
     663     *   DOM lookup
     664     *
     665     ********************************************************************/
     666
    606667    PCMELEMENTDECLNODE xmlFindElementDecl(PXMLDOM pDom,
    607668                                          const XSTRING *pstrElementName);
    608669
    609670    PCMATTRIBUTEDECLBASE xmlFindAttribDeclBase(PXMLDOM pDom,
    610                                                  const XSTRING *pstrElementName);
     671                                               const XSTRING *pstrElementName);
    611672
    612673    PCMATTRIBUTEDECL xmlFindAttribDecl(PXMLDOM pDom,
     
    615676                                       PCMATTRIBUTEDECLBASE *ppAttribDeclBase);
    616677
     678    PDOMNODE xmlGetRootElement(PXMLDOM pDom);
     679
     680    PDOMNODE xmlGetFirstChild(PDOMNODE pDomNode);
     681
     682    PDOMNODE xmlGetLastChild(PDOMNODE pDomNode);
     683
     684    PDOMNODE xmlGetFirstText(PDOMNODE pElement);
     685
     686    PLINKLIST xmlGetElementsByTagName(PDOMNODE pParent,
     687                                      const char *pcszName);
     688
     689    const XSTRING* xmlGetAttribute(PDOMNODE pElement,
     690                                   const char *pcszAttribName);
     691
    617692#endif
    618693
Note: See TracChangeset for help on using the changeset viewer.