Um novo e importante mecanismo de validação de arquivos SCL surge no processo de engenharia da IEC 61850 — o OCL (Object Constraint Language), uma linguagem para descrever formalmente restrições e regras para os objetos do modelo de informação.

Em 2025 foi publicada a especificação técnica IEC TS 61850-6-3 «Format of machine-processable rules for validation of IEC 61850 XML-based files». Ela define o formato e o método de descrição de regras formais OCL que podem ser importadas e interpretadas por ferramentas de software. Entre os cenários previstos está a validação de arquivos SCL em diferentes etapas de especificação e projeto.

Além disso, já não se trata apenas de uma tecnologia promissora. As verificações OCL começam a ser aplicadas na prática.

Por que o XSD já não é suficiente

A base tradicional da validação formal do SCL é o XML Schema Definition — XSD.

Com ele é possível verificar a estrutura de um documento XML:

  • se um determinado elemento é permitido;
  • se ele pode estar neste local;
  • que atributos estão previstos para ele;
  • se um atributo é obrigatório;
  • se um valor corresponde a um determinado tipo de dado.

Essa verificação é necessária. Mas as suas possibilidades são limitadas pela própria natureza do XML Schema. O XSD responde bem à pergunta: «O documento XML está bem formado?»

No entanto, muitos requisitos da IEC 61850 estão relacionados não com a estrutura de elementos XML isolados, mas com as relações entre diferentes objetos e parâmetros do modelo.

A presença de um objeto pode exigir a presença de outro. O valor de um atributo pode impor restrições ao valor de outro. A admissibilidade de uma determinada configuração pode depender de vários elementos do SCL ao mesmo tempo.

Ao mesmo tempo, cada um desses elementos, isoladamente, pode estar em total conformidade com o XML Schema.

O XSD verifica a estrutura de um único elemento, o OCL — as relações entre objetos
Fig. 1. O XSD é responsável pela estrutura dos elementos individuais, o OCL — pelas regras e relações entre os objetos do modelo. Cada elemento pode estar correto isoladamente, enquanto a violação surge na relação entre os seus valores.

O que o OCL oferece

O OCL permite descrever formalmente regras aproximadamente do seguinte tipo: se a condição A se verifica, então o objeto B deve existir ou ter determinadas propriedades.

Depois disso, tal regra pode ser aplicada automaticamente a um arquivo SCL, e as violações encontradas — registradas por uma ferramenta de software.

Um exemplo simples diz respeito à declaração das capacidades de serviço de um IED.

Na seção Services, o dispositivo descreve as capacidades que suporta, inclusive as relacionadas a relatórios. Se um IED declara um valor de maxReports > 0 — ou seja, informa a capacidade de usar um ou mais Report Control Blocks —, deve, ao mesmo tempo, declarar o suporte a pelo menos um tipo de relatório:

  • bufReport = true — há suporte a relatórios armazenados em buffer;
  • unbufReport = true — há suporte a relatórios não armazenados em buffer.

Ou ambos os tipos podem ser suportados.

Caso contrário, surge uma contradição lógica: o dispositivo declara a capacidade de trabalhar com relatórios, mas ao mesmo tempo não declara o suporte a nenhum de seus tipos.

Ao mesmo tempo, do ponto de vista do XML, cada atributo em si pode estar perfeitamente correto: o elemento existe, o valor tem um tipo permitido, a estrutura do documento está em conformidade com o XSD. O problema não está no XML, mas na relação entre os valores.

Exemplo de regra OCL para a declaração de relatórios na seção Services
Fig. 2. Exemplo de regra OCL: se um IED declara maxReports > 0, deve declarar ao menos um tipo de relatório. Do ponto de vista do XSD ambas as variantes são corretas — a contradição só é visível no nível da relação entre os valores.

São precisamente essas relações que o OCL permite formalizar e verificar automaticamente.

O XSD verifica sobretudo a correção da estrutura do documento. O OCL permite verificar as regras a que deve obedecer o modelo nele descrito.

Do texto da norma à regra legível por máquina

Hoje, uma parte significativa dos requisitos da IEC 61850 existe em forma textual. O desenvolvedor de um produto de software, o fabricante de um dispositivo, o projetista ou o especialista tem de ler a cláusula correspondente da norma, interpretá-la e implementar por conta própria a verificação necessária.

O OCL permite representar parte desses requisitos numa forma formal, legível por máquina. Uma regra como «se a condição X se verifica, o elemento Y deve possuir a propriedade Z» pode existir como uma regra formal que uma ferramenta de software é capaz de executar automaticamente.

Ao mesmo tempo, a IEC TS 61850-6-3 define precisamente o formato e o modo de descrição de tais regras, enquanto as próprias regras podem ser usadas como componentes legíveis por máquina das partes correspondentes da IEC 61850.

Graças a isso, a validação do SCL torna-se mais reprodutível e menos dependente da interpretação manual dos requisitos por um especialista específico.

OCL — um dos destaques do UCAIug IOP

A direção do desenvolvimento vê-se especialmente bem nos ensaios internacionais de interoperabilidade da IEC 61850.

A validação OCL já foi aplicada em ciclos anteriores do UCAIug IOP na verificação do SCL, ao lado de outras vertentes de teste das ferramentas de configuração. Erros e não conformidades do SCL permanecem tradicionalmente uma das classes notáveis de problemas identificados nesses eventos.

O próximo grande ponto de controle será o UCAIug IEC 61850 IOP 2026.

A parte presencial dos ensaios internacionais ocorrerá em Utrecht, Países Baixos. O programa principal de ensaios está previsto para 12–16 de outubro de 2026. O evento será um espaço para a verificação prática da interação entre dispositivos, gateways e ferramentas de software IEC 61850 de diferentes fabricantes.

Tendo em conta o desenvolvimento da IEC 61850-6-3 e a experiência já acumulada em IOPs anteriores, o OCL e a validação automatizada do SCL tornam-se uma das vertentes notáveis dos ensaios internacionais de interoperabilidade.

Este é um sinal importante para o setor: o OCL passa gradualmente da categoria de um novo mecanismo da norma para um instrumento prático de verificação da qualidade dos dados de engenharia da IEC 61850.

Da verificação do XML à verificação de regras de engenharia

Há muito que o SCL deixou de ser apenas um arquivo XML para troca de configuração entre programas.

No processo de engenharia moderno da IEC 61850, o SCL torna-se de fato a descrição digital de um sistema de automação de subestação.

Por isso, desenvolve-se naturalmente também o instrumental da sua verificação:

  • XSD — o documento XML está bem formado?
  • NSD — o modelo de informação utilizado corresponde aos requisitos da IEC 61850?
  • OCL — são cumpridas as regras e relações mais complexas entre os objetos desse modelo?

É precisamente nisto que reside o valor fundamental do OCL.

Ele permite passar da verificação da correção formal do XML à verificação automatizada de requisitos de engenharia que antes era preciso interpretar e controlar manualmente.

Por isso, o OCL deve ser encarado não apenas como mais uma linguagem no ecossistema da IEC 61850, mas como um passo rumo a uma validação mais profunda e formalizada do SCL. De uma descrição legível por máquina da subestação digital — a uma verificação legível por máquina das regras de engenharia.