目次

Search

  1. はじめに
  2. タスクフローとリニアタスクフロー
  3. タスクフロー
  4. リニアタスクフロー

タスクフロー

タスクフロー

ヒント: XQuery 3.0を使用した式の作成

ヒント: XQuery 3.0を使用した式の作成

XQueryバージョン3.0を使用して、式エディタで式を作成します。このトピックの例では、単一のステートメントと複数のステートメントのXQuery式を作成するために使用する、構文と要素について示します。
XQuery 3.0の詳細については、https://www.w3.org/TR/xquery-30/を参照してください。

単一ステートメントの式

次の式は、単一のステートメント式です。
concat("Hello"," ",$input.n1)
以下の注記では、この式の各部分を説明しています。
  • concat
    は、2つ以上の値を1つの文字列に結合する関数です。
  • "hello"
    " "
    $input.n1
    は、関数
    concat
    のパラメータです。
    • "hello"
      は文字列です。常に引用符で文字列を囲みます。一重引用符または二重引用符のどちらを使用してもかまいません。ただし、式内で同じスタイルを使用するようにしてください。
    • n1
      は入力変数です。式に追加すると、式エディタによって
      $input.n1
      に変換されます。変数の先頭には、常に
      $
      を付けます。変数の周囲には引用符を追加しないでください。
    • パラメータ
      " "
      はスペースを表します。
  • パラメータはかっこで囲みます。
  • パラメータはコンマで区切ります。
$n1
の値が「World」であるとします。
以下を実行するとします。
concat("Hello", " ",$input.n1)
出力は以下のようになります。
Hello World

マルチステートメント式

次の式は、マルチステートメント式です。
let $n1 := number($input.n1) let $n2 := number($input.n2) let $r1 := if ($n1 > $n2) then "Greater: N1 > N2" else if ($n1 < $n2) then "Less: N1 < N2" else "Same" return $r1
以下の注記では、この式の各部分を説明しています。
  • 最初に、変数
    $n1
    $n2
    を宣言します。演算子
    :=
    を使用して、値を割り当てます。
    $n1
    および
    $n2
    を割り当てステップで整数として定義した場合でも、式エディタで数値として宣言する必要があります。
  • let
    if
    then
    、および
    else
    などのXQueryキーワードを使用できます。これらは大文字小文字を区別します。
    let
    をキーワードとして式を開始する場合は、キーワード
    return
    を使用して式を終了する必要があります。
  • 次のルールを使用して、
    $r1
    という3番目の変数の値を定義するには、式エディタを使用します。
    • $n1
      の値が
      $n2
      の値よりも大きい場合、
      $r1
      は値
      Greater: N1 > N2
      を受け取ります。
    • $n1
      の値が
      $n2
      の値よりも小さい場合、
      $r1
      は値
      Less: N1 < N2
      を受け取ります。
    • $n1
      の値と
      $n2
      の値が同じである場合、
      $r1
      は値
      Same
      を受け取ります。
$n1
の値が
20
であり、
$n2
の値が
250
であると想定します。
以下を実行するとします。
let $n1 := number($input.n1) let $n2 := number($input.n2) let $r1 := if ($n1 > $n2) then "Greater: N1 > N2" else if ($n1 < $n2) then "Less: N1 < N2" else "Same" return $r1
出力は以下のようになります。
Less: N1<N2
ここで、
$r1
は次の値を持ちます。
Less: N1<N2