Linguagem NCL e o desenvolvimento para TV digital interativa

A linguagem NCL (Nested Context Language), motivo de orgulho para os brasileiros, รฉ padrรฃo do Sistema Brasileiro de TV Digital Terrestre e Recomendaรงรฃo H.761 da Uniรฃo Internacional de Telecomunicaรงรตes para serviรงos IPTV. Seu desenvolvimento comeรงou hรก alguns anos, e como qualquer trabalho de sucesso รฉ fruto do esforรงo e dedicaรงรฃo de pesquisadores de extrema qualidade.

Neste artigo acompanharemos um pouco do histรณrico da linguagem NCL destacando os pontos mais importantes.

A linguagem NCL, como toda linguagem declarativa, รฉ baseada em um modelo conceitual de dados. NCL tem por base o modelo NCM (Nested Context Model).

ncl.png

Tal modelo teve inรญcio com o projeto HyperProp, cujas origens encontram-se na dรฉcada de 80, quando foi criado o departamento de informรกtica da PUC-Rio. Em 1991 foi liberado o primeiro protรณtipo do sistema HyperProp e publicado o primeiro artigo sobre o modelo NCM. Hoje o modelo encontra-se na sua versรฃo 3.0.

A primeira versรฃo da linguagem NCL foi publicada em 2000, fruto da dissertaรงรฃo de mestrado de Meire Juliana Antonacci. Nesta versรฃo a linguagem NCL foi especificada atravรฉs de uma DTD (Document Type Definition).

Em marรงo de 2003 foi publicada a tese de doutorado da Professora Dรฉbora Christina Muchaluat Saade que atualizou NCL para a versรฃo 2.0. Essa versรฃo foi especificada em XML Schema e de forma modular, permitindo a criaรงรฃo de perfis de linguagem a partir da combinaรงรฃo de seus mรณdulos. Onde cada perfil poderia agrupar subconjuntos de mรณdulos, possibilitando a criaรงรฃo de linguagens de acordo com a necessidade dos usuรกrios. Alรฉm da nova estrutura modular a versรฃo 2.0 introduziu novas facilidades:

  • a definiรงรฃo de conectores hipermรญdia e de bases de conectores;
  • o uso de conectores hipermรญdia para a autoria de elos;
  • a definiรงรฃo de bases de elos;
  • o reuso de elos e bases de elos em diferentes documentos;
  • a definiรงรฃo de portas e mapeamentos para nรณs de composiรงรฃo, satisfazendo a propriedade de composicionalidade dos documentos;
  • a definiรงรฃo de templates (mรณdulo XTemplate) de composiรงรฃo hipermรญdia, permitindo a especificaรงรฃo de restriรงรตes em documentos;
  • a definiรงรฃo de bases de templates de composiรงรฃo;
  • o uso de templates de composiรงรฃo para a autoria de nรณs de composiรงรฃo;
  • o refinamento da especificaรงรฃo de documentos com alternativas de conteรบdo, atravรฉs do elemento switch, que agrupa um conjunto de nรณs alternativos;
  • o refinamento da especificaรงรฃo de documentos com alternativas de apresentaรงรฃo, atravรฉs do elemento descriptorSwitch, que agrupa um conjunto de descritores alternativos, como serรก detalhado mais adiante;
  • o uso de um novo modelo de layout espacial, que possibilita especificar informaรงรตes para posicionamento de objetos em um dispositivo de saรญda.

A versรฃo 2.1 da linguagem NCL foi especificada com a dissertaรงรฃo de mestrado publicada em abril de 2005 por Heron Vilela de Oliveira e Silva. Nesta versรฃo foi adicionado um mรณdulo para definiรงรฃo de funรงรตes de custo que permitiam a especificaรงรฃo da duraรงรฃo dos objetos de mรญdia de forma flexรญvel, foi incluรญdo o mรณdulo para definiรงรฃo de regras de apresentaรงรฃo para serem utilizadas nos contexto switch e no elemento descriptorSwitch e tambรฉm foram feitos alguns refinamentos no mรณdulo XTemplate.

A data exata de lanรงamento da versรฃo 2.2 รฉ difรญcil de precisar. Nesta versรฃo da linguagem NCL foram feitas pequenas modificaรงรตes em relaรงรฃo ร  versรฃo 2.1, tais modificaรงรตes foram relacionadas a definiรงรฃo dos elementos da linguagem como uma nova abordagem para a definiรงรฃo dos mรณdulos e perfis NCL.

Podemos citar a data da publicaรงรฃo da Especificaรงรฃo do Perfil Principal (Main Profile) (NCL 2.3), de Abril de 2006, como a data de lanรงamento da versรฃo 2.3. Nesta versรฃo foram introduzidos dois novos mรณdulos para permitir o suporte ao reuso de bases e entidades. Tambรฉm foram refinados alguns elementos para dar suporte ร s novas funcionalidades. Para esta versรฃo tambรฉm foram lanรงadas a primeira ediรงรฃo do Manual para Construรงรฃo de Programas Audiovisuais Interativos e do Manual de Construรงรฃo de Programas Audiovisuais Interativos Utilizando o COMPOSER.

Tambรฉm nรฃo existem muitas informaรงรตes sobre a versรฃo 2.4 da linguagem NCL. Nesta versรฃo foram revistos o suporte a reuso e a especificaรงรฃo dos elementos switch e descriptorSwitch; esta versรฃo tambรฉm รฉ responsรกvel pela divisรฃo do mรณdulo Timing, introduzido por NCL 2.1.

Pode-se considerar outubro de 2006 como a data de lanรงamento da versรฃo 3.0 da linguagem NCL, nessa ocasiรฃo foi publicada a especificaรงรฃo Nested Context Language 3.0 Part 8 – NCL Digital TV Profiles. Nesta versรฃo foram introduzidas duas novas funcionalidades: a navegaรงรฃo atravรฉs do uso de teclas e as funcionalidades de animaรงรฃo. Tambรฉm foram feitas grandes modificaรงรตes na funcionalidade de template de nรณ de composiรงรฃo, a especificaรงรฃo de conectores hipermรญdia foi re-estruturada para permitir uma notaรงรฃo mais concisa, os relacionamentos entre os objetos imperativos NCL e outros objetos NCL tambรฉm foram definidos nesta versรฃo.

Em 30 de Novembro de 2007 foi publicada a norma ABNT NBR 15606-2 padronizando a linguagem NCL como linguagem declarativa do Sistema Brasileiro de TV Digital Terrestre.

No dia 29/04/2009, a linguagem NCL e seu ambiente de apresentaรงรฃo Ginga-NCL foram aprovados como padrรฃo pela Uniรฃo Internacional de Telecomunicaรงรตes.

gingancl.png

Vale mencionar que na pรกgina oficial sobre as versรตes da linguagem NCL nรฃo existem informaรงรตes sobre as datas de lanรงamento de cada versรฃo nem sobre todas as publicaรงรตes que foram citadas neste artigo, foi necessรกrio um trabalho de pesquisa para o levantamento de tais informaรงรตes. Portanto as datas e as publicaรงรตes apresentadas neste artigo nรฃo tรชm carรกter oficial.

Referรชncias:

No momento, vocรช estรก visualizando Linguagem NCL e o desenvolvimento para TV digital interativa

Rafael Carvalho

Rafael Carvalho รฉ empreendedor digital hรก mais de 20 anos e desenvolveu dezenas de negรณcios na internet. ร‰ criador de diversos treinamentos online, com destaque para o mรฉtodo Lanรงamento Enxuto e a Mentoria Imparรกveis, que sรฃo considerados os melhores treinamentos para quem deseja possuir um negรณcio lucrativo, honesto e saudรกvel na internet.

Deixe seu comentรกrio: