diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.scl.validator/src/fr/centralesupelec/edf/riseclipse/iec61850/scl/validator/RiseClipseValidatorSCL.java b/fr.centralesupelec.edf.riseclipse.iec61850.scl.validator/src/fr/centralesupelec/edf/riseclipse/iec61850/scl/validator/RiseClipseValidatorSCL.java
index 3a3d9dd5aeafcf48adaec0c809a27c06a25f4a93..78c4d99e7a00289f93bffe87ce5dcdb84e007676 100644
--- a/fr.centralesupelec.edf.riseclipse.iec61850.scl.validator/src/fr/centralesupelec/edf/riseclipse/iec61850/scl/validator/RiseClipseValidatorSCL.java
+++ b/fr.centralesupelec.edf.riseclipse.iec61850.scl.validator/src/fr/centralesupelec/edf/riseclipse/iec61850/scl/validator/RiseClipseValidatorSCL.java
@@ -55,6 +55,12 @@ import org.eclipse.ocl.pivot.validation.ComposedEValidator;
 
 public class RiseClipseValidatorSCL {
 
+    private static final String ERROR_PREFIX = "ERROR:";
+
+    private static final String WARNING_PREFIX = "WARNING:";
+
+    private static final String INFO_PREFIX = "INFO:";
+
     public static final String DIAGNOSTIC_SOURCE = "fr.centralesupelec.edf.riseclipse";
     
     private static final String DEFAULT_NAMESPACE_ID = "IEC 61850-7-4";
@@ -414,7 +420,21 @@ public class RiseClipseValidatorSCL {
                                 + childDiagnostic.getChildren().get( 0 ).getMessage();
                 }
 
-                switch( childDiagnostic.getSeverity() ) {
+                // use severity given by OCL message if available
+                int severity = childDiagnostic.getSeverity();
+                if( message.startsWith( INFO_PREFIX )) {
+                    severity = Diagnostic.INFO;
+                    message = message.substring( INFO_PREFIX.length() );
+                }
+                else if( message.startsWith( WARNING_PREFIX )) {
+                    severity = Diagnostic.WARNING;
+                    message = message.substring( WARNING_PREFIX.length() );
+                }
+                else if( message.startsWith( ERROR_PREFIX )) {
+                    severity = Diagnostic.ERROR;
+                    message = message.substring( ERROR_PREFIX.length() );
+                }
+                switch( severity ) {
                 case Diagnostic.INFO:
                     console.info( message );
                     break;