optional

指定されている探索が結果を出す場合、オプションの結果を返します。もしくは、呼び出し要素を返します。

構文

optional(traversal_fragment)
1. 凡例
構文規則 説明
小文字と大文字 リテラル・キーワード。()を含みます。
Italics 変数値。ユーザー定義値と置き換えます。
[] 任意。角かっこ( [] )で任意のコマンド引数を囲みます。角かっこは入力しないでください。
{} グループ。中かっこ({})は、選択肢を含むグループを示します。中かっこは入力しないでください。
| または。縦棒(|)で代替要素を区切ります。要素のいずれかを入力してください。縦棒は入力しないでください。
... 繰り返し可能。省略記号(...)は、構文要素を必要な回数だけ繰り返すことができることを示します。

説明

optional()ステップは、branch/flatMapステップで、結果がもたらされる場合、指定された探索の結果か、呼び出し要素の返しを返します。

John Doeには友人がいることから、彼の友人を返します。
g.V().has('person', 'name', 'John Doe').optional(out('knows'))
リンク付けされている友人がいないことから、Julia Childを返します。
g.V().has('person', 'name', 'Julia Child').optional(out('knows'))