| author | hgs | 
| Mon, 13 Sep 2010 13:16:40 +0530 | |
| changeset 34 | c7e9f1c97567 | 
| parent 0 | xml/legacyminidomparser/XMLDom/INC/GMXMLDocument.h@e35f40988205 | 
| permissions | -rw-r--r-- | 
| 0 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1 | // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies). | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2 | // All rights reserved. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 3 | // This component and the accompanying materials are made available | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 4 | // under the terms of "Eclipse Public License v1.0" | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 5 | // which accompanies this distribution, and is available | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 6 | // at the URL "http://www.eclipse.org/legal/epl-v10.html". | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 7 | // | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 8 | // Initial Contributors: | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 9 | // Nokia Corporation - initial contribution. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 10 | // | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 11 | // Contributors: | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 12 | // | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 13 | // Description: | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 14 | // This file contains the declaration of the CMDXMLDocument class which | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 15 | // is the root class for a Mini-DOM tree. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 16 | // | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 17 | // | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 18 | /** | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 19 | * @file | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 20 | * @publishedPartner | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 21 | * @released | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 22 | */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 23 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 24 | #ifndef __GMXMLDOCUMENT_H__ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 25 | #define __GMXMLDOCUMENT_H__ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 26 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 27 | #include <e32base.h> | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 28 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 29 | #include <e32std.h> | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 30 | #include <badesca.h> | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 31 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 32 | class CMDXMLElement; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 33 | class MXMLDtd; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 34 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 35 | /** | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 36 | MXMLDtd is a mixin class. If User wants to derive from MXMLDtd class , | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 37 | then one should not derive from any other class at the same time. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 38 | i.e A class can not derive from CBase at all using MXMLDtd. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 39 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 40 | Interface for DTD defintion classes. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 41 | A class derived from this interface can be used by CMDXMLParser or CMDXMLComposer | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 42 | to check that the data conforms to a specific DTD. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 43 | @publishedPartner | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 44 | @released | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 45 | */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 46 | class MXMLDtd | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 47 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 48 | 	{
 | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 49 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 50 | public: | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 51 | /** Tests if an element name is valid in the DTD. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 52 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 53 | @param aElement The element name to be tested | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 54 | @return ETrue the if element name valid, else EFalse | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 55 | @leave KErrNoMemory Out of memory */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 56 | virtual TBool IsValidElementL(const TDesC& aElement) const = 0; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 57 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 58 | /** Tests if an attribute name and value is valid in DTD. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 59 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 60 | @param aElement The element to which the attributes belong | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 61 | @param aAttribute The attribute to be tested | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 62 | @param aAttributeValue The attribute value to be tested | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 63 | @return KErrNone if the name and value are valid, KXMLBadAttributeName if the | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 64 | attribute name is invalid, or KXMLBadAttributeValue if the attribute value | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 65 | is invalid | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 66 | @leave KErrNoMemory Out of memory */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 67 | virtual TInt IsValidAttributeForElementL(const TDesC& aElement, const TDesC& aAttribute, const TDesC& aAttributeValue) const = 0; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 68 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 69 | /** Tests if the parent/child relationship is valid in DTD. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 70 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 71 | @param aParentElement The name of the parent element to be tested | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 72 | @param aChildElements An array of child element names to be tested | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 73 | @return ETrue if parent/child relationship is valid | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 74 | @leave KErrNoMemory Out of memory */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 75 | virtual TBool AreValidChildElementsL(const TDesC& aParentElement, const CDesCArray& aChildElements) const = 0; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 76 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 77 | /** Tests it is valid for a particular element to have children. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 78 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 79 | @param aElement The name of the element to be tested | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 80 | @return ETrue if it is valid for the element to have children */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 81 | virtual TBool CanElementHaveChildren(const TDesC& aElement) const = 0; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 82 | }; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 83 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 84 | #ifndef SYMBIAN_ENABLE_SPLIT_HEADERS | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 85 | #include "gmxmldummydtd.h" | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 86 | #endif | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 87 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 88 | class CMDXMLDocument : public CBase | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 89 | /** An XML document. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 90 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 91 | An object of this type owns the root element of a DOM tree and is not itself | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 92 | an XML node. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 93 | @publishedPartner | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 94 | @released | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 95 | */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 96 | {
 | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 97 | public: | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 98 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 99 | /** | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 100 | Allocates and constructs a new CMDXMLDocument. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 101 | @param iDtdRepresentation DTD for the document | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 102 | @return The new CMDXMLDocument object | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 103 | @leave KErrNoMemory Out of memory | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 104 | */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 105 | IMPORT_C static CMDXMLDocument* NewL(MXMLDtd& iDtdRepresentation); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 106 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 107 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 108 | /** | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 109 | Allocates and constructs a new CMDXMLDocument, leaving the object on the cleanup stack. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 110 | @param iDtdRepresentation DTD for the document | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 111 | @return The new CMDXMLDocument object | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 112 | @leave KErrNoMemory Out of memory | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 113 | */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 114 | IMPORT_C static CMDXMLDocument* NewLC(MXMLDtd& iDtdRepresentation); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 115 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 116 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 117 | /** Allocates and constructs a new CMDXMLDocument, without specifying a DTD. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 118 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 119 | Documents created using this function will not be able to validate the XML. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 120 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 121 | @return The new CMDXMLDocument | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 122 | @leave KErrNoMemory Out of memory */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 123 | IMPORT_C static CMDXMLDocument* NewL(); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 124 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 125 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 126 | /** Allocates and constructs a new CMDXMLDocument, without specifying a DTD, | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 127 | leaving the object on the cleanup stack. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 128 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 129 | Documents created using this function will not be able to validate the XML. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 130 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 131 | @return The new CMDXMLDocument | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 132 | @leave KErrNoMemory Out of memory */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 133 | IMPORT_C static CMDXMLDocument* NewLC(); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 134 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 135 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 136 | /** Destructor. */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 137 | IMPORT_C virtual ~CMDXMLDocument(); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 138 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 139 | /** Gets the root element of the DOM tree. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 140 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 141 | @return The root element of the DOM tree */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 142 |   	inline CMDXMLElement* DocumentElement() {return iRootElement;}
 | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 143 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 144 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 145 | /** Sets the document's XML version processing instruction. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 146 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 147 | @param aVersionTag The XML version processing instruction. This must begin | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 148 | with <?xml and end with >, for example <?xml version="1.0"?>. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 149 | @return ETrue if successful, EFalse if the parameter format is not correct | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 150 | @leave KErrNoMemory Out of memory */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 151 | IMPORT_C TBool SetVersionTagL(const TDesC& aVersionTag); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 152 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 153 | /** Sets the document's DOCTYPE declaration. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 154 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 155 | @param aDocTypeTag The XML DOCTYPE declaration. This must begin<!DOCTYPE and | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 156 | end >. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 157 | @return ETrue if operation succeeds, EFalse if the parameter format is not | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 158 | correct | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 159 | @leave KErrNoMemory Out of memory */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 160 | IMPORT_C TBool SetDocTypeTagL(const TDesC& aDocTypeTag); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 161 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 162 | /** Tests whether an element name is valid for the document. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 163 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 164 | @param aElement The element name to be tested | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 165 | @return True the if element name valid, else false | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 166 | @leave KErrNoMemory Out of memory */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 167 | IMPORT_C TBool ValidElementNameL(const TDesC& aElement) const; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 168 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 169 | /** | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 170 | Tests whether it is valid for a particular element to have children. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 171 | @param aElement the name of the element to be tested | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 172 | @return ETrue if it is valid for element to have children | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 173 | */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 174 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 175 | IMPORT_C TBool CanElementHaveChildren(const TDesC& aElement) const; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 176 | /** Gets the document's XML version processing instruction. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 177 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 178 | @return The document's XML version processing instruction. */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 179 |   	inline const TDesC& VersionTag() const {return *iVersionTag;}
 | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 180 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 181 | /** Gets the document's DOCTYPE declaration. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 182 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 183 | @return The document's DOCTYPE declaration. */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 184 |   	inline const TDesC& DocTypeTag() const  {return *iDocTypeTag;}
 | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 185 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 186 | /** Gets a reference to the MXMLDtd object to use for DTD validation checking. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 187 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 188 | @return DTD */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 189 | const MXMLDtd& CMDXMLDocument::DtdRepresentation() const; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 190 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 191 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 192 | private: | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 193 | CMDXMLDocument(MXMLDtd& aDtdRepresentation); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 194 | CMDXMLDocument(); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 195 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 196 | /* | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 197 | * sets the root elememnt of the DOM tree. | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 198 | */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 199 |   	inline void SetDocumentElement(CMDXMLElement* aRootElement) {iRootElement = aRootElement;}
 | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 200 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 201 | void ConstructL(); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 202 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 203 | IMPORT_C void PlaceholderForRemovedExport1(MXMLDtd& aDtdRepresentation); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 204 | IMPORT_C void PlaceholderForRemovedExport2(); | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 205 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 206 | private: | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 207 | CMDXMLElement* iRootElement; // Root element node of the DOM tree | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 208 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 209 | protected: | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 210 | /** XML Version text */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 211 | HBufC* iVersionTag; // XML Version text | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 212 | /** Document type text */ | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 213 | HBufC* iDocTypeTag; // Document type text | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 214 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 215 | private: | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 216 | MXMLDtd* iDtdRepresentation; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 217 | TBool iOwnsDtd; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 218 | }; | 
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 219 | |
| 
e35f40988205
Revision: 200947
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 220 | #endif |