The development of new XML-based document languages and required software can be based on identification, specification and composition of concerns. Each concern is described with a single XML vocabulary and interpreted by a software module. This approach requires solving compositional problems at level of XML syntax and software interpretation. The workshop aims at applying Aspect Oriented Programming techniques to cope with the problems of representation and composition of multiple concerns in XML.
Initially developed to solve the problems in the WWW area, XML today is more and more used as a technology for data representation and exchange. XML documents serve as containers for data that represents concepts in a certain domain. Many tasks in XML based applications require document processing by software modules that interpret document data. Today’s technologies for XML processing such as DOM, SAX and Data binding are more oriented to providing data access and are not capable to adequately represent the underlying domain specific concepts and behavior. Consequently, we need tools for specification of the document semantics to enable development of interpreters at application specific instead of document syntax level.
Moreover, we observe proliferation of XML vocabularies that allow representation and composition of multiple concerns in a single XML document. For example Synchronized Multimedia Integration Language (SMIL) Timing module provides syntax for specification of the timing concern. It can be combined with a stylesheet and document content. The interpretation produces animated document representation. This involves composition of three concerns at the level of document syntax and interpreting software.
Many problems related to composition of multiple concerns can be solved with Aspect Oriented Programming (AOP) techniques. AOP is an approach that provides language constructs for representation of design concerns as separate modules. It enables specification and composition of concerns that can not be modularized with the means of traditional object model.
The process of development of new document languages and required software can be based on identification, specification and composition of concerns. Modular representation and interpretation of concerns will promote reusability and evolvability in XML applications. AOP techniques are natural candidate solutions for the experienced problems.