Name

Grove — XML document grove instance.

Synopsis

class Grove
  :  : public RefCountedWrappedObjectSernaApi::RefCountedWrappedObject
 {
public:
  

  enum GroveBuilderFlags { SGML =  0001, noIdProcessing =  0002, noSSep =  0004, noProlog =  0010, 
                           noMarkedSections =  0020, noEntitySections =  0040, noSections =  (noMarkedSections|noEntitySections), 
                           noComments =  0100, pureXmlData =  (noProlog|noSSep|noSections|noComments), noAttrGroups =  0200, 
                           noExtSubsetDecls =  0400, lineInfo =  01000 };

  // Grove saving flags. 
  enum SaveFlags { GS_SAVE_PROLOG =  0001, GS_SAVE_CONTENT =  0002, GS_SAVE_ENTITIES =  0004, 
                   GS_EXPAND_ENTITIES =  0010, GS_SAVE_DEFATTRS =  0020, GS_FORCE_SAVE =  0040, 
                   GS_RECURSIVE =  0100, GS_INDENT =  0200, GS_DONTSAVEDEFENC =  0400, 
                   GS_DEF_FILEFLAGS =  (GS_SAVE_PROLOG|GS_SAVE_CONTENT|GS_SAVE_ENTITIES|
                            GS_RECURSIVE), GS_DEF_STRFLAGS =  (GS_SAVE_PROLOG|GS_SAVE_CONTENT) };
  // construct/copy/destruct
  Grove(SernaApiBase * = 0);
  Grove(const SString &);
  ~Grove();

  // public member functions

  GroveDocument document() const;
  GroveIdManager idManager() ;
  SString doctypeName() const;
  SString topSysid() const;
  GroveEntityDeclSet entityDecls() const;
  GroveEntityDeclSet parameterEntityDecls() const;
  GroveEntityDeclSet notations() const;
  bool saveAsXmlFile(int = GS_DEF_FILEFLAGS, 
                     const GroveStripInfo & = GroveStripInfo(), 
                     const SString & = SString()) ;
  bool saveAsXmlString(SString &, int = GS_DEF_STRFLAGS, 
                       const GroveStripInfo & = GroveStripInfo()) ;

  // public static functions

  Grove buildGroveFromString(const SString &, GroveBuilderFlags = pureXmlData, 
                             bool = false, 
                             const CatalogManager & = CatalogManager()) ;
  Grove buildGroveFromFile(const SString &, GroveBuilderFlags = pureXmlData, 
                           bool = false, 
                           const CatalogManager & = CatalogManager()) ;
};

Description

Grove construct/copy/destruct

  1. Grove(SernaApiBase * = 0);


  2. Grove(const SString & rootElementName);


  3. ~Grove();


Grove public member functions

  1. GroveDocument document() const;

    Returns Document node of a document. This is a top-level node for a document (except prolog).


  2. GroveIdManager idManager() ;

    Returns associated #ID manager.


  3. SString doctypeName() const;

    Returns DOCTYPE name string.


  4. SString topSysid() const;

    Returns SYSID of the document.


  5. GroveEntityDeclSet entityDecls() const;

    Returns a set of general entity declarations.


  6. GroveEntityDeclSet parameterEntityDecls() const;

    Returns a set of parameter entity declarations.


  7. GroveEntityDeclSet notations() const;

    Returns a set of notations.


  8. bool saveAsXmlFile(int flags = GS_DEF_FILEFLAGS,                    const GroveStripInfo & = GroveStripInfo(),                    const SString & saveAs = SString()) ;

    Save grove to file or URL.


  9. bool saveAsXmlString(SString & saveTo, int flags = GS_DEF_STRFLAGS,                      const GroveStripInfo & = GroveStripInfo()) ;

    Save grove to string.


Grove public static functions

  1. Grove buildGroveFromString(const SString & s,                            GroveBuilderFlags flags = pureXmlData,                            bool dtdValidate = false,                            const CatalogManager & = CatalogManager()) ;

    Build grove from string and return result.


  2. Grove buildGroveFromFile(const SString & fn,                          GroveBuilderFlags flags = pureXmlData,                          bool dtdValidate = false,                          const CatalogManager & = CatalogManager()) ;

    Build grove from file.