Nested Context Language
A linguagem NCL - Nested Context Language - é uma linguagem declarativa para autoria de documentos hipermídia baseados no modelo conceitual NCM - Nested Context Model - e foi desenvolvida utilizando uma estrutura modular, seguindo os princípios adotados pelo W3C. Dessa forma, seus módulos para especificação de conectores e templates de composição, chamados XConnector e XTemplate respectivamente, podem ser incorporados a outras linguagens existentes, como por exemplo, XLink, XHTML e SMIL, usadas para autoria de documentos na Web.
Dentre os recursos oferecidos, destacam-se:
- o tratamento de relações hipermídia como entidades de primeira classe, através da definição de conectores hipermídia e de bases de conectores, que permite a especificação de relações de sincronização e de referência de forma independente dos relacionamentos contidos nos documentos;
- o uso de conectores hipermídia para a autoria de elos;
- a definição de bases de elos e 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 de composição hipermídia, permitindo a especificação de semânticas para composições hipermídia, o reuso da definição de estruturas e a especificação de restrições sobre documentos;
- a definição de bases de templates de composição e 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.