schemas/bootstrap.py
branchstable
changeset 9542 79b9bf88be28
parent 9395 96dba2efd16d
child 9956 19a683a0047c
equal deleted inserted replaced
9540:43b4895a150f 9542:79b9bf88be28
    81     ordernum = Int(description=('control subject entity\'s relations order'), default=0)
    81     ordernum = Int(description=('control subject entity\'s relations order'), default=0)
    82 
    82 
    83     indexed = Boolean(description=_('create an index for quick search on this attribute'))
    83     indexed = Boolean(description=_('create an index for quick search on this attribute'))
    84     fulltextindexed = Boolean(description=_('index this attribute\'s value in the plain text index'))
    84     fulltextindexed = Boolean(description=_('index this attribute\'s value in the plain text index'))
    85     internationalizable = Boolean(description=_('is this attribute\'s value translatable'))
    85     internationalizable = Boolean(description=_('is this attribute\'s value translatable'))
    86     defaultval = String(maxsize=256)
    86     defaultval = Bytes(description=_('default value as gziped pickled python object'))
    87     extra_props = Bytes(description=_('additional type specific properties'))
    87     extra_props = Bytes(description=_('additional type specific properties'))
    88 
    88 
    89     description = RichString(internationalizable=True,
    89     description = RichString(internationalizable=True,
    90                              description=_('semantic description of this attribute'))
    90                              description=_('semantic description of this attribute'))
    91 
    91 
   156 
   156 
   157 
   157 
   158 class CWUniqueTogetherConstraint(EntityType):
   158 class CWUniqueTogetherConstraint(EntityType):
   159     """defines a sql-level multicolumn unique index"""
   159     """defines a sql-level multicolumn unique index"""
   160     __permissions__ = PUB_SYSTEM_ENTITY_PERMS
   160     __permissions__ = PUB_SYSTEM_ENTITY_PERMS
       
   161     name = String(required=True, unique=True, maxsize=64)
   161     constraint_of = SubjectRelation('CWEType', cardinality='1*', composite='object',
   162     constraint_of = SubjectRelation('CWEType', cardinality='1*', composite='object',
   162                                     inlined=True)
   163                                     inlined=True)
   163     relations = SubjectRelation('CWRType', cardinality='+*',
   164     relations = SubjectRelation('CWRType', cardinality='+*',
   164                                 constraints=[RQLConstraint(
   165                                 constraints=[RQLConstraint(
   165            'S constraint_of ET, RDEF relation_type O, RDEF from_entity ET, '
   166            'S constraint_of ET, RDEF relation_type O, RDEF from_entity ET, '
   233 
   234 
   234 class add_permission_cwgroup(RelationDefinition):
   235 class add_permission_cwgroup(RelationDefinition):
   235     """groups allowed to add entities/relations of this type"""
   236     """groups allowed to add entities/relations of this type"""
   236     __permissions__ = PUB_SYSTEM_REL_PERMS
   237     __permissions__ = PUB_SYSTEM_REL_PERMS
   237     name = 'add_permission'
   238     name = 'add_permission'
   238     subject = ('CWEType', 'CWRelation')
   239     subject = ('CWEType', 'CWRelation', 'CWAttribute')
   239     object = 'CWGroup'
   240     object = 'CWGroup'
   240     cardinality = '**'
   241     cardinality = '**'
   241 
   242 
   242 class delete_permission_cwgroup(RelationDefinition):
   243 class delete_permission_cwgroup(RelationDefinition):
   243     """groups allowed to delete entities/relations of this type"""
   244     """groups allowed to delete entities/relations of this type"""
   266 
   267 
   267 class add_permission_rqlexpr(RelationDefinition):
   268 class add_permission_rqlexpr(RelationDefinition):
   268     """rql expression allowing to add entities/relations of this type"""
   269     """rql expression allowing to add entities/relations of this type"""
   269     __permissions__ = PUB_SYSTEM_REL_PERMS
   270     __permissions__ = PUB_SYSTEM_REL_PERMS
   270     name = 'add_permission'
   271     name = 'add_permission'
   271     subject = ('CWEType', 'CWRelation')
   272     subject = ('CWEType', 'CWRelation', 'CWAttribute')
   272     object = 'RQLExpression'
   273     object = 'RQLExpression'
   273     cardinality = '*?'
   274     cardinality = '*?'
   274     composite = 'subject'
   275     composite = 'subject'
   275 
   276 
   276 class delete_permission_rqlexpr(RelationDefinition):
   277 class delete_permission_rqlexpr(RelationDefinition):