/** * 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' import '../Helpers/BaseSimpleTypes.ocl' package scl context SampledValueControl -- The smvID attribute shall be present inv SampledValueControl_smvID_required ( 'smvID attribute shall be present in SampledValueControl (line ' + self.lineNumber.toString() + ')' ) : self.smvID <> null -- The smvID attribute shall be valid inv SampledValueControl_smvID_valid ( 'smvID attribute shall be present in SampledValueControl (line ' + self.lineNumber.toString() + '). ' + 'Current value is ' + self.smvID.toString() ) : self.smvID <> null implies self.validSclMessageID( smvID ) -- The smpRate attribute shall be present inv SampledValueControl_smpRate_required ( 'smpRate attribute shall be present in SampledValueControl (line ' + self.lineNumber.toString() + ')' ) : self.smpRate <> null -- The smpRate attribute shall be an unsignedInt -- Note: unsignedInt are EInt in the metaModel inv SampledValueControl_smpRate_valid ( 'smpRate attribute shall be valid in SampledValueControl (line ' + self.lineNumber.toString() + '). ' + 'Current value is ' + self.smpRate.toString() ) : self.smpRate <> null implies self.smpRate >= 0 -- The nofASDU attribute shall be present inv SampledValueControl_nofASDU_required ( 'nofASDU attribute shall be present in SampledValueControl (line ' + self.lineNumber.toString() + ')' ) : self.nofASDU <> null -- The nofASDU attribute shall be an unsignedInt -- Note: unsignedInt are EInt in the metaModel inv SampledValueControl_nofASDU_valid ( 'nofASDU attribute shall be present in SampledValueControl (line ' + self.lineNumber.toString() + '). ' + 'Current value is ' + self.nofASDU.toString() ) : self.nofASDU <> null implies self.nofASDU >= 0 -- multicast is a boolean -- smpMod is a real enum -- securityEnable is a real enum -- The confRev attribute is mandatory for the SV control block inv SampledValueControl_confRev_required ( 'confRev attribute shall be present in SampledValueControl (line ' + self.lineNumber.toString() + ')' ) : self.confRev <> null -- The confRev attribute is an unsigned int -- Note: it is an Integer in the metamodel inv SampledValueControl_confRev_unsignedInt ( 'confRev attribute shall be valid in SampledValueControl (line ' + self.lineNumber.toString() + '). ' + 'Current value is ' + self.confRev.toString() ) : self.confRev <> null implies self.confRev >= 0 endpackage