تمرّ التصنيفات والحقول والخيارات بحالات معيّنة طوال فترة استخدامها. بالإضافة إلى ذلك، قد تتضمّن التصنيفات تعديلات مختلفة. يعرض المخطط التالي دورة حياة التصنيف، بما في ذلك ميزة التحكّم في الإصدارات:
- إنشاء تصنيف (
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 عدد عمليات التعديل المتتالية.