XBinder  Version 2.9.x
rtxXmlQName.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2003-2022 Objective Systems, Inc.
3  *
4  * This software is furnished under a license and may be used and copied
5  * only in accordance with the terms of such license and with the
6  * inclusion of the above copyright notice. This software or any other
7  * copies thereof may not be provided or otherwise made available to any
8  * other person. No title to and ownership of the software is hereby
9  * transferred.
10  *
11  * The information in this software is subject to change without notice
12  * and should not be construed as a commitment by Objective Systems, Inc.
13  *
14  * PROPRIETARY NOTICE
15  *
16  * This software is an unpublished work subject to a confidentiality agreement
17  * and is protected by copyright and trade secret law. Unauthorized copying,
18  * redistribution or other use of this work is prohibited.
19  *
20  * The above notice of copyright on this source code product does not indicate
21  * any actual or intended publication of such source code.
22  *
23  *****************************************************************************/
28 #ifndef _RTXXMLQNAME_H_
29 #define _RTXXMLQNAME_H_
30 
31 #include "rtxsrc/rtxContext.h"
32 
36 typedef struct {
37  const OSUTF8CHAR* nsURI;
38  const OSUTF8CHAR* nsPrefix;
39  const OSUTF8CHAR* localName;
41 
48 typedef struct {
49  const OSUTF8CHAR* nsURI; /* use null for empty namespace */
50  const OSUTF8CHAR* localName;
52 
53 
54 #include "rtxsrc/rtxContext.h"
55 
56 #ifdef __cplusplus
57 extern "C" {
58 #endif
59 
76 (OSCTXT* pctxt, const OSUTF8CHAR* localName, const OSUTF8CHAR* prefix,
77  const OSUTF8CHAR* nsuri);
78 
88 (OSCTXT* pctxt, const OSXMLFullQName* pqname);
89 
98 EXTERNRT void rtxQNameDeepCopy
99 (OSCTXT* pctxt, OSXMLFullQName* pdest, const OSXMLFullQName* psrc);
100 
109 EXTERNRT void rtxQNameFreeMem
110 (OSCTXT* pctxt, OSXMLFullQName* pqname, OSBOOL dynamic);
111 
118 EXTERNRT OSUINT32 rtxQNameHash (const OSXMLFullQName* pqname);
119 
127 EXTERNRT OSBOOL rtxQNamesEqual
128 (const OSXMLFullQName* pqname1, const OSXMLFullQName* pqname2);
129 
140 EXTERNRT const OSUTF8CHAR* rtxQNameToString
141 (const OSXMLFullQName* pqname, OSUTF8CHAR* buffer, OSUINT32 bufsiz);
142 
154 EXTERNRT OSSIZE rtxQNameValueArraySearch(OSXMLQNameValue* pValue,
155  OSXMLQNameValue* pArray, OSSIZE arraySize);
156 
157 #ifdef __cplusplus
158 }
159 #endif
160 
161 #endif
EXTERNRT OSBOOL rtxQNamesEqual(const OSXMLFullQName *pqname1, const OSXMLFullQName *pqname2)
This function tests 2 QNames for equality.
EXTERNRT OSSIZE rtxQNameValueArraySearch(OSXMLQNameValue *pValue, OSXMLQNameValue *pArray, OSSIZE arraySize)
Function to do a binary search on a sorted array of QNames.
EXTERNRT OSXMLFullQName * rtxNewFullQName(OSCTXT *pctxt, const OSUTF8CHAR *localName, const OSUTF8CHAR *prefix, const OSUTF8CHAR *nsuri)
This function creates a new full QName structure given the parts.
EXTERNRT OSUINT32 rtxQNameHash(const OSXMLFullQName *pqname)
This function computes a hash code for the given QName.
Common run-time context definitions.
This version of QName contains complete namespace info (prefix + URI)
Definition: rtxXmlQName.h:36
EXTERNRT void rtxQNameFreeMem(OSCTXT *pctxt, OSXMLFullQName *pqname, OSBOOL dynamic)
This function frees all memory within a QName structure,.
This version of QName models the value space for XML Schema QNames, which consists of just a namespac...
Definition: rtxXmlQName.h:48
EXTERNRT const OSUTF8CHAR * rtxQNameToString(const OSXMLFullQName *pqname, OSUTF8CHAR *buffer, OSUINT32 bufsiz)
This function returns the QName in the following stringified format: {uri}/localName.
EXTERNRT OSXMLFullQName * rtxNewFullQNameDeepCopy(OSCTXT *pctxt, const OSXMLFullQName *pqname)
This function allocates a new QName instance and makes a deep copy of the given QName including the s...
Run-time context structure.
Definition: rtxContext.h:198
EXTERNRT void rtxQNameDeepCopy(OSCTXT *pctxt, OSXMLFullQName *pdest, const OSXMLFullQName *psrc)
This function makes a deep copy of the given QName including the strings inside.