Populaties in VIOLATIONS worden niet altijd getoond
Brought to you by:
han_joosten,
oblosys
Bijgevoegd bestand is met de huidige prototypegenerator gebouwd (AMPvsnr=Prototype v3.0.3[no git info], build time: 12-Nov-14 10:45:14).
Het bijgevoegde script werkt, maar bevat een regelovertreding waarvan de populatie niet (in het gele schermpje rechtsonderaan) wordt getoond. Ik ben al eerder tegen deze fout aangelopen - het lijkt te zitten in de MySQL code die de functie 'getCoDomainAtoms' (DatabaseUtils.php) uitvoert.
Ik heb inmiddels ook vastgesteld dat de oorzaak wel eens de '!' operator zou kunnen zijn: als je die vervangt door de ';' operator en je zorgt (met wat spelen aan de populaties) dat er dan wel een regelovertreding is, dan worden die netjes getoond. Voorbeeld: de attachment 'geenbug.adl'.
Diff:
Ik heb nu een beter bestand (Ticket440.adl) - zie bijlage. In dit bestand zijn twee RULEs die hetzelfde uitdrukken. In de en gebruik ik de '!'-operator en in de andere is die vervangen door de ';' operator volgend de Morgan. Als je dit bestand uitvoert, dan zie je direct na het opstarten in het gele veld de volgende meldingen:
Hierbij vallen de volgende zaken op:
1) het verschil in het aantal overtredingen dat wordt gemeld (dat had hetzelfde moeten zijn)
2) In de eerste regel worden de atomen in de foutmelding niet netjes ingevuld.
opgelost met nieuwe SQL generator