亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? xmlvalidator.hpp

?? IBM的解析xml的工具Xerces的源代碼
?? HPP
?? 第 1 頁 / 共 2 頁
字號:
/* * Copyright 1999-2004 The Apache Software Foundation. *  * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at *  *      http://www.apache.org/licenses/LICENSE-2.0 *  * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /*  * $Log: XMLValidator.hpp,v $  * Revision 1.10  2004/09/08 13:55:59  peiyongz  * Apache License Version 2.0  *  * Revision 1.9  2003/05/15 18:26:07  knoaman  * Partial implementation of the configurable memory manager.  *  * Revision 1.8  2003/03/07 18:08:10  tng  * Return a reference instead of void for operator=  *  * Revision 1.7  2002/11/07 21:59:22  tng  * Pass elemDecl to XMLValidator::validateAttrValue so that we can include element name in error message.  *  * Revision 1.6  2002/11/04 15:00:21  tng  * C++ Namespace Support.  *  * Revision 1.5  2002/09/04 18:17:55  tng  * Do not set IDREF to used during prevalidation.  *  * Revision 1.4  2002/08/20 16:54:11  tng  * [Bug 6251] Info during compilation.  *  * Revision 1.3  2002/07/11 18:55:44  knoaman  * Add a flag to the preContentValidation method to indicate whether to validate  * default/fixed attributes or not.  *  * Revision 1.2  2002/02/20 18:17:01  tng  * [Bug 5977] Warnings on generating apiDocs.  *  * Revision 1.1.1.1  2002/02/01 22:21:52  peiyongz  * sane_include  *  * Revision 1.17  2001/11/30 22:18:18  peiyongz  * cleanUp function made member function  * cleanUp object moved to file scope  * double mutex lock removed  *  * Revision 1.16  2001/11/13 13:24:46  tng  * Deprecate function XMLValidator::checkRootElement.  *  * Revision 1.15  2001/10/24 23:46:52  peiyongz  * [Bug 4342] fix the leak.  *  * Revision 1.14  2001/06/05 16:51:17  knoaman  * Add 'const' to getGrammar - submitted by Peter A. Volchek.  *  * Revision 1.13  2001/05/11 13:25:33  tng  * Copyright update.  *  * Revision 1.12  2001/05/03 20:34:22  tng  * Schema: SchemaValidator update  *  * Revision 1.11  2001/04/19 18:16:53  tng  * Schema: SchemaValidator update, and use QName in Content Model  *  * Revision 1.10  2001/03/21 21:56:03  tng  * Schema: Add Schema Grammar, Schema Validator, and split the DTDValidator into DTDValidator, DTDScanner, and DTDGrammar.  *  * Revision 1.9  2001/02/26 19:21:33  tng  * Schema: add parameter prefix in findElem and findAttr.  *  * Revision 1.8  2000/12/14 18:49:58  tng  * Fix API document generation warning: "Warning: end of member group without matching begin"  *  * Revision 1.7  2000/08/09 22:09:09  jpolast  * added const XMLCh* getURIText()  * allows parsers to use const URIs instead of appending  * to a XMLBuffer.  *  * Revision 1.6  2000/03/02 19:54:25  roddey  * This checkin includes many changes done while waiting for the  * 1.1.0 code to be finished. I can't list them all here, but a list is  * available elsewhere.  *  * Revision 1.5  2000/02/24 20:00:24  abagchi  * Swat for removing Log from API docs  *  * Revision 1.4  2000/02/15 23:59:07  roddey  * More updated documentation of Framework classes.  *  * Revision 1.3  2000/02/15 01:21:31  roddey  * Some initial documentation improvements. More to come...  *  * Revision 1.2  2000/02/06 07:47:49  rahulj  * Year 2K copyright swat.  *  * Revision 1.1.1.1  1999/11/09 01:08:38  twl  * Initial checkin  *  * Revision 1.4  1999/11/08 20:44:41  rahul  * Swat for adding in Product name and CVS comment log variable.  *  */#if !defined(XMLVALIDATOR_HPP)#define XMLVALIDATOR_HPP#include <xercesc/framework/XMLAttr.hpp>#include <xercesc/framework/XMLValidityCodes.hpp>XERCES_CPP_NAMESPACE_BEGINclass ReaderMgr;class XMLBufferMgr;class XMLElementDecl;class XMLScanner;class Grammar;/** *  This abstract class provides the interface for all validators. This is *  the simple amount of API that all validators must honor, in order for *  the scanner to use them to do validation. All validators will actually *  contain much more functionality than is accessible via this common API, *  but that functionality requires that you know what type of validator you *  are dealing with. * *  Basically, at this level, the primary concern is to be able to query *  core information about elements and attributes. Adding decls to the *  validator requires that you go through the derived interface because they *  all have their own decl types. At this level, we can return information *  via the base decl classes, from which each validator derives its own *  decl classes. */class XMLPARSER_EXPORT XMLValidator : public XMemory{public:    // -----------------------------------------------------------------------    //  Constructors are hidden, just the virtual destructor is exposed    // -----------------------------------------------------------------------    /** @name Destructor */    //@{    /**     *  The derived class should clean up its allocated data, then this class     *  will do the same for data allocated at this level.     */    virtual ~XMLValidator()    {    }    //@}    // -----------------------------------------------------------------------    //  The virtual validator interface    // -----------------------------------------------------------------------    /** @name Virtual validator interface */    //@{    /**      * The derived class should look up its declaration of the passed element      * from its element pool. It should then use the content model description      * contained in that element declaration to validate that the passed list      * of child elements are valid for that content model. The count can be      * zero, indicating no child elements.      *      * Note that whitespace and text content are not validated here. Those are      * handled by the scanner. So only element ids are provided here.      *      * @param  elemDecl    The element whose content is to be checked.      *      * @param  children    An array of element QName which represent the elements      *                     found within the parent element, i.e. the content      *                     to be validated.      *      * @param  childCount  The number of elements in the childIds array. It can      *                     be zero if the element had none.      */    virtual int checkContent    (        XMLElementDecl* const   elemDecl        , QName** const         children        , const unsigned int    childCount    ) = 0;    /**      * The derived class should fault in the passed XMLAttr value. It should      * use the passeed attribute definition (which is passed via the base      * type so it must often be downcast to the appropriate type for the      * derived validator class), to fill in the passed attribute. This is done      * as a performance enhancement since the derived class has more direct      * access to the information.      */    virtual void faultInAttr    (                XMLAttr&    toFill        , const XMLAttDef&  attDef    )   const = 0;    /**      * This method is called by the scanner after a Grammar is scanned.      */    virtual void preContentValidation(bool reuseGrammar,                                      bool validateDefAttr = false) = 0;    /**      * This method is called by the scanner after the parse has completed. It      * gives the validator a chance to check certain things that can only be      * checked after the whole document has been parsed, such as referential      * integrity of ID/IDREF pairs and so forth. The validator should just      * issue errors for any problems it finds.      */    virtual void postParseValidation() = 0;    /**      * This method is called by the scanner before a new document is about      * to start. It gives the validator a change to reset itself in preperation      * for another validation pass.      */    virtual void reset() = 0;    /**      * The derived class should return a boolean that indicates whether it      * requires namespace processing or not. Some do and some allow it to be      * optional. This flag is used to control whether the client code's      * requests to disable namespace processing can be honored or not.      */    virtual bool requiresNamespaces() const = 0;    /**      * The derived class should apply any rules to the passed attribute value      * that are above and beyond those defined by XML 1.0. The scanner itself      * will impose XML 1.0 rules, based on the type of the attribute. This      * will generally be used to check things such as range checks and other      * datatype related validation.      *      * If the value breaks any rules as defined by the derived class, it      * should just issue errors as usual.      */    virtual void validateAttrValue    (        const   XMLAttDef*                  attDef        , const XMLCh* const                attrValue        , bool                              preValidation = false        , const XMLElementDecl*             elemDecl = 0    ) = 0;    /**      * The derived class should apply any rules to the passed element decl      * that are above and beyond those defined by XML 1.0.      *      * If the value breaks any rules as defined by the derived class, it

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美电影一区| 亚洲va在线va天堂| 91精品欧美一区二区三区综合在 | 久久免费视频色| 欧美一区二区三区日韩| 日韩免费看的电影| 日韩欧美亚洲一区二区| 精品粉嫩超白一线天av| 久久久精品日韩欧美| 国产日韩欧美高清在线| 久久嫩草精品久久久久| 国产精品麻豆99久久久久久| 国产精品视频线看| 欧美一区二区三区在线看| 精品剧情v国产在线观看在线| 欧美一区二区三区思思人| 91精品国产色综合久久ai换脸 | 亚洲免费观看高清完整版在线观看熊| 亚洲欧洲国产日本综合| 亚洲一区二区av在线| 日本伊人精品一区二区三区观看方式| 日韩va欧美va亚洲va久久| 国产在线精品一区二区| www.66久久| 欧美麻豆精品久久久久久| 欧美xxxxxxxxx| 国产精品热久久久久夜色精品三区| 亚洲欧洲成人自拍| 免费精品视频在线| 成人免费高清视频| 911精品产国品一二三产区| 欧美精品少妇一区二区三区| 欧美一级在线观看| 国产精品色哟哟| 亚洲一区二区av在线| 视频一区二区三区在线| 丁香亚洲综合激情啪啪综合| 欧美男人的天堂一二区| 国产亚洲va综合人人澡精品| 亚洲乱码国产乱码精品精小说| 秋霞电影一区二区| 粉嫩嫩av羞羞动漫久久久| 91久久精品一区二区二区| 日本高清视频一区二区| 久久美女艺术照精彩视频福利播放 | 欧美一区二区国产| 最新不卡av在线| 看国产成人h片视频| 在线观看视频一区| 欧美国产在线观看| 久久99久久精品| 欧美三级韩国三级日本三斤| 国产精品免费网站在线观看| 麻豆国产一区二区| 欧美日韩在线播放一区| 国产精品对白交换视频| 国产精品一区二区x88av| 欧美日韩一级片在线观看| 国产精品久久久久久久久免费相片| 蜜臀av亚洲一区中文字幕| 欧美在线啊v一区| 中文字幕在线不卡视频| 国产成人综合在线播放| 精品免费日韩av| 久久精品国产秦先生| 欧美美女直播网站| 亚洲综合色婷婷| 欧美网站大全在线观看| 亚洲电影视频在线| 色婷婷精品久久二区二区蜜臂av| 国产欧美一区二区三区沐欲| 国产一本一道久久香蕉| 欧美mv和日韩mv的网站| 久久精品国产亚洲一区二区三区| 欧美一级艳片视频免费观看| 日本成人超碰在线观看| 欧美一区二区在线播放| 日本特黄久久久高潮| 制服丝袜中文字幕亚洲| 日本不卡一区二区三区| 日韩免费视频一区| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 99re6这里只有精品视频在线观看| 久久女同性恋中文字幕| 国产成人av福利| 国产精品美女一区二区| 色哟哟在线观看一区二区三区| 亚洲免费av高清| 欧美系列一区二区| 麻豆精品国产91久久久久久| 精品伦理精品一区| 粉嫩欧美一区二区三区高清影视| 综合分类小说区另类春色亚洲小说欧美| eeuss鲁片一区二区三区在线观看| 国产精品久久久久一区| 色视频成人在线观看免| 欧美a级一区二区| 亚洲精品一区二区三区影院| 成人激情校园春色| 亚洲国产精品久久久久秋霞影院| 日韩色视频在线观看| 成人激情小说乱人伦| 一区二区三区91| 亚洲精品一区二区三区影院 | 日韩欧美卡一卡二| 国产成人在线视频网址| 一区二区三区欧美在线观看| 欧美一级xxx| 91视频一区二区三区| 日本亚洲三级在线| 国产精品网站一区| 日韩一区二区三区高清免费看看| 国产ts人妖一区二区| 亚洲成人第一页| 欧美极品少妇xxxxⅹ高跟鞋| 欧美午夜电影一区| 国产一区二区三区四区五区入口| 日本不卡一区二区三区高清视频| 亚洲国产精华液网站w| 欧美日韩国产一级| 成人av电影在线| 玖玖九九国产精品| 一区二区三区不卡视频在线观看 | 日韩一区二区视频| 99在线视频精品| 久久国产乱子精品免费女| 综合激情网...| 国产日韩综合av| 日韩一级在线观看| 欧美色老头old∨ideo| 成人免费观看av| 国产一区二区三区四区五区美女 | 国产精品欧美综合在线| 91精品国产91久久综合桃花| 在线中文字幕一区二区| 国产aⅴ精品一区二区三区色成熟| 视频精品一区二区| 亚洲永久精品国产| 亚洲欧美日韩精品久久久久| 久久精品人人做| 精品国产乱码久久久久久图片| 欧美巨大另类极品videosbest | a级高清视频欧美日韩| 国产自产2019最新不卡| 美腿丝袜亚洲一区| 美腿丝袜亚洲色图| 精品一区二区三区欧美| 免费精品99久久国产综合精品| 五月天中文字幕一区二区| 中文字幕一区二区三区在线播放| 亚洲国产激情av| 国产精品每日更新在线播放网址| 国产亚洲一区二区三区四区| 久久男人中文字幕资源站| 欧美精品一区二区三区一线天视频| 日韩精品一区二区三区老鸭窝| 91精品欧美福利在线观看 | 国内偷窥港台综合视频在线播放| 日本欧美在线观看| 麻豆极品一区二区三区| 狠狠色伊人亚洲综合成人| 狠狠色丁香婷婷综合久久片| 韩日欧美一区二区三区| 不卡的av在线| 成人动漫一区二区三区| 成人性生交大合| 岛国av在线一区| 色综合中文字幕| 欧美日韩视频一区二区| 欧美一区二区日韩| 欧美一区国产二区| 欧美sm美女调教| 中文av一区特黄| 亚洲国产成人av网| 国内精品伊人久久久久影院对白| 国产毛片精品视频| 91香蕉国产在线观看软件| 欧美人与禽zozo性伦| 久久综合色一综合色88| 国产精品色噜噜| 午夜欧美电影在线观看| 麻豆国产91在线播放| 成人黄色a**站在线观看| 欧美婷婷六月丁香综合色| 精品日韩在线观看| 亚洲欧洲美洲综合色网| 亚洲午夜精品久久久久久久久| 日韩国产高清影视| 国产在线视频一区二区| av亚洲精华国产精华| 51午夜精品国产| 国产精品热久久久久夜色精品三区 | 成人高清视频在线| 欧美日韩国产一二三| 日本一区二区三级电影在线观看 | 国产超碰在线一区| 欧美三级电影在线观看| 国产网站一区二区| 日韩va欧美va亚洲va久久| 成人精品免费视频|