Journal of the Brazilian Computer Society

, Volume 16, Issue 4, pp 229–245 | Cite as

The Nested Context Language reuse features

  • Carlos de Salles Soares Neto
  • Luiz Fernando Gomes Soares
  • Clarisse Sieckenius de Souza
Open Access
Original Paper


NCL, the standard declarative language of the Brazilian Terrestrial Digital TV System and ITU-T Recommendation for IPTV Services, provides a high level of reuse in the design of hypermedia applications. In this paper we detail how its design and conceptual model have succeeded in supporting reuse at a declarative level. NCL supports not only static but also running code reuse. It also allows for reuse inside applications, reuse between applications, and reuse of code spans stored in external libraries. For a specification language to promote reuse, however, it must have a number of usability merits. Aspects of NCL usability are thus analyzed with the Cognitive Dimensions of Notation framework.


Ginga-NCL DTV NCL SBTVD-T Middleware Code reuse Declarative programming Cognitive Dimensions of Notation 


  1. 1.
    ABNT NBR 15606-2:2007 (2009) Digital terrestrial television—Data coding and transmission specification for digital broadcasting—Part 2: Ginga-NCL for fixed and mobile receivers—XML application language for application coding. April 2009Google Scholar
  2. 2.
    Soares LFG, Rodrigues RF, Moreno MF (2007) Ginga-NCL: the declarative environment of the Brazilian digital TV system. J Braz Comput Soc 4(12):37–46CrossRefGoogle Scholar
  3. 3.
    Blackwell AF, Green TRG (2003) Notational systems—the cognitive dimensions of notations framework. In: Carroll JM (ed) HCI models, theories and frameworks: toward a multidisciplinary science. Morgan Kaufmann, San Francisco, pp 103–134CrossRefGoogle Scholar
  4. 4.
    Blackwell AF (2006) Ten years of cognitive dimensions in visual languages and computing. J Vis Lang Comput 17(4):285–287CrossRefGoogle Scholar
  5. 5.
    Muchaluat-Saade DC, Rodrigues RF, Soares LFG (2002) XConnector: extending XLink to provide multimedia synchronization. In: II ACM symposium on document engineering—DocEng2002, McLean, USAGoogle Scholar
  6. 6.
    Clements PC (1996) A survey of architecture description languages. In: 8th international workshop on software specifications and design. IEEE Comput Soc, WashingtonGoogle Scholar
  7. 7.
    Soares LFG, Rodrigues RF, Cerqueira RFG, Barbosa SDJ (2009) Variable and state handling in NCL. Multimed Tools Appl. ISSN/ISBN: 13807501Google Scholar
  8. 8.
    Moody D (2009) Theory development in visual language research: beyond the cognitive dimensions of notations. In: IEEE symp. visual languages and human-centric computing, 2009. IEEE conference proceedings series. IEEE Press, New York, pp 151–154. doi:10.1109/VLHCC.2009.5295275CrossRefGoogle Scholar
  9. 9.
    Blackwell AF, Whitley KN, Good J, Petre M (2002) Cognitive factors in programming with diagrams. Artif Intell Rev 15(1–2):95–114Google Scholar
  10. 10.
    Khazaei B, Triffitt E (2002) Applying cognitive dimensions to evaluate and improve the usability of Z formalism. In: SEKE ’02: Proceedings of the 14th international conference on software engineering and knowledge engineering, July 2002Google Scholar
  11. 11.
    Neumann C, Metoyer RA, Burnett M (2009) End-user strategy programming. J Vis Lang Comput 20(1):16–29. doi:10.1016/j.jvlc.2008.04.005. ISSN 1045-926XCrossRefGoogle Scholar
  12. 12.
    Guerra E, de Lara J, Malizia A, Diaz P (2009) Supporting user-oriented analysis for multi-view domain-specific visual languages. Inf Softw Technol 51(4):769–784. doi:10.1016/j.infsof.2008.09.005. ISSN 0950-5849CrossRefGoogle Scholar
  13. 13.
    Le-Phuoc D, Polleres A, Hauswirth M, Tummarello G, Morbidoni C (2009) Rapid prototyping of semantic mash-ups through semantic web pipes. In: Proceedings of the 18th international conference on World Wide Web, Madrid, Spain, April 20–24, 2009Google Scholar
  14. 14.
    Ennals R, Gay D (2007) User-friendly functional programming for web mashups. In: ICFP ’07: Proceedings of the 12th ACM SIGPLAN international conference on functional programming, October 2007Google Scholar
  15. 15.
    Kauhanen M, Biddle R (2007) Cognitive dimensions of a game scripting tool. In: Proceedings of the 2007 conference on future play, Toronto, Canada, November 14–17, 2007Google Scholar
  16. 16.
    Gelernter D, Jagganathan S (1990) Programming linguistics: a first course in the design and evolution of programming languages. MIT Press, CambridgeGoogle Scholar
  17. 17.
    Azevedo RGA, Lima BS, Soares Neto CS, Teixeira MM (2009) Uma abordagem para autoria textual de documentos hipermídia baseada no uso de visualização programática e navegação hipertextual. In: XV Simpósio Brasileiro de sistemas multimídia e Web—WebMedia 2009. Fortaleza, CE (available only in Portuguese)Google Scholar
  18. 18.
    Guimarães RL, Costa RMR, Soares LFG (2008) Composer: authoring tool for iTV programs. In: European interactive TV conference—EuroITV2008, Salzburg, AustriaGoogle Scholar
  19. 19.
    ITU-T Recommendation H.761 (2009) Nested Context Language (NCL) and Ginga-NCL for IPTV services. GenevaGoogle Scholar
  20. 20.
    Johnson RE (1997) Components, frameworks, patterns. In: Proceedings of the 1997 symposium on software reusability. ACM, New York, pp 10–17. ISBN: 0-89791-945-9CrossRefGoogle Scholar
  21. 21.
    Frakes WB, Fox CJ (1995) Sixteen questions about software reuse. Commun ACM 38(6):75-ff. ISSN: 0001-0782CrossRefGoogle Scholar
  22. 22.
    Lie HW, Bos B (1997) Cascading style sheets. World Wide Web J 2(1):75–123. Special Issue on advancing HTML: style and substance. ISSN: 1085-2301. O’Reilly & Associates, Inc.Google Scholar
  23. 23.
    W3C (2008) Scalable Vector Graphics (SVG): XML graphics for the Web.
  24. 24.
    W3C (2008) Synchronized Multimedia Integration Language (SMIL 3.0) W3C recommendation.
  25. 25.
    Felix MF, Haeusler EH, Soares LFG (2002) Validating hypermedia documents: a timed automata approach. In: Monografias em ciência da computação—PUC-Rio, Brasil, 2002Google Scholar
  26. 26.
    Soares Neto CS, Souza CS, Soares LFG (2008) Linguagens computacionais como interfaces: um estudo com nested context language. In: Simpósio Brasileiro de fatores humanos em sistemas computacionais, Porto Alegre, RS, 2008 (available only in Portuguese)Google Scholar

Copyright information

© The Brazilian Computer Society 2010

Authors and Affiliations

  • Carlos de Salles Soares Neto
    • 1
    • 2
  • Luiz Fernando Gomes Soares
    • 1
  • Clarisse Sieckenius de Souza
    • 1
  1. 1.Department of InformaticsPontifical Catholic University of Rio de JaneiroRio de JaneiroBrazil
  2. 2.Department of InformaticsFederal University of MaranhãoSão LuísBrazil

Personalised recommendations