ラベル、フィールド、選択肢は、ライフサイクル全体を通して特定の状態になります。 また、ラベルにはさまざまなリビジョンが存在する可能性があります。次の図は、リビジョン管理を含むラベルのライフサイクルを示しています。
- ラベルを作成する(
create()) \- ラベルが作成され、データベースにrevision_id=1として保存されます。ラベルの状態はUNPUBLISHED_DRAFTです。 この状態では、次のようになります。- ユーザーはラベルを表示できません。
- ユーザーはドライブのアイテムにラベルを適用できません。
- (省略可)ラベル、フィールド、選択肢を更新する(
delta()) \- 公開前であっても、すべての更新がデータベースに保存され、ラベルのリビジョンが増加します。 - ラベルを公開する(
publish()) \- ラベルの状態はPUBLISHEDになり、ユーザーはラベルを適用できます。ラベルを公開すると、リビジョンが増加します。 - (省略可)ラベル、フィールド、選択肢を更新する(
delta()) \- ラベル、フィールド、選択肢が更新され、下書きラベルとしてデータベースに保存されます。ラベルの状態はPUBLISHEDで、hasUnpublishedChanges=trueは下書きの変更があることを意味しますが、ユーザーは利用できません。更新するたびに、ラベルのリビジョンが増加します。 - (省略可)ラベルを公開する(
publish()) \- 最新の下書きが公開されます(利用可能な場合)。ラベルの状態はPUBLISHEDになり、ユーザーはラベルを適用できます。ラベルを公開すると、バージョンが増加します。 - ラベルを無効にする(
disable()) \- ラベルの状態はDISABLEDになりますが、ユーザーは API を介してラベルを適用できます。ただし、無効なラベルは、表示するように設定されていない限り、UI には表示されません。ラベルを非推奨にすると、リビジョンが増加します。 - ラベルを有効にする(
enable()) \- ラベルがPUBLISHED状態に戻り、ユーザーはラベルを適用できます。ラベルを公開すると、リビジョンが増加します。 - ラベルを削除する(
delete()) \- ラベルの状態はDELETEDになり、適用できません。削除されたラベルは最終的に削除されます。
ラベルを更新するたびに、ラベルのリビジョンが増加することに注意してください。また、ラベルがすでに公開されている場合、再度公開すると n回更新した後に、公開されたリビジョン番号はリビジョン + n + 1 回の連続更新になります。