home *** CD-ROM | disk | FTP | other *** search
/ Internet Magazine 2003 October / INTERNET108.ISO / pc / software / windows / building / xmlspy / xmlspyentcomplete5.exe / Data1.cab / _F4B99B593DD44B3280D2609824CBF87E < prev    next >
Encoding:
Text File  |  2003-05-21  |  3.4 KB  |  91 lines

  1. ////////////////////////////////////////////////////////////////////////
  2. //
  3. // Node.h
  4. //
  5. // This file was generated by XMLSPY 5 Enterprise Edition.
  6. //
  7. // YOU SHOULD NOT MODIFY THIS FILE, BECAUSE IT WILL BE
  8. // OVERWRITTEN WHEN YOU RE-RUN CODE GENERATION.
  9. //
  10. // Refer to the XMLSPY Documentation for further details.
  11. // http://www.altova.com/xmlspy
  12. //
  13. ////////////////////////////////////////////////////////////////////////
  14.  
  15.  
  16. #ifndef ALTOVA_NODE_H_INCLUDED
  17. #define ALTOVA_NODE_H_INCLUDED
  18.  
  19. #if _MSC_VER > 1000
  20.     #pragma once
  21. #endif // _MSC_VER > 1000
  22.  
  23.  
  24. namespace altova {
  25.  
  26.  
  27. class ALTOVA_DECLSPECIFIER CNode
  28. {
  29. public:
  30.     typedef enum
  31.     {
  32.         Element,
  33.         Attribute
  34.     } ENodeType;
  35.  
  36.     typedef enum
  37.     {
  38.         eSequence,
  39.         eAll,
  40.         eChoice
  41.     } EGroupType;
  42.  
  43. protected:
  44.     CNode();
  45.     CNode(xercesc::DOMNode* pThisNode);
  46.     CNode(xercesc::DOMDocument* pDOMDocument);
  47.     virtual ~CNode();
  48.  
  49. public:
  50.     tstring                    GetNodeName();
  51.     tstring                    GetNodeValue();
  52.     xercesc::DOMNode*        GetDOMNode();
  53.     //EGroupType                GetGroupType() const = 0;
  54.     void                    MapPrefix(const tstring& sPrefix, const tstring& sURI);
  55.  
  56. protected:
  57.     friend class CDoc;
  58.  
  59.     static tstring            InternalGetNodeValue(ENodeType eNodeType, xercesc::DOMNode* pNode);
  60.     tstring                    InternalGetElementValue();
  61.     void                    InternalSetElementValue(const tstring& sValue);
  62.     static bool                InternalNamesMatch(xercesc::DOMNode* pNode, const tstring& sNamespaceURI, const tstring& sName);
  63.  
  64.     int                        ChildCountInternal(ENodeType eNodeType, const tstring& sNamespaceURI, const tstring& sName);
  65.     bool                    InternalHasChild(ENodeType eNodeType, const tstring& sNamespaceURI, const tstring& sName);
  66.     xercesc::DOMNode*        InternalCreate(ENodeType eNodeType, const tstring& sNamespaceURI, const tstring& sName, const tstring& sValue);
  67.     xercesc::DOMNode*        InternalAppend(ENodeType eNodeType, const tstring& sNamespaceURI, const tstring& sName, const tstring& sValue);
  68.     xercesc::DOMNode*        InternalAppendNode(const tstring& sNamespaceURI, const tstring& sName, CNode& rNode);
  69.     xercesc::DOMNode*        InternalGetAt(ENodeType eNodeType, const tstring& sNamespaceURI, const tstring& sName, int nIndex);
  70.     xercesc::DOMNode*        InternalGet(ENodeType eNodeType, const tstring& sNamespaceURI, const tstring& sName);
  71.     xercesc::DOMNode*        InternalInsertAt(ENodeType eNodeType, const tstring& sNamespaceURI, const tstring& sName, int nIndex, const tstring& sValue);
  72.     xercesc::DOMNode*        InternalInsertNodeAt(const tstring& sNamespaceURI, const tstring& sName, int nIndex, CNode& rNode);
  73.     xercesc::DOMNode*        InternalReplaceAt(ENodeType eNodeType, const tstring& sNamespaceURI, const tstring& sName, int nIndex, const tstring& sValue);
  74.     xercesc::DOMNode*        InternalReplaceNodeAt(const tstring& sNamespaceURI, const tstring& sName, int nIndex, CNode& rNode);
  75.     xercesc::DOMNode*        InternalRemoveAt(ENodeType eNodeType, const tstring& sNamespaceURI, const tstring& sName, int nIndex);
  76.  
  77.     xercesc::DOMElement*    InternalAdopt(xercesc::DOMNode* pElement, const tstring& sNamespaceURI, const tstring& sName);
  78.     static void                DeclareNamespace(xercesc::DOMElement* pElement, const tstring& sPrefix, const tstring& sURI);
  79.     static const XMLCh*        LookupPrefix(xercesc::DOMNode* pNode, const XMLCh* szURI);
  80.     static void                InternalAdjustPrefix(xercesc::DOMNode* pDOMNode, bool bQualified);
  81.     virtual void            AdjustPrefix() = 0;
  82.  
  83.     xercesc::DOMNode*        m_pDOMNode;
  84. };
  85.  
  86.  
  87. } // namespace altova
  88.  
  89.  
  90. #endif // ALTOVA_NODE_H_INCLUDED
  91.