Linguagem NCL versão 2.0 para Autoria Declarativa de Documentos Hipermídia *

Tamanho: px
Começar a partir da página:

Download "Linguagem NCL versão 2.0 para Autoria Declarativa de Documentos Hipermídia *"

Transcrição

1 Linguagem NCL versão 2.0 para Autoria Declarativa de Documentos Hipermídia * Débora C. Muchaluat Saade 1, Heron V. Silva 2, Luiz Fernando G. Soares 2 1 Departamento de Engenharia de Telecomunicações UFF R. Passo da Pátria, 156 São Domingos Niterói RJ Brasil 2 Departamento de Informática PUC-Rio R. Marquês de São Vicente, 225 Gávea Rio de Janeiro RJ Brasil Abstract. This paper presents the Nested Context Language (NCL) version 2.0, a declarative authoring language for hypermedia documents. NCL 2.0 is a modular language, which provides several facilities for authoring a complete hypermedia document with synchronization relationships among its components. Among its main facilities, we can highlight treating hypermedia relations as first-class entities, through the definition of hypermedia connectors, and the possibility of specifying any semantics for a hypermedia composition using the concept of composite templates. NCL 2.0 modules can be added to standard web languages, such as XLink and SMIL. Resumo. Este artigo apresenta a versão 2.0 da linguagem NCL Nested Context Language para autoria declarativa de documentos hipermídia. NCL 2.0 é uma linguagem modular, que fornece diversas facilidades para a autoria de um documento hipermídia, com relacionamentos de sincronização entre seus componentes. Dentre suas facilidades principais, pode-se destacar o tratamento de relações hipermídia como entidades de primeira classe, através da definição de conectores hipermídia, e a possibilidade de especificar qualquer semântica para uma composição hipermídia usando o conceito de template de composição. Os módulos de NCL 2.0 podem ser adicionados a linguagens web padronizadas, tal como XLink e SMIL. 1. Introdução NCL Nested Context Language é uma linguagem declarativa para autoria de documentos hipermídia baseados no modelo conceitual NCM Nested Context Model [SoRM00]. A primeira versão de NCL [AMRS00] foi especificada através de uma única DTD XML. Este artigo apresenta a nova versão de NCL, batizada de NCL 2.0, que foi especificada de forma modular, permitindo a combinação de seus módulos em perfis de linguagem. Cada perfil pode agrupar um subconjunto de módulos, possibilitando a criação de linguagens de acordo com a necessidade dos usuários. * Este trabalho foi realizado com apoio do Fundo Setorial para o Desenvolvimento Tecnológico das Telecomunicações (FUNTTEL), através do contrato 0594/02; e do CNPq

2 Por que mais uma linguagem? A abordagem modular presente em NCL permite não só a criação de linguagens específicas de acordo com a necessidade dos usuários, o que por si só já responderia a questão, como também, e principalmente, permite que módulos de NCL 2.0 possam ser combinados com módulos de outras linguagens. Essa última facilidade não só evitou que NCL duplicasse esforços, permitindo a incorporação de características de linguagens modulares à NCL 2.0 (como se verá, particularmente SMIL 2.0), mas, principalmente, permite a incorporação de novas características presentes em NCL 2.0 a várias linguagens, como as realizadas para as linguagens XLINK [MuRS02], SMIL 2.0 e XHTML [Much03], como será discutido na Seção Comparando NCL 2.0 com a sua versão anterior, além da estrutura modular, NCL 2.0 introduz novas facilidades na linguagem de autoria. Dentre as facilidades, podese ressaltar: 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 [MuCS01], 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 [MuSo02], 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 [Mour01], que possibilita especificar informações para posicionamento de objetos em um dispositivo de saída. Este artigo está estruturado como se segue. A Seção 2 realiza um breve resumo sobre modelagem de documentos usando a nova versão do NCM, modelo conceitual no qual NCL 2.0 se baseia. A Seção 3 apresenta os módulos da linguagem NCL 2.0 e comenta alguns perfis de linguagem. A Seção 4 apresenta um exemplo de documento NCL 2.0. A Seção 5 apresenta a comparação com trabalhos relacionados, destacando as comparações com a linguagem SMIL 2.0. Finalmente, a Seção 6 apresenta as conclusões e os trabalhos futuros.

3 2. Documentos Hipermídia no Modelo NCM Um documento hipermídia no modelo NCM é representado por um nó de composição, podendo conter um conjunto de nós, que podem ser objetos de mídia ou outros nós de composição, recursivamente, e ainda elos relacionando esses nós. Uma restrição do modelo impede que um nó contenha, recursivamente, ele próprio. Nós de composição no modelo NCM não têm nenhuma semântica embutida, diferente das composições SMIL 2.0 [SMIL01], por exemplo, que têm semântica temporal. A semântica de um nó de composição é deixada para linguagens de autoria baseadas no modelo. No caso da linguagem NCL, uma semântica específica para um nó de composição pode ser dada por um template de composição [MuSo02]. Para permitir a criação de relacionamentos entre partes internas do conteúdo de um nó, o modelo permite a definição de pontos de interface, que definem âncoras ou atributos, para qualquer tipo de nó, ou ainda portas, no caso de um nó de composição. Uma porta de um nó de composição é sempre mapeada em um ponto de interface de um de seus nós internos. Relacionamentos entre os componentes de um documento NCM são feitos através de elos. Elos NCM são definidos fazendo referência a um conector hipermídia, que pode representar qualquer tipo de relação [MuCS01], entre elas: relações de referência, de sincronização, de derivação, entre tarefas de um trabalho cooperativo etc. Além da referência a um conector, um elo define um conjunto de binds associando papéis do conector a pontos de interface de nós do documento. Cada extremidade de um elo indica, assim, um ponto de interface, modelando relacionamentos multiponto entre vários nós de um documento. Como uma porta de um nó de composição é mapeada em um ponto de interface de um de seus nós componentes, a criação de elos entre nós internos a uma composição e nós que não pertencem à mesma composição é possível. A versão anterior do modelo NCM [SoRM00] especificava uma outra restrição que exigia que todas as extremidades de um elo fossem componentes da composição onde o elo foi definido. Entretanto, na nova versão [SoRM03], essa restrição é deixada para linguagens de autoria baseadas no modelo, permitindo que o NCM também possa ser usado para modelar documentos que não têm esse tipo de restrição, como, por exemplo, documentos web. Vale ressaltar, no entanto, que, se essa restrição não for obedecida, a propriedade de composicionalidade do documento, tão importante na prova formal de propriedades, é perdida. Na nova versão do NCM, elos são sempre agrupados em bases de elos, logo, o conjunto de elos de uma composição pode ser dado pela união de elos de diferentes bases. Além do reuso de nós, permitido em versões anteriores do NCM [SoRM00], a nova versão também permite o reuso de elos e de bases de elos em outras bases, tornando mais flexível a definição de elos no modelo. A especificação de apresentação de um nó no modelo NCM é feita independente da definição do nó, sendo representada por outro objeto do modelo, chamado descritor [SoRM00]. Com isso, pode-se definir diferentes especificações de apresentação para um mesmo nó, pela associação de diferentes descritores a esse nó. Um nó pode ter um descritor definido por seu tipo (áudio, vídeo, texto, imagem, composição etc.), um outro descritor definido pelo próprio nó (normalmente especificado pelo seu autor), um outro

4 descritor definido por cada composição a que pertence, um outro descritor definido por cada elo que o toca e ainda, um descritor definido pelo usuário final (leitor). No caso de um nó possuir todos esses descritores especificados, o descritor resultante a ser associado a esse nó, para especificar sua apresentação final, será a combinação das especificações de todos esses descritores, de acordo como seguinte cascateamento: atributos do descritor definido pelo usuário sobrescrevem atributos do descritor definido pelo elo, que, por sua vez, sobrescrevem atributos do descritor definido pela composição, que, por sua vez, sobrescrevem atributos do descritor definido pelo próprio nó, que, por último, sobrescrevem atributos do descritor da classe do nó. Além disso, visando a especificação de apresentações multimídia adaptativas, cada especificação de apresentação pode, na verdade, ao invés de especificar um único descritor, especificar um conjunto de descritores alternativos, apresentando opções de apresentação para o mesmo nó. Dentre as opções especificadas, uma delas deverá ser escolhida, dependendo de características da plataforma de exibição e do usuário final. Uma outra entidade introduzida pela nova versão do modelo NCM é um nó que agrupa um conjunto de nós alternativos, denominado nó switch, tal como em SMIL, que também pode ser usado para a especificação de documentos hipermídia adaptáveis a uma plataforma de exibição ou a um perfil de usuário específico. Além disso, um nó switch pode especificar alternativas de apresentação para cada um de seus componentes, através de conjuntos de descritores alternativos, de forma análoga ao que um nó de composição qualquer pode realizar. Um nó switch simplifica a idéia de utilizar entidades virtuais, mais gerais, como comentado em versões anteriores do modelo [SoRM00]. Um nó switch pode definir tipos especiais de pontos de interface, que permitem ser mapeados em um conjunto de pontos de interface alternativos de seus nós componentes, onde a escolha pode ser feita em tempo de execução. Esse tipo especial de ponto de interface permite a ancoragem de elos no componente que será escolhido pela execução de um nó switch. Utilizando as entidades básicas do modelo NCM, a linguagem NCL 2.0 foi desenvolvida, introduzindo ainda outros recursos para facilitar a autoria de documentos NCM, como por exemplo, o conceito de template de composição hipermídia, apresentado em detalhes em [MuSo02, Much03]. A próxima seção apresenta a estrutura modular de NCL 2.0 e comenta alguns perfis de linguagem. 3. Modularização da linguagem NCL 2.0 Seguindo a mesma abordagem de modularização da linguagem SMIL 2.0, a funcionalidade de NCL 2.0 está dividida em onze áreas funcionais, que, por sua vez, estão particionadas em módulos. Como NCL 2.0 tem algumas facilidades idênticas às de SMIL 2.0, alguns módulos de SMIL 2.0 são usados por NCL 2.0. As próximas subseções descrevem, de maneira sucinta, as principais definições feitas por cada área funcional da linguagem e seus módulos correspondentes. A definição completa, em XML Schema, dos módulos de NCL 2.0 está disponível em [Much03]. 3.1 Área Funcional Structure: Módulo Structure O módulo Structure define a estrutura básica de um documento NCL. São definidos o elemento raiz, chamado ncl, o cabeçalho e o corpo do documento, chamados

5 respectivamente de head e body. O corpo de um documento NCL pode ser tratado como um nó de composição, contendo outros nós e/ou bases de elos. 3.2 Área Funcional Components: Módulos BasicMedia e BasicComposite O módulo BasicMedia define os tipos básicos de objetos de mídia que um documento NCL pode conter. Esse módulo é idêntico ao módulo BasicMedia do SMIL, definindo os seguintes elementos animation, audio, img, text, textstream, video e ref. O elemento ref permite definir uma referência a um outro objeto, permitindo o reuso de objetos em diferentes documentos. Cada objeto de mídia possui dois atributos principais: o atributo src que define uma URI com o conteúdo do objeto e o atributo type, que define o tipo MIME do objeto, além do atributo id. O módulo BasicComposite é responsável pela definição de nós de composição (vide Seção 2) em documentos NCL. Assim sendo, o elemento composite, que representa o nó de composição, pode conter elementos definidos pelo módulo BasicMedia, outros elementos composite e ainda elementos linkbase, que agrupam a definição dos elos da composição. O conteúdo de elementos linkbase será definido na Seção 3.5, que aborda o módulo Linking. 3.3 Área Funcional Interfaces: Módulos MediaInterface, CompositeInterface, AttributeInterface e SwitchInterface O módulo MediaInterface permite a definição de âncoras para objetos de mídia. Esse módulo define o elemento area, que estende a sintaxe e semântica do elemento homônimo definido por SMIL e XHTML. Além de permitir a definição de âncoras representando porções espaciais, através do atributo coords (como em XHTML [XHTM01]), e a definição de âncoras representando porções temporais, através dos atributos begin, end e dur, como em SMIL, o elemento area permite a definição de âncoras textuais, através dos atributos text, que define a cadeia de caracteres, e position, que define a posição inicial da cadeia no texto. Além das âncoras textuais, o módulo MediaInterface permite a definição de âncoras baseadas em número de amostras, para mídia áudio, ou número de quadros, para mídia vídeo, através dos atributos first e last, que devem indicar o número da amostra/quadro inicial e final. Um perfil de linguagem que usa esse módulo deve acrescentar o elemento area como elemento-filho dos elementos que definem objetos de mídia, especificados pelo módulo BasicMedia. O módulo CompositeInterface permite a definição de âncoras e portas para nós de composição. Esse módulo define um elemento chamado areacomposite, usado para a criação de âncoras, através de seu atributo componentlist, que contém uma lista de identificadores de nós componentes do nó de composição. Além do elemento areacomposite, o módulo CompositeInterface também especifica o elemento port, que define uma porta com seu respectivo mapeamento para um ponto de interface (atributo port) de um de seus nós componentes (atributo component). Um perfil de linguagem que usa esse módulo deve acrescentar os elementos areacomposite e port como elementosfilho do elemento composite, especificado pelo módulo BasicComposite. O módulo AttributeInterface permite a definição de atributos de nós como pontos de interface. Esse módulo define um elemento chamado attribute, cujo atributo name indica o nome do atributo em questão. Um perfil de linguagem que usa esse

6 módulo deve acrescentar o elemento attribute como elemento-filho dos elementos que definem objetos de mídia, especificados pelo módulo BasicMedia, ou do elemento composite, especificado pelo módulo BasicComposite. O módulo SwitchInterface permite a definição de pontos de interface especiais para elementos switch, que serão comentados na Seção Esses pontos de interface podem ser mapeados em um conjunto de alternativas de pontos de interface de seus nós internos, permitindo a ancoragem de elos no componente escolhido durante a exibição de um nó switch (veja Seção 2). Esse módulo introduz o elemento portswitch, que contém um conjunto de elementos port, de acordo com a definição feita pelo módulo CompositeInterface, mencionada anteriormente. Um perfil de linguagem que usa esse módulo deve acrescentar os elementos portswitch e port como elementos-filho de um elemento switch, especificado pelo módulo ContentControl, descrito na Seção A definição de elementos port e portswitch introduzidos pelos módulos CompositeInterface e SwitchInterface são novas facilidades que NCL 2.0 oferece. 3.4 Área Funcional Connectors: Módulos XConnector e CompositeConnector A área funcional Connectors traz novas facilidades, não encontradas em nenhuma outra linguagem hipermídia. O módulo XConnector permite a definição de conectores hipermídia, através do elemento xconnector, e de bases de conectores, através do elemento connectorbase. Um conector hipermídia representa uma relação que será usada para criar elos entre nós de um documento. Ele especifica a semântica da relação, mas não especifica quais nós participarão do relacionamento. Os nós serão especificados pelos elos hipermídia que usarão o conector, como será comentado na Seção 3.5. Um conector é definido por um conjunto de pontos de interface, chamados roles (papéis), e outro elemento filho chamado glue. Cada papel de um conector especifica a função de um participante da interação, e o glue do conector descreve como os participantes interagem, completando a definição da semântica da relação. XConnector permite a definição de conectores representando relações de sincronização e de referência. O módulo XConnector é apresentado em detalhes em [MuRS02]. O módulo CompositeConnector permite a definição de conectores compostos, tal como discutido em [MuCS01]. Um conector composto é definido pelo elemento compositeconnector, que contém elementos role e um elemento glue, tal como um conector simples. Entretanto, cada elemento role de um conector composto é mapeado em um ponto de interface de uma ocorrência de um conector interno (mapeamento chamado de elo parcialmente definido, de acordo com [MuCS01]). Além disso, o glue de um conector composto é definido como um nó de composição, que contém o mesmo conteúdo que um elemento composite e ainda o conjunto de elos parcialmente definidos, chamado de partiallinkbase. 3.5 Área Funcional Linking: Módulo Linking O módulo Linking é responsável pela definição de elementos para a criação de elos usando conectores. Um elo é definido pelo elemento link, que possui, além do atributo id, um atributo chamado xconnector, que faz referência à URI de um conector

7 hipermídia. Se o conector referenciado definir parâmetros, o elo deve associar valores para esses parâmetros [Much03]. O elemento link contém ainda elementos-filho chamados bind, que permitem associar os nós relacionados pelo elo a papéis do conector usado. Para realizar tal associação, um elemento bind possui três atributos básicos. O primeiro é chamado role, sendo usado para fazer referência a um papel do conector usado. O segundo é chamado component, que deve fazer referência ao identificador único de um nó, e o terceiro é chamado port 1, usado para fazer referência a um ponto de interface do nó associado. Além do elemento link, o módulo Linking define um outro elemento chamado linkbase, que permite a definição de bases de elos. Além disso, esse módulo ainda especifica o elemento lref, que pode ser usado para fazer referência a um elo ou uma base de elos já definidos, permitindo o reuso de elos e bases de elos em diferentes documentos. O elemento lref, análogo ao elemento ref, definido pelo módulo BasicMedia, tem um atributo src que identifica o elemento sendo reusado. Um elemento linkbase pode conter elementos link ou lref. A definição de bases de elos e o reuso de elos introduzidos pelo módulo Linking são duas novas facilidades que NCL 2.0 oferece. 3.6 Área Funcional Composite Templates: Módulos XTemplate e XTemplateUse A área funcional CompositeTemplates também traz novas facilidades não encontradas em nenhuma outra linguagem hipermídia. O módulo XTemplate permite a definição de templates de composição hipermídia, através do elemento xtemplate e de bases de templates, através do elemento templatebase. Um template de composição pode ser utilizado para embutir semântica, por exemplo temporal, em um nó de composição. A definição de um template de composição é feita através de um vocabulário, que define tipos de componentes, tipos de relações (modeladas por conectores) e pontos de interface; e de um conjunto de restrições sobre elementos do vocabulário e inclusão de instâncias de componentes e relacionamentos entre eles (modelados por elos). O módulo XTemplate é apresentado em detalhes em [MuSo02]. O uso do módulo XTemplate, por um determinado perfil de linguagem, exige que um módulo que define conectores, tal como XConnector, seja também utilizado, pois a semântica de elos definidos em um template de composição é dada pela definição de conectores hipermídia. O módulo XTemplateUse permite a utilização de templates por nós de composição em documentos NCL. Para isso, esse módulo define o atributo xtemplate, que faz referência à URI de um template de composição e define o atributo label, que especifica um rótulo. Um perfil de linguagem que use esse módulo deve acrescentar o atributo xtemplate à definição do elemento composite e o atributo label à definição de objetos de mídia, de elementos composite e de pontos de interface de nós. 1 Note que o atributo port, em um elemento bind, pode fazer referência a qualquer ponto de interface de um nó, ou seja, uma âncora, um atributo ou uma porta, no caso de um nó de composição.

8 3.7 Área Funcional Timing: Módulo BasicTiming O módulo BasicTiming permite a definição de especificações temporais para componentes de um documento. Basicamente, esse módulo define atributos para especificação da duração ideal (dur), duração mínima (min) e duração máxima (max) de um objeto qualquer, que serão utilizados por descritores, que, por sua vez, agrupam toda a especificação de apresentação de componentes do documento, como será definido na Seção 3.9. Essa área funcional pode incluir um outro módulo que permite a especificação de funções de custo para informar a melhor forma de realizar ajustes nas durações do objetos, caso seja necessário realizar esse tipo de adaptação durante a apresentação [Rodr03]. Um função de custo poderia ser associada à especificação temporal de cada objeto. Entretanto, a definição desse outro módulo foi deixada para trabalho futuro. 3.8 Área Funcional Layout: Módulo BasicLayout O módulo BasicLayout especifica elementos e atributos que definem como os objetos serão apresentados em regiões na tela de um dispositivo de exibição. O modelo de layout usado por NCL 2.0 é apresentado em detalhes em [Mour01]. Em resumo, um elemento layout, que deve ser declarado no cabeçalho de um documento, define um conjunto de janelas (toplayout), que contêm um conjunto de regiões (region), que, por sua vez, podem conter outro conjunto de regiões aninhadas. Tanto janelas quanto regiões podem definir os seguintes atributos: id, title, left, top, height, width, backgroundcolor, zindex, scroll, open, close. Além disso, regiões também podem definir o atributo fit, indicando como um objeto deve ser apresentado na região indicada. Todos esses atributos têm o mesmo significado e os mesmos valores possíveis dos atributos homônimos definidos nos módulos de layout da linguagem SMIL 2.0, exceto o atributo scroll, que permite ao usuário especificar como deseja configurar o scroll de uma região [Rodr03]. Apesar de NCL definir seu modelo de layout, nada impede que um documento NCL possa utilizar outros modelos de layout, desde que eles definam regiões onde objetos devam ser exibidos, como por exemplo os modelos de layout definidos por SMIL 2.0. Sendo assim, o elemento layout pode especificar um atributo src, que indica a URI do documento contendo a especificação de layout, e não precisa conter, nesse caso, conteúdo algum. 3.9 Área Funcional Presentation Specification: Módulo BasicDescriptor e CompositeDescriptor O objetivo dessa área funcional é especificar as informações temporais e espaciais necessárias para apresentar cada componente de um documento, modeladas no NCM, por objetos chamados descritores. O módulo BasicDescriptor permite a definição do elemento descriptor, que contém um conjunto de atributos opcionais, agrupando todas as definições temporais e espaciais, que devem ser utilizados de acordo com o tipo do objeto a ser apresentado. A definição de elementos descriptor deve ser feita no cabeçalho de um documento (head), dentro do elemento descriptorbase, que especifica o conjunto de descritores do documento. Um elemento descriptor possui os atributos temporais dur, min e max definidos pelo módulo BasicTiming (veja Seção 3.7); um atributo chamado player, que

9 identifica a ferramenta de exibição a ser utilizada; um atributo chamado region, que faz referência a uma região definida por elementos do módulo BasicLayout (veja Seção 3.8); e ainda um atributo chamado enabletimebar, usado para habilitar uma barra de rolagem de tempo, caso se aplique. Além desses atributos, um elemento descriptor também pode definir o atributo style, que faz referência a uma folha de estilo, com informações para apresentação de textos, por exemplo; e ainda atributos específicos para objetos com áudio, definindo soundlevel, balancelevel, treblelevel e basslevel. O módulo BasicDescriptor, além do elemento descriptor, define um atributo homônimo, que faz referência a um elemento do conjunto de descritores do documento. Um perfil de linguagem, que use o módulo BasicDescriptor, pode determinar como é feita a associação do atributo descriptor a um componente do documento. No caso do perfil NCL 2.0 Language Profile, seguindo o modelo NCM, o atributo descriptor é associado a um objeto de mídia qualquer, um nó de composição, ou ainda a uma extremidade de um elo (veja Seção 2). O módulo CompositeDescriptor define o elemento componentpresentation, que associa um nó componente de uma composição, identificado pelo atributo component, a um elemento do conjunto de descritores do documento, identificado pelo atributo descriptor. Qualquer elemento composite passa, então, a poder conter elementos componentpresentation. Vale ressaltar que o conjunto de descritores de um documento pode conter elementos descriptor ou ainda elementos descriptorswitch, que permitem especificar descritores alternativos, como será apresentado na próxima seção Área Funcional Presentation Control: Módulos TestAttributes, ContentControl e DescriptorControl Os objetivos da área funcional Presentation Control são similares e estende aqueles da área funcional Content Control da linguagem SMIL 2.0. Resumidamente, os objetivos são especificar alternativas de conteúdo e, ainda, de exibição para um documento. O módulo TestAttributes permite a definição de atributos de teste usados para especificar alternativas para a apresentação de um documento. Os atributos de teste são exatamente os mesmos pré-definidos pelo módulo BasicContentControl de SMIL 2.0. A especificação dos atributos de teste foi feita em um módulo separado de NCL, pois será útil tanto para definir componentes alternativos, como para definir descritores alternativos em documentos NCL, como apresentado a seguir. O módulo ContentControl especifica o elemento switch, tal como em SMIL, permitindo a definição de nós componentes alternativos do documento, a serem escolhidos em tempo de execução. Entretanto, o elemento switch de NCL não tem conteúdo idêntico ao elemento homônimo de SMIL (definido pelo seu módulo BasicContentControl), pois pode conter, além de objetos de mídia, elementos composite, definidos pelo módulo BasicComposite de NCL 2.0. O módulo DescriptorControl especifica o elemento descriptorswitch, que contém um conjunto de descritores alternativos a serem associados a um objeto. De forma análoga ao elemento switch, a escolha do descritor a ser usado é feita em tempo de execução, usando os mesmo atributos de teste, definidos pelo módulo TestAttributes.

10 3.11 Área Funcional Metainformation: Módulo Metainformation A área funcional Metainformation é idêntica à área funcional de mesmo nome da linguagem SMIL 2.0 permitindo a definição de metadados sobre um documento ou sobre elementos de um documento. Toda informação sobre metadados de um documento deve ser incluída em seu cabeçalho (elemento head) Perfis NCL 2.0 O perfil de linguagem chamado NCL 2.0 Language Profile, é o perfil completo da linguagem NCL 2.0, ou seja, que inclui todos os seus módulos e oferece todas as facilidades para a autoria declarativa de documentos NCL. A Tabela 1 indica os elementos e atributos, considerando seus modelos de conteúdo especificados no perfil completo de NCL 2.0, separados por área funcional. Na especificação do conteúdo, os símbolos indicam o seguinte: (?) opcional, ( ) ou, (*) zero ou mais ocorrências, (+) uma ou mais ocorrências. Além do perfil NCL 2.0 Language Profile, outros perfis podem ser construídos, como, por exemplo: Simple NCL Language Profile permite a criação de documentos NCL sem contemplar conectores compostos, controle de conteúdo (elemento switch), descritores alternativos, atributos como pontos de interface e definição de metadados. Esse perfil inclui os módulos Structure, BasicMedia, MediaInterface, BasicComposite, CompositeInterface, XConnector, Linking, BasicDescriptor, XTemplate e XTemplateUse. Basic Media Profile permite a criação de documentos hipermídia sem nós de composição e sem conectores compostos. Esse perfil precisa incluir os módulos Structure, BasicMedia, MediaInterface, XConnector, Linking e BasicDescriptor. Basic NCM Profile permite a criação de documentos NCM sem templates de composição hipermídia e sem conectores compostos. Esse perfil precisa incluir os módulos Structure, BasicMedia, MediaInterface, AttributeInterface, BasicComposite, CompositeInterface, XConnector, Linking, BasicDescriptor, CompositeDescriptor, TestAttributes, ContentControl, SwitchInterface e DescriptorControl. Basic Linking Profile permite a criação de elos e bases de elos sem conectores compostos. Esse perfil precisa incluir os módulos Structure, XConnector e Linking. XConnector Profile permite a criação de conectores hipermídia sem composição. Esse perfil precisa incluir apenas o módulo XConnector, que é independente dos demais módulos de NCL 2.0. XTemplate Profile permite a criação de templates de composição hipermídia e conectores sem composição. Precisa incluir os módulos XConnector e XTemplate.

11 Área Funcional Structure Components Interfaces Tabela 1. Modelo de Conteúdo do Perfil Completo de NCL Elementos Atributos Conteúdo ncl id (head?, body) head (Metainformation*, layout?, descriptorbase?) body (BasicMedia composite switch linkbase)* animation, audio, img, id, src, type, descriptor, area*, attribute* text, textstream, vídeo, label, TestAttributes ref composite Area id, descriptor, xtemplate, label, TestAttributes id, coords, begin, end, dur, text, position, first, last, label (areacomposite*, port*, attribute*, componentpresentation*, (BasicMedia composite linkbase switch)*) Vazio areacomposite id, componentlist, label Vazio port id, component, port, Vazio label attribute id, name Vazio portswitch id, label port+ Linking bind role, component, port Vazio param name, value Vazio link id, xconnector (param*, bind+) lref id, src Vazio linkbase id (link lref)+ Connectors xconnector id (param*, role+, glue) param name, type Vazio connectorbase id xconnector+ compositeconnector id (role+, glue) Composite xtemplate id (vocabulary, constraints?) Templates templatebase id xtemplate+ Layout layout src, type toplayout* toplayout id, title, left, top, height, region* width, backgroundcolor, zindex, scroll, open, close, movable, resizable, visible region id, title, left, top, height, region* width, backgroundcolor, zindex, scroll, open, close, fit, visible Presentation descriptor id, player, dur, min, Vazio Specification max, region, enabletimebar, style, soundlevel, balancelevel, treblelevel, basslevel, TestAttributes descriptorbase (descriptor descriptorswitch)* Presentation Control componentpresentation component, descriptor Vazio switch id, TestAttributes (portswitch*, componentpresentation*, (BasicMedia composite switch)+) descriptorswitch id descriptor+ 2 A definição completa dos elementos e atributos especificados nos módulos XConnector e XTemplate foram omitidas propositalmente, e podem ser encontradas nas referências [MuRS02, MuSo02].

12 3.13 Incorporando Facilidades de NCL 2.0 em Outras Linguagens Um dos objetivos do projeto de NCL 2.0 foi oferecer facilidades que pudessem ser incorporadas a outras linguagens de autoria, visando principalmente a autoria de documentos web. As referências [MuRS02] e [MuSo02] discutiram, respectivamente, como os módulos XConnector e XTemplate podem ser utilizados para incorporar novas facilidades ao padrão XLink [XLIN01]. Considerando extensões ao padrão SMIL 2.0, um perfil de linguagem, chamado SMIL+XTemplate, poderia ser criado. Esse perfil permitiria a criação de outros tipos de contêineres temporais, além dos conhecidos par, seq e excl. Para dar suporte à definição de templates, os módulos BasicComposite, XConnector e XTemplate deveriam ser adicionados ao perfil. O módulo BasicComposite introduz o elemento composite que pode adquirir a semântica definida por um template qualquer. O módulo XConnector é necessário para permitir a definição de conectores, que são usados para a criação de elos em um template. Além de adicionar esses três módulos de NCL 2.0, dois novos módulos teriam que ser criados. O primeiro módulo novo deveria permitir a definição de elos SMIL através do uso de conectores, similar ao que foi feito no módulo Linking de NCL 2.0. O outro módulo novo forneceria o uso de templates de composição. Esse último módulo adicionaria o atributo xtemplate a elementos composite e o atributo label a objetos de mídia, âncoras e composições SMIL, com objetivos similares aos do módulo XTemplateUse de NCL Exemplo de Documento NCL 2.0 Para ilustrar a autoria de documentos usando a linguagem NCL 2.0, considere um documento contendo uma composição (elemento composite) identificada por sambadocument, que contém um nó de áudio e ainda uma série de nós de texto HTML, cada um deles representando partes da letra do áudio. O nó de áudio define uma série de âncoras, uma para cada trecho cantado do áudio. Para sincronizar a apresentação da letra com cada trecho correspondente do áudio, a composição samba-document utiliza um template de composição, chamado audio-with-subtitles, que embute toda a semântica temporal. A Figura 1 exibe a definição do documento NCL, realçando os atributos mais importantes para a utilização do template de composição. Para simplificar o exemplo, apenas os três primeiros trechos da letra da música foram utilizados. Note que cada nó componente do documento NCL faz referência a um descritor, definido em seu cabeçalho, que especifica suas características de exibição. <?xml version="1.0"?> <ncl id="ncl_example" xmlns="http://www.telemidia.puc-rio.br/specs/xml/ncl" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://www.telemidia.puc-rio.br/specs/xml/ncl <head> <layout> <toplayout id="window1" title="music Lyrics" width="600" height="200"> <region id="textregion1" width="65%" height="100%"/> <region id="imageregion1" width="35%" height="100%" left="65%"/> </toplayout> <toplayout id="audiowindow" title="audio Control" top="200" width="600" height="50"> <region id="audioregion1" width="100%" height="100%"/>

13 </toplayout> </layout> <descriptorbase> <descriptor id="audio_d1" region="audioregion1" enabletimebar="on" /> <descriptor id="text_d1" region="textregion1" /> <descriptor id="img_d1" region="imageregion1" /> </descriptorbase> </head> <body> <composite id="samba-document" xtemplate="http://engenho.telemidia.pucrio.br/users/debora/audio-with-subtitles.xml"> <audio id="samba" label="audio" src="http://www.telemidia.pucrio.br/specs/xml/examples/samba/samba.wav" descriptor="audio_d1"> <area id="part1" begin="8.4s" end ="18s" label="track"/> <area id="part2" begin="18.5s" end ="28s" label="track"/> <area id="part3" begin="29s" end ="39s" label="track"/> </audio> <text id="lyrics-part1" label="subtitle" src="http://www.telemidia.pucrio.br/specs/xml/examples/samba/lyrics01.htm" descriptor="text_d1"/> <text id="lyrics-part2" label="subtitle" src="http://www.telemidia.pucrio.br/specs/xml/examples/samba/lyrics02.htm" descriptor="text_d1"/> <text id="lyrics-part3" label="subtitle" src="http://www.telemidia.pucrio.br/specs/xml/examples/samba/lyrics03.htm" descriptor="text_d1"/> </composite> </body> </ncl> Figura 1. Exemplo de documento NCL 2.0 Um template de composição define uma semântica para um nó de composição. No exemplo, o template audio-with-subtitles define a sincronização temporal entre um nó de áudio qualquer (tipo de componente com rótulo audio) e as legendas correspondentes a parte cantada/falada do áudio (tipo de componente com rótulo subtitle). Ao utilizar um template, o nó de composição deve indicar sua URI e associar rótulos definidos pelo template aos seus componentes específicos, tal como realçado na Figura 1. A Figura 2 ilustra a representação gráfica desse template mostrando suas visões estrutural e temporal. Os elos L i e P i utilizam, respectivamente, conectores que representam as relações de sincronização starts e finishes de Allen [Alle83]. Além disso, o template especifica que uma imagem seja apresentada em paralelo com o áudio (tipo de componente com rótulo logo). A definição completa desse template em XML pode ser encontrada em [Much03]. subtitle 1 logo L 2 L 3 P L 1 P1 2 L 4 P 3 audio P n+1 P L 4 n+1... subtitle n Visão Estrutural subtitle 2 subtitle 3 logo L 1 audio P 1 track1 track2 track3 trackn L 2 P 2 L 3 P 3 L 4 P 4 L n+1... subt. 1 subt. 2 subt. 3 subt. n Visão Temporal P n+1 Figura 2. Representação gráfica do template audio-with-subtitles

14 Como o uso de templates de composição é uma facilidade da linguagem de autoria NCL 2.0, e não do modelo NCM, um documento NCL que usa um template de composição precisa ser processado antes de ser entregue para ser exibido. O processamento de documentos usando templates é realizado por um processador de templates, que gera um novo documento NCL a partir da definição do documento original e do template, como ilustrado na Figura 3. O documento NCL final contém as definições de componentes e relacionamentos especificadas no template, além das definições do documento original. O documento final do exemplo dado pode ser encontrado em [Much03]. Documento NCL usando um template template de composição processador de templates de composição Valida restrições e gera componentes e elos automaticamente Documento NCL ou Relatório de erros Documento final Figura 3. Processamento de documentos NCL com templates de composição Ao executar o documento final samba-document usando o formatador NCM [Rodr03], cada trecho do áudio é sincronizado com a parte da letra correspondente. As Figuras 4 e 5 exibem o documento apresentado ao usuário final, mostrando as duas primeiras partes da letra do samba sincronizadas com o áudio (note o progresso na barra de rolagem de tempo que controla a exibição do áudio). Figura 4. Primeira tela da apresentação do documento samba-document Figura 5. Segunda tela da apresentação do documento samba-document 5. Trabalhos Relacionados Sabe-se que, atualmente, a linguagem SMIL 2.0 é o padrão consagrado pelo W3C para autoria de documentos multimídia interativos. A pergunta da Seção 1, Por que então uma nova linguagem, sendo que já existe um padrão com objetivos similares? pode agora ser considerada com mais profundidade. A representação de relacionamentos através de composições com semântica embutida, que é a abordagem usada por SMIL em seus contêineres temporais, facilita bastante o trabalho do autor por evitar que ele tenha que criar vários elos entre um grupo de nós para obter uma semântica idêntica à da composição. Por outro lado, nesse tipo de abordagem, relacionamentos mais complexos entre um conjunto de componentes têm que ser descritos por uma hierarquia de composições usando os tipos básicos. Isso nem sempre é desejável, pois obriga a estrutura lógica do documento a ser igual a sua estrutura de apresentação temporal.

15 A especificação de relacionamentos de sincronização através de elos, que é a abordagem de NCL desde sua primeira versão [AMRS00], permite que o uso de composições possa ser dedicado à criação de relações de estruturação entre componentes de um documento. Além disso, o uso de elos para definir o sincronismo temporal permite que um autor defina qualquer tipo de relação de sincronização entre um grupo de componentes. Essa abordagem dá mais flexibilidade, já que o autor não precisa ficar limitado a alguns tipos de composição pré-definidos pela linguagem e pode estruturar seu documento de forma independente de suas relações de sincronização. Dadas vantagens e desvantagens do uso de composições e elos para representar relações, o ideal é oferecer ao autor todas as possibilidades: o uso de composições para estruturação lógica e o uso de elos para especificar sincronização; e o uso de composições com semântica, por exemplo temporal, fazendo a estrutura lógica casar com a estrutura de apresentação. Melhor ainda se a linguagem de autoria permitir a criação de tipos de composição com a semântica desejada pelo autor e que possam ser utilizados de acordo com a necessidade. Assim, a estrutura de apresentação de um documento pode se adaptar à sua estrutura lógica, e não o contrário. A linguagem NCL 2.0 oferece ao autor essas várias possibilidades, através do conceito de template de composição. A vantagem principal do uso de templates de composição, além da reutilização da estrutura, é a possibilidade de definição de uma semântica para uma composição. Dessa forma, tipos pré-definidos de composições, como os oferecidos pela linguagem SMIL, podem ser vistos como templates. Através do módulo XTemplate, novos templates de composição podem ser criados, generalizando os tipos de composição que a linguagem de autoria oferece. Essas mudanças de paradigma justificaram a especificação de uma nova linguagem modular, cujos módulos podem ser utilizados para estender os padrões existentes, incorporando novas facilidades. Com isso, a implementação do perfil SMIL+XTemplate é considerada o próximo trabalho futuro. Além da diferença principal sobre o uso de composições, outros comentários podem ser destacados na comparação entre NCL e SMIL 2.0. Além da possibilidade de especificar alternativas de conteúdo, através do elemento switch, idêntico ao que é oferecido por SMIL, NCL 2.0 permite a especificação de alternativas de exibição para um mesmo nó. Alternativas de exibição podem ser especificadas através do elemento descriptorswitch, que pode ser associado a um nó através de um elo, de uma composição ou pelo próprio nó, seguindo o cascateamento determinado na Seção 2. Na linguagem SMIL, as características de apresentação de um nó estão especificadas junto ao nó, exceto informações de layout espacial, que são definidas em separado. Para especificar alternativas de exibição para um mesmo nó em um documento SMIL, é necessário definir um elemento switch contendo repetições de um elemento com o mesmo conteúdo, associado a diferentes informações de exibição. Em NCL, basta especificar um único nó com o conteúdo desejado e associar um conjunto de descritores alternativos, representado por um elemento descriptorswitch. NCL oferece elos multiponto, representando relações com semântica causal ou de restrição, de acordo com o conector usado pelo elo. Além disso, uma mesma relação causal, por exemplo, pode relacionar eventos de diversos tipos, além dos tradicionais eventos de seleção e apresentação, normalmente contemplados. SMIL 2.0 só oferece

16 elos ponto-a-ponto, que podem ser disparados por eventos temporais. A possibilidade de usar eventos na especificação temporal de um documento SMIL 2.0 deu bastante flexibilidade à linguagem, comparada com sua versão anterior. Entretanto, para especificar relacionamentos complexos, o autor deve mesclar o uso dos contêineres temporais par, seq e excl com o uso de eventos, e ainda com o uso de elos, se for o caso, para especificar relacionamentos que envolvem a ocorrência de vários tipos de evento. Em NCL 2.0, uma relação, por mais complexa que seja, pode ser abstraída por um único conector e utilizada da mesma forma que uma relação bem simples. Outro comentário que merece destaque é sobre a especificação do comportamento temporal de objetos de forma flexível. Desde a versão 1.0 de NCL, que as durações de objetos na especificação de um documento podem ser definidas com valores ótimo, mínimo e máximo. Essa facilidade só foi incluída na linguagem SMIL em sua segunda versão. Além disso, NCL prevê a especificação de funções de custo [Rodr03] para guiar o formatador em possíveis ajustes temporais durante a apresentação do documento, visando minimizar a perda de qualidade. 6. Considerações Finais Esse artigo apresentou a versão 2.0 da linguagem declarativa NCL para autoria de documentos hipermídia. Sem dúvida, os módulos mais importantes de NCL 2.0 são os que tratam da definição de conectores e templates de composição. Esses dois módulos apresentam novas contribuições para linguagens de autoria hipermídia, considerando relações como entidades de primeira classe e permitindo a definição de uma semântica qualquer para um nó de composição. Para validação dos novos conceitos introduzidos, um parser NCL foi implementado de forma genérica, sendo o compilador NCL-NCM (objetos Java) uma instância desse parser. Esse compilador possibilitou a integração de NCL ao sistema hipermídia HyperProp [Much03], validando os novos conceitos. O próximo passo é o desenvolvimento de novas instâncias do parser, promovendo a integração de NCL a outros modelos, como diretamente ao modelo de execução do formatador HyperProp [Rodr03] e a modelos de players SMIL (obviamente com algumas restrições a funcionalidades oferecidas por NCL, devido às limitações de SMIL). Outro trabalho futuro é levar as facilidades introduzidas por NCL a padrões existentes, como já realizado para a linguagem XLINK [MuRS02]. Um trabalho já iniciado prevê a utilização de XConnector e XTemplate para estender funcionalidades no padrão SMIL, através da implementação do perfil SMIL+XTemplate. O módulo XConnector contempla a definição de relações de sincronização e referência, entretanto, o conceito de conector pode ser aplicado para definir qualquer tipo de relação. Por exemplo, pode-se definir um conector de versão para representar a relação ancestral/descendente usada em mecanismos para controle de versões de objetos, ou então um conector canal para representar o paradigma publish-subscribe usado em mecanismos de notificação de mensagens. Baseando-se em novos tipos de conectores, o módulo XTemplate pode ser usado para definir outras semânticas para composições, diferentes da semântica de sincronização temporal e espacial já disponível. Por exemplo, pode-se criar templates de composição para agrupar versões de um mesmo objeto e seu

17 grafo de derivação. O desenvolvimento de outros módulos para criação de outros tipos de relação é outro trabalho futuro. Apesar de NCL 2.0 ter acrescentado muitas novas facilidades em relação à versão 1.0, refinamentos sempre serão necessários. A especificação de novos módulos para permitir a definição de funções de custo para durações de componentes de um documento, possibilitando a realização de ajustes finos pelo formatador, também é prevista como trabalho futuro. Além disso, o suporte para computação automática de extremidades de elos, contemplando os antigos elos virtuais do modelo NCM [SoRM00], precisa ser construído. Referências [Alle83] Allen J.F. Maintaining Knowledge about Temporal Intervals, Communications of the ACM, 26(11), 1983, [AMRS00] Antonacci M.J., Muchaluat-Saade D.C., Rodrigues R.F., Soares L.F.G. NCL: Uma Linguagem Declarativa para Especificação de Documentos Hipermídia na Web, SBMídia2000, Natal, RN, Junho [Mour01] Moura, M.S.A. Relações Espaciais em Documentos Hipermídia. Dissertação de Mestrado, Depto. de Informática, PUC-Rio, RJ, Agosto [Much03] Muchaluat-Saade D.C. Relações em Linguagens de Autoria Hipermídia: Aumentando Reuso e Expressividade, Tese de Doutorado, Departamento de Informática, PUC-Rio, Rio de Janeiro, Março [MuCS01] Muchaluat-Saade D.C., Colcher S., Soares L.F.G. Relações de Sincronização Espaço-Temporal Hipermídia Também Merecem Status de Primeira Classe, SBMídia2001, Florianópolis, SC, Outubro [MuRS02] Muchaluat-Saade D.C., Rodrigues R.F., Soares L.F.G. XConnector: Extending XLink to Provide Multimedia Synchronization, ACM DocEng'02, Virginia, USA, Novembro [MuSo02] Muchaluat-Saade D., Soares L.F.G. XConnector e XTemplate: Estendendo XLink para Aumentar Expressividade e Reuso, SBMídia2002, CE, Outubro [Rodr03] Rodrigues R.F. Formatação e Controle de Apresentações Hipermídia com Mecanismos de Adaptabilidade, Tese de Doutorado, Departamento de Informática, PUC-Rio, Rio de Janeiro, Março [SMIL01] Synchronized Multimedia Integration Language (SMIL 2.0), W3C Recommendation, Agosto [SoRM00] Soares L.F.G., Rodrigues R.F., Muchaluat-Saade D.C. Modeling, Authoring and Formatting Hypermedia Documents in the HyperProp System, ACM Multimedia Systems Journal, 8(2): , Março [SoRM03] Soares L.F.G., Rodrigues R.F., Muchaluat-Saade D.C. Modelo de Contextos Aninhados versão 3.0. Relatório Técnico, Lab. TeleMídia, PUC-Rio, [XHTM01] XHTML Module-based XHTML, W3C Rec., Maio [XLIN01] XML Linking Language (XLink) Version 1.0, W3C Rec., Junho 2001.

SMIL + XTemplate * 1. Introdução

SMIL + XTemplate * 1. Introdução SMIL + XTemplate * Heron V. O. Silva, Rogério Ferreira Rodrigues, Luiz Fernando Gomes Soares Detamento de Informática PUC-Rio heron@telemidia.puc-rio.br, rogerio@telemidia.puc-rio.br, lfgs@inf.puc-rio.br

Leia mais

Aplicações Tv Digital

Aplicações Tv Digital Iniciando e terminando dois nós simultaneamente

Leia mais

EDITEC: Editor Gráfico de Templates de Composição para Facilitar a Autoria de Programas para TV Digital Interativa *

EDITEC: Editor Gráfico de Templates de Composição para Facilitar a Autoria de Programas para TV Digital Interativa * EDITEC: Editor Gráfico de Templates de Composição para Facilitar a Autoria de Programas para TV Digital Interativa * Jean Ribeiro Damasceno 1 Joel A. Ferreira dos Santos 2 Débora C. Muchaluat Saade 2 Laboratório

Leia mais

1 Introdução. 1.1. Motivação

1 Introdução. 1.1. Motivação 1 Introdução A adoção do Ginga-NCL como middleware declarativo do SBTVD (Sistema Brasileiro de Televisão Digital) estabeleceu um marco no desenvolvimento de aplicações interativas para TV Digital terrestre

Leia mais

Introdução Padrão Brasileiro de TV Digital. Desenvolvimento de Aplicações Interativas. Trabalhos em andamento

Introdução Padrão Brasileiro de TV Digital. Desenvolvimento de Aplicações Interativas. Trabalhos em andamento Introdução Padrão Brasileiro de TV Digital Middleware GINGA Desenvolvimento de Aplicações Interativas Linguagem NCL (Nested Context Language) Trabalhos em andamento 1 2 3 4 Maior resolução de imagem Melhor

Leia mais

Ginga-NCL com objetos de mídia SSML embutidos Relatório Técnico: Requisitos

Ginga-NCL com objetos de mídia SSML embutidos Relatório Técnico: Requisitos PUC-Rio - Departamento de Informática Ginga-NCL com objetos de mídia SSML embutidos Relatório Técnico: Requisitos Rafael Diniz Matrícula: 1312398 5 de agosto de 2014 Sumário 1 Introdução 2 1.1 Propósito...........................................

Leia mais

4 Middleware Ginga-NCL como Plugin para Navegadores Web

4 Middleware Ginga-NCL como Plugin para Navegadores Web 4 Middleware Ginga-NCL como Plugin para Navegadores Web De forma análoga ao que existe hoje ao se embutir um objeto de mídia HTML em uma aplicação NCL, a integração entre o middleware Ginga e um navegador

Leia mais

2 Geração Dinâmica de Conteúdo e Templates de Composição

2 Geração Dinâmica de Conteúdo e Templates de Composição 2 Geração Dinâmica de Conteúdo e Templates de Composição Alguns dos aspectos mais importantes na arquitetura proposta nesta dissertação são: a geração dinâmica de conteúdo e a utilização de templates de

Leia mais

4 Arquitetura para aplicações NCL dinâmicas

4 Arquitetura para aplicações NCL dinâmicas 4 Arquitetura para aplicações NCL dinâmicas Além de ser composta por objetos de mídia com conteúdo audiovisual, uma aplicação NCL dinâmica precisa ter objetos NCLua geradores de conteúdo em sua composição.

Leia mais

SMIL. Samuel Macêdo. Judith Kelner e Outros

SMIL. Samuel Macêdo. Judith Kelner e Outros SMIL Samuel Macêdo Judith Kelner e Outros Grupo de Pesquisa em Realidade Virtual Multimídia Universidade Federal de Pernambuco, Centro de Informática Um pouco de história Em outubro de 1996, um grupo representando

Leia mais

Construindo Programas. Audiovisuais Interativos. Utilizando a NCL 3.0 e a. Ferramenta Composer

Construindo Programas. Audiovisuais Interativos. Utilizando a NCL 3.0 e a. Ferramenta Composer serg Construindo Programas Audiovisuais Interativos Utilizando a NCL 3.0 e a Ferramenta Composer Carlos de Salles Soares Neto Luiz Fernando Gomes Soares Rogério Ferreira Rodrigues Simone Diniz Junqueira

Leia mais

XML. 1. XML: Conceitos Básicos. 2. Aplicação XML: XHTML 3. Folhas de Estilo em Cascata XML

XML. 1. XML: Conceitos Básicos. 2. Aplicação XML: XHTML 3. Folhas de Estilo em Cascata XML 1 1. : Conceitos Básicos 2. Aplicação : XHTML 3. Folhas de Estilo em Cascata 2 é um acrônimo para EXtensible Markup Language é uma linguagem de marcação muito parecida com HTML foi designada para descrever

Leia mais

5.1. Análise Comparativa

5.1. Análise Comparativa 5 Conclusões O objetivo desta dissertação foi apresentar o ambiente de autoria Composer, o qual é voltado para a criação de programas NCL, versão 3.0, para TV digital interativa. Da mesma forma que no

Leia mais

1.1. Aplicações de TVD dinâmicas

1.1. Aplicações de TVD dinâmicas 1 Introdução Uma aplicação de TV Digital (TVD) comumente é composta por um vídeo principal associado a outros objetos (aplicações, imagens, vídeos, textos etc.), que são transmitidos em conjunto possibilitando

Leia mais

3 OOHDM e SHDM 3.1. OOHDM

3 OOHDM e SHDM 3.1. OOHDM 32 3 OOHDM e SHDM Com a disseminação em massa, desde a década de 80, de ambientes hipertexto e hipermídia, principalmente a Web, foi identificada a necessidade de elaborar métodos que estruturassem de

Leia mais

XML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA

XML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA XML e Banco de Dados DCC/IM/UFBA Banco de Dados na Web Armazenamento de dados na Web HTML muito utilizada para formatar e estruturar documentos na Web Não é adequada para especificar dados estruturados

Leia mais

3. INICIATIVAS NO DESENVOLVIMENTO DE APLICATIVOS INTERATIVOS PARA TVDI

3. INICIATIVAS NO DESENVOLVIMENTO DE APLICATIVOS INTERATIVOS PARA TVDI 42 3. INICIATIVAS NO DESENVOLVIMENTO DE APLICATIVOS INTERATIVOS PARA TVDI Neste capítulo são apresentados alguns trabalhos que visão apoiar a criação de software para TVDI. Os trabalhos estão separados

Leia mais

UNIVERSIDADE FEDERAL FLUMINENSE. PROGRAMA INSTITUCIONAL DE BOLSAS DE INICIAÇÃO CIENTÍFICA BOLSA CNPq e BOLSA UFF RELATÓRIO FINAL

UNIVERSIDADE FEDERAL FLUMINENSE. PROGRAMA INSTITUCIONAL DE BOLSAS DE INICIAÇÃO CIENTÍFICA BOLSA CNPq e BOLSA UFF RELATÓRIO FINAL UNIVERSIDADE FEDERAL FLUMINENSE PROGRAMA INSTITUCIONAL DE BOLSAS DE INICIAÇÃO CIENTÍFICA BOLSA CNPq e BOLSA UFF RELATÓRIO FINAL 01 - IDENTIFICAÇÃO DO PROJETO: Identificação do Aluno Nome: Lucas Vernot

Leia mais

4 Conversor EDTV Raw. 4.1 Arquitetura

4 Conversor EDTV Raw. 4.1 Arquitetura 4 Conversor EDTV Raw O conversor EDTV Raw é o programa que lê um documento escrito no perfil NCL EDTV e gera um documento Raw equivalente, i.e. que define a mesma apresentação. Este capítulo, apresenta

Leia mais

Engenharia de Software I

Engenharia de Software I Engenharia de Software I Rogério Eduardo Garcia (rogerio@fct.unesp.br) Bacharelado em Ciência da Computação Aula 05 Material preparado por Fernanda Madeiral Delfim Tópicos Aula 5 Contextualização UML Astah

Leia mais

5 Trabalhos Relacionados

5 Trabalhos Relacionados 5 Trabalhos Relacionados Este capítulo compara vários trabalhos relacionados à autoria de grafos e documentos hipermídia com o editor proposto nesta dissertação. Com o objetivo de organizar as comparações,

Leia mais

TV Interativa. 1 Aplicações em Ginga-NCL Copyright 2006 TeleMídia. serg

TV Interativa. 1 Aplicações em Ginga-NCL Copyright 2006 TeleMídia. serg TV Interativa 1 Aplicações em Ginga-NCL Copyright 2006 TeleMídia TV Digital Melhor imagem Melhor som 2 Aplicações em Ginga-NCL Copyright 2006 TeleMídia Co-Canal 3 Aplicações em Ginga-NCL Copyright 2006

Leia mais

Tópicos Avançados em Engenharia de Software

Tópicos Avançados em Engenharia de Software Tópicos Avançados em Engenharia de Software 02/10/2012 Profº. Mario Godoy mario.godoy@univasf.edu.br www.univasf.edu.br/~mario.godoy/gis Agenda a) Questionário grupo; b) Manic Time (standard free): USB

Leia mais

Expressive Talking Heads: Um Estudo de Fala e Expressão Facial em Personagens Virtuais

Expressive Talking Heads: Um Estudo de Fala e Expressão Facial em Personagens Virtuais Expressive Talking Heads: Um Estudo de Fala e Expressão Facial em Personagens Virtuais Paula Salgado Lucena, Marcelo Gattass, Luiz Velho Departamento de Informática Pontifícia Universidade Católica do

Leia mais

Visual Library: Uma Biblioteca para Criação de Ferramentas de Modelagem Gráfica

Visual Library: Uma Biblioteca para Criação de Ferramentas de Modelagem Gráfica Visual Library: Uma Biblioteca para Criação de Ferramentas de Modelagem Gráfica Tiago A. Gameleira 1, Raimundo Santos Moura 2, Luiz Affonso Guedes 1 1 Universidade Federal do Rio Grande do Norte (UFRN)

Leia mais

Júlia Varanda da Silva

Júlia Varanda da Silva Júlia Varanda da Silva NCL - Nested Context Language Estrutura do documento NCL Rodando uma aplicação NCL Aplicação: O Primeiro João Navegação pelos elementos Regras e switches Assessment Statement Animações

Leia mais

Júlia Varanda da Silva NEXT Editor Gráfico para Programas NCL com Suporte a Templates

Júlia Varanda da Silva NEXT Editor Gráfico para Programas NCL com Suporte a Templates UNIVERSIDADE FEDERAL FLUMINENSE Júlia Varanda da Silva NEXT Editor Gráfico para Programas NCL com Suporte a Templates NITERÓI 2012 UNIVERSIDADE FEDERAL FLUMINENSE Júlia Varanda da Silva NEXT Editor Gráfico

Leia mais

Padrões de Contagem de Pontos de Função

Padrões de Contagem de Pontos de Função Padrões de Contagem de Pontos de Função Contexto Versão: 1.0.0 Objetivo O propósito deste documento é apresentar os padrões estabelecidos para utilização da técnica de Análise de Pontos de Função no ambiente

Leia mais

WWW - World Wide Web

WWW - World Wide Web WWW World Wide Web WWW Cap. 9.1 WWW - World Wide Web Idéia básica do WWW: Estratégia de acesso a uma teia (WEB) de documentos referenciados (linked) em computadores na Internet (ou Rede TCP/IP privada)

Leia mais

P.V. Descrição Ocorrências Linhas

P.V. Descrição Ocorrências Linhas Relatório da URL: http://www.cultura.gov.br Erros Prioridade. 22 36 37 38 39 40 45 46 50 53 59 63 32 33 369 39 395 459 460 472 473 474 476.6 Assegurar a acessibilidade do conteúdo de frames, fornecendo

Leia mais

NCL Eclipse: Ambiente Integrado para o Desenvolvimento de Aplicações para TV Digital Interativa em Nested Context Language

NCL Eclipse: Ambiente Integrado para o Desenvolvimento de Aplicações para TV Digital Interativa em Nested Context Language NCL Eclipse: Ambiente Integrado para o Desenvolvimento de Aplicações para TV Digital Interativa em Nested Context Language Roberto Gerson de Albuquerque Azevedo 1,2, Mário Meireles Teixeira 1, Carlos de

Leia mais

Geração de códigos de interfaces de usuário a partir da linguagem UIML

Geração de códigos de interfaces de usuário a partir da linguagem UIML Geração de códigos de interfaces de usuário a partir da linguagem UIML Ayslan Trevizan Possebom, Antonio Mendes da Silva Filho, Sérgio Roberto Pereira da Silva Departamento de Informática Universidade

Leia mais

NCL Eclipse: Ambiente Integrado para o Desenvolvimento de Aplicações para TV Digital Interativa em Nested Context Language

NCL Eclipse: Ambiente Integrado para o Desenvolvimento de Aplicações para TV Digital Interativa em Nested Context Language Salão de Ferramentas - SBRC 2009 1 NCL Eclipse: Ambiente Integrado para o Desenvolvimento de Aplicações para TV Digital Interativa em Nested Context Language Roberto Gerson de Albuquerque Azevedo 1,2,

Leia mais

3 Requisitos não-funcionais de ferramentas de autoria hipermídia

3 Requisitos não-funcionais de ferramentas de autoria hipermídia Requisitos não-funcionais de ferramentas de autoria hipermidia 34 3 Requisitos não-funcionais de ferramentas de autoria hipermídia Na literatura são vários os trabalhos que discutem os requisitos funcionais

Leia mais

Suporte à Engenharia Reversa para o ambiente SEA

Suporte à Engenharia Reversa para o ambiente SEA Otavio Pereira Suporte à Engenharia Reversa para o ambiente SEA Orientador: Ricardo Pereira e Silva Universidade Federal de Santa Catarina - UFSC Departamento de Informática e Estatística - INE Florianópolis

Leia mais

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA RESUMO Ricardo Della Libera Marzochi A introdução ao Service Component Architecture (SCA) diz respeito ao estudo dos principais fundamentos

Leia mais

Aula 03: Noções Fundamentais do CSS, Formatação de Fonte e Inserção de Imagens

Aula 03: Noções Fundamentais do CSS, Formatação de Fonte e Inserção de Imagens Aula 03: Noções Fundamentais do CSS, Formatação de Fonte e Inserção de Imagens Tag para inserir imagens e HTML O modelo CSS Noções fundamentais e funcionamento do CSS Incluindo estilos em uma página Sintaxe

Leia mais

Introdução à Multimídia

Introdução à Multimídia Sistemas Multimídia - Aula 01 Introdução à Multimídia Diogo Pinheiro Fernandes Pedrosa Universidade Federal Rural do Semiárido Departamento de Ciências Exatas e Naturais Curso de Ciência da Computação

Leia mais

5 Exemplos. 5.1. Produção bibliográfica da PUC-Rio

5 Exemplos. 5.1. Produção bibliográfica da PUC-Rio 5 Exemplos Foram desenvolvidas duas aplicações que exemplificam o uso e a utilidade das mudanças feitas no método SHDM e do ambiente de desenvolvimento Synth, apresentadas nas seções a seguir. 5.1. Produção

Leia mais

Pré-requisito Treinamento de Lógica de Programação, ou conhecimento equivalente.

Pré-requisito Treinamento de Lógica de Programação, ou conhecimento equivalente. 1 HTML5 e 3 Descrição Aprenda no curso de HTML os conceitos essenciais para a criação de páginas web, junto com os novos recursos e possibilidades que o HTML5 e 3 oferecem para a criação de sites com códigos

Leia mais

Tecnologias Web. Padrões de Projeto - Camada de Apresentação

Tecnologias Web. Padrões de Projeto - Camada de Apresentação Tecnologias Web Padrões de Projeto - Camada de Apresentação Cristiano Lehrer, M.Sc. Padrões da Camada de Apresentação (1/2) Intercepting Filter Viabiliza pré e pós processamento de requisições. Front Controller

Leia mais

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Tópicos Motivação e Objetivos LP e SOA Processo ADESE

Leia mais

A linguagem UML. UML e Diagramas de Casos de Uso e Classes. Por que usar UML? O que é modelagem?

A linguagem UML. UML e Diagramas de Casos de Uso e Classes. Por que usar UML? O que é modelagem? UML e Diagramas de Casos de Uso e Classes Prof. Ms. Luiz Alberto Contato: lasf.bel@gmail.com A linguagem UML UML (Unified Modeling Language) Linguagem de Modelagem Unificada É uma linguagem de modelagem

Leia mais

Hipermídia na Web. Hipermídia na Web HTML HTML. Limitações do HTML XHTML. Linguagens de autoria. debora@midiacom.uff.br

Hipermídia na Web. Hipermídia na Web HTML HTML. Limitações do HTML XHTML. Linguagens de autoria. debora@midiacom.uff.br Departamento de Ciência da Computação - UFF Hipermídia na Web Hipermídia na Web Linguagens de autoria Profa. Débora Christina Muchaluat Saade debora@midiacom.uff.br 1 2 HyperText Markup Language 2.0 (1994),

Leia mais

Provisão de QoS Inter e Intra Objetos de Mídia em Formatadores Adaptativos 1

Provisão de QoS Inter e Intra Objetos de Mídia em Formatadores Adaptativos 1 Provisão de QoS Inter e Intra Objetos de Mídia em Formatadores Adaptativos 1 Rogério Ferreira Rodrigues, Luiz Fernando Gomes Soares Laboratório TeleMídia Departamento de Informática PUC-Rio R. Marquês

Leia mais

PADRÃO DAISY 3 ou NORMA ANSI/NISO Z39.86-2002 SOLUÇÃO UNIVERSAL?

PADRÃO DAISY 3 ou NORMA ANSI/NISO Z39.86-2002 SOLUÇÃO UNIVERSAL? PADRÃO DAISY 3 ou NORMA ANSI/NISO Z39.86-2002 SOLUÇÃO UNIVERSAL? Ana Isabel B. B. Paraguay - Faculdade de Saúde Pública/USP - São Paulo Lêda Lúcia Spelta DATAPREV Rio de Janeiro - RJ Miriam Hitomi Simofusa

Leia mais

Guia de Consulta Rápida XHTML. Juliano Niederauer. Novatec Editora. www.novateceditora.com.br

Guia de Consulta Rápida XHTML. Juliano Niederauer. Novatec Editora. www.novateceditora.com.br Guia de Consulta Rápida XHTML Juliano Niederauer Novatec Editora www.novateceditora.com.br Guia de Consulta Rápida XHTML de Juliano Niederauer Copyright 2002 da Novatec Editora Ltda. Todos os direitos

Leia mais

Consumindo um Web Service através de uma Aplicação Comercial em Android. Alex Malmann Becker www.alex.porthal.com.br alex@porthal.com.

Consumindo um Web Service através de uma Aplicação Comercial em Android. Alex Malmann Becker www.alex.porthal.com.br alex@porthal.com. Consumindo um Web Service através de uma Aplicação Comercial em Android Alex Malmann Becker www.alex.porthal.com.br alex@porthal.com.br 08/2014 Agenda Introdução Conceitos Web Service Por que utilizar

Leia mais

Controle Hierárquico do Foco e de Eventos de Entrada em Aplicações Hipermídia

Controle Hierárquico do Foco e de Eventos de Entrada em Aplicações Hipermídia Controle Hierárquico do Foco e de Eventos de Entrada em Aplicações Hipermídia Marcio Ferreira Moreno, Luiz Fernando Gomes Soares Departamento de Informática PUC-Rio Rua Marquês de São Vicente, 225 Rio

Leia mais

AUTORIA GRÁFICA DE ESTRUTURAS DE DOCUMENTOS HIPERMÍDIA NO SISTEMA HYPERPROP

AUTORIA GRÁFICA DE ESTRUTURAS DE DOCUMENTOS HIPERMÍDIA NO SISTEMA HYPERPROP LUÍS ARTHUR FERREIRA PINTO AUTORIA GRÁFICA DE ESTRUTURAS DE DOCUMENTOS HIPERMÍDIA NO SISTEMA HYPERPROP DISSERTAÇÃO DE MESTRADO DEPARTAMENTO DE INFORMÁTICA Rio de Janeiro, 30 de Agosto de 2000 LUÍS ARTHUR

Leia mais

Home Page da Estação Automática do IF-SC

Home Page da Estação Automática do IF-SC Home Page da Estação Automática do IF-SC Ana Paula Jorge Fraga Email: anaa_fraga@hotmail.com Artur da Silva Querino E-mail: arturquerino@gmail.com Kathilça Lopes de Souza E-mail: kathii16@hotmail.com Rayana

Leia mais

XML XML. XML extensible Markup Language HTML. Motivação. W3C: World Wide Web Consortium XML 1.0. Mário Meireles Teixeira DEINF-UFMA

XML XML. XML extensible Markup Language HTML. Motivação. W3C: World Wide Web Consortium XML 1.0. Mário Meireles Teixeira DEINF-UFMA Mário Meireles Teixeira DEINF-UFMA Motivação extensible Markup Language W3C: World Wide Web Consortium http://www.w3.org 1.0 W3C Recommendation, 10/Fev/1998 (inicial) W3C Recommendation, 04/Fev/2004, 3

Leia mais

Sumário. HTML CSS JQuery Referências IHC AULA 6 5-09-2011 1

Sumário. HTML CSS JQuery Referências IHC AULA 6 5-09-2011 1 Sumário HTML CSS JQuery Referências IHC AULA 6 5-09-2011 1 Linguagem HTML HTML é a abreviação de HyperText Markup Language, que pode ser traduzido como Linguagem de Marcação de Hipertexto. Não é uma linguagem

Leia mais

Ementário das Disciplinas

Ementário das Disciplinas Ementário das Disciplinas As ementas das disciplinas estão agrupadas em semestres para uma melhor visualização da organização da matriz curricular. As referências bibliográficas serão especificadas no

Leia mais

XML e Banco de Dados de Internet. Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi

XML e Banco de Dados de Internet. Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi XML e Banco de Dados de Internet Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi Motivação Diversas aplicações Web utilizam Fontes de Dados (BD); Arquitetura Cliente-Servidor (2

Leia mais

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0 DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0 Índice 1 - Objetivo 2 - Descrição do ambiente 2.1. Tecnologias utilizadas 2.2. Estrutura de pastas 2.3. Bibliotecas já incluídas 3 - Características gerais 4 - Criando

Leia mais

Desenvolvimento de Aplicações Declarativas para TV Digital no Middleware Ginga com Objetos Imperativos NCLua

Desenvolvimento de Aplicações Declarativas para TV Digital no Middleware Ginga com Objetos Imperativos NCLua Capítulo 1 Desenvolvimento de Aplicações Declarativas para TV Digital no Middleware Ginga com Objetos Imperativos NCLua Francisco Sant Anna, Carlos de Salles Soares Neto, Roberto Gerson de Albuquerque

Leia mais

Unidade: O que é CSS? HTML e CSS? Boa aula!!!

Unidade: O que é CSS? HTML e CSS? Boa aula!!! Unidade: O que é CSS? HTML e CSS? Boa aula!!! Objetivo Construir: Padrões Web, Tableless e outros Como inserir o CSS nas páginas Sintaxe de utilização do CSS Tag DIV e tag SPAN Orientações Durante a explanação

Leia mais

Engenharia de Software I: Análise e Projeto de Software Usando UML

Engenharia de Software I: Análise e Projeto de Software Usando UML Engenharia de Software I: Análise e Projeto de Software Usando UML Capítulo 1 Processo de Desenvolvimento de Software Metodologia de Desenvolvimento de Software Uma metodologia é um conjunto de métodos,

Leia mais

TECNOLOGIAS WEB AULA 8 PROF. RAFAEL DIAS RIBEIRO @RIBEIRORD

TECNOLOGIAS WEB AULA 8 PROF. RAFAEL DIAS RIBEIRO @RIBEIRORD TECNOLOGIAS WEB AULA 8 PROF. RAFAEL DIAS RIBEIRO @RIBEIRORD Objetivos: Apresentar os principais problemas de acessibilidade na Internet. Apresentar as principais deficiências e as tecnologias de apoio.

Leia mais

Criação de Applets com o JBuilder Professor Sérgio Furgeri

Criação de Applets com o JBuilder Professor Sérgio Furgeri OBJETIVOS DA AULA: Apresentar o processo de criação em uma interface gráfica para a Internet; Fornecer subsídios para que o aluno possa compreender onde aplicar Applets; Demonstrar a criação de uma Applet

Leia mais

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider Ferramenta: Spider-CL Manual do Usuário Versão da Ferramenta: 1.1 www.ufpa.br/spider Histórico de Revisões Data Versão Descrição Autor 14/07/2009 1.0 15/07/2009 1.1 16/07/2009 1.2 20/05/2010 1.3 Preenchimento

Leia mais

Análise Comparativa dos Recursos e Diferenças das Tecnologias de Programação HTML5 e HTML4

Análise Comparativa dos Recursos e Diferenças das Tecnologias de Programação HTML5 e HTML4 Análise Comparativa dos Recursos e Diferenças das Tecnologias de Programação HTML5 e HTML4 Guilherme Miranda Martins 1, Késsia Rita da Costa Marchi 1 1 Universidade paranaense (Unipar) Paranavaí PR Brasil

Leia mais

Introdução à Tecnologia Web. Ferramentas e Tecnologias de Desenvolvimento Web. Profª MSc. Elizabete Munzlinger www.elizabete.com.

Introdução à Tecnologia Web. Ferramentas e Tecnologias de Desenvolvimento Web. Profª MSc. Elizabete Munzlinger www.elizabete.com. IntroduçãoàTecnologiaWeb FerramentaseTecnologiasde DesenvolvimentoWeb ProfªMSc.ElizabeteMunzlinger www.elizabete.com.br ProfªMSc.ElizabeteMunzlinger www.elizabete.com.br FerramentaseTecnologiasde DesenvolvimentoWeb

Leia mais

Professor: Paulo Macos Trentin paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira 4/6/2011 1

Professor: Paulo Macos Trentin paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira 4/6/2011 1 Professor: Paulo Macos Trentin paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira 4/6/2011 1 Do inglês, Cascading Style Sheet, ou folha de estilo em cascata. É uma linguagem

Leia mais

Um documento XML possui Unidade lógica - os elementos Usuário "inventa" as marcas através de DTDs

Um documento XML possui Unidade lógica - os elementos Usuário inventa as marcas através de DTDs XML Um documento XML possui Unidade lógica - os elementos Usuário "inventa" as marcas através de DTDs Unidade física - as entidades Armazenamento separado dos dados Como toda linguagem de marcação: XML

Leia mais

Conceitos de XBRL e Taxonomia

Conceitos de XBRL e Taxonomia COORDENAÇÃO-GERAL DE NORMAS DE CONTABILIDADE APLICADAS À FEDERAÇÃO CCONF NÚCLEO DE CONSOLIDAÇÃO E TRANSPARÊNCIA DAS CONTAS PÚBLICAS - NUCOP Conceitos de XBRL e Taxonomia REUNIÃO DO GRUPO TÉCNICOS DE SISTEMATIZAÇÃO

Leia mais

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -INTRODUÇÃO A JQUERY MOBILE. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -INTRODUÇÃO A JQUERY MOBILE. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -INTRODUÇÃO A JQUERY MOBILE Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Introdução Principais características Página dentro de página Transições

Leia mais

Definição de Processos de Workflow

Definição de Processos de Workflow Definição de Processos de Tiago Telecken Universidade Federal do Rio Grande do Sul telecken@inf.ufrgs.br Resumo Este artigo apresenta uma introdução a tecnologia de workflow informando noções básicas sobre

Leia mais

Editor Gráfico para Estrutura e Sincronismo de Documentos Multimídia

Editor Gráfico para Estrutura e Sincronismo de Documentos Multimídia Editor Gráfico para Estrutura e Sincronismo de Documentos Multimídia Fábio Rodrigues Costa 1 fcosta@inf.puc-rio.br Débora C. Muchaluat 1 debora@inf.puc-rio.br Luiz Fernando G. Soares 1 lfgs@inf.puc-rio.br

Leia mais

ANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação.

ANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação. ANEXO 11 O MATRIZ Para o desenvolvimento de sites, objeto deste edital, a empresa contratada obrigatoriamente utilizará o framework MATRIZ desenvolvido pela PROCERGS e disponibilizado no início do trabalho.

Leia mais

MÓDULO 1 - xhtml Básico

MÓDULO 1 - xhtml Básico MÓDULO 1 - xhtml Básico 1. Introdução xhtml significa Extensible Hypertext Markup Language (Linguagem de Marcação Hipertextual Extensível) e é a linguagem de descrição de documentos usada na World Wide

Leia mais

Minicurso introdutório de desenvolvimento para dispositivos Android. Cristiano Costa

Minicurso introdutório de desenvolvimento para dispositivos Android. Cristiano Costa Minicurso introdutório de desenvolvimento para dispositivos Android Cristiano Costa Desenvolvimento da interface estática Sobre mim Graduando em Engenharia Eletrônica - UNIFEI Trabalhou em desenvolvimento

Leia mais

Eclipse Process Framework

Eclipse Process Framework Ins>tuto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte Campus Natal- Central Diretoria Acadêmica de Gestão e Tecnologia da Informação Curso de Tecnologia em Análise e Desenvolvimento

Leia mais

UM EDITOR GRÁFICO PARA DEFINIÇÃO E EXIBIÇÃO DO SINCRONISMO DE DOCUMENTOS MULTIMÍDIA/HIPERMÍDIA

UM EDITOR GRÁFICO PARA DEFINIÇÃO E EXIBIÇÃO DO SINCRONISMO DE DOCUMENTOS MULTIMÍDIA/HIPERMÍDIA PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DA JANEIRO FÁBIO RODRIGUES COSTA UM EDITOR GRÁFICO PARA DEFINIÇÃO E EXIBIÇÃO DO SINCRONISMO DE DOCUMENTOS MULTIMÍDIA/HIPERMÍDIA DISSERTAÇÃO DE MESTRADO DEPARTAMENTO

Leia mais

ENGENHARIA DE SOFTWARE Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br

ENGENHARIA DE SOFTWARE Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br - MÓDULO 3 - MODELAGEM DE SISTEMAS ORIENTADA A OBJETOS COM UML 1. INTRODUÇÃO A partir de 1980, diversos métodos de desenvolvimento de sistemas surgiram para apoiar o paradigma orientado a objetos com uma

Leia mais

Anderson Corrêa Carraro 1, Fernando Alves Rodrigues 2, Silvio Francisco dos Santos 3

Anderson Corrêa Carraro 1, Fernando Alves Rodrigues 2, Silvio Francisco dos Santos 3 DESENVOLVIMENTO E IMPLANTAÇÃO DE UM SISTEMA INFORMATIZADO PARA O CONTROLE DE PROCESSOS DA QUALIDADE NA DIRETORIA DE METROLOGIA CIENTÍFICA E INDUSTRIAL DIMCI/INMETRO. Anderson Corrêa Carraro 1, Fernando

Leia mais

Ferramenta para conversão de interfaces gráficas desenvolvidas em Delphi para a biblioteca GTK+ Acadêmico: Josimar Zimermann

Ferramenta para conversão de interfaces gráficas desenvolvidas em Delphi para a biblioteca GTK+ Acadêmico: Josimar Zimermann Ferramenta para conversão de interfaces gráficas desenvolvidas em Delphi para a biblioteca GTK+ Acadêmico: Josimar Zimermann Orientadora: Joyce Martins Roteiro Introdução Objetivos Fundamentação teórica

Leia mais

Programação para Internet

Programação para Internet Programação para Internet Aula 09 Os direitos desta obra foram cedidos à Universidade Nove de Julho Este material é parte integrante da disciplina oferecida pela UNINOVE. O acesso às atividades, conteúdos

Leia mais

BCValidador VALIDAÇÃO DE ARQUIVOS XML RECEBIDOS PELO BANCO CENTRAL DO BRASIL

BCValidador VALIDAÇÃO DE ARQUIVOS XML RECEBIDOS PELO BANCO CENTRAL DO BRASIL BCValidador VALIDAÇÃO DE ARQUIVOS XML RECEBIDOS PELO BANCO CENTRAL DO BRASIL Deinf/Dine4 Versão 1.3 20/05/2013 Histórico de Revisão Data Versão Descrição Autor 06/11/2007 1.0 Elaboração da primeira versão

Leia mais

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) XML Origens. HTML Problemas

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) XML Origens. HTML Problemas Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) (extensible( Markup Language ) Origens (extensible Markup Language linguagem de marcação extensível) Criada em 1996 pelo W3C (World

Leia mais

Conectando Bancos de Dados Microsoft Access no BrOffice.org Base. fornecido pelo Projeto de Documentação do BrOffice.org

Conectando Bancos de Dados Microsoft Access no BrOffice.org Base. fornecido pelo Projeto de Documentação do BrOffice.org Conectando Bancos de Dados Microsoft Access no BrOffice.org Base fornecido pelo Projeto de Documentação do BrOffice.org Índice 1 Introdução...2 1.1 Versão... 2 1.2 Licenciamento...2 1.3 Mensagem do Projeto

Leia mais

GERÊNCIA DE DADOS SEMIESTRUTURADOS -XML. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza

GERÊNCIA DE DADOS SEMIESTRUTURADOS -XML. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza GERÊNCIA DE DADOS SEMIESTRUTURADOS -XML Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza O QUE É XML? Tecnologia desenvolvida pelo W3C http://www.w3c.org W3C: World Wide Web Consortium consórcio

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

XHTML 1.0 DTDs e Validação

XHTML 1.0 DTDs e Validação XHTML 1.0 DTDs e Validação PRnet/2012 Ferramentas para Web Design 1 HTML 4.0 X XHTML 1.0 Quais são os três principais componentes ou instrumentos mais utilizados na internet? PRnet/2012 Ferramentas para

Leia mais

2 Trabalhos Relacionados

2 Trabalhos Relacionados 2 Trabalhos Relacionados Os trabalhos relacionados podem ser classificados em três categorias: abordagens baseadas em metamodelos para a definição de formalismos, uso de metamodelos em editores de diagrama

Leia mais

WXDC: Uma Ferramenta para Imposição e Validação de Restrições de Integridade baseadas na Linguagem XDCL

WXDC: Uma Ferramenta para Imposição e Validação de Restrições de Integridade baseadas na Linguagem XDCL 232 - Encontro Anual de Tecnologia da Informação WXDC: Uma Ferramenta para Imposição e Validação de Restrições de Integridade baseadas na Linguagem XDCL Stevan D. Costa1, Alexandre T. Lazzaretti1, Anubis

Leia mais

Modelagem OO com UML. Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza

Modelagem OO com UML. Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza Modelagem OO com UML Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal do Espírito Santo Modelos Maneira

Leia mais

extensible Markup Language (XML) XML é uma linguagem de anotação. XML utiliza tags para descrever informação.

extensible Markup Language (XML) XML é uma linguagem de anotação. XML utiliza tags para descrever informação. extensible Markup Language (XML) XML é uma linguagem de anotação. XML utiliza tags para descrever informação. Em XML, os tags não são pré-definidos. Temos de definir os nossos tags. XML utiliza um Document

Leia mais

Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Felippe Scheidt IFPR Campus Foz do Iguaçu 2014/2

Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Felippe Scheidt IFPR Campus Foz do Iguaçu 2014/2 Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Felippe Scheidt IFPR Campus Foz do Iguaçu 2014/2 Objetivo. O objetivo da disciplina é conhecer os princípios da programação de

Leia mais

Unisant Anna Gestão Empresarial com ERP 2014 Modelagem de Sistemas - UML e MER

Unisant Anna Gestão Empresarial com ERP 2014 Modelagem de Sistemas - UML e MER Objetivo dessa aula é descrever as características e a simbologia dos diagramas UML e MER na modelagem de sistemas de informação de uma forma a permitir a comunicação entre técnicos e gestores. Modelagem

Leia mais

Nesta seção apresentamos protótipos que desenvolvemos com o objetivo de levantar os requesitos necessários para um sistema para apresentações

Nesta seção apresentamos protótipos que desenvolvemos com o objetivo de levantar os requesitos necessários para um sistema para apresentações 3 Protótipos Nesta seção apresentamos protótipos que desenvolvemos com o objetivo de levantar os requesitos necessários para um sistema para apresentações multimídia distribuídas. Os protótipos auxiliaram

Leia mais

Estendendo NCL: objetos NCLua como exibidores para novos tipos de mídia

Estendendo NCL: objetos NCLua como exibidores para novos tipos de mídia Estendendo NCL: objetos NCLua como exibidores para novos tipos de mídia José Geraldo de Sousa Junior 1 Roberto Gerson de Albuquerque Azevedo 1 1 Laboratório Telemídia Departamento de Informática PUC-Rio

Leia mais

Especificação de Sistemas de Tempo-Real utilizando Orientação a Objetos

Especificação de Sistemas de Tempo-Real utilizando Orientação a Objetos Especificação de Sistemas de Tempo-Real utilizando Orientação a Objetos Marco Aurélio Wehrmeister mawehrmeister@inf.ufrgs.br Roteiro Introdução Orientação a Objetos UML Real-Time UML Estudo de Caso: Automação

Leia mais

Desenvolvimento Web. Saymon Yury C. Silva Analista de Sistemas. http://www.saymonyury.com.br

Desenvolvimento Web. Saymon Yury C. Silva Analista de Sistemas. http://www.saymonyury.com.br Desenvolvimento Web Saymon Yury C. Silva Analista de Sistemas http://www.saymonyury.com.br Vantagens Informação em qualquer hora e lugar; Rápidos resultados; Portabilidade absoluta; Manutenção facilitada

Leia mais

Consultar Tabelas Administrativas

Consultar Tabelas Administrativas STN Coordenação-Geral de Sistemas e Tecnologia de Informação Sistema Integrado de Administração Financeira do Governo Federal SIAFI Secretaria do Tesouro Nacional STN Documentação de Serviços de Interoperabilidade

Leia mais

Serviços de Mídia Contínua Em Redes de Pacotes

Serviços de Mídia Contínua Em Redes de Pacotes Serviços de Mídia Contínua Em Redes de Pacotes Caracterização das Aplicações e Requisitos PUC -Rio Departamento de Informática Luiz Fernando Gomes Soares lfgs@inf.puc-rio.br Tópicos Aplicações de Banda

Leia mais

Sincronismo entre Fluxos de Mídia Contínua e Aplicações Multimídia em Redes por Difusão

Sincronismo entre Fluxos de Mídia Contínua e Aplicações Multimídia em Redes por Difusão Sincronismo entre Fluxos de Mídia Contínua e Aplicações Multimídia em Redes por Difusão Marcio Ferreira Moreno Romualdo Monteiro de Resende Costa Luiz Fernando Gomes Soares Departamento de Informática

Leia mais