williamr@2: // Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@2: // All rights reserved. williamr@2: // This component and the accompanying materials are made available williamr@4: // under the terms of "Eclipse Public License v1.0" williamr@2: // which accompanies this distribution, and is available williamr@4: // at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@2: // williamr@2: // Initial Contributors: williamr@2: // Nokia Corporation - initial contribution. williamr@2: // williamr@2: // Contributors: williamr@2: // williamr@2: // Description: williamr@2: // williamr@2: williamr@2: #ifndef PARSERFEATURE_H williamr@2: #define PARSERFEATURE_H williamr@2: williamr@2: /** williamr@2: @file williamr@2: @SYMPurpose Declares XML Framework parser features williamr@2: @publishedAll williamr@2: @released williamr@2: */ williamr@2: williamr@2: williamr@2: namespace Xml williamr@2: { williamr@2: williamr@2: /** Features defined for XML Framework parser plug-ins. williamr@2: williamr@2: Every parser has a set of optional features that it may implement. This williamr@2: enumeration is the set of all features known to the framework and its williamr@2: plug-ins. Each feature is assigned a flag bit from the 32 possible. williamr@2: williamr@2: @see Xml::CParser::EnableFeature williamr@2: */ williamr@2: enum TParserFeature williamr@2: { williamr@2: /** Convert elements and attributes to lowercase. This can be used for williamr@2: case-insensitive HTML so that a tag can be matched to a static string in williamr@2: the string pool. williamr@2: @see RStringPool */ williamr@2: EConvertTagsToLowerCase = 0x0001, williamr@2: williamr@2: /** Report an error when unrecognised tags are found. */ williamr@2: EErrorOnUnrecognisedTags = 0x0002, williamr@2: williamr@2: /** Reports unrecognised tags. */ williamr@2: EReportUnrecognisedTags = 0x0004, williamr@2: williamr@2: /** Report the namespace. */ williamr@2: EReportNamespaces = 0x0008, williamr@2: williamr@2: /** Report the namespace prefix. */ williamr@2: EReportNamespacePrefixes = 0x0010, williamr@2: williamr@2: /** Send all content data for an element in one chunk. */ williamr@2: ESendFullContentInOneChunk = 0x0020, williamr@2: williamr@2: /** Report namespace mappings via the OnStartPrefixMapping & williamr@2: OnEndPrefixMapping methods. williamr@2: @see MContentHandler */ williamr@2: EReportNamespaceMapping = 0x0040, williamr@2: williamr@2: /** Describe the data in the specified encoding, otherwise use utf-8. */ williamr@2: ERawContent = 0x0080, williamr@2: williamr@2: /** When this feature is enabled the parser will allow (not generate an williamr@2: error) entities from external subsets to appear in element attribute williamr@2: values. When the replacement text of such entities are not known the williamr@2: parser will return the entity reference as it appears in the document williamr@2: e.g. "&ext_ref;" */ williamr@2: EReplaceIntEntityFromExtSubsetByRef = 0x0100, williamr@2: williamr@2: /** When this feature is not supported the parser is an XML 1.0 parser. williamr@2: When set parser can handle both XML 1.1 & 1.0 documents, otherwise just williamr@2: XML 1.0. Equivalent to the standard SAX2 feature "xml-1.1" */ williamr@2: EXmlVersion_1_1 = 0x0200, williamr@2: williamr@2: /** Used to mark the highest flag in use. williamr@2: Update to reflect any new enumerations added. */ williamr@2: ELastFeature = EXmlVersion_1_1, williamr@2: }; williamr@2: williamr@2: } williamr@2: williamr@2: #endif // PARSERFEATURE_H