2010-09-08 25 views

Répondre

4

Voici le squelette d'un code que je l'ai utilisé pour valider un modèle EMF en dehors d'Eclipse:

EValidator.Registry.INSTANCE.put(YourPackage.eINSTANCE, new YourValidator()); 

BasicDiagnostic diagnostics = new BasicDiagnostic(); 
boolean valid = true; 
for (EObject eo : yourResource.getContents()) { 
    Map<Object, Object> context = new HashMap<Object, Object>(); 
    valid &= Diagnostician.INSTANCE.validate(eo, diagnostics, context); 
} 

Il y a plus de personnalisation, vous pouvez le faire, mais j'espère que ça aide à démarrer.

+0

merci pour la réponse. ceci valide les contraintes définies. cependant, la contrainte qu'un ID est unique dans tout le document n'est pas validée. avez-vous des pistes à ce sujet? – simonh

+0

Je ne connais pas tous les tenants et les aboutissants de la validation EMF, alors prenez cela comme une supposition. Peut-être pouvez-vous mettre cette vérification de contrainte dans YourValidator. – ChrisH