Le etichette, i campi e le scelte attraversano stati specifici durante il loro ciclo di vita. Inoltre, le etichette potrebbero avere revisioni diverse. Il seguente diagramma mostra il ciclo di vita dell'etichetta, inclusa la gestione delle revisioni:
- Crea un'etichetta (
create()
): l'etichetta viene creata e archiviata in un database comerevision_id=1
. L'etichetta ha lo statoUNPUBLISHED_DRAFT
. In questo stato:- Gli utenti non possono visualizzare l'etichetta
- Gli utenti non possono applicare l'etichetta agli elementi di Drive.
- (Facoltativo) Aggiorna un'etichetta, un campo o una scelta (
delta()
): ogni aggiornamento, anche prima della pubblicazione, viene archiviato in un database e la revisione dell'etichetta viene incrementata. - Pubblica un'etichetta (
publish()
): l'etichetta ha lo statoPUBLISHED
e gli utenti possono applicarla. La pubblicazione dell'etichetta ne incrementa la revisione. - (Facoltativo) Aggiorna un'etichetta, un campo o una scelta (
delta()
): l'etichetta, il campo o la scelta viene aggiornato e memorizzato in un database come bozza di etichetta. L'etichetta ha lo statoPUBLISHED
conhasUnpublishedChanges=true
, il che significa che sono presenti modifiche alla bozza, ma non sono disponibili per gli utenti. Ogni aggiornamento incrementa la revisione dell'etichetta. - (Facoltativo) Pubblica un'etichetta (
publish()
): se disponibile, viene pubblicata la bozza più recente. L'etichetta ha lo statoPUBLISHED
e gli utenti possono applicarla. La pubblicazione dell'etichetta ne incrementa la versione. - Disattivare un'etichetta (
disable()
): l'etichetta ha lo statoDISABLED
, anche se gli utenti possono applicarla tramite l'API. Tuttavia, un'etichetta disattivata non viene visualizzata in un'interfaccia utente, a meno che non sia configurata per essere mostrata. Il ritiro dell'etichetta ne incrementa la revisione. - Attiva un'etichetta (
enable()
): l'etichetta torna allo statoPUBLISHED
e gli utenti possono applicarla. La pubblicazione dell'etichetta ne incrementa la revisione. - Eliminare un'etichetta (
delete()
): l'etichetta ha lo statoDELETED
e non può essere applicata. Le etichette eliminate vengono eliminate definitivamente.
È importante sottolineare che ogni aggiornamento di un'etichetta incrementa la revisione dell'etichetta. Inoltre, se l'etichetta è già stata pubblicata, la sua ripubblicazione dopo n aggiornamenti significa che il numero di revisione pubblicato è revisione + n + 1 numero di aggiornamenti successivi.