プラン同様、コンポーネントも複合コンポーネントと単純コンポーネントの 2 種類があります。 単純コンポーネントとは、1 つのリソースを持ち、他のコンポーネントを参照しないコンポーネントです。 複合コンポーネントとは、他のコンポーネントを参照しており、リソースは持たないコンポーネントです。 複合コンポーネントは、複合コンポーネントと単純コンポーネントの両方を参照する場合があります。
複合コンポーネントには、そのコンポーネントが参照するコンポーネントが含まれます。 参照先コンポーネントは、被包含コンポーネントと呼ばれ、参照元コンポーネントは包含コンポーネントまたはコンテナコンポーネントと呼ばれます。
複合コンポーネントは、各被包含コンポーネントを最上位コンポーネントとしてインストールするか、入れ子コンポーネントとしてインストールするかを宣言します。 被包含コンポーネントが最上位コンポーネントとしてインストールされた場合、プランによって直接インストールされたように、他のコンポーネントはそのコンポーネントを使用できます。 一方、被包含コンポーネントが入れ子コンポーネントとしてインストールされた場合は、包含コンポーネントしかそのサービスを使用できません。 必然的に、入れ子型被包含コンポーネントは包含コンポーネントが必要とする機能をより細かく定義しますが、それ以外の場合に他のコンポーネントにとって役立つことはありません。 最上位被包含コンポーネントは、包含コンポーネントだけではなく、その他のコンポーネントも使用できるサービスを定義します。
複合コンポーネントには、その他のコンポーネントへの参照のみが含まれており、コンポーネント自体は含まれていません。 参照先コンポーネントは、包含コンポーネントとは無関係に更新および管理されるその他の既存コンポーネントです。 コンポーネントを参照する複合コンポーネントの数に制限はありません。 コンポーネントの名前は、そのコンポーネントが他の複合コンポーネントから参照されているかどうかには影響されません。名前の重複はパスを使用して解決処理されます。
このマニュアルでは、派生コンポーネント、子コンポーネント、親コンポーネントという言葉は、コンポーネントの複合関係ではなく、コンポーネントの継承関係を指します。