server/schemaserial.py
branchstable
changeset 6189 9fa02f352c8c
parent 6080 d0cb8fde4957
child 6191 ece6996e6ac8
equal deleted inserted replaced
6188:e1c9610b2360 6189:9fa02f352c8c
   188         'X cardinality CARD, X ordernum ORD, X description DESC, '
   188         'X cardinality CARD, X ordernum ORD, X description DESC, '
   189         'X from_entity SE, X to_entity OE, X composite C', build_descr=False):
   189         'X from_entity SE, X to_entity OE, X composite C', build_descr=False):
   190         rdefeid, seid, reid, teid, card, ord, desc, c = values
   190         rdefeid, seid, reid, teid, card, ord, desc, c = values
   191         rdef = ybo.RelationDefinition(sidx[seid].type, sidx[reid].type, sidx[teid].type,
   191         rdef = ybo.RelationDefinition(sidx[seid].type, sidx[reid].type, sidx[teid].type,
   192                                       constraints=cstrsdict.get(rdefeid, ()),
   192                                       constraints=cstrsdict.get(rdefeid, ()),
   193                                       cardinality=card, order=ord, description=desc,
   193                                       cardinality=card, composite=c,
   194                                       composite=c,  eid=rdefeid)
   194                                       description=desc, order=ord, eid=rdefeid)
   195         rdefs = schema.add_relation_def(rdef)
   195         rdefs = schema.add_relation_def(rdef)
   196         # rdefs can be None on duplicated relation definitions (e.g. symmetrics)
   196         # rdefs can be None on duplicated relation definitions (e.g. symmetrics)
   197         if rdefs is not None:
   197         if rdefs is not None:
   198             set_perms(rdefs, permsdict)
   198             set_perms(rdefs, permsdict)
   199     schema.infer_specialization_rules()
   199     schema.infer_specialization_rules()