item_unpublished_code_regex  = '[A-Za-z0-9._-]*'
 item_code_regex              = '(?:%s|%s)' % (item_published_code_regex, item_unpublished_code_regex)
 
+PUBLIC_ACCESS_CHOICES = (('none', 'none'), ('metadata', 'metadata'), ('full', 'full'))
 
 class MediaResource(ModelCore):
     "Base class of all media objects"
     "Describe a corpus of collections"
     
     element_type = 'corpus'
-    PUBLIC_ACCESS_CHOICES = (('none', 'none'), ('metadata', 'metadata'), ('full', 'full'))
 
     # General informations
     reference             = CharField(_('reference'), unique=True, null=True)
                                                         
 class MediaCollection(MediaResource):
     "Describe a collection of items"
+    
     element_type = 'collection'
-    PUBLIC_ACCESS_CHOICES = (('none', 'none'), ('metadata', 'metadata'), ('full', 'full'))
 
     def is_valid_collection_code(value):
         "Check if the collection code is well formed"
 
 class MediaItem(MediaResource):
     "Describe an item"
+    
     element_type = 'item'
-    PUBLIC_ACCESS_CHOICES = (('none', 'none'), ('metadata', 'metadata'), ('full', 'full'))
     
     # Main Informations
     title                 = CharField(_('title'))