cpiSetElementNamespace

目的

指定した構文エレメントの "namespace" 属性を設定します。

定義されている場所 タイプ メンバー
CPI_VFT オプション iFpSetElementValue

構文

void             cpiSetElementNamespace(
		int*            returnCode,
		CciElement*     targetElement,
		const CciChar*  nameSpace);

パラメーター

returnCode
NULL ポインターを入力すると、プラグイン・ノードがエラーを処理しないことを示します。 この呼び出しの実行時にスローされた例外は、フロー内の次のアップストリーム・ノードに対して再度スローされます。 入力が NULL でない場合、出力は呼び出しの成功状況を示します。 実行時に例外が発生する場合、出力時に *returnCode が CCI_EXCEPTION に設定されます。 CciGetLastExceptionData を呼び出すと、例外の詳細が提供されます。 (入力)。
currentElement
現行の構文エレメントのアドレス (入力)。
targetElement
ターゲットの構文エレメント・オブジェクトのアドレスを指定します。
value
ネーム・スペース値を表す CciChar の NULL 終了ストリングのアドレスを指定します。 空ストリングはネーム・スペースに有効な値です。 実際には、デフォルトでは、エレメントは空ストリングのネーム・スペースに作成されます。 そのため、この API を介して空ストリングをネーム・スペースとして指定することは、 エレメントが以前に別のネーム・スペースにあり、 ネーム・スペースの値を空ストリングに変更したい場合にのみ効果があります。

戻り値

なし。

サンプル

/* Convert the attribute value into broker form */
          data = CciNString((char *)startMarker, markedSize, pc->iCcsid);

/* Create a new name-value element for the attribute */
          newElement = cpiCreateElement(&rc, parser);
          cpiSetElementType(&rc, newElement, CCI_ELEMENT_TYPE_NAME_VALUE);
          cpiSetElementName(&rc, newElement, data);
          cpiSetElementNamespace(&rc, newElement, data);
          if (pc->trace) {
            const char * mbData = mbString(data, pc->iCcsid);
            fprintf(pc->tracefile, "PLUGIN: Created new NAMESPACEVALUE element;
                    object=0x%x type=0x%x name=",
                    newElement, CCI_ELEMENT_TYPE_NAME_VALUE);
            fprintf(pc->tracefile, "%s¥n", mbData);
            fflush(pc->tracefile);
            free((void *)mbData);
          }
          /* Free the memory created in CciNString() */
          free((void *)data);

          /* Add the element */
          cpiAddAsLastChild(&rc, element, newElement);

関連概念
ユーザー定義のパーサー
ユーザー定義拡張機能

関連タスク
C でのパーサーの作成

関連資料
cpiElementNameSpace
パーサー・インプリメンテーション関数