クラス定義での XData ブロックの構文
XData ブロックの構造を説明します。XData ブロック定義に関する一般情報へのリンクは、"XData ブロック" を参照してください。
概要
XData ブロックは、データの名前付きユニットであり、クラス定義に置いて、通常はクラスのメソッドで使用します。一般的に、これは適格な XML ドキュメントですが、JSON や YAML など、他の形式のデータで構成することもできます。
詳細
XData ブロックの構造は以下のとおりです。
/// description
XData name [ keyword_list ]
{
data
}
以下は、この指定の説明です。
-
description (オプション) は、クラス・リファレンスでの表示を意図しています。description は既定ではブランクです。"クラス・ドキュメントの作成" を参照してください。
-
name (必須) は XData ブロックの名前です。これは、有効なクラス・メンバ名で、かつ他のクラス・メンバ名と重複しないものである必要があります。
-
data (オプション) は XData ブロックのペイロードを格納します。XML の場合、これは先頭に XML 宣言がない、整形式のドキュメント (単一のルート要素を持つ) にする必要があります。
-
keyword_list (オプション) は、さらに XData ブロックを定義するキーワードのコンマ区切りリストです。
すべてのキーワードは、"XData の構文とキーワード" を参照してください。
このリストを省略する場合は角括弧も省略します。
例
Class Demo.CoffeeMakerRESTServer Extends %CSP.REST
{
Parameter HandleCorsRequest = 1
XData UrlMap [ XMLNamespace = "http://www.intersystems.com/urlmap" ]
{
<Routes>
<Route Url="/test" Method="GET" Call="test"/>
<Route Url="/coffeemakers" Method="GET" Call="GetAll" />
<Route Url="/coffeemaker/:id" Method="GET" Call="GetCoffeeMakerInfo" />
<Route Url="/newcoffeemaker" Method="POST" Call="NewMaker" />
<Route Url="/coffeemaker/:id" Method="PUT" Call="EditMaker" />
<Route Url="/coffeemaker/:id" Method="DELETE" Call="RemoveCoffeemaker"/>
</Routes>
}