00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00045 #ifndef _OSRTXML_H_
00046 #define _OSRTXML_H_
00047
00048 #define OSXMLNS12
00049
00050 #include "rtxsrc/rtxCommon.h"
00051 #include "rtxmlsrc/rtSaxDefs.h"
00052 #include "rtxsrc/rtxDList.h"
00053 #include "rtxsrc/rtxMemBuf.h"
00054 #include "rtxmlsrc/rtXmlExternDefs.h"
00055 #include "rtxmlsrc/rtXmlErrCodes.h"
00056 #include "rtxmlsrc/rtXmlNamespace.h"
00057
00058
00059
00060 #define OSUPCASE 0x00008000
00061 #define OSTERMSTART 0x00004000
00062 #define OSEMPTYELEM 0x00002000
00063 #define OSQUALATTR 0x00001000
00064 #define OSXMLFRAG 0x00000800
00065 #define OSXMLNSSET 0x00000400
00066 #define OSXMLC14N 0x00000200
00067 #define OSXSIATTR 0x00000100
00068 #define OSXMLNOCMPNS 0x00000080
00069
00070 typedef enum {
00071 OSXMLUTF8,
00072 OSXMLUTF16
00073 } OSXMLEncoding;
00074
00075 typedef enum {
00076 OSSOAPNONE, OSSOAPHEADER, OSSOAPBODY, OSSOAPFAULT
00077 } OSXMLSOAPMsgType;
00078
00079 typedef enum {
00080 OSXMLBOM_NO_BOM,
00081 OSXMLBOM_UTF32_BE,
00082 OSXMLBOM_UTF32_LE,
00083 OSXMLBOM_UTF16_BE,
00084 OSXMLBOM_UTF16_LE,
00085 OSXMLBOM_UTF8
00086 } OSXMLBOM;
00087
00088 typedef struct OSXMLFacets {
00089 int totalDigits;
00090 int fractionDigits;
00091 } OSXMLFacets;
00092
00093 typedef struct {
00094 const OSUTF8CHAR* value;
00095 size_t length;
00096 } OSXMLStrFragment;
00097
00098 typedef struct {
00099 OSXMLStrFragment mQName;
00100 OSXMLStrFragment mLocalName;
00101 OSXMLStrFragment mPrefix;
00102 } OSXMLNameFragments;
00103
00104 typedef struct OSXMLItemDescr {
00105 OSXMLStrFragment localName;
00106 OSINT16 nsidx;
00107 } OSXMLItemDescr;
00108
00109 typedef OSXMLItemDescr OSXMLAttrDescr;
00110 typedef OSXMLItemDescr OSXMLElemDescr;
00111
00112 typedef struct OSXMLElemIDRec {
00113 OSXMLElemDescr descr;
00114 OSUINT16 id;
00115 } OSXMLElemIDRec;
00116
00117 typedef struct OSXMLGroupDesc {
00118 int row;
00119 int num;
00120 int anyCase;
00121 } OSXMLGroupDesc;
00122
00123 typedef struct OSXSDAnyType {
00124 OSXMLSTRING value;
00125 OSRTDList attrs;
00126 } OSXSDAnyType;
00127
00128 #define OSXMLFRAGSEQUAL(frag1,frag2) \
00129 (frag1.length==frag2.length && !memcmp(frag1.value,frag2.value,frag1.length))
00130
00131 #define OSXMLQNAMEEQUALS(xnamefrag,qnametext) rtxUTF8StrnEqual \
00132 (xnamefrag.mQName.value, OSUTF8(qnametext), xnamefrag.mQName.length)
00133
00134 #define OSXMLSETUTF8DECPTR(pctxt,str) \
00135 rtxInitContextBuffer (pctxt, OSRTSAFECONSTCAST (OSOCTET*, str), \
00136 OSUTF8LEN (str))
00137
00138 #define IS_XMLNSATTR(name) \
00139 ((OSUTF8LEN(name) >= 5) && name[0] == 'x' && name[1] == 'm' && \
00140 name[2] == 'l' && name[3] == 'n' && name[4] == 's')
00141
00142 #define IS_XSIATTR(name) \
00143 ((OSUTF8LEN(name) >= 4) && name[0] == 'x' && name[1] == 's' && \
00144 name[2] == 'i' && name[3] == ':')
00145
00146
00147
00148
00149
00150 typedef struct {
00151 OSFreeCtxtAppInfoPtr pFreeFunc;
00152 OSResetCtxtAppInfoPtr pResetFunc;
00153 OSUTF8CHAR* schemaLocation;
00154 OSUTF8CHAR* noNSSchemaLoc;
00155 OSUTF8CHAR* xsiTypeAttr;
00156 OSXMLEncoding encoding;
00157 OSRTDList namespaceList;
00158 OSRTDList encodedNSList;
00159 OSRTDList sortedAttrList;
00160 OSXMLNSPfxLinkStack nsPfxLinkStack;
00161 OSXMLNSURITable nsURITable;
00162 OSRTMEMBUF memBuf;
00163 OSINT32 mSaxLevel;
00164 OSINT32 mSkipLevel;
00165 OSUINT32 maxSaxErrors;
00166 OSUINT32 errorsCnt;
00167 OSUINT8 indent;
00168 OSBOOL mbCdataProcessed;
00169 char indentChar;
00170 OSUINT8 soapVersion;
00171 OSXMLFacets facets;
00172 const OSUTF8CHAR* encodingStr;
00173 OSXMLBOM byteOrderMark;
00174 struct OSXMLReader* pXmlPPReader;
00175
00176 OSRTBuffer savedBuffer;
00177 OSRTFLAGS savedFlags;
00178 OSOCTET* attrsBuff;
00179 size_t attrsBuffSize;
00180 size_t attrStartPos;
00181 } OSXMLCtxtInfo;
00182
00183 typedef enum {
00184 OSXMLINIT,
00185 OSXMLHEADER,
00186 OSXMLSTART,
00187 OSXMLATTR,
00188 OSXMLDATA,
00189 OSXMLEND
00190 } OSXMLState;
00191
00192 typedef struct OSXMLQName {
00193 const OSUTF8CHAR* nsPrefix;
00194 const OSUTF8CHAR* ncName;
00195 } OSXMLQName;
00196
00197 struct OSSAXHandlerBase;
00198
00199 typedef struct OSIntegerFmt {
00200 OSINT8 integerMaxDigits;
00201
00202 OSBOOL signPresent;
00203
00204 } OSIntegerFmt;
00205
00206 typedef struct OSDecimalFmt {
00207 OSINT8 totalDigits;
00208 OSINT8 fractionDigits;
00209
00210 OSINT8 fractionMinDigits;
00211
00212
00213 OSINT8 integerMaxDigits;
00214
00215
00216 OSINT8 integerMinDigits;
00217
00218 OSBOOL signPresent;
00219
00220 OSBOOL pointPresent;
00221
00222 OSUINT8 nPatterns;
00223 const char* const* patterns;
00224
00225 } OSDecimalFmt;
00226
00227 typedef struct OSDoubleFmt {
00228 OSINT8 totalDigits;
00229 OSINT8 fractionDigits;
00230
00231 OSINT8 fractionMinDigits;
00232
00233
00234 OSINT8 integerMaxDigits;
00235
00236
00237 OSINT8 integerMinDigits;
00238
00239 OSINT8 expSymbol;
00240
00241 OSINT16 expMinValue;
00242 OSINT16 expMaxValue;
00243 OSINT8 expDigits;
00244
00245
00246 OSBOOL signPresent;
00247
00248 OSBOOL pointPresent;
00249
00250 OSBOOL expPresent;
00251
00252 OSBOOL expSignPresent;
00253
00254 } OSDoubleFmt;
00255
00256 typedef struct {
00257 size_t offset;
00258 size_t length;
00259 size_t prefixLength;
00260 size_t nameLength;
00261 } OSXMLSortedAttrOffset;
00262
00263 #define OSXMLINDENT 3
00264
00265 #ifdef XML_UNICODE
00266 #define rtXmlErrAddStrParm rtxErrAddUniStrParm
00267 #else
00268 #define rtXmlErrAddStrParm rtxErrAddStrParm
00269 #endif
00270
00274 typedef enum {
00275 OSXMLWSM_PRESERVE = 0,
00276 OSXMLWSM_REPLACE,
00277 OSXMLWSM_COLLAPSE
00278 } OSXMLWhiteSpaceMode;
00279
00280 #ifdef __cplusplus
00281 extern "C" {
00282 #endif
00283
00284
00285
00292 EXTERNXML int rtXmlInitContext (OSCTXT* pctxt);
00293
00300 EXTERNXML int rtXmlInitCtxtAppInfo (OSCTXT* pctxt);
00301
00312 EXTERNXML int rtXmlCreateFileInputSource (OSCTXT* pctxt, const char* filepath);
00313
00314 EXTERNXML OSBOOL rtXmlCmpQName
00315 (const OSUTF8CHAR* qname1, const OSUTF8CHAR* name2, const OSUTF8CHAR* nsPrefix2);
00316
00317 EXTERNXML int rtXmlGetBase64StrDecodedLen
00318 (const OSUTF8CHAR* inpdata, size_t srcDataSize,
00319 size_t* pNumOcts, size_t* pSrcDataLen);
00320
00328 EXTERNXML void rtXmlMemFreeAnyAttrs (OSCTXT* pctxt, OSRTDList* pAnyAttrList);
00329
00350 EXTERNXML int rtXmlDecBase64Binary (OSRTMEMBUF* pMemBuf,
00351 const OSUTF8CHAR* inpdata,
00352 int length);
00353
00377 EXTERNXML int rtXmlDecBase64Str (OSCTXT* pctxt,
00378 OSOCTET* pvalue, OSUINT32* pnocts,
00379 OSINT32 bufsize);
00380
00406 EXTERNXML int rtXmlDecBase64StrValue (OSCTXT* pctxt,
00407 OSOCTET* pvalue, OSUINT32* pnocts,
00408 size_t bufSize, size_t srcDataLen);
00409
00431 EXTERNXML int rtXmlDecBigInt
00432 (OSCTXT* pctxt, const OSUTF8CHAR** ppvalue);
00433
00444 EXTERNXML int rtXmlDecBool (OSCTXT* pctxt, OSBOOL* pvalue);
00445
00458 EXTERNXML int rtXmlDecDate (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00459
00478 EXTERNXML int rtXmlDecTime (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00479
00492 EXTERNXML int rtXmlDecDateTime (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00493
00506 EXTERNXML int rtXmlDecDecimal (OSCTXT* pctxt, OSREAL* pvalue);
00507
00520 EXTERNXML int rtXmlDecDouble (OSCTXT* pctxt, OSREAL* pvalue);
00521
00538 EXTERNXML int rtXmlDecDynBase64Str (OSCTXT* pctxt, OSDynOctStr* pvalue);
00539
00555 EXTERNXML int rtXmlDecDynHexStr (OSCTXT* pctxt, OSDynOctStr* pvalue);
00556
00570 EXTERNXML int rtXmlDecUTF8Str
00571 (OSCTXT* pctxt, OSUTF8CHAR* outdata, size_t max_len);
00572
00573
00587 EXTERNXML int rtXmlDecDynUTF8Str (OSCTXT* pctxt, const OSUTF8CHAR** outdata);
00588
00607 EXTERNXML int rtXmlDecHexBinary (OSRTMEMBUF* pMemBuf,
00608 const OSUTF8CHAR* inpdata,
00609 int length);
00610
00633 EXTERNXML int rtXmlDecHexStr (OSCTXT* pctxt,
00634 OSOCTET* pvalue, OSUINT32* pnocts,
00635 OSINT32 bufsize);
00636
00637 EXTERNXML int rtXmlDecHexStrValue (OSCTXT* pctxt,
00638 const OSUTF8CHAR* const inpdata, size_t nbytes, OSOCTET* pvalue,
00639 OSUINT32* pnbits, OSINT32 bufsize);
00640
00653 EXTERNXML int rtXmlDecGYear (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00654
00667 EXTERNXML int rtXmlDecGYearMonth (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00668
00681 EXTERNXML int rtXmlDecGMonth (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00682
00695 EXTERNXML int rtXmlDecGMonthDay (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00696
00709 EXTERNXML int rtXmlDecGDay (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00710
00723 EXTERNXML int rtXmlDecInt (OSCTXT* pctxt, OSINT32* pvalue);
00724
00738 EXTERNXML int rtXmlDecInt8 (OSCTXT* pctxt, OSINT8* pvalue);
00739
00752 EXTERNXML int rtXmlDecInt16 (OSCTXT* pctxt, OSINT16* pvalue);
00753
00766 EXTERNXML int rtXmlDecInt64 (OSCTXT* pctxt, OSINT64* pvalue);
00767
00780 EXTERNXML int rtXmlDecUInt (OSCTXT* pctxt, OSUINT32* pvalue);
00781
00795 EXTERNXML int rtXmlDecUInt8 (OSCTXT* pctxt, OSUINT8* pvalue);
00796
00809 EXTERNXML int rtXmlDecUInt16 (OSCTXT* pctxt, OSUINT16* pvalue);
00810
00823 EXTERNXML int rtXmlDecUInt64 (OSCTXT* pctxt, OSUINT64* pvalue);
00824
00843 EXTERNXML int rtXmlDecNSAttr
00844 (OSCTXT* pctxt, const OSUTF8CHAR* attrName, const OSUTF8CHAR* attrValue,
00845 OSRTDList* pNSAttrs, const OSUTF8CHAR* nsTable[], OSUINT32 nsTableRowCount);
00846
00871 EXTERNXML const OSUTF8CHAR* rtXmlDecQName
00872 (OSCTXT* pctxt, const OSUTF8CHAR* qname, const OSUTF8CHAR** prefix);
00873
00886 EXTERNXML int rtXmlDecXSIAttr
00887 (OSCTXT* pctxt, const OSUTF8CHAR* attrName, const OSUTF8CHAR* attrValue);
00888
00903 EXTERNXML int rtXmlDecXSIAttrs (OSCTXT* pctxt, const OSUTF8CHAR* const* attrs,
00904 const char* typeName);
00905
00922 EXTERNXML int rtXmlDecXmlStr (OSCTXT* pctxt, OSXMLSTRING* outdata);
00923
00936 EXTERNXML int rtXmlParseElementName (OSCTXT* pctxt, OSUTF8CHAR** ppName);
00937
00950 EXTERNXML int rtXmlParseElemQName (OSCTXT* pctxt, OSXMLQName* pQName);
00951
00977 EXTERNXML int rtXmlEncAny (OSCTXT* pctxt, OSXMLSTRING* pvalue,
00978 const OSUTF8CHAR* elemName,
00979 OSXMLNamespace* pNS);
00980
00981 EXTERNXML int rtXmlEncAnyStr
00982 (OSCTXT* pctxt, const OSUTF8CHAR* pvalue,
00983 const OSUTF8CHAR* elemName, OSXMLNamespace* pNS);
00984
00996 EXTERNXML int rtXmlEncAnyTypeValue (OSCTXT* pctxt, const OSUTF8CHAR* pvalue);
00997
01008 EXTERNXML int rtXmlEncAnyAttr (OSCTXT* pctxt, OSRTDList* pAnyAttrList);
01009
01024 EXTERNXML int rtXmlEncBase64Binary (OSCTXT* pctxt, OSUINT32 nocts,
01025 const OSOCTET* value,
01026 const OSUTF8CHAR* elemName,
01027 OSXMLNamespace* pNS);
01028
01042 EXTERNXML int rtXmlEncBase64BinaryAttr
01043 (OSCTXT* pctxt, OSUINT32 nocts, const OSOCTET* value,
01044 const OSUTF8CHAR* attrName, size_t attrNameLen);
01045
01057 EXTERNXML int rtXmlEncBase64StrValue (OSCTXT* pctxt, OSUINT32 nocts,
01058 const OSOCTET* value);
01059
01083 EXTERNXML int rtXmlEncBigInt (OSCTXT* pctxt, const OSUTF8CHAR* value,
01084 const OSUTF8CHAR* elemName,
01085 OSXMLNamespace* pNS);
01086
01101 EXTERNXML int rtXmlEncBigIntAttr (OSCTXT* pctxt, const OSUTF8CHAR* value,
01102 const OSUTF8CHAR* attrName, size_t attrNameLen);
01103
01117 EXTERNXML int rtXmlEncBigIntValue (OSCTXT* pctxt, const OSUTF8CHAR* value);
01118
01136 EXTERNXML int rtXmlEncBitString (OSCTXT* pctxt, OSUINT32 nbits,
01137 const OSOCTET* value,
01138 const OSUTF8CHAR* elemName,
01139 OSXMLNamespace* pNS);
01140
01152 EXTERNXML int rtXmlEncBinStrValue (OSCTXT* pctxt,
01153 OSUINT32 nbits,
01154 const OSOCTET* data);
01155
01170 EXTERNXML int rtXmlEncBool (OSCTXT* pctxt, OSBOOL value,
01171 const OSUTF8CHAR* elemName,
01172 OSXMLNamespace* pNS);
01173
01184 EXTERNXML int rtXmlEncBoolValue (OSCTXT* pctxt, OSBOOL value);
01185
01197 EXTERNXML int rtXmlEncBoolAttr (OSCTXT* pctxt, OSBOOL value,
01198 const OSUTF8CHAR* attrName,
01199 size_t attrNameLen);
01200
01218 EXTERNXML int rtXmlEncDate (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01219 const OSUTF8CHAR* elemName,
01220 OSXMLNamespace* pNS);
01221
01235 EXTERNXML int rtXmlEncDateValue
01236 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01237
01261 EXTERNXML int rtXmlEncTime (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01262 const OSUTF8CHAR* elemName,
01263 OSXMLNamespace* pNS);
01264
01277 EXTERNXML int rtXmlEncTimeValue
01278 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01279
01295 EXTERNXML int rtXmlEncDateTime (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01296 const OSUTF8CHAR* elemName,
01297 OSXMLNamespace* pNS);
01298
01310 EXTERNXML int rtXmlEncDateTimeValue
01311 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01312
01327 EXTERNXML int rtXmlEncDecimal (OSCTXT* pctxt, OSREAL value,
01328 const OSUTF8CHAR* elemName,
01329 OSXMLNamespace* pNS,
01330 const OSDecimalFmt* pFmtSpec);
01331
01344 EXTERNXML int rtXmlEncDecimalAttr (OSCTXT* pctxt, OSREAL value,
01345 const OSUTF8CHAR* attrName,
01346 size_t attrNameLen,
01347 const OSDecimalFmt* pFmtSpec);
01348
01366 EXTERNXML int rtXmlEncDecimalValue (OSCTXT* pctxt, OSREAL value,
01367 const OSDecimalFmt* pFmtSpec,
01368 char* pDestBuf, size_t destBufSize);
01369
01384 EXTERNXML int rtXmlEncDouble (OSCTXT* pctxt, OSREAL value,
01385 const OSUTF8CHAR* elemName,
01386 OSXMLNamespace* pNS,
01387 const OSDoubleFmt* pFmtSpec);
01388
01401 EXTERNXML int rtXmlEncDoubleAttr (OSCTXT* pctxt, OSREAL value,
01402 const OSUTF8CHAR* attrName,
01403 size_t attrNameLen,
01404 const OSDoubleFmt* pFmtSpec);
01405
01419 EXTERNXML int rtXmlEncDoubleValue (OSCTXT* pctxt, OSREAL value,
01420 const OSDoubleFmt* pFmtSpec,
01421 int defaultPrecision);
01422
01435 EXTERNXML int rtXmlEncEmptyElement (OSCTXT* pctxt,
01436 const OSUTF8CHAR* elemName,
01437 OSXMLNamespace* pNS,
01438 OSRTDList* pNSAttrs,
01439 OSBOOL terminate);
01440
01450 EXTERNXML int rtXmlEncEndDocument (OSCTXT* pctxt);
01451
01462 EXTERNXML int rtXmlEncEndElement (OSCTXT* pctxt,
01463 const OSUTF8CHAR* elemName,
01464 OSXMLNamespace* pNS);
01465
01475 EXTERNXML int rtXmlEncEndSoapEnv (OSCTXT* pctxt);
01476
01488 EXTERNXML int rtXmlEncEndSoapElems (OSCTXT* pctxt, OSXMLSOAPMsgType msgtype);
01489
01504 EXTERNXML int rtXmlEncFloat (OSCTXT* pctxt, OSREAL value,
01505 const OSUTF8CHAR* elemName,
01506 OSXMLNamespace* pNS,
01507 const OSDoubleFmt* pFmtSpec);
01508
01521 EXTERNXML int rtXmlEncFloatAttr (OSCTXT* pctxt, OSREAL value,
01522 const OSUTF8CHAR* attrName,
01523 size_t attrNameLen,
01524 const OSDoubleFmt* pFmtSpec);
01525
01540 EXTERNXML int rtXmlEncGYear (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01541 const OSUTF8CHAR* elemName,
01542 OSXMLNamespace* pNS);
01543
01558 EXTERNXML int rtXmlEncGYearMonth (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01559 const OSUTF8CHAR* elemName,
01560 OSXMLNamespace* pNS);
01561
01576 EXTERNXML int rtXmlEncGMonth (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01577 const OSUTF8CHAR* elemName,
01578 OSXMLNamespace* pNS);
01579
01594 EXTERNXML int rtXmlEncGMonthDay (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01595 const OSUTF8CHAR* elemName,
01596 OSXMLNamespace* pNS);
01597
01612 EXTERNXML int rtXmlEncGDay (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01613 const OSUTF8CHAR* elemName,
01614 OSXMLNamespace* pNS);
01615
01627 EXTERNXML int rtXmlEncGYearValue
01628 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01629
01641 EXTERNXML int rtXmlEncGYearMonthValue
01642 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01643
01655 EXTERNXML int rtXmlEncGMonthValue
01656 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01657
01669 EXTERNXML int rtXmlEncGMonthDayValue
01670 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01671
01683 EXTERNXML int rtXmlEncGDayValue
01684 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01685
01700 EXTERNXML int rtXmlEncHexBinary (OSCTXT* pctxt, OSUINT32 nocts,
01701 const OSOCTET* value,
01702 const OSUTF8CHAR* elemName,
01703 OSXMLNamespace* pNS);
01704
01717 EXTERNXML int rtXmlEncHexBinaryAttr
01718 (OSCTXT* pctxt, OSUINT32 nocts, const OSOCTET* value,
01719 const OSUTF8CHAR* attrName, size_t attrNameLen);
01720
01732 EXTERNXML int rtXmlEncHexStrValue (OSCTXT* pctxt,
01733 OSUINT32 nocts,
01734 const OSOCTET* data);
01735
01746 EXTERNXML int rtXmlEncIndent (OSCTXT* pctxt);
01747
01761 EXTERNXML int rtXmlEncInt (OSCTXT* pctxt, OSINT32 value,
01762 const OSUTF8CHAR* elemName,
01763 OSXMLNamespace* pNS);
01764
01775 EXTERNXML int rtXmlEncIntValue (OSCTXT* pctxt, OSINT32 value);
01776
01789 EXTERNXML int rtXmlEncIntAttr (OSCTXT* pctxt, OSINT32 value,
01790 const OSUTF8CHAR* attrName,
01791 size_t attrNameLen);
01792
01808 EXTERNXML int rtXmlEncIntPattern (OSCTXT* pctxt, OSINT32 value,
01809 const OSUTF8CHAR* elemName,
01810 OSXMLNamespace* pNS,
01811 const OSUTF8CHAR* pattern);
01812
01813 EXTERNXML int rtXmlEncIntPatternValue (OSCTXT* pctxt, OSINT32 value,
01814 const OSUTF8CHAR* pattern);
01815
01816 EXTERNXML int rtXmlEncUIntPattern (OSCTXT* pctxt, OSUINT32 value,
01817 const OSUTF8CHAR* elemName,
01818 OSXMLNamespace* pNS,
01819 const OSUTF8CHAR* pattern);
01820
01821 EXTERNXML int rtXmlEncUIntPatternValue (OSCTXT* pctxt, OSUINT32 value,
01822 const OSUTF8CHAR* pattern);
01823
01838 EXTERNXML int rtXmlEncInt64 (OSCTXT* pctxt, OSINT64 value,
01839 const OSUTF8CHAR* elemName,
01840 OSXMLNamespace* pNS);
01841
01853 EXTERNXML int rtXmlEncInt64Value (OSCTXT* pctxt, OSINT64 value);
01854
01868 EXTERNXML int rtXmlEncInt64Attr (OSCTXT* pctxt, OSINT64 value,
01869 const OSUTF8CHAR* attrName,
01870 size_t attrNameLen);
01871
01890 EXTERNXML int rtXmlEncNamedBits
01891 (OSCTXT* pctxt, const OSBitMapItem* pBitMap, OSUINT32 nbits,
01892 const OSOCTET* pvalue, const OSUTF8CHAR* elemName, OSXMLNamespace* pNS);
01893
01894 EXTERNXML int rtXmlEncNamedBitsValue
01895 (OSCTXT* pctxt, const OSBitMapItem* pBitMap, OSUINT32 nbits,
01896 const OSOCTET* pvalue);
01897
01911 EXTERNXML int rtXmlEncNSAttrs (OSCTXT* pctxt, OSRTDList* pNSAttrs);
01912
01922 EXTERNXML int rtXmlPrintNSAttrs (const char* name, const OSRTDList* data);
01923
01924
01925 #define rtxPrintNSAttrs(name,data) rtXmlPrintNSAttrs(name,&data)
01926
01943 EXTERNXML int rtXmlEncReal10
01944 (OSCTXT *pctxt, const OSUTF8CHAR *pvalue, const OSUTF8CHAR* elemName,
01945 OSXMLNamespace* pNS);
01946
01960 EXTERNXML int rtXmlEncSoapArrayTypeAttr
01961 (OSCTXT* pctxt, const OSUTF8CHAR* name, const OSUTF8CHAR* value,
01962 size_t itemCount);
01963
01964 EXTERNXML int rtXmlEncSoapArrayTypeAttr2
01965 (OSCTXT* pctxt, const OSUTF8CHAR* name, size_t nameLen,
01966 const OSUTF8CHAR* value, size_t valueLen, size_t itemCount);
01967
01979 EXTERNXML int rtXmlEncStartDocument (OSCTXT* pctxt);
01980
01991 EXTERNXML int rtXmlEncBOM (OSCTXT* pctxt);
02004 EXTERNXML int rtXmlEncStartElement (OSCTXT* pctxt,
02005 const OSUTF8CHAR* elemName,
02006 OSXMLNamespace* pNS,
02007 OSRTDList* pNSAttrs,
02008 OSBOOL terminate);
02009
02019 EXTERNXML int rtXmlEncStartSoapEnv (OSCTXT* pctxt);
02020
02032 EXTERNXML int rtXmlEncStartSoapElems
02033 (OSCTXT* pctxt, OSXMLSOAPMsgType msgtype);
02034
02048 EXTERNXML int rtXmlEncString (OSCTXT* pctxt,
02049 OSXMLSTRING* pxmlstr,
02050 const OSUTF8CHAR* elemName,
02051 OSXMLNamespace* pNS);
02052
02062 EXTERNXML int rtXmlEncStringValue (OSCTXT* pctxt, const OSUTF8CHAR* value);
02063
02074 EXTERNXML int rtXmlEncStringValue2
02075 (OSCTXT* pctxt, const OSUTF8CHAR* value, size_t valueLen);
02076
02087 EXTERNXML int rtXmlEncTermStartElement (OSCTXT* pctxt);
02088
02104 EXTERNXML int rtXmlEncUnicodeStr (OSCTXT* pctxt,
02105 const OSUNICHAR* value,
02106 OSUINT32 nchars,
02107 const OSUTF8CHAR* elemName,
02108 OSXMLNamespace* pNS);
02109
02121 EXTERNXML int rtXmlEncUTF8Attr (OSCTXT* pctxt,
02122 const OSUTF8CHAR* name,
02123 const OSUTF8CHAR* value);
02124
02138 EXTERNXML int rtXmlEncUTF8Attr2 (OSCTXT* pctxt,
02139 const OSUTF8CHAR* name, size_t nameLen,
02140 const OSUTF8CHAR* value, size_t valueLen);
02141
02155 EXTERNXML int rtXmlEncUTF8Str (OSCTXT* pctxt,
02156 const OSUTF8CHAR* value,
02157 const OSUTF8CHAR* elemName,
02158 OSXMLNamespace* pNS);
02159
02173 EXTERNXML int rtXmlEncUInt (OSCTXT* pctxt, OSUINT32 value,
02174 const OSUTF8CHAR* elemName,
02175 OSXMLNamespace* pNS);
02176
02188 EXTERNXML int rtXmlEncUIntValue (OSCTXT* pctxt, OSUINT32 value);
02189
02202 EXTERNXML int rtXmlEncUIntAttr (OSCTXT* pctxt, OSUINT32 value,
02203 const OSUTF8CHAR* attrName,
02204 size_t attrNameLen);
02205
02221 EXTERNXML int rtXmlEncUInt64 (OSCTXT* pctxt, OSUINT64 value,
02222 const OSUTF8CHAR* elemName,
02223 OSXMLNamespace* pNS);
02224
02237 EXTERNXML int rtXmlEncUInt64Value (OSCTXT* pctxt, OSUINT64 value);
02238
02252 EXTERNXML int rtXmlEncUInt64Attr (OSCTXT* pctxt, OSUINT64 value,
02253 const OSUTF8CHAR* attrName,
02254 size_t attrNameLen);
02255
02275 EXTERNXML int rtXmlEncXSIAttrs (OSCTXT* pctxt, OSBOOL needXSI);
02276
02287 EXTERNXML int rtXmlEncXSITypeAttr (OSCTXT* pctxt, const OSUTF8CHAR* value);
02288
02299 EXTERNXML int rtXmlFreeInputSource (OSCTXT* pctxt);
02300
02301 EXTERNXML OSBOOL rtXmlStrCmpAsc (const OSUTF8CHAR* text1, const char* text2);
02302
02303 EXTERNXML OSBOOL rtXmlStrnCmpAsc (const OSUTF8CHAR* text1,
02304 const char* text2, size_t len);
02305
02306 #define rtXmlFinalizeMemBuf(pMemBuf) do { \
02307 (pMemBuf)->pctxt->buffer.data = (pMemBuf)->buffer + (pMemBuf)->startidx; \
02308 (pMemBuf)->pctxt->buffer.size = \
02309 ((pMemBuf)->usedcnt - (pMemBuf)->startidx); \
02310 (pMemBuf)->pctxt->buffer.dynamic = FALSE; \
02311 (pMemBuf)->pctxt->buffer.byteIndex = 0; \
02312 rtxMemBufReset (pMemBuf); \
02313 } while(0)
02314
02337 EXTERNXML int rtXmlSetEncBufPtr
02338 (OSCTXT* pctxt, OSOCTET* bufaddr, size_t bufsiz);
02339
02348 #define rtXmlGetEncBufPtr(pctxt) (pctxt)->buffer.data
02349
02355 #define rtXmlGetEncBufLen(pctxt) (pctxt)->buffer.byteIndex
02356
02357
02365 EXTERNXML int rtXmlGetIndent (OSCTXT* pctxt);
02366
02367
02376 EXTERNXML OSBOOL rtXmlGetWriteBOM (OSCTXT* pctxt);
02377
02386 EXTERNXML int rtXmlGetIndentChar (OSCTXT* pctxt);
02399 EXTERNXML int rtXmlPrepareContext (OSCTXT* pctxt);
02400
02409 EXTERNXML int rtXmlSetEncC14N (OSCTXT* pctxt, OSBOOL value);
02410
02421 EXTERNXML int rtXmlSetEncXSINamespace (OSCTXT* pctxt, OSBOOL value);
02422
02423 EXTERNXML int rtXmlSetDigitsFacets
02424 (OSCTXT* pctxt, int totalDigits, int fractionDigits);
02425
02436 EXTERNXML int rtXmlSetEncDocHdr (OSCTXT* pctxt, OSBOOL value);
02437
02447 EXTERNXML int rtXmlSetEncodingStr
02448 (OSCTXT* pctxt, const OSUTF8CHAR* encodingStr);
02449
02465 EXTERNXML int rtXmlSetFormatting (OSCTXT* pctxt, OSBOOL doFormatting);
02466
02475 EXTERNXML int rtXmlSetIndent (OSCTXT* pctxt, OSUINT8 indent);
02476
02485 EXTERNXML int rtXmlSetIndentChar (OSCTXT* pctxt, char indentChar);
02486
02497 EXTERNXML void rtXmlSetNamespacesSet (OSCTXT* pctxt, OSBOOL value);
02498
02508 EXTERNXML int rtXmlSetNSPrefixLinks (OSCTXT* pctxt, OSRTDList* pNSAttrs);
02509
02521 EXTERNXML int rtXmlSetSchemaLocation
02522 (OSCTXT* pctxt, const OSUTF8CHAR* schemaLocation);
02523
02535 EXTERNXML int rtXmlSetNoNSSchemaLocation
02536 (OSCTXT* pctxt, const OSUTF8CHAR* schemaLocation);
02537
02546 EXTERNXML void rtXmlSetSoapVersion (OSCTXT* pctxt, OSUINT8 version);
02547
02558 EXTERNXML int rtXmlSetXSITypeAttr (OSCTXT* pctxt, const OSUTF8CHAR* xsiType);
02559
02568 EXTERNXML int rtXmlSetWriteBOM (OSCTXT* pctxt, OSBOOL write);
02569
02570 #include "rtxmlsrc/rtXmlNamespace.h"
02571
02585 EXTERNXML int rtXmlMatchHexStr
02586 (OSCTXT* pctxt, size_t minLength, size_t maxLength);
02587
02601 EXTERNXML int rtXmlMatchBase64Str
02602 (OSCTXT* pctxt, size_t minLength, size_t maxLength);
02603
02615 EXTERNXML int rtXmlMatchDate (OSCTXT* pctxt);
02616
02628 EXTERNXML int rtXmlMatchTime (OSCTXT* pctxt);
02629
02641 EXTERNXML int rtXmlMatchDateTime (OSCTXT* pctxt);
02642
02654 EXTERNXML int rtXmlMatchGYear (OSCTXT* pctxt);
02655
02667 EXTERNXML int rtXmlMatchGYearMonth (OSCTXT* pctxt);
02668
02680 EXTERNXML int rtXmlMatchGMonth (OSCTXT* pctxt);
02681
02693 EXTERNXML int rtXmlMatchGMonthDay (OSCTXT* pctxt);
02694
02706 EXTERNXML int rtXmlMatchGDay (OSCTXT* pctxt);
02707
02720 EXTERNXML OSUTF8CHAR* rtXmlNewQName
02721 (OSCTXT* pctxt, const OSUTF8CHAR* localName, const OSUTF8CHAR* prefix);
02722
02732 EXTERNXML OSBOOL rtXmlCmpBase64Str (OSUINT32 nocts1,
02733 const OSOCTET* data1,
02734 const OSUTF8CHAR* data2);
02735
02745 EXTERNXML OSBOOL rtXmlCmpHexStr (OSUINT32 nocts1,
02746 const OSOCTET* data1,
02747 const OSUTF8CHAR* data2);
02748
02749 EXTERNXML OSBOOL rtXmlCmpHexChar (OSUTF8CHAR ch, OSOCTET hexval);
02750
02751 EXTERNXML int rtSaxGetAttributeID (const OSUTF8CHAR* attrName,
02752 size_t nAttr,
02753 const OSUTF8CHAR* attrNames[],
02754 OSUINT32 attrPresent[]);
02755
02768 EXTERNXML const OSUTF8CHAR* rtSaxGetAttrValue
02769 (const OSUTF8CHAR* attrName, const OSUTF8CHAR* const* attrs);
02770
02786 EXTERNXML OSINT16 rtSaxGetElemID
02787 (OSINT16* pState, OSINT16 prevElemIdx, const OSUTF8CHAR* localName,
02788 #ifdef OSXMLNS12
02789 OSINT32 nsidx,
02790 #endif
02791 const OSSAXElemTableRec idtab[], const OSINT16* fstab,
02792 OSINT16 fstabRows, OSINT16 fstabCols);
02793
02809 EXTERNXML OSINT16 rtSaxGetElemID8
02810 (OSINT16* pState, OSINT16 prevElemIdx, const OSUTF8CHAR* localName,
02811 #ifdef OSXMLNS12
02812 OSINT32 nsidx,
02813 #endif
02814 const OSSAXElemTableRec idtab[], const OSINT8* fstab,
02815 OSINT16 fstabRows, OSINT16 fstabCols);
02816
02817 EXTERNXML OSINT16 rtSaxFindElemID
02818 (OSINT16* pState, OSINT16 prevElemIdx, const OSUTF8CHAR* localName,
02819 #ifdef OSXMLNS12
02820 OSINT32 nsidx,
02821 #endif
02822 const OSSAXElemTableRec idtab[], const OSINT16* fstab,
02823 OSINT16 fstabRows, OSINT16 fstabCols);
02824
02825 EXTERNXML OSINT16 rtSaxFindElemID8
02826 (OSINT16* pState, OSINT16 prevElemIdx, const OSUTF8CHAR* localName,
02827 #ifdef OSXMLNS12
02828 OSINT32 nsidx,
02829 #endif
02830 const OSSAXElemTableRec idtab[], const OSINT8* fstab,
02831 OSINT16 fstabRows, OSINT16 fstabCols);
02832
02841 EXTERNXML OSBOOL rtSaxHasXMLNSAttrs (const OSUTF8CHAR* const* attrs);
02842
02850 EXTERNXML OSBOOL rtSaxIsEmptyBuffer (OSCTXT* pctxt);
02851
02852 EXTERNXML OSINT16 rtSaxLookupElemID
02853 (OSCTXT* pctxt, OSINT16* pState, OSINT16 prevElemIdx,
02854 const OSUTF8CHAR* localName, const OSUTF8CHAR* qName,
02855 #ifdef OSXMLNS12
02856 OSINT32 nsidx,
02857 #endif
02858 const OSSAXElemTableRec idtab[], const OSINT16* fstab,
02859 OSINT16 fstabRows, OSINT16 fstabCols);
02860
02861 EXTERNXML OSINT16 rtSaxLookupElemID8
02862 (OSCTXT* pctxt, OSINT16* pState, OSINT16 prevElemIdx,
02863 const OSUTF8CHAR* localName, const OSUTF8CHAR* qName,
02864 #ifdef OSXMLNS12
02865 OSINT32 nsidx,
02866 #endif
02867 const OSSAXElemTableRec idtab[], const OSINT8* fstab,
02868 OSINT16 fstabRows, OSINT16 fstabCols);
02869
02881 EXTERNXML int rtSaxStrListParse
02882 (OSCTXT* pctxt, OSRTMEMBUF *pMemBuf, OSRTDList* pvalue);
02883
02902 EXTERNXML int rtSaxSortAttrs
02903 (OSCTXT* pctxt, const OSUTF8CHAR* const* attrs, OSUINT16** order);
02904
02912 EXTERNXML int rtSaxStrListMatch (OSCTXT* pctxt);
02913
02914 EXTERNXML OSBOOL rtSaxTestFinal (OSINT16 state,
02915 OSINT16 currElemIdx,
02916 const int* fstab,
02917 int fstabRows, int fstabCols);
02918
02919 EXTERNXML OSBOOL rtSaxTestFinal8 (OSINT16 state,
02920 OSINT16 currElemIdx,
02921 const OSINT8* fstab,
02922 int fstabRows, int fstabCols);
02923
02924 EXTERNXML int rtSaxSetSkipLevelToCurrent (OSCTXT* pctxt, int stat);
02925
02926 EXTERNXML OSUINT32 rtSaxSetMaxErrors (OSCTXT* pctxt, OSUINT32 maxErrors);
02927
02928 EXTERNXML OSUINT32 rtSaxGetMaxErrors (OSCTXT* pctxt);
02929
02930 EXTERNXML int rtSaxTestAttributesPresent (OSCTXT* pctxt,
02931 const OSUINT32* attrPresent, const OSUINT32* reqAttrMask,
02932 const OSUTF8CHAR* const* attrNames, size_t numOfAttrs,
02933 const char* parentTypeName);
02934
02935 EXTERNXML OSBOOL rtSaxIncErrors (OSCTXT* pctxt);
02936
02937 EXTERNXML int rtSaxReportUnexpAttrs (OSCTXT* pctxt,
02938 const OSUTF8CHAR* const* attrs,
02939 const char* typeName);
02940
02953 EXTERNXML int rtXmlWriteToFile (OSCTXT* pctxt, const char* filename);
02954
02955 EXTERNXML void rtXmlTreatWhitespaces (OSCTXT* pctxt, int whiteSpaceType);
02956
02961 EXTERNXML void rtErrXmlInit (void);
02962
02982 EXTERNXML int rtXmlpDecAny (OSCTXT* pctxt, const OSUTF8CHAR** pvalue);
02983
03000 EXTERNXML int rtXmlpDecAnyAttrStr
03001 (OSCTXT* pctxt, const OSUTF8CHAR** ppAttrStr, size_t index);
03002
03022 EXTERNXML int rtXmlpDecAnyElem (OSCTXT* pctxt, const OSUTF8CHAR** pvalue);
03023
03049 EXTERNXML int rtXmlpDecBase64Str (OSCTXT* pctxt, OSOCTET* pvalue,
03050 OSUINT32* pnocts, OSINT32 bufsize);
03051
03075 EXTERNXML int rtXmlpDecBigInt (OSCTXT* pctxt, const OSUTF8CHAR** pvalue);
03076
03093 EXTERNXML int rtXmlpDecBitString
03094 (OSCTXT* pctxt, OSOCTET* pvalue, OSUINT32* pnbits, OSUINT32 bufsize);
03095
03108 EXTERNXML int rtXmlpDecBool (OSCTXT* pctxt, OSBOOL* pvalue);
03109
03122 EXTERNXML int rtXmlpDecDate (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03123
03136 EXTERNXML int rtXmlpDecDateTime (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03137
03156 EXTERNXML int rtXmlpDecDecimal (OSCTXT* pctxt, OSREAL* pvalue,
03157 int totalDigits, int fractionDigits);
03158
03171 EXTERNXML int rtXmlpDecDouble (OSCTXT* pctxt, OSREAL* pvalue);
03172
03191 EXTERNXML int rtXmlpDecDynBase64Str (OSCTXT* pctxt, OSDynOctStr* pvalue);
03192
03206 EXTERNXML int rtXmlpDecDynBitString (OSCTXT* pctxt, OSDynOctStr* pvalue);
03207
03225 EXTERNXML int rtXmlpDecDynHexStr (OSCTXT* pctxt, OSDynOctStr* pvalue);
03226
03244 EXTERNXML int rtXmlpDecDynUnicodeStr
03245 (OSCTXT* pctxt, const OSUNICHAR** ppdata, OSUINT32* pnchars);
03246
03260 EXTERNXML int rtXmlpDecDynUTF8Str (OSCTXT* pctxt, const OSUTF8CHAR** outdata);
03261
03262
03276 EXTERNXML int rtXmlpDecUTF8Str
03277 (OSCTXT* pctxt, OSUTF8CHAR* out, size_t max_len);
03278
03291 EXTERNXML int rtXmlpDecGDay (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03292
03305 EXTERNXML int rtXmlpDecGMonth (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03306
03319 EXTERNXML int rtXmlpDecGMonthDay (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03320
03333 EXTERNXML int rtXmlpDecGYear (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03334
03347 EXTERNXML int rtXmlpDecGYearMonth (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03348
03373 EXTERNXML int rtXmlpDecHexStr
03374 (OSCTXT* pctxt, OSOCTET* pvalue, OSUINT32* pnocts, OSINT32 bufsize);
03375
03388 EXTERNXML int rtXmlpDecInt (OSCTXT* pctxt, OSINT32* pvalue);
03389
03403 EXTERNXML int rtXmlpDecInt8 (OSCTXT* pctxt, OSINT8* pvalue);
03404
03417 EXTERNXML int rtXmlpDecInt16 (OSCTXT* pctxt, OSINT16* pvalue);
03418
03431 EXTERNXML int rtXmlpDecInt64 (OSCTXT* pctxt, OSINT64* pvalue);
03432
03449 EXTERNXML int rtXmlpDecNamedBits
03450 (OSCTXT* pctxt, const OSBitMapItem* pBitMap,
03451 OSOCTET* pvalue, OSUINT32* pnbits, OSUINT32 bufsize);
03452
03469 EXTERNXML int rtXmlpDecStrList (OSCTXT* pctxt, OSRTDList* plist);
03470
03489 EXTERNXML int rtXmlpDecTime (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03490
03503 EXTERNXML int rtXmlpDecUInt (OSCTXT* pctxt, OSUINT32* pvalue);
03504
03518 EXTERNXML int rtXmlpDecUInt8 (OSCTXT* pctxt, OSOCTET* pvalue);
03519
03532 EXTERNXML int rtXmlpDecUInt16 (OSCTXT* pctxt, OSUINT16* pvalue);
03533
03546 EXTERNXML int rtXmlpDecUInt64 (OSCTXT* pctxt, OSUINT64* pvalue);
03547
03564 EXTERNXML int rtXmlpDecXmlStr (OSCTXT* pctxt, OSXMLSTRING* outdata);
03565
03582 EXTERNXML int rtXmlpDecXmlStrList (OSCTXT* pctxt, OSRTDList* plist);
03583
03602 EXTERNXML int rtXmlpDecXSIAttr
03603 (OSCTXT* pctxt, const OSXMLNameFragments* attrName);
03604
03626 EXTERNXML int rtXmlpDecXSITypeAttr
03627 (OSCTXT* pctxt, const OSXMLNameFragments* attrName,
03628 const OSUTF8CHAR** ppAttrValue);
03629
03653 EXTERNXML int rtXmlpGetAttributeID
03654 (const OSXMLStrFragment* attrName, OSINT16 nsidx,
03655 size_t nAttr, const OSXMLAttrDescr attrNames[], OSUINT32 attrPresent[]);
03656
03669 EXTERNXML int rtXmlpGetNextElem
03670 (OSCTXT* pctxt, OSXMLElemDescr* pElem, OSINT32 level);
03671
03687 EXTERNXML int rtXmlpGetNextElemID
03688 (OSCTXT* pctxt, const OSXMLElemIDRec* tab, size_t nrows, OSINT32 level,
03689 OSBOOL continueParse);
03690
03700 EXTERNXML int rtXmlpMarkLastEventActive (OSCTXT* pctxt);
03701
03717 EXTERNXML int rtXmlpMatchStartTag
03718 (OSCTXT* pctxt, const OSUTF8CHAR* elemLocalName, OSINT16 nsidx);
03719
03730 EXTERNXML int rtXmlpMatchEndTag (OSCTXT* pctxt, OSINT32 level);
03731
03742 EXTERNXML OSBOOL rtXmlpHasAttributes (OSCTXT* pctxt);
03743
03752 EXTERNXML int rtXmlpGetAttributeCount (OSCTXT* pctxt);
03753
03772 EXTERNXML int rtXmlpSelectAttribute
03773 (OSCTXT* pctxt, OSXMLNameFragments* pAttr, OSINT16* nsidx, size_t index);
03774
03781 EXTERNXML OSINT32 rtXmlpGetCurrentLevel (OSCTXT* pctxt);
03782
03793 EXTERNXML void rtXmlpSetWhiteSpaceMode
03794 (OSCTXT* pctxt, OSXMLWhiteSpaceMode whiteSpaceMode);
03795
03803 EXTERNXML OSBOOL rtXmlpSetMixedContentMode
03804 (OSCTXT* pctxt, OSBOOL mixedContentMode);
03805
03811 EXTERNXML void rtXmlpSetListMode (OSCTXT* pctxt);
03812
03821 EXTERNXML OSBOOL rtXmlpListHasItem (OSCTXT* pctxt);
03822
03832 EXTERNXML void rtXmlpCountListItems (OSCTXT* pctxt, OSUINT32* itemCnt);
03833
03849 EXTERNXML int rtXmlpGetNextSeqElemID
03850 (OSCTXT* pctxt, const OSXMLElemIDRec* tab, const OSXMLGroupDesc* pGroup,
03851 int curID, int lastMandatoryID, OSBOOL groupMode);
03852
03868 EXTERNXML int rtXmlpGetNextAllElemID
03869 (OSCTXT* pctxt, const OSXMLElemIDRec* tab, size_t nrows,
03870 const OSUINT8* pOrder, OSUINT32 nOrder, OSUINT32 maxOrder, int anyID);
03871
03888 EXTERNXML int rtXmlpGetNextAllElemID16
03889 (OSCTXT* pctxt, const OSXMLElemIDRec* tab, size_t nrows,
03890 const OSUINT16* pOrder, OSUINT32 nOrder, OSUINT32 maxOrder, int anyID);
03891
03899 EXTERNXML void rtXmlpSetNamespaceTable
03900 (OSCTXT* pctxt, const OSUTF8CHAR* namespaceTable[], size_t nmNamespaces);
03901
03910 EXTERNXML int rtXmlpCreateReader (OSCTXT* pctxt);
03911
03918 EXTERNXML void rtXmlpHideAttributes (OSCTXT* pctxt);
03919
03928 EXTERNXML OSBOOL rtXmlpNeedDecodeAttributes (OSCTXT* pctxt);
03929
03935 EXTERNXML void rtXmlpMarkPos (OSCTXT* pctxt);
03936
03942 EXTERNXML void rtXmlpRewindToMarkedPos (OSCTXT* pctxt);
03943
03949 EXTERNXML void rtXmlpResetMarkedPos (OSCTXT* pctxt);
03950
03967 EXTERNXML int rtXmlpGetXSITypeAttr
03968 (OSCTXT* pctxt, const OSUTF8CHAR** ppAttrValue, OSINT16* nsidx,
03969 size_t* pLocalOffs);
03970
03981 EXTERNXML int rtXmlpGetXmlnsAttrs (OSCTXT* pctxt, OSRTDList* pNSAttrs);
03982
03992 EXTERNXML int rtXmlpDecXSIAttrs (OSCTXT* pctxt);
03993
04002 EXTERNXML OSBOOL rtXmlpIsEmptyElement (OSCTXT* pctxt);
04003
04012 EXTERNXML int rtXmlEncAttrC14N (OSCTXT* pctxt);
04013
04022 EXTERNXML OSBOOL rtXmlpIsLastEventDone (OSCTXT* pctxt);
04023
04035 EXTERNXML int rtXmlpGetXSITypeIndex
04036 (OSCTXT* pctxt, const OSXMLItemDescr typetab[], size_t typetabsiz);
04037
04051 EXTERNXML int rtXmlpLookupXSITypeIndex
04052 (OSCTXT* pctxt, const OSUTF8CHAR* pXsiType, OSINT16 xsiTypeIdx,
04053 const OSXMLItemDescr typetab[], size_t typetabsiz);
04054
04062 EXTERNXML void rtXmlpForceDecodeAsGroup (OSCTXT* pctxt);
04063
04072 EXTERNXML OSBOOL rtXmlpIsDecodeAsGroup (OSCTXT* pctxt);
04073
04083 EXTERNXML OSBOOL rtXmlpIsUTF8Encoding (OSCTXT* pctxt);
04084
04089 #ifdef __cplusplus
04090 }
04091 #endif
04092
04093 #endif