Un nouveau mécanisme important de validation des fichiers SCL apparaît dans le processus d’ingénierie de l’IEC 61850 — l’OCL (Object Constraint Language), un langage de description formelle des contraintes et des règles pour les objets du modèle d’information.
En 2025 a été publiée la spécification technique IEC TS 61850-6-3 « Format of machine-processable rules for validation of IEC 61850 XML-based files ». Elle définit le format et la méthode de description de règles formelles OCL qui peuvent être importées et interprétées par des outils logiciels. Parmi les scénarios prévus figure la validation des fichiers SCL à différentes étapes de la spécification et de la conception.
De plus, il ne s’agit plus seulement d’une technologie prometteuse. Les vérifications OCL commencent à être appliquées dans la pratique.
Pourquoi le XSD ne suffit plus
La base traditionnelle de la validation formelle du SCL est le XML Schema Definition — XSD.
Grâce à lui, on peut vérifier la structure d’un document XML :
- si un élément donné est autorisé ;
- s’il peut se trouver à cet endroit ;
- quels attributs sont prévus pour lui ;
- si un attribut est obligatoire ;
- si une valeur correspond à un type de données donné.
Cette vérification est nécessaire. Mais ses possibilités sont limitées par la nature même du XML Schema. Le XSD répond bien à la question : « Le document XML est-il bien formé ? »
Cependant, de nombreuses exigences de l’IEC 61850 concernent non pas la structure d’éléments XML isolés, mais les relations entre différents objets et paramètres du modèle.
La présence d’un objet peut exiger la présence d’un autre. La valeur d’un attribut peut imposer des contraintes sur la valeur d’un autre. L’admissibilité d’une configuration donnée peut dépendre de plusieurs éléments du SCL à la fois.
Dans le même temps, chacun de ces éléments, pris isolément, peut être pleinement conforme au XML Schema.
Ce qu’apporte l’OCL
L’OCL permet de décrire formellement des règles à peu près de la forme suivante : si la condition A est remplie, alors l’objet B doit exister ou posséder certaines propriétés.
Ensuite, une telle règle peut être appliquée automatiquement à un fichier SCL, et les violations détectées — consignées par un outil logiciel.
Un exemple simple concerne la déclaration des capacités de service d’un IED.
Dans la section Services, l’équipement décrit les capacités qu’il prend en charge, y compris celles liées aux rapports. Si un IED déclare une valeur de maxReports > 0 — c’est-à-dire indique la capacité d’utiliser un ou plusieurs Report Control Block —, il doit, dans le même temps, déclarer la prise en charge d’au moins un type de rapport :
- bufReport = true — les rapports mis en mémoire tampon sont pris en charge ;
- unbufReport = true — les rapports non mis en mémoire tampon sont pris en charge.
Ou les deux types peuvent être pris en charge.
Sinon, une contradiction logique apparaît : l’équipement déclare la capacité de gérer des rapports, mais ne déclare en même temps la prise en charge d’aucun de leurs types.
Dans le même temps, du point de vue du XML, chaque attribut en lui-même peut être parfaitement correct : l’élément existe, la valeur a un type autorisé, la structure du document est conforme au XSD. Le problème ne réside pas dans le XML, mais dans la relation entre les valeurs.
Ce sont précisément ces relations que l’OCL permet de formaliser et de vérifier automatiquement.
Le XSD vérifie avant tout la correction de la structure du document. L’OCL permet de vérifier les règles auxquelles doit se conformer le modèle qui y est décrit.
Du texte de la norme à la règle exploitable par machine
Aujourd’hui, une part importante des exigences de l’IEC 61850 existe sous forme textuelle. Le développeur d’un produit logiciel, le fabricant d’un équipement, le concepteur ou l’expert doit lire la clause correspondante de la norme, l’interpréter et implémenter lui-même la vérification nécessaire.
L’OCL permet d’exprimer une partie de ces exigences sous une forme formelle, exploitable par machine. Une règle telle que « si la condition X est remplie, l’élément Y doit posséder la propriété Z » peut exister comme une règle formelle qu’un outil logiciel est capable d’exécuter automatiquement.
Dans le même temps, l’IEC TS 61850-6-3 définit précisément le format et le mode de description de telles règles, tandis que les règles elles-mêmes peuvent être utilisées comme composants exploitables par machine des parties correspondantes de l’IEC 61850.
Grâce à cela, la validation du SCL devient plus reproductible et moins dépendante de l’interprétation manuelle des exigences par un spécialiste donné.
OCL — l’un des points forts du UCAIug IOP
L’orientation du développement se voit particulièrement bien dans les essais internationaux d’interopérabilité de l’IEC 61850.
La validation OCL a déjà été appliquée lors des cycles précédents du UCAIug IOP pour la vérification du SCL, aux côtés d’autres axes de test des outils de configuration. Les erreurs et non-conformités du SCL restent traditionnellement l’une des classes notables de problèmes relevés lors de tels événements.
Le prochain grand point de contrôle sera le UCAIug IEC 61850 IOP 2026.
La partie en présentiel des essais internationaux se tiendra à Utrecht, aux Pays-Bas. Le programme principal des essais est prévu du 12 au 16 octobre 2026. L’événement sera un lieu de vérification pratique de l’interaction entre équipements, passerelles et outils logiciels IEC 61850 de différents fabricants.
Compte tenu du développement de l’IEC 61850-6-3 et de l’expérience déjà accumulée lors des IOP précédents, l’OCL et la validation automatisée du SCL deviennent l’un des axes notables des essais internationaux d’interopérabilité.
C’est un signal important pour le secteur : l’OCL passe progressivement de la catégorie d’un nouveau mécanisme de la norme à un outillage pratique de vérification de la qualité des données d’ingénierie de l’IEC 61850.
De la vérification du XML à la vérification des règles d’ingénierie
Le SCL a depuis longtemps cessé d’être un simple fichier XML pour l’échange de configuration entre programmes.
Dans le processus d’ingénierie moderne de l’IEC 61850, le SCL devient de fait la description numérique d’un système d’automatisation de poste.
C’est pourquoi l’outillage de sa vérification se développe naturellement :
- XSD — le document XML est-il bien formé ?
- NSD — le modèle d’information utilisé est-il conforme aux exigences de l’IEC 61850 ?
- OCL — les règles et relations plus complexes entre les objets de ce modèle sont-elles respectées ?
C’est précisément là que réside la valeur clé de l’OCL.
Il permet de passer de la vérification de la correction formelle du XML à la vérification automatisée des exigences d’ingénierie qu’il fallait auparavant interpréter et contrôler à la main.
C’est pourquoi l’OCL doit être considéré non pas simplement comme un langage de plus dans l’écosystème de l’IEC 61850, mais comme un pas vers une validation plus profonde et plus formalisée du SCL. D’une description exploitable par machine du poste numérique — à une vérification exploitable par machine des règles d’ingénierie.