test/data/schema.py
changeset 7973 64639bc94e25
parent 7425 7e9d1d6fcba7
child 9214 be05b42b4825
equal deleted inserted replaced
7971:3e51c2a577dd 7973:64639bc94e25
    35             RQLConstraint('NOT S identity O'),
    35             RQLConstraint('NOT S identity O'),
    36             # conflicting constraints, see cw_unrelated_rql tests in
    36             # conflicting constraints, see cw_unrelated_rql tests in
    37             # unittest_entity.py
    37             # unittest_entity.py
    38             RQLVocabularyConstraint('NOT (S connait P, P nom "toto")'),
    38             RQLVocabularyConstraint('NOT (S connait P, P nom "toto")'),
    39             RQLVocabularyConstraint('S travaille P, P nom "tutu"')])
    39             RQLVocabularyConstraint('S travaille P, P nom "tutu"')])
       
    40     actionnaire = SubjectRelation('Societe', cardinality='??',
       
    41                                   constraints=[RQLConstraint('NOT EXISTS(O contrat_exclusif S)')])
       
    42     dirige = SubjectRelation('Societe', cardinality='??',
       
    43                              constraints=[RQLConstraint('S actionnaire O')])
       
    44     associe = SubjectRelation('Personne', cardinality='1*',
       
    45                               constraints=[RQLConstraint('S actionnaire SOC, O actionnaire SOC')])
    40 
    46 
    41 
    47 
    42 class Societe(EntityType):
    48 class Societe(EntityType):
    43     nom = String()
    49     nom = String()
    44     evaluee = SubjectRelation('Note')
    50     evaluee = SubjectRelation('Note')
    45     fournit = SubjectRelation(('Service', 'Produit'), cardinality='1*')
    51     fournit = SubjectRelation(('Service', 'Produit'), cardinality='1*')
    46 
    52     contrat_exclusif = SubjectRelation('Personne', cardinality='??')
    47 
    53 
    48 class Service(EntityType):
    54 class Service(EntityType):
    49     fabrique_par = SubjectRelation('Personne', cardinality='1*')
    55     fabrique_par = SubjectRelation('Personne', cardinality='1*')
    50 
    56 
    51 
    57