---
title: ブーリアンとバッジの比較
description: このガイドでは、ブーリアンとバッジの訪問属性の包括的な比較を提供します。
url: https://docs.tealium.com/ja/guides/booleans-vs-badges/
---
ブーリアンとバッジは、異なるタイプの訪問データをキャプチャして表現するために使用される重要な属性ですが、それぞれ異なる目的を持ち、異なるシナリオで適用されます。

## 定義

![](https://docs.tealium.com/images/icons/icon-boolean-flag.png)

### ブーリアン

ブーリアンは、顧客の固有の状態または現在のステータスを表す単純な真/偽の属性です。これらは原子属性として使用され、訪問に関する単一の情報を表します。明示的に更新されない限り、変更されません。

訪問ブーリアンの例：

  * `is_verified`: 訪問がメールアドレスを認証したかどうか。
  * `has_valid_payment`: 訪問がアカウントに有効な支払い方法を持っているかどうか。
  * `is_internal_user`: 訪問が内部ユーザーであるかどうか。

![](https://docs.tealium.com/images/icons/icon-badge.png)

### バッジ

バッジは、顧客が重要な行動を取るか特定のマイルストーンに達したときに割り当てられたり割り当て解除されたりする、より複雑な行動パターンを表す訪問専用の属性です。条件や行動の組み合わせを表す複合属性として使用され、指定された条件が満たされたときにのみ割り当てられます。

バッジはUIで特別に扱われ、AudienceStreamの**ダッシュボード**の**バッジアクティビティ**ウィンドウ、**訪問プロファイル**サンプラー、および**オーディエンスディスカバリー**で独自のアイコンと共に表示されます。

バッジの例：

  * `VIP`: VIPは、サイトに何度も戻って購入する高価値の顧客です。
  * `Cart Abandoner`: カート放棄者は、商品をショッピングカートに追加するが購入を完了しない訪問です。
  * `Frequent Business Traveler`: 頻繁なビジネス旅行者は、特定の期間に一定回数以上旅行した顧客です。

詳細な例については、[popular-badges](https://docs.tealium.com/popular-badges/)を参照してください。

## エンリッチメントとロジック

ブーリアンとバッジは、値を構成するための異なるエンリッチメントセットを持っています：

### ブーリアンのエンリッチメント

* **Set Boolean**: このエンリッチメントは、ブーリアン属性を`true`または`false`に構成します。たとえば、訪問がメールアドレスを認証したかどうかを追跡するために、属性を`false`に初期化し、`user_login`イベントが発生するたびに`true`に構成することができます。

ブーリアン値をクリアするエンリッチメントはありません。通常、訪問ブーリアンはめったに変更されない永続的な値です。

### バッジのエンリッチメント

* **Assign Badge**: このエンリッチメントは、一連の条件が満たされたときに訪問にバッジを割り当てます。たとえば、訪問が頻繁にサイトを閲覧するが購入しない場合、`Window Shopper`バッジが割り当てられます。
* **Remove Badge**: このエンリッチメントは、訪問が条件を満たさなくなったときにバッジを削除します。たとえば、訪問が購入を行った後に`Window Shopper`バッジが削除されます。
* **Assign Badge from Another Badge**: このエンリッチメントは、他のバッジの存在に基づいてバッジを割り当てます。たとえば、`Sports car fan`バッジを獲得すると、関連するバッジである`Car fan`が割り当てられる可能性があります。詳細については、を参照してください。

## データ表現

訪問のブーリアンとバッジは、プラットフォームで次の方法で表されます：

### ブーリアン

ブーリアンは、データオブジェクト`flags`の下に訪問データレコードにキーと値のペアとして格納されます。キーはブーリアン属性のUIDまたは名前です：

```json
{
    ...
    "flags": {
        "5052": false
    },
    ...
}
```

AudienceDBでは、列の見出しはファイルタイプ（テーブル、ビュー、または正規化されたもの）によって異なります：

* 訪問テーブル: `flag_5052`
* 訪問ビュー: `visitor - flag - is_verified (5052)`
* 訪問正規化: `visitor - flag - is_verified`

列の値は`t`または`f`です。

### バッジ

バッジは訪問の範囲でのみ利用可能です。

バッジは、訪問データレコードにバッジUIDの配列またはバッジ名の配列として格納されます：

```json
{
    ...
    "badges": ["13","26","52"],
    ...
}
```

AudienceDBでは、データベーステーブルのタイプ（テーブル、ビュー、または正規化されたもの）によって列の見出しが異なります：

* テーブル: `badge_13`
* ビュー: `visitor - badge - VIP (13)`
* 正規化: `visitor - badge - VIP`

列の値は、バッジの存在に応じて`t`または`f`です。

AudienceStreamの**ダッシュボード**の**バッジアクティビティ**ウィンドウは、プロファイルに割り当てられたり削除されたりしたすべてのバッジをリストします：

![](https://docs.tealium.com/images/server-side/badge-activity-view.png)

また、**訪問プロファイル**サンプラーでは、監視活動を開始して以来、そのバッジを取得した訪問の数と割合が各バッジと共に表示されます：

![](https://docs.tealium.com/images/server-side/visitor-profile-sampler-badges-view.jpg)

## 文字列としてのブーリアン

ほとんどのシナリオでは、ブーリアンまたはバッジで状態を追跡するのに十分です。しかし、**まれなケース**では、`true`と`false`の代わりに**未割り当て**状態を表す必要があります。文字列を使用すると、ただ二つではなく三つの異なる状態を追跡することができます。

たとえば、ユーザーの同意を保存する場合：

* `true`: ユーザーが同意を与えました。
* `false`: ユーザーが同意を拒否しました。
* **未割り当て**: ユーザーはまだ回答を提供していません。

**無回答**と明確な`false`を区別する必要がある場合にこのアプローチが役立ちます。

## 概要比較

以下の表は、ブーリアンとバッジの主な違いをリストしています：

| 特徴 | 訪問ブーリアン | バッジ |
| --- | --- | ---- |
| 定義  | 真/偽の状態または現在のステータス。| 複雑な行動を表します。 | 
| 使用 | 単一の条件。 | 複雑な行動/マイルストーン。 | 
| 保存 | キーと値のペア（真/偽） | バッジ名またはバッジUIDの配列。 | 
| 変更可能性  | 明示的に更新されます。 | 条件によって追加/削除されます。 | 
| エンリッチメント |  Set Boolean。  | Assign, Remove, and Assign from Another Badge. | 

## 関連

* [badge-attribute](https://docs.tealium.com/badge-attribute/)
* [boolean-attribute](https://docs.tealium.com/boolean-attribute/)
* [vip-badge-guide](https://docs.tealium.com/vip-badge-guide/)
