ドキュメントとパッケージ

ドキュメントとパッケージ

Alexa Presentation Language(APL)ドキュメントは、画面付きのデバイスに表示するテンプレートを定義するJSONオブジェクトです。APLパッケージは、ドキュメントにインポートできる再利用可能なレイアウトやその他のリソースを含むAPLドキュメントです。パッケージを使用すると、異なるAPLドキュメント間でコンポーネントを共有できます。

APLドキュメント形式や、ドキュメント内の最上位プロパティの詳細については、このセクションのトピックを参照してください。

ドキュメント

APLドキュメントは、画面に表示するコンテンツの構造とレイアウトを制御します。ドキュメントは、Alexa.Presentation.APL.RenderDocumentディレクティブを使用してデバイスに送信します。

APLドキュメントのJSON形式について詳しくは、ドキュメントを参照してください。

パッケージ

APLパッケージは、APLドキュメントにインポートできるレイアウト、リソース、スタイルのContainerです。パッケージの詳細については、パッケージを参照してください。

リソース

リソースは、ドキュメント内で値をハードコーディングする代わりに使用できる名前付き定数です。たとえば、赤の特定の色調を定義するmyRedというリソースを作成し、そのリソース名を使用して複数のコンポーネントの色を指定できます。リソースは条件付きで定義することができます。これは、さまざまなデバイスで機能するレスポンシブ対応ドキュメントをデザインする場合に便利です。

リソースの定義と使用について詳しくは、リソースを参照してください。

レイアウト

APLレイアウトは、コンポーネントを組み合わせたものです。再利用可能なテンプレートに統合し、名前を付けることができます。その後、その名前を参照することでドキュメントにレイアウトを配置できます。レイアウトを使用すると、よりモジュール化された管理しやすいデザインを作成できます。

レイアウトの作成と使用について詳しくは、レイアウトを参照してください。

コンポーネントの条件付きインフレート

コンポーネントの条件付きインフレートは、APLドキュメントでインフレート(レンダリング)するコンポーネントとレイアウトを決定します。たとえば、APLドキュメントのmainTemplateプロパティはitemsプロパティ内のコンポーネントの配列を受け取りますが、レンダリングするのは1つのコンポーネントだけです。どのコンポーネントをインフレートするかは、コンポーネントの条件付きインフレートによって決まります。

APLでレンダリングするコンポーネントの決定方法について詳しくは、コンポーネントの条件付きインフレートを参照してください。

データ型

APLでは、APLドキュメントでプロパティ値を設定するときに使用できる一連のデータ型がサポートされています。使用可能なデータ型については、データ型を参照してください。