تمرّ التصنيفات والحقول والخيارات بحالات معيّنة طوال دورة حياتها. بالإضافة إلى ذلك، قد تحتوي التصنيفات على نُسخ مختلفة. يوضّح المخطّط التالي مراحل دورة حياة التصنيف، بما في ذلك المراجعة:
- إنشاء تصنيف (
create()
): يتم إنشاء التصنيف وتخزينه في قاعدة بيانات باسمrevision_id=1
. التصنيف لديه الحالةUNPUBLISHED_DRAFT
. في هذه الحالة:- لا يمكن للمستخدمين عرض التصنيف
- لا يمكن للمستخدمين تطبيق التصنيف على عناصر Drive.
- (اختياري) تعديل تصنيف أو حقل أو خيار (
delta()
): يتم تخزين كل تعديل، حتى قبل نشره، في قاعدة بيانات، ويتمّ رفع تنقيح التصنيف. - نشر تصنيف (
publish()
): يكون التصنيف في الحالةPUBLISHED
ويمكن للمستخدمين تطبيقه. يؤدي نشر التصنيف إلى زيادة تنقيحه. - (اختياري) تعديل تصنيف أو حقل أو خيار (
delta()
): يتم تعديل التصنيف أو الحقل أو الخيار وتخزينه في قاعدة بيانات كنسخة مسودة من التصنيف. يحمل التصنيف الحالةPUBLISHED
معhasUnpublishedChanges=true
، ما يعني أنّ هناك تغييرات مسودة، ولكنها غير متاحة للمستخدمين. يؤدي كل تعديل إلى زيادة المراجعة الخاصة بالعلامة. - (اختياري) نشر تصنيف (
publish()
): يتم نشر أحدث ملف سحابي مسودّة، إذا كان متاحًا. يحمل التصنيف الحالةPUBLISHED
ويمكن للمستخدمين تطبيقه. يؤدي نشر التصنيف إلى زيادة إصداره. - إيقاف تصنيف (
disable()
): يكون التصنيف في الحالةDISABLED
مع أنّه يمكن للمستخدمين تطبيق التصنيف من خلال واجهة برمجة التطبيقات. ومع ذلك، لا يظهر التصنيف غير مفعّل في واجهة المستخدم ما لم يتم ضبطه للظهور. يؤدي إيقاف التصنيف نهائيًا إلى زيادة تنقيحه. - تفعيل تصنيف (
enable()
): يتمّ إرجاع التصنيف إلى الحالةPUBLISHED
ويمكن للمستخدمين تطبيق التصنيف. يؤدي نشر التصنيف إلى زيادة تنقيحه. - حذف تصنيف (
delete()
): التصنيف في الحالةDELETED
ولا يمكن تطبيقه. تتم إزالة التصنيفات المحذوفة في النهاية.
من المهم التأكيد على أنّ كل تعديل على تصنيف يزيد من مراجعة التصنيف. وإذا سبق أن تم نشر التصنيف، يعني نشره مرة أخرى بعد n تحديث أنّ رقم المراجعة المنشور هو المراجعة + n + 1 عدد التحديثات المتتالية.