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
00068
00069 #define OSXSIATTR 0x00000100
00070 #define OSXMLNOCMPNS 0x00000080
00071 #define OSXSINIL 0x00000040
00072 #define OSXMLNOBLANKS 0x00000020
00073 #define OSHASDEFAULT 0x00000010
00074
00075
00076
00077 #define OSASN1XER 0x00000008
00078
00079
00080
00081 typedef enum {
00082 OSXMLUTF8,
00083 OSXMLUTF16,
00084 OSXMLUTF16BE,
00085 OSXMLUTF16LE,
00086 OSXMLLATIN1
00087 } OSXMLEncoding;
00088
00089 typedef enum {
00090 OSSOAPNONE, OSSOAPHEADER, OSSOAPBODY, OSSOAPFAULT
00091 } OSXMLSOAPMsgType;
00092
00093 typedef enum {
00094 OSXMLBOM_NO_BOM,
00095 OSXMLBOM_UTF32_BE,
00096 OSXMLBOM_UTF32_LE,
00097 OSXMLBOM_UTF16_BE,
00098 OSXMLBOM_UTF16_LE,
00099 OSXMLBOM_UTF8,
00100 OSXMLBOM_CHECK
00101 } OSXMLBOM;
00102
00103 typedef struct OSXMLFacets {
00104 int totalDigits;
00105 int fractionDigits;
00106 } OSXMLFacets;
00107
00108 typedef struct {
00109 const OSUTF8CHAR* value;
00110 OSSIZE length;
00111 } OSXMLStrFragment;
00112
00113 typedef struct {
00114 OSXMLStrFragment mQName;
00115 OSXMLStrFragment mLocalName;
00116 OSXMLStrFragment mPrefix;
00117 } OSXMLNameFragments;
00118
00119 typedef struct OSXMLItemDescr {
00120 OSXMLStrFragment localName;
00121 OSINT16 nsidx;
00122 } OSXMLItemDescr;
00123
00124 typedef OSXMLItemDescr OSXMLAttrDescr;
00125 typedef OSXMLItemDescr OSXMLElemDescr;
00126
00127 typedef struct OSXMLElemIDRec {
00128 OSXMLElemDescr descr;
00129 OSUINT16 id;
00130 } OSXMLElemIDRec;
00131
00142 typedef struct OSXMLGroupDesc {
00143
00144
00145
00146 int row;
00147
00148
00149
00150
00151 int num;
00152
00153
00154
00155
00156
00157 int anyCase;
00158 } OSXMLGroupDesc;
00159
00160 typedef struct OSXSDAnyType {
00161 OSXMLSTRING value;
00162 OSRTDList attrs;
00163 } OSXSDAnyType;
00164
00165 typedef enum {
00166 OSXMLNSI_UNQUALIFIED = 0,
00167 OSXMLNSI_UNKNOWN = -1,
00168 OSXMLNSI_UNCHECKED = -2,
00169 OSXMLNSI_XSI = -3,
00170 OSXMLNSI_XMLNS = -4,
00171 OSXMLNSI_XML = -5,
00172 OSXMLNSI_SOAP_ENVELOPE = -6,
00173 OSXMLNSI_XSD = -7
00174 } OSXMLNsIndex;
00175
00176 struct OSXMLReader;
00177
00178 #define OSXMLFRAGSEQUAL(frag1,frag2) \
00179 (frag1.length==frag2.length && !memcmp(frag1.value,frag2.value,frag1.length))
00180
00181 #define OSXMLQNAMEEQUALS(xnamefrag,qnametext) rtxUTF8StrnEqual \
00182 (xnamefrag.mQName.value, OSUTF8(qnametext), xnamefrag.mQName.length)
00183
00184 #define OSXMLSETUTF8DECPTR(pctxt,str) \
00185 rtxInitContextBuffer (pctxt, OSRTSAFECONSTCAST (OSOCTET*, str), \
00186 OSUTF8LEN (str))
00187
00188 #define IS_XMLNSATTR(name) \
00189 ((OSUTF8LEN(name) >= 5) && name[0] == 'x' && name[1] == 'm' && \
00190 name[2] == 'l' && name[3] == 'n' && name[4] == 's')
00191
00192 #define IS_XSIATTR(name) \
00193 ((OSUTF8LEN(name) >= 4) && name[0] == 'x' && name[1] == 's' && \
00194 name[2] == 'i' && name[3] == ':')
00195
00196
00197
00198 static const char OSXMLHDRUTF8 [] = "UTF-8";
00199 static const char OSXMLHDRUTF16 [] = "UTF-16";
00200 static const char OSXMLHDRUTF16BE [] = "UTF-16BE";
00201 static const char OSXMLHDRUTF16LE [] = "UTF-16LE";
00202 static const char OSXMLHDRLATIN1 [] = "ISO-8859-1";
00203
00204
00205
00206
00207
00208 typedef struct {
00209 OSFreeCtxtAppInfoPtr pFreeFunc;
00210 OSResetCtxtAppInfoPtr pResetFunc;
00211 OSUTF8CHAR* schemaLocation;
00212 OSUTF8CHAR* noNSSchemaLoc;
00213 OSUTF8CHAR* xsiTypeAttr;
00214 OSXMLEncoding encoding;
00215 OSRTDList namespaceList;
00216 OSRTDList encodedNSList;
00217 OSRTDList sortedAttrList;
00218 OSXMLNSPfxLinkStack nsPfxLinkStack;
00219 OSXMLNSURITable nsURITable;
00220 OSRTMEMBUF memBuf;
00221 OSINT32 mSaxLevel;
00222 OSINT32 mSkipLevel;
00223 OSUINT32 maxSaxErrors;
00224 OSUINT32 errorsCnt;
00225 OSUINT8 indent;
00226 OSBOOL mbCdataProcessed;
00227 char indentChar;
00228 OSUINT8 soapVersion;
00229 OSXMLFacets facets;
00230 const OSUTF8CHAR* encodingStr;
00231 OSXMLBOM byteOrderMark;
00232 struct OSXMLReader* pXmlPPReader;
00233
00234 OSRTBuffer savedBuffer;
00235 OSRTFLAGS savedFlags;
00236 OSOCTET* attrsBuff;
00237 OSSIZE attrsBuffSize;
00238 OSSIZE attrStartPos;
00239 } OSXMLCtxtInfo;
00240
00241
00242
00243
00244
00245
00246
00247
00248
00249
00250 typedef enum {
00251 OSXMLREALOBJSYS,
00252 OSXMLREALBXER,
00253 OSXMLREALEXERMODS,
00254 OSXMLREALEXERDEC
00255 } OSXMLREALEncoding;
00256
00257 typedef enum {
00258 OSXMLINIT,
00259 OSXMLHEADER,
00260 OSXMLSTART,
00261 OSXMLATTR,
00262 OSXMLDATA,
00263 OSXMLEND,
00264 OSXMLCOMMENT
00265 } OSXMLState;
00266
00267 typedef struct OSXMLQName {
00268 const OSUTF8CHAR* nsPrefix;
00269 const OSUTF8CHAR* ncName;
00270 } OSXMLQName;
00271
00272 struct OSSAXHandlerBase;
00273
00274 typedef struct OSIntegerFmt {
00275 OSINT8 integerMaxDigits;
00276
00277 OSBOOL signPresent;
00278
00279 } OSIntegerFmt;
00280
00281
00282 typedef struct {
00283 OSSIZE offset;
00284 OSSIZE length;
00285 OSSIZE prefixLength;
00286 OSSIZE nameLength;
00287 } OSXMLSortedAttrOffset;
00288
00289 #define OSXMLINDENT 3
00290
00291 #ifdef XML_UNICODE
00292 #define rtXmlErrAddStrParm rtxErrAddUniStrParm
00293 #else
00294 #define rtXmlErrAddStrParm rtxErrAddStrParm
00295 #endif
00296
00300 typedef enum {
00301 OSXMLWSM_PRESERVE = 0,
00302 OSXMLWSM_REPLACE,
00303 OSXMLWSM_COLLAPSE
00304 } OSXMLWhiteSpaceMode;
00305
00306 #ifdef __cplusplus
00307 extern "C" {
00308 #endif
00309
00310
00311
00312 #ifndef rtXmlInitContext
00313
00319 EXTERNXML int rtXmlInitContext (OSCTXT* pctxt);
00320 #endif
00321
00336 EXTERNXML int rtXmlInitContextUsingKey
00337 (OSCTXT* pctxt, const OSOCTET* key, OSSIZE keylen);
00338
00345 EXTERNXML int rtXmlInitCtxtAppInfo (OSCTXT* pctxt);
00346
00357 EXTERNXML int rtXmlCreateFileInputSource (OSCTXT* pctxt, const char* filepath);
00358
00359 EXTERNXML OSBOOL rtXmlCmpQName
00360 (const OSUTF8CHAR* qname1, const OSUTF8CHAR* name2, const OSUTF8CHAR* nsPrefix2);
00361
00362 EXTERNXML int rtXmlGetBase64StrDecodedLen
00363 (const OSUTF8CHAR* inpdata, OSSIZE srcDataSize,
00364 OSSIZE* pNumOcts, OSSIZE* pSrcDataLen);
00365
00373 EXTERNXML void rtXmlMemFreeAnyAttrs (OSCTXT* pctxt, OSRTDList* pAnyAttrList);
00374
00395 EXTERNXML int rtXmlDecBase64Binary (OSRTMEMBUF* pMemBuf,
00396 const OSUTF8CHAR* inpdata,
00397 OSSIZE length);
00398
00422 EXTERNXML int rtXmlDecBase64Str (OSCTXT* pctxt,
00423 OSOCTET* pvalue, OSUINT32* pnocts,
00424 OSINT32 bufsize);
00425
00451 EXTERNXML int rtXmlDecBase64StrValue (OSCTXT* pctxt,
00452 OSOCTET* pvalue, OSUINT32* pnocts,
00453 OSSIZE bufSize, OSSIZE srcDataLen);
00454
00476 EXTERNXML int rtXmlDecBigInt
00477 (OSCTXT* pctxt, const OSUTF8CHAR** ppvalue);
00478
00489 EXTERNXML int rtXmlDecBool (OSCTXT* pctxt, OSBOOL* pvalue);
00490
00503 EXTERNXML int rtXmlDecDate (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00504
00523 EXTERNXML int rtXmlDecTime (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00524
00537 EXTERNXML int rtXmlDecDateTime (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00538
00551 EXTERNXML int rtXmlDecDecimal (OSCTXT* pctxt, OSREAL* pvalue);
00552
00565 EXTERNXML int rtXmlDecDouble (OSCTXT* pctxt, OSREAL* pvalue);
00566
00583 EXTERNXML int rtXmlDecDynBase64Str (OSCTXT* pctxt, OSDynOctStr* pvalue);
00584
00600 EXTERNXML int rtXmlDecDynHexStr (OSCTXT* pctxt, OSDynOctStr* pvalue);
00601
00616 EXTERNXML int rtXmlDecEmptyElement (OSCTXT* pctxt);
00617
00631 EXTERNXML int rtXmlDecUTF8Str
00632 (OSCTXT* pctxt, OSUTF8CHAR* outdata, OSSIZE max_len);
00633
00634
00648 EXTERNXML int rtXmlDecDynUTF8Str (OSCTXT* pctxt, const OSUTF8CHAR** outdata);
00649
00668 EXTERNXML int rtXmlDecHexBinary (OSRTMEMBUF* pMemBuf,
00669 const OSUTF8CHAR* inpdata,
00670 OSSIZE length);
00671
00694 EXTERNXML int rtXmlDecHexStr (OSCTXT* pctxt,
00695 OSOCTET* pvalue, OSUINT32* pnocts,
00696 OSINT32 bufsize);
00697
00698 EXTERNXML int rtXmlDecHexStrValue (OSCTXT* pctxt,
00699 const OSUTF8CHAR* const inpdata, OSSIZE nbytes, OSOCTET* pvalue,
00700 OSUINT32* pnbits, OSINT32 bufsize);
00701
00714 EXTERNXML int rtXmlDecGYear (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00715
00728 EXTERNXML int rtXmlDecGYearMonth (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00729
00742 EXTERNXML int rtXmlDecGMonth (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00743
00756 EXTERNXML int rtXmlDecGMonthDay (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00757
00770 EXTERNXML int rtXmlDecGDay (OSCTXT* pctxt, OSXSDDateTime* pvalue);
00771
00784 EXTERNXML int rtXmlDecInt (OSCTXT* pctxt, OSINT32* pvalue);
00785
00799 EXTERNXML int rtXmlDecInt8 (OSCTXT* pctxt, OSINT8* pvalue);
00800
00813 EXTERNXML int rtXmlDecInt16 (OSCTXT* pctxt, OSINT16* pvalue);
00814
00827 EXTERNXML int rtXmlDecInt64 (OSCTXT* pctxt, OSINT64* pvalue);
00828
00841 EXTERNXML int rtXmlDecUInt (OSCTXT* pctxt, OSUINT32* pvalue);
00842
00856 EXTERNXML int rtXmlDecUInt8 (OSCTXT* pctxt, OSUINT8* pvalue);
00857
00870 EXTERNXML int rtXmlDecUInt16 (OSCTXT* pctxt, OSUINT16* pvalue);
00871
00884 EXTERNXML int rtXmlDecUInt64 (OSCTXT* pctxt, OSUINT64* pvalue);
00885
00904 EXTERNXML int rtXmlDecNSAttr
00905 (OSCTXT* pctxt, const OSUTF8CHAR* attrName, const OSUTF8CHAR* attrValue,
00906 OSRTDList* pNSAttrs, const OSUTF8CHAR* nsTable[], OSUINT32 nsTableRowCount);
00907
00932 EXTERNXML const OSUTF8CHAR* rtXmlDecQName
00933 (OSCTXT* pctxt, const OSUTF8CHAR* qname, const OSUTF8CHAR** prefix);
00934
00947 EXTERNXML int rtXmlDecXSIAttr
00948 (OSCTXT* pctxt, const OSUTF8CHAR* attrName, const OSUTF8CHAR* attrValue);
00949
00964 EXTERNXML int rtXmlDecXSIAttrs (OSCTXT* pctxt, const OSUTF8CHAR* const* attrs,
00965 const char* typeName);
00966
00983 EXTERNXML int rtXmlDecXmlStr (OSCTXT* pctxt, OSXMLSTRING* outdata);
00984
00997 EXTERNXML int rtXmlParseElementName (OSCTXT* pctxt, OSUTF8CHAR** ppName);
00998
01011 EXTERNXML int rtXmlParseElemQName (OSCTXT* pctxt, OSXMLQName* pQName);
01012
01038 EXTERNXML int rtXmlEncAny (OSCTXT* pctxt, OSXMLSTRING* pvalue,
01039 const OSUTF8CHAR* elemName,
01040 OSXMLNamespace* pNS);
01041
01042 EXTERNXML int rtXmlEncAnyStr
01043 (OSCTXT* pctxt, const OSUTF8CHAR* pvalue,
01044 const OSUTF8CHAR* elemName, OSXMLNamespace* pNS);
01045
01057 EXTERNXML int rtXmlEncAnyTypeValue (OSCTXT* pctxt, const OSUTF8CHAR* pvalue);
01058
01069 EXTERNXML int rtXmlEncAnyAttr (OSCTXT* pctxt, OSRTDList* pAnyAttrList);
01070
01085 EXTERNXML int rtXmlEncBase64Binary (OSCTXT* pctxt, OSUINT32 nocts,
01086 const OSOCTET* value,
01087 const OSUTF8CHAR* elemName,
01088 OSXMLNamespace* pNS);
01089
01103 EXTERNXML int rtXmlEncBase64BinaryAttr
01104 (OSCTXT* pctxt, OSUINT32 nocts, const OSOCTET* value,
01105 const OSUTF8CHAR* attrName, OSSIZE attrNameLen);
01106
01118 EXTERNXML int rtXmlEncBase64StrValue (OSCTXT* pctxt, OSUINT32 nocts,
01119 const OSOCTET* value);
01120
01144 EXTERNXML int rtXmlEncBigInt (OSCTXT* pctxt, const OSUTF8CHAR* value,
01145 const OSUTF8CHAR* elemName,
01146 OSXMLNamespace* pNS);
01147
01162 EXTERNXML int rtXmlEncBigIntAttr (OSCTXT* pctxt, const OSUTF8CHAR* value,
01163 const OSUTF8CHAR* attrName, OSSIZE attrNameLen);
01164
01178 EXTERNXML int rtXmlEncBigIntValue (OSCTXT* pctxt, const OSUTF8CHAR* value);
01179
01197 EXTERNXML int rtXmlEncBitString (OSCTXT* pctxt, OSUINT32 nbits,
01198 const OSOCTET* value,
01199 const OSUTF8CHAR* elemName,
01200 OSXMLNamespace* pNS);
01201
01213 EXTERNXML int rtXmlEncBinStrValue (OSCTXT* pctxt,
01214 OSUINT32 nbits,
01215 const OSOCTET* data);
01216
01231 EXTERNXML int rtXmlEncBool (OSCTXT* pctxt, OSBOOL value,
01232 const OSUTF8CHAR* elemName,
01233 OSXMLNamespace* pNS);
01234
01245 EXTERNXML int rtXmlEncBoolValue (OSCTXT* pctxt, OSBOOL value);
01246
01258 EXTERNXML int rtXmlEncBoolAttr (OSCTXT* pctxt, OSBOOL value,
01259 const OSUTF8CHAR* attrName,
01260 OSSIZE attrNameLen);
01261
01272 EXTERNXML int rtXmlEncComment (OSCTXT* pctxt, const OSUTF8CHAR* comment);
01273
01291 EXTERNXML int rtXmlEncDate (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01292 const OSUTF8CHAR* elemName,
01293 OSXMLNamespace* pNS);
01294
01308 EXTERNXML int rtXmlEncDateValue
01309 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01310
01334 EXTERNXML int rtXmlEncTime (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01335 const OSUTF8CHAR* elemName,
01336 OSXMLNamespace* pNS);
01337
01350 EXTERNXML int rtXmlEncTimeValue
01351 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01352
01368 EXTERNXML int rtXmlEncDateTime (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01369 const OSUTF8CHAR* elemName,
01370 OSXMLNamespace* pNS);
01371
01383 EXTERNXML int rtXmlEncDateTimeValue
01384 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01385
01400 EXTERNXML int rtXmlEncDecimal (OSCTXT* pctxt, OSREAL value,
01401 const OSUTF8CHAR* elemName,
01402 OSXMLNamespace* pNS,
01403 const OSDecimalFmt* pFmtSpec);
01404
01417 EXTERNXML int rtXmlEncDecimalAttr (OSCTXT* pctxt, OSREAL value,
01418 const OSUTF8CHAR* attrName,
01419 OSSIZE attrNameLen,
01420 const OSDecimalFmt* pFmtSpec);
01421
01439 EXTERNXML int rtXmlEncDecimalValue (OSCTXT* pctxt, OSREAL value,
01440 const OSDecimalFmt* pFmtSpec,
01441 char* pDestBuf, OSSIZE destBufSize);
01442
01457 EXTERNXML int rtXmlEncDouble (OSCTXT* pctxt, OSREAL value,
01458 const OSUTF8CHAR* elemName,
01459 OSXMLNamespace* pNS,
01460 const OSDoubleFmt* pFmtSpec);
01461
01474 EXTERNXML int rtXmlEncDoubleAttr (OSCTXT* pctxt, OSREAL value,
01475 const OSUTF8CHAR* attrName,
01476 OSSIZE attrNameLen,
01477 const OSDoubleFmt* pFmtSpec);
01478
01493 EXTERNXML int rtXmlEncDoubleNormalValue (OSCTXT* pctxt, OSREAL value,
01494 const OSDoubleFmt* pFmtSpec,
01495 int defaultPrecision);
01496
01512 EXTERNXML int rtXmlEncDoubleValue (OSCTXT* pctxt, OSREAL value,
01513 const OSDoubleFmt* pFmtSpec,
01514 int defaultPrecision);
01515
01528 EXTERNXML int rtXmlEncEmptyElement (OSCTXT* pctxt,
01529 const OSUTF8CHAR* elemName,
01530 OSXMLNamespace* pNS,
01531 OSRTDList* pNSAttrs,
01532 OSBOOL terminate);
01533
01543 EXTERNXML int rtXmlEncEndDocument (OSCTXT* pctxt);
01544
01555 EXTERNXML int rtXmlEncEndElement (OSCTXT* pctxt,
01556 const OSUTF8CHAR* elemName,
01557 OSXMLNamespace* pNS);
01558
01568 EXTERNXML int rtXmlEncEndSoapEnv (OSCTXT* pctxt);
01569
01581 EXTERNXML int rtXmlEncEndSoapElems (OSCTXT* pctxt, OSXMLSOAPMsgType msgtype);
01582
01597 EXTERNXML int rtXmlEncFloat (OSCTXT* pctxt, OSREAL value,
01598 const OSUTF8CHAR* elemName,
01599 OSXMLNamespace* pNS,
01600 const OSDoubleFmt* pFmtSpec);
01601
01614 EXTERNXML int rtXmlEncFloatAttr (OSCTXT* pctxt, OSREAL value,
01615 const OSUTF8CHAR* attrName,
01616 OSSIZE attrNameLen,
01617 const OSDoubleFmt* pFmtSpec);
01618
01633 EXTERNXML int rtXmlEncGYear (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01634 const OSUTF8CHAR* elemName,
01635 OSXMLNamespace* pNS);
01636
01651 EXTERNXML int rtXmlEncGYearMonth (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01652 const OSUTF8CHAR* elemName,
01653 OSXMLNamespace* pNS);
01654
01669 EXTERNXML int rtXmlEncGMonth (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01670 const OSUTF8CHAR* elemName,
01671 OSXMLNamespace* pNS);
01672
01687 EXTERNXML int rtXmlEncGMonthDay (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01688 const OSUTF8CHAR* elemName,
01689 OSXMLNamespace* pNS);
01690
01705 EXTERNXML int rtXmlEncGDay (OSCTXT* pctxt, const OSXSDDateTime* pvalue,
01706 const OSUTF8CHAR* elemName,
01707 OSXMLNamespace* pNS);
01708
01720 EXTERNXML int rtXmlEncGYearValue
01721 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01722
01734 EXTERNXML int rtXmlEncGYearMonthValue
01735 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01736
01748 EXTERNXML int rtXmlEncGMonthValue
01749 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01750
01762 EXTERNXML int rtXmlEncGMonthDayValue
01763 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01764
01776 EXTERNXML int rtXmlEncGDayValue
01777 (OSCTXT* pctxt, const OSXSDDateTime* pvalue);
01778
01793 EXTERNXML int rtXmlEncHexBinary (OSCTXT* pctxt, OSSIZE nocts,
01794 const OSOCTET* value,
01795 const OSUTF8CHAR* elemName,
01796 OSXMLNamespace* pNS);
01797
01810 EXTERNXML int rtXmlEncHexBinaryAttr
01811 (OSCTXT* pctxt, OSUINT32 nocts, const OSOCTET* value,
01812 const OSUTF8CHAR* attrName, OSSIZE attrNameLen);
01813
01825 EXTERNXML int rtXmlEncHexStrValue (OSCTXT* pctxt,
01826 OSSIZE nocts,
01827 const OSOCTET* data);
01828
01839 EXTERNXML int rtXmlEncIndent (OSCTXT* pctxt);
01840
01854 EXTERNXML int rtXmlEncInt (OSCTXT* pctxt, OSINT32 value,
01855 const OSUTF8CHAR* elemName,
01856 OSXMLNamespace* pNS);
01857
01868 EXTERNXML int rtXmlEncIntValue (OSCTXT* pctxt, OSINT32 value);
01869
01882 EXTERNXML int rtXmlEncIntAttr (OSCTXT* pctxt, OSINT32 value,
01883 const OSUTF8CHAR* attrName,
01884 OSSIZE attrNameLen);
01885
01901 EXTERNXML int rtXmlEncIntPattern (OSCTXT* pctxt, OSINT32 value,
01902 const OSUTF8CHAR* elemName,
01903 OSXMLNamespace* pNS,
01904 const OSUTF8CHAR* pattern);
01905
01906 EXTERNXML int rtXmlEncIntPatternValue (OSCTXT* pctxt, OSINT32 value,
01907 const OSUTF8CHAR* pattern);
01908
01909 EXTERNXML int rtXmlEncUIntPattern (OSCTXT* pctxt, OSUINT32 value,
01910 const OSUTF8CHAR* elemName,
01911 OSXMLNamespace* pNS,
01912 const OSUTF8CHAR* pattern);
01913
01914 EXTERNXML int rtXmlEncUIntPatternValue (OSCTXT* pctxt, OSUINT32 value,
01915 const OSUTF8CHAR* pattern);
01916
01931 EXTERNXML int rtXmlEncInt64 (OSCTXT* pctxt, OSINT64 value,
01932 const OSUTF8CHAR* elemName,
01933 OSXMLNamespace* pNS);
01934
01935 EXTERNXML int rtXmlEncInt64Pattern (OSCTXT* pctxt, OSINT64 value,
01936 const OSUTF8CHAR* elemName,
01937 OSXMLNamespace* pNS,
01938 const OSUTF8CHAR* pattern);
01939
01951 EXTERNXML int rtXmlEncInt64Value (OSCTXT* pctxt, OSINT64 value);
01952 EXTERNXML int rtXmlEncInt64PatternValue (OSCTXT* pctxt, OSINT64 value,
01953 const OSUTF8CHAR* pattern);
01954
01968 EXTERNXML int rtXmlEncInt64Attr (OSCTXT* pctxt, OSINT64 value,
01969 const OSUTF8CHAR* attrName,
01970 OSSIZE attrNameLen);
01971
01990 EXTERNXML int rtXmlEncNamedBits
01991 (OSCTXT* pctxt, const OSBitMapItem* pBitMap, OSUINT32 nbits,
01992 const OSOCTET* pvalue, const OSUTF8CHAR* elemName, OSXMLNamespace* pNS);
01993
01994 EXTERNXML int rtXmlEncNamedBitsValue
01995 (OSCTXT* pctxt, const OSBitMapItem* pBitMap, OSUINT32 nbits,
01996 const OSOCTET* pvalue);
01997
02011 EXTERNXML int rtXmlEncNSAttrs (OSCTXT* pctxt, OSRTDList* pNSAttrs);
02012
02022 EXTERNXML int rtXmlPrintNSAttrs (const char* name, const OSRTDList* data);
02023
02024
02025 #define rtxPrintNSAttrs(name,data) rtXmlPrintNSAttrs(name,&data)
02026
02043 EXTERNXML int rtXmlEncReal10
02044 (OSCTXT *pctxt, const OSUTF8CHAR *pvalue, const OSUTF8CHAR* elemName,
02045 OSXMLNamespace* pNS);
02046
02060 EXTERNXML int rtXmlEncSoapArrayTypeAttr
02061 (OSCTXT* pctxt, const OSUTF8CHAR* name, const OSUTF8CHAR* value,
02062 OSSIZE itemCount);
02063
02064 EXTERNXML int rtXmlEncSoapArrayTypeAttr2
02065 (OSCTXT* pctxt, const OSUTF8CHAR* name, OSSIZE nameLen,
02066 const OSUTF8CHAR* value, OSSIZE valueLen, OSSIZE itemCount);
02067
02079 EXTERNXML int rtXmlEncStartDocument (OSCTXT* pctxt);
02080
02091 EXTERNXML int rtXmlEncBOM (OSCTXT* pctxt);
02107 EXTERNXML int rtXmlEncStartElement (OSCTXT* pctxt,
02108 const OSUTF8CHAR* elemName,
02109 OSXMLNamespace* pNS,
02110 OSRTDList* pNSAttrs,
02111 OSBOOL terminate);
02112
02124 EXTERNXML int rtXmlEncStartSoapEnv (OSCTXT* pctxt, OSRTDList* pNSAttrs);
02125
02137 EXTERNXML int rtXmlEncStartSoapElems
02138 (OSCTXT* pctxt, OSXMLSOAPMsgType msgtype);
02139
02152 EXTERNXML int rtXmlEncString (OSCTXT* pctxt,
02153 OSXMLSTRING* pxmlstr,
02154 const OSUTF8CHAR* elemName,
02155 OSXMLNamespace* pNS);
02156
02166 EXTERNXML int rtXmlEncStringValue (OSCTXT* pctxt, const OSUTF8CHAR* value);
02167
02178 EXTERNXML int rtXmlEncStringValue2
02179 (OSCTXT* pctxt, const OSUTF8CHAR* value, OSSIZE valueLen);
02180
02191 EXTERNXML int rtXmlEncTermStartElement (OSCTXT* pctxt);
02192
02208 EXTERNXML int rtXmlEncUnicodeStr (OSCTXT* pctxt,
02209 const OSUNICHAR* value,
02210 OSSIZE nchars,
02211 const OSUTF8CHAR* elemName,
02212 OSXMLNamespace* pNS);
02213
02225 EXTERNXML int rtXmlEncUTF8Attr (OSCTXT* pctxt,
02226 const OSUTF8CHAR* name,
02227 const OSUTF8CHAR* value);
02228
02242 EXTERNXML int rtXmlEncUTF8Attr2 (OSCTXT* pctxt,
02243 const OSUTF8CHAR* name, OSSIZE nameLen,
02244 const OSUTF8CHAR* value, OSSIZE valueLen);
02245
02259 EXTERNXML int rtXmlEncUTF8Str (OSCTXT* pctxt,
02260 const OSUTF8CHAR* value,
02261 const OSUTF8CHAR* elemName,
02262 OSXMLNamespace* pNS);
02263
02277 EXTERNXML int rtXmlEncUInt (OSCTXT* pctxt, OSUINT32 value,
02278 const OSUTF8CHAR* elemName,
02279 OSXMLNamespace* pNS);
02280
02292 EXTERNXML int rtXmlEncUIntValue (OSCTXT* pctxt, OSUINT32 value);
02293
02306 EXTERNXML int rtXmlEncUIntAttr (OSCTXT* pctxt, OSUINT32 value,
02307 const OSUTF8CHAR* attrName,
02308 OSSIZE attrNameLen);
02309
02325 EXTERNXML int rtXmlEncUInt64 (OSCTXT* pctxt, OSUINT64 value,
02326 const OSUTF8CHAR* elemName,
02327 OSXMLNamespace* pNS);
02328
02329 EXTERNXML int rtXmlEncUInt64Pattern (OSCTXT* pctxt, OSUINT64 value,
02330 const OSUTF8CHAR* elemName,
02331 OSXMLNamespace* pNS,
02332 const OSUTF8CHAR* pattern);
02333
02346 EXTERNXML int rtXmlEncUInt64Value (OSCTXT* pctxt, OSUINT64 value);
02347 EXTERNXML int rtXmlEncUInt64PatternValue (OSCTXT* pctxt, OSUINT64 value,
02348 const OSUTF8CHAR* pattern);
02349
02363 EXTERNXML int rtXmlEncUInt64Attr (OSCTXT* pctxt, OSUINT64 value,
02364 const OSUTF8CHAR* attrName,
02365 OSSIZE attrNameLen);
02366
02386 EXTERNXML int rtXmlEncXSIAttrs (OSCTXT* pctxt, OSBOOL needXSI);
02387
02398 EXTERNXML int rtXmlEncXSITypeAttr (OSCTXT* pctxt, const OSUTF8CHAR* value);
02399
02412 EXTERNXML int rtXmlEncXSITypeAttr2 (OSCTXT* pctxt,
02413 const OSUTF8CHAR* typeNsUri,
02414 const OSUTF8CHAR* typeName);
02415
02424 EXTERNXML int rtXmlEncXSINilAttr (OSCTXT* pctxt);
02425
02436 EXTERNXML int rtXmlFreeInputSource (OSCTXT* pctxt);
02437
02438 EXTERNXML OSBOOL rtXmlStrCmpAsc (const OSUTF8CHAR* text1, const char* text2);
02439
02440 EXTERNXML OSBOOL rtXmlStrnCmpAsc (const OSUTF8CHAR* text1,
02441 const char* text2, OSSIZE len);
02442
02443 #define rtXmlFinalizeMemBuf(pMemBuf) do { \
02444 (pMemBuf)->pctxt->buffer.data = (pMemBuf)->buffer + (pMemBuf)->startidx; \
02445 (pMemBuf)->pctxt->buffer.size = \
02446 ((pMemBuf)->usedcnt - (pMemBuf)->startidx); \
02447 (pMemBuf)->pctxt->buffer.dynamic = FALSE; \
02448 (pMemBuf)->pctxt->buffer.byteIndex = 0; \
02449 rtxMemBufReset (pMemBuf); \
02450 } while(0)
02451
02477 EXTERNXML int rtXmlSetEncBufPtr
02478 (OSCTXT* pctxt, OSOCTET* bufaddr, OSSIZE bufsiz);
02479
02488 #define rtXmlGetEncBufPtr(pctxt) (pctxt)->buffer.data
02489
02495 #define rtXmlGetEncBufLen(pctxt) (pctxt)->buffer.byteIndex
02496
02497
02505 EXTERNXML int rtXmlGetIndent (OSCTXT* pctxt);
02506
02507
02516 EXTERNXML OSBOOL rtXmlGetWriteBOM (OSCTXT* pctxt);
02517
02526 EXTERNXML int rtXmlGetIndentChar (OSCTXT* pctxt);
02539 EXTERNXML int rtXmlPrepareContext (OSCTXT* pctxt);
02540
02549 EXTERNXML int rtXmlSetEncC14N (OSCTXT* pctxt, OSBOOL value);
02550
02561 EXTERNXML int rtXmlSetEncXSINamespace (OSCTXT* pctxt, OSBOOL value);
02562
02573 EXTERNXML int rtXmlSetEncXSINilAttr (OSCTXT* pctxt, OSBOOL value);
02574
02575 EXTERNXML int rtXmlSetDigitsFacets
02576 (OSCTXT* pctxt, int totalDigits, int fractionDigits);
02577
02588 EXTERNXML int rtXmlSetEncDocHdr (OSCTXT* pctxt, OSBOOL value);
02589
02599 EXTERNXML int rtXmlSetEncodingStr
02600 (OSCTXT* pctxt, const OSUTF8CHAR* encodingStr);
02601
02617 EXTERNXML int rtXmlSetFormatting (OSCTXT* pctxt, OSBOOL doFormatting);
02618
02627 EXTERNXML int rtXmlSetIndent (OSCTXT* pctxt, OSUINT8 indent);
02628
02637 EXTERNXML int rtXmlSetIndentChar (OSCTXT* pctxt, char indentChar);
02638
02649 EXTERNXML void rtXmlSetNamespacesSet (OSCTXT* pctxt, OSBOOL value);
02650
02660 EXTERNXML int rtXmlSetNSPrefixLinks (OSCTXT* pctxt, OSRTDList* pNSAttrs);
02661
02673 EXTERNXML int rtXmlSetSchemaLocation
02674 (OSCTXT* pctxt, const OSUTF8CHAR* schemaLocation);
02675
02687 EXTERNXML int rtXmlSetNoNSSchemaLocation
02688 (OSCTXT* pctxt, const OSUTF8CHAR* schemaLocation);
02689
02698 EXTERNXML void rtXmlSetSoapVersion (OSCTXT* pctxt, OSUINT8 version);
02699
02710 EXTERNXML int rtXmlSetXSITypeAttr (OSCTXT* pctxt, const OSUTF8CHAR* xsiType);
02711
02720 EXTERNXML int rtXmlSetWriteBOM (OSCTXT* pctxt, OSBOOL write);
02721
02722 #include "rtxmlsrc/rtXmlNamespace.h"
02723
02737 EXTERNXML int rtXmlMatchHexStr
02738 (OSCTXT* pctxt, OSSIZE minLength, OSSIZE maxLength);
02739
02753 EXTERNXML int rtXmlMatchBase64Str
02754 (OSCTXT* pctxt, OSSIZE minLength, OSSIZE maxLength);
02755
02767 EXTERNXML int rtXmlMatchDate (OSCTXT* pctxt);
02768
02780 EXTERNXML int rtXmlMatchTime (OSCTXT* pctxt);
02781
02793 EXTERNXML int rtXmlMatchDateTime (OSCTXT* pctxt);
02794
02806 EXTERNXML int rtXmlMatchGYear (OSCTXT* pctxt);
02807
02819 EXTERNXML int rtXmlMatchGYearMonth (OSCTXT* pctxt);
02820
02832 EXTERNXML int rtXmlMatchGMonth (OSCTXT* pctxt);
02833
02845 EXTERNXML int rtXmlMatchGMonthDay (OSCTXT* pctxt);
02846
02858 EXTERNXML int rtXmlMatchGDay (OSCTXT* pctxt);
02859
02872 EXTERNXML OSUTF8CHAR* rtXmlNewQName
02873 (OSCTXT* pctxt, const OSUTF8CHAR* localName, const OSUTF8CHAR* prefix);
02874
02884 EXTERNXML OSBOOL rtXmlCmpBase64Str (OSUINT32 nocts1,
02885 const OSOCTET* data1,
02886 const OSUTF8CHAR* data2);
02887
02897 EXTERNXML OSBOOL rtXmlCmpHexStr (OSUINT32 nocts1,
02898 const OSOCTET* data1,
02899 const OSUTF8CHAR* data2);
02900
02901 EXTERNXML OSBOOL rtXmlCmpHexChar (OSUTF8CHAR ch, OSOCTET hexval);
02902
02903 EXTERNXML int rtSaxGetAttributeID (const OSUTF8CHAR* attrName,
02904 OSSIZE nAttr,
02905 const OSUTF8CHAR* attrNames[],
02906 OSUINT32 attrPresent[]);
02907
02920 EXTERNXML const OSUTF8CHAR* rtSaxGetAttrValue
02921 (const OSUTF8CHAR* attrName, const OSUTF8CHAR* const* attrs);
02922
02938 EXTERNXML OSINT16 rtSaxGetElemID
02939 (OSINT16* pState, OSINT16 prevElemIdx, const OSUTF8CHAR* localName,
02940 #ifdef OSXMLNS12
02941 OSINT32 nsidx,
02942 #endif
02943 const OSSAXElemTableRec idtab[], const OSINT16* fstab,
02944 OSINT16 fstabRows, OSINT16 fstabCols);
02945
02961 EXTERNXML OSINT16 rtSaxGetElemID8
02962 (OSINT16* pState, OSINT16 prevElemIdx, const OSUTF8CHAR* localName,
02963 #ifdef OSXMLNS12
02964 OSINT32 nsidx,
02965 #endif
02966 const OSSAXElemTableRec idtab[], const OSINT8* fstab,
02967 OSINT16 fstabRows, OSINT16 fstabCols);
02968
02969 EXTERNXML OSINT16 rtSaxFindElemID
02970 (OSINT16* pState, OSINT16 prevElemIdx, const OSUTF8CHAR* localName,
02971 #ifdef OSXMLNS12
02972 OSINT32 nsidx,
02973 #endif
02974 const OSSAXElemTableRec idtab[], const OSINT16* fstab,
02975 OSINT16 fstabRows, OSINT16 fstabCols);
02976
02977 EXTERNXML OSINT16 rtSaxFindElemID8
02978 (OSINT16* pState, OSINT16 prevElemIdx, const OSUTF8CHAR* localName,
02979 #ifdef OSXMLNS12
02980 OSINT32 nsidx,
02981 #endif
02982 const OSSAXElemTableRec idtab[], const OSINT8* fstab,
02983 OSINT16 fstabRows, OSINT16 fstabCols);
02984
02993 EXTERNXML OSBOOL rtSaxHasXMLNSAttrs (const OSUTF8CHAR* const* attrs);
02994
03002 EXTERNXML OSBOOL rtSaxIsEmptyBuffer (OSCTXT* pctxt);
03003
03004 EXTERNXML OSINT16 rtSaxLookupElemID
03005 (OSCTXT* pctxt, OSINT16* pState, OSINT16 prevElemIdx,
03006 const OSUTF8CHAR* localName, const OSUTF8CHAR* qName,
03007 #ifdef OSXMLNS12
03008 OSINT32 nsidx,
03009 #endif
03010 const OSSAXElemTableRec idtab[], const OSINT16* fstab,
03011 OSINT16 fstabRows, OSINT16 fstabCols);
03012
03013 EXTERNXML OSINT16 rtSaxLookupElemID8
03014 (OSCTXT* pctxt, OSINT16* pState, OSINT16 prevElemIdx,
03015 const OSUTF8CHAR* localName, const OSUTF8CHAR* qName,
03016 #ifdef OSXMLNS12
03017 OSINT32 nsidx,
03018 #endif
03019 const OSSAXElemTableRec idtab[], const OSINT8* fstab,
03020 OSINT16 fstabRows, OSINT16 fstabCols);
03021
03033 EXTERNXML int rtSaxStrListParse
03034 (OSCTXT* pctxt, OSRTMEMBUF *pMemBuf, OSRTDList* pvalue);
03035
03054 EXTERNXML int rtSaxSortAttrs
03055 (OSCTXT* pctxt, const OSUTF8CHAR* const* attrs, OSUINT16** order);
03056
03064 EXTERNXML int rtSaxStrListMatch (OSCTXT* pctxt);
03065
03066 EXTERNXML OSBOOL rtSaxTestFinal (OSINT16 state,
03067 OSINT16 currElemIdx,
03068 const int* fstab,
03069 int fstabRows, int fstabCols);
03070
03071 EXTERNXML OSBOOL rtSaxTestFinal8 (OSINT16 state,
03072 OSINT16 currElemIdx,
03073 const OSINT8* fstab,
03074 int fstabRows, int fstabCols);
03075
03076 EXTERNXML int rtSaxSetSkipLevelToCurrent (OSCTXT* pctxt, int stat);
03077
03078 EXTERNXML OSUINT32 rtSaxSetMaxErrors (OSCTXT* pctxt, OSUINT32 maxErrors);
03079
03080 EXTERNXML OSUINT32 rtSaxGetMaxErrors (OSCTXT* pctxt);
03081
03082 EXTERNXML int rtSaxTestAttributesPresent (OSCTXT* pctxt,
03083 const OSUINT32* attrPresent, const OSUINT32* reqAttrMask,
03084 const OSUTF8CHAR* const* attrNames, OSSIZE numOfAttrs,
03085 const char* parentTypeName);
03086
03087 EXTERNXML OSBOOL rtSaxIncErrors (OSCTXT* pctxt);
03088
03089 EXTERNXML int rtSaxReportUnexpAttrs (OSCTXT* pctxt,
03090 const OSUTF8CHAR* const* attrs,
03091 const char* typeName);
03092
03105 EXTERNXML int rtXmlWriteToFile (OSCTXT* pctxt, const char* filename);
03106
03107 EXTERNXML int rtXmlWriteUTF16ToFile (OSCTXT* pctxt, const char* filename);
03108
03109 EXTERNXML void rtXmlTreatWhitespaces (OSCTXT* pctxt, int whiteSpaceType);
03110
03111 EXTERNXML int rtXmlCheckBuffer (OSCTXT* pctxt, OSSIZE byte_count);
03112
03117 EXTERNXML void rtErrXmlInit (OSVOIDARG);
03118 EXTERNXML int rtXmlPutChar (OSCTXT* pctxt, const OSUTF8CHAR value);
03119 EXTERNXML int rtXmlWriteChars
03120 (OSCTXT* pctxt, const OSUTF8CHAR* value, OSSIZE len);
03121
03141 EXTERNXML int rtXmlpDecAny (OSCTXT* pctxt, const OSUTF8CHAR** pvalue);
03142
03156 EXTERNXML int rtXmlpDecAny2 (OSCTXT* pctxt, OSUTF8CHAR** pvalue);
03157
03174 EXTERNXML int rtXmlpDecAnyAttrStr
03175 (OSCTXT* pctxt, const OSUTF8CHAR** ppAttrStr, OSSIZE attrIndex);
03176
03196 EXTERNXML int rtXmlpDecAnyElem (OSCTXT* pctxt, const OSUTF8CHAR** pvalue);
03197
03223 EXTERNXML int rtXmlpDecBase64Str
03224 (OSCTXT* pctxt, OSOCTET* pvalue, OSUINT32* pnocts, OSSIZE bufsize);
03225
03249 EXTERNXML int rtXmlpDecBigInt (OSCTXT* pctxt, const OSUTF8CHAR** pvalue);
03250
03267 EXTERNXML int rtXmlpDecBitString
03268 (OSCTXT* pctxt, OSOCTET* pvalue, OSUINT32* pnbits, OSUINT32 bufsize);
03269
03282 EXTERNXML int rtXmlpDecBool (OSCTXT* pctxt, OSBOOL* pvalue);
03283
03296 EXTERNXML int rtXmlpDecDate (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03297
03310 EXTERNXML int rtXmlpDecDateTime (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03311
03330 EXTERNXML int rtXmlpDecDecimal (OSCTXT* pctxt, OSREAL* pvalue,
03331 int totalDigits, int fractionDigits);
03332
03345 EXTERNXML int rtXmlpDecDouble (OSCTXT* pctxt, OSREAL* pvalue);
03346
03347 #define OSXMLREALENC_OBJSYS 0x1F
03348 #define OSXMLREALENC_BXER 0x10
03349 #define OSXMLREALENC_EXERMODS 0x1B
03350 #define OSXMLREALENC_EXERDECIMAL 0x03
03351
03372 EXTERNXML int rtXmlpDecDoubleExt (OSCTXT* pctxt, OSUINT8 flags,
03373 OSREAL* pvalue);
03374
03375
03394 EXTERNXML int rtXmlpDecDynBase64Str (OSCTXT* pctxt, OSDynOctStr* pvalue);
03395
03409 EXTERNXML int rtXmlpDecDynBitString (OSCTXT* pctxt, OSDynOctStr* pvalue);
03410
03428 EXTERNXML int rtXmlpDecDynHexStr (OSCTXT* pctxt, OSDynOctStr* pvalue);
03429
03447 EXTERNXML int rtXmlpDecDynUnicodeStr
03448 (OSCTXT* pctxt, const OSUNICHAR** ppdata, OSSIZE* pnchars);
03449
03463 EXTERNXML int rtXmlpDecDynUTF8Str (OSCTXT* pctxt, const OSUTF8CHAR** outdata);
03464
03465
03479 EXTERNXML int rtXmlpDecUTF8Str
03480 (OSCTXT* pctxt, OSUTF8CHAR* out, OSSIZE max_len);
03481
03494 EXTERNXML int rtXmlpDecGDay (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03495
03508 EXTERNXML int rtXmlpDecGMonth (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03509
03522 EXTERNXML int rtXmlpDecGMonthDay (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03523
03536 EXTERNXML int rtXmlpDecGYear (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03537
03550 EXTERNXML int rtXmlpDecGYearMonth (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03551
03576 EXTERNXML int rtXmlpDecHexStr
03577 (OSCTXT* pctxt, OSOCTET* pvalue, OSUINT32* pnocts, OSINT32 bufsize);
03578
03591 EXTERNXML int rtXmlpDecInt (OSCTXT* pctxt, OSINT32* pvalue);
03592
03606 EXTERNXML int rtXmlpDecInt8 (OSCTXT* pctxt, OSINT8* pvalue);
03607
03620 EXTERNXML int rtXmlpDecInt16 (OSCTXT* pctxt, OSINT16* pvalue);
03621
03634 EXTERNXML int rtXmlpDecInt64 (OSCTXT* pctxt, OSINT64* pvalue);
03635
03652 EXTERNXML int rtXmlpDecNamedBits
03653 (OSCTXT* pctxt, const OSBitMapItem* pBitMap,
03654 OSOCTET* pvalue, OSUINT32* pnbits, OSUINT32 bufsize);
03655
03672 EXTERNXML int rtXmlpDecStrList (OSCTXT* pctxt, OSRTDList* plist);
03673
03692 EXTERNXML int rtXmlpDecTime (OSCTXT* pctxt, OSXSDDateTime* pvalue);
03693
03706 EXTERNXML int rtXmlpDecUInt (OSCTXT* pctxt, OSUINT32* pvalue);
03707
03721 EXTERNXML int rtXmlpDecUInt8 (OSCTXT* pctxt, OSOCTET* pvalue);
03722
03735 EXTERNXML int rtXmlpDecUInt16 (OSCTXT* pctxt, OSUINT16* pvalue);
03736
03749 EXTERNXML int rtXmlpDecUInt64 (OSCTXT* pctxt, OSUINT64* pvalue);
03750
03767 EXTERNXML int rtXmlpDecXmlStr (OSCTXT* pctxt, OSXMLSTRING* outdata);
03768
03785 EXTERNXML int rtXmlpDecXmlStrList (OSCTXT* pctxt, OSRTDList* plist);
03786
03804 EXTERNXML int rtXmlpDecXSIAttr
03805 (OSCTXT* pctxt, const OSXMLNameFragments* attrName);
03806
03828 EXTERNXML int rtXmlpDecXSITypeAttr
03829 (OSCTXT* pctxt, const OSXMLNameFragments* attrName,
03830 const OSUTF8CHAR** ppAttrValue);
03831
03855 EXTERNXML int rtXmlpGetAttributeID
03856 (const OSXMLStrFragment* attrName, OSINT16 nsidx,
03857 OSSIZE nAttr, const OSXMLAttrDescr attrNames[], OSUINT32 attrPresent[]);
03858
03871 EXTERNXML int rtXmlpGetNextElem
03872 (OSCTXT* pctxt, OSXMLElemDescr* pElem, OSINT32 level);
03873
03894 EXTERNXML int rtXmlpGetNextElemID
03895 (OSCTXT* pctxt, const OSXMLElemIDRec* tab, OSSIZE nrows, OSINT32 level,
03896 OSBOOL continueParse);
03897
03907 EXTERNXML int rtXmlpMarkLastEventActive (OSCTXT* pctxt);
03908
03924 EXTERNXML int rtXmlpMatchStartTag
03925 (OSCTXT* pctxt, const OSUTF8CHAR* elemLocalName, OSINT16 nsidx);
03926
03937 EXTERNXML int rtXmlpMatchEndTag (OSCTXT* pctxt, OSINT32 level);
03938
03949 EXTERNXML OSBOOL rtXmlpHasAttributes (OSCTXT* pctxt);
03950
03959 EXTERNXML int rtXmlpGetAttributeCount (OSCTXT* pctxt);
03960
03979 EXTERNXML int rtXmlpSelectAttribute
03980 (OSCTXT* pctxt, OSXMLNameFragments* pAttr, OSINT16* nsidx, OSSIZE attrIndex);
03981
03988 EXTERNXML OSINT32 rtXmlpGetCurrentLevel (OSCTXT* pctxt);
03989
04000 EXTERNXML void rtXmlpSetWhiteSpaceMode
04001 (OSCTXT* pctxt, OSXMLWhiteSpaceMode whiteSpaceMode);
04002
04010 EXTERNXML OSBOOL rtXmlpSetMixedContentMode
04011 (OSCTXT* pctxt, OSBOOL mixedContentMode);
04012
04018 EXTERNXML void rtXmlpSetListMode (OSCTXT* pctxt);
04019
04028 EXTERNXML OSBOOL rtXmlpListHasItem (OSCTXT* pctxt);
04029
04039 EXTERNXML void rtXmlpCountListItems (OSCTXT* pctxt, OSSIZE* itemCnt);
04040
04063 EXTERNXML int rtXmlpGetNextSeqElemID2
04064 (OSCTXT* pctxt, const OSXMLElemIDRec* tab, const OSXMLGroupDesc* pGroup,
04065 int groups, int curID, int lastMandatoryID, OSBOOL groupMode,
04066 OSBOOL checkRepeat);
04067
04102 EXTERNXML int rtXmlpGetNextSeqElemID
04103 (OSCTXT* pctxt, const OSXMLElemIDRec* tab, const OSXMLGroupDesc* pGroup,
04104 int curID, int lastMandatoryID, OSBOOL groupMode);
04105
04131 EXTERNXML int rtXmlpGetNextSeqElemIDExt
04132 (OSCTXT* pctxt, const OSXMLElemIDRec* tab, const OSXMLGroupDesc* ppGroup,
04133 const OSBOOL* extRequired, int postExtRootID,
04134 int curID, int lastMandatoryID, OSBOOL groupMode);
04135
04136
04152 EXTERNXML int rtXmlpGetNextAllElemID
04153 (OSCTXT* pctxt, const OSXMLElemIDRec* tab, OSSIZE nrows,
04154 const OSUINT8* pOrder, OSSIZE nOrder, OSSIZE maxOrder, int anyID);
04155
04172 EXTERNXML int rtXmlpGetNextAllElemID16
04173 (OSCTXT* pctxt, const OSXMLElemIDRec* tab, OSSIZE nrows,
04174 const OSUINT16* pOrder, OSSIZE nOrder, OSSIZE maxOrder, int anyID);
04175
04176
04192 EXTERNXML int rtXmlpGetNextAllElemID32
04193 (OSCTXT* pctxt, const OSXMLElemIDRec* tab, OSSIZE nrows,
04194 const OSUINT32* pOrder, OSSIZE nOrder, OSSIZE maxOrder, int anyID);
04195
04196
04204 EXTERNXML void rtXmlpSetNamespaceTable
04205 (OSCTXT* pctxt, const OSUTF8CHAR* namespaceTable[], OSSIZE nmNamespaces);
04206
04215 EXTERNXML int rtXmlpCreateReader (OSCTXT* pctxt);
04216
04223 EXTERNXML void rtXmlpHideAttributes (OSCTXT* pctxt);
04224
04233 EXTERNXML OSBOOL rtXmlpNeedDecodeAttributes (OSCTXT* pctxt);
04234
04240 EXTERNXML void rtXmlpMarkPos (OSCTXT* pctxt);
04241
04247 EXTERNXML void rtXmlpRewindToMarkedPos (OSCTXT* pctxt);
04248
04254 EXTERNXML void rtXmlpResetMarkedPos (OSCTXT* pctxt);
04255
04272 EXTERNXML int rtXmlpGetXSITypeAttr
04273 (OSCTXT* pctxt, const OSUTF8CHAR** ppAttrValue, OSINT16* nsidx,
04274 OSSIZE* pLocalOffs);
04275
04286 EXTERNXML int rtXmlpGetXmlnsAttrs (OSCTXT* pctxt, OSRTDList* pNSAttrs);
04287
04297 EXTERNXML int rtXmlpDecXSIAttrs (OSCTXT* pctxt);
04298
04307 EXTERNXML OSBOOL rtXmlpIsEmptyElement (OSCTXT* pctxt);
04308
04317 EXTERNXML int rtXmlEncAttrC14N (OSCTXT* pctxt);
04318
04328 EXTERNXML struct OSXMLReader* rtXmlpGetReader (OSCTXT* pctxt);
04329
04338 EXTERNXML OSBOOL rtXmlpIsLastEventDone (OSCTXT* pctxt);
04339
04351 EXTERNXML int rtXmlpGetXSITypeIndex
04352 (OSCTXT* pctxt, const OSXMLItemDescr typetab[], OSSIZE typetabsiz);
04353
04367 EXTERNXML int rtXmlpLookupXSITypeIndex
04368 (OSCTXT* pctxt, const OSUTF8CHAR* pXsiType, OSINT16 xsiTypeIdx,
04369 const OSXMLItemDescr typetab[], OSSIZE typetabsiz);
04370
04378 EXTERNXML void rtXmlpForceDecodeAsGroup (OSCTXT* pctxt);
04379
04388 EXTERNXML OSBOOL rtXmlpIsDecodeAsGroup (OSCTXT* pctxt);
04389
04399 EXTERNXML OSBOOL rtXmlpIsUTF8Encoding (OSCTXT* pctxt);
04400
04415 EXTERNXML int rtXmlpReadBytes (OSCTXT* pctxt, OSOCTET* pbuf, OSSIZE nbytes);
04416
04421 #ifdef __cplusplus
04422 }
04423 #endif
04424
04425 #endif