14.4. JSONata を使用した JSON のイベント変換


JSONata は、JSON データ用の軽量クエリーおよび変換言語です。Knative EventTransform では、JSONata 式がイベントを再形成する重要な方法を提供します。これらを使用すると、イベントデータから値を抽出したり、特定のフィールドを CloudEvent 属性に昇格したり、ペイロード全体を再構築したり、計算された値を追加したり、条件付きロジックを適用してイベントの変換方法を制御したりできます。

EventTransform リソースの spec.jsonata.expression フィールドに JSONata 式を指定できます。次の例に示すように、式は受信した CloudEvent を新しい CloudEvent にマッピングします。

JSONata を使用した簡単なイベント変換の例

apiVersion: eventing.knative.dev/v1alpha1
kind: EventTransform
metadata:
  name: simple-transform
spec:
  jsonata:
    expression: |
      {
        "specversion": "1.0",
        "id": id,
        "time": time,
        "type": "transformed.type",
        "source": "transform.simple",
        "data": data
      }
Copy to Clipboard Toggle word wrap

14.4.1. JSONata での CloudEvent 構造

EventTransform で JSONata を使用する場合、式への入力はすべての標準属性とイベントペイロードを含む完全な CloudEvent オブジェクトです。

JSONata 式の出力では有効な CloudEvent を生成する必要があります。CloudEvents 仕様に準拠するには、少なくとも次のフィールドが必要です。

Expand
フィールド要件説明

specversion

1.0 である必要があります。

CloudEvents 仕様のバージョンを識別します。

id

一意の文字列

イベントの一意識別子として機能します。

type

必須

com.example.object.created などのイベントタイプを示します。

source

必須

イベントが発生したコンテキストを識別します。

data

必須

配信されるイベントペイロードが含まれます。

JSONata 式でこれらのフィールドを明示的に構築して、必要に応じて、再形成、補完および条件付きロジックを適用する間にも変換されたイベントが確実に有効になるようにします。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat