Skip to content
Snippets Groups Projects
EnumVal.ocl 1.27 KiB
Newer Older
Dominique Marcadet's avatar
Dominique Marcadet committed
/**
 *  Copyright (c) 2017 CentraleSupélec & EDF.
 *  All rights reserved. This program and the accompanying materials
 *  are made available under the terms of the Eclipse Public License v1.0
 *  which accompanies this distribution, and is available at
 *  http://www.eclipse.org/legal/epl-v10.html
 * 
 *  This file is part of the RiseClipse tool
 *  
 *  Contributors:
 *      Computer Science Department, CentraleSupélec
 *      EDF R&D
 *  Contacts:
 *      dominique.marcadet@centralesupelec.fr
 *      aurelie.dehouck-neveu@edf.fr
 *  Web site:
 *      http://wdi.supelec.fr/software/RiseClipse/
 */
import scl: 'http://www.iec.ch/61850/2003/SCL'

include '../Helpers/BaseSimpleTypes.ocl'

Dominique Marcadet's avatar
Dominique Marcadet committed
package scl

context EnumVal
Dominique Marcadet's avatar
Dominique Marcadet committed

    -- The ord attribute shall be present
    inv EnumVal_ord_required
        ( '[OCL validation] ord attribute shall be present in EnumVal (line ' + self.lineNumber.toString() + ')' )
Dominique Marcadet's avatar
Dominique Marcadet committed
        self.ord <> null

Dominique Marcadet's avatar
Dominique Marcadet committed
    -- The value attribute shall be valid
    inv EnumVal_value_valid
        ( '[OCL validation] value attribute shall be valid in EnumVal (line ' + self.lineNumber.toString() + ')'
          + 'Current value is ' + self.value.toString()
        )
    :
        self.value <> null implies self.validSclEnumStringValue( value )
Dominique Marcadet's avatar
Dominique Marcadet committed

endpackage