Using Web Standards to Deliver Recorded Multimedia Presentations in an University Environment

Size: px
Start display at page:

Download "Using Web Standards to Deliver Recorded Multimedia Presentations in an University Environment"

Transcription

1 Using Web Standards to Deliver Recorded Multimedia Presentations in an University Environment Andrew Hall University of Kent Abstract Higher education institutions are placing increasing emphasis on providing teaching materials such as lecture slides in digital formats. The next phase will be to place entire lectures on-line as audio/video synchronised with slides. While there are proprietary software packages for this purpose available, this paper will explore the use of World Wide Web Consortium (W3C) web standards to provide an open alternative. A system that combines SMIL and SVG standards for delivery along with a new XML format named MAPL for creation and storage is proposed. This combination provides an open, device independent solution that also enables semantically rich descriptions of content. 1. Introduction As educational institutions strive to provide an increasing range of learning experiences to a growing audience, the effective use of technology becomes ever more important. From the use of data projectors, to networked services such as on-line journal archives, computer technology has enhanced every aspect of study in the 21 st century. The widespread availability of the Internet has allowed students unprecedented access to teaching material. This has been particularly important for parttime and distance learning students. While the Internet provides the basic infrastructure for connection, it is the World Wide Web (commonly referred to as the Web ) that has been the driving force behind advances in academic information exchange and delivery. Designed as a shared information space through which people (and machines) could communicate [1], the Web provides new opportunities for delivering quality educational content. It achieves this is through the use of open standards which ensure that anyone can have access regardless of platform. Teaching materials such as lecture slides, handouts and other documents can only provide part of the learning experience. Universities are now looking to provide even more through the introduction of video conferencing and on-demand digital lectures. Of particular interest are multimedia presentations that combine recorded audio or video of live lectures synchronised with digital slides. These presentations, which I will refer to as recorded presentations or recorded lectures offer new means of accessing learning resources. With such a system a student can move to a specific section of a lecture and get the slide content along with the relevant audio or video commentary. Lectures can be indexed and archived for quick retrieval of specific information. Many of the solutions available today for producing and accessing recorded presentations are based upon proprietary systems. This paper details an investigation into producing an open alternative based upon standard Web technologies and outlines a proposed solution and prototype implementation. 2. Aims The aim of this project was to investigate whether Web standard technologies defined by W3C can be sufficiently utilised to produce recorded presentations for use in a Higher Education environment. This paper identifies standard web technologies, and combinations thereof, that are suitable for this purpose, including existing work in this area. The comparison of the strengths and weaknesses of these technologies and approaches provide the basis for the proposed solution. The core goals for the project were: Enable the creation and delivery of a recorded presentation. Such a presentation should have a high degree of playback control, with the ability to jump to either arbitrary or specific points in the timeline. Accessibility features, such as those for users with visual/hearing impairments, should be built into the system. [2] Provide a semantically rich means of describing the presentation content. Offer different representations of the same presentation such as notes, outlines, static slides and the recorded session.

2 3. Background This chapter will examine the background of the two main threads that this research involves, namely the Web technologies and computer based presentation systems. Finally, it will take a look at existing work to combine the two W3C Web standards The Web is an Internet application built upon three main technologies. Universal Resource Identifiers (URIs) for addressing and identification, the HyperText Transfer Protocol (HTTP) for data communication and the HyperText Markup Language (HTML) for structured document exchange. The W3C was established to promote these open standards and develop new technologies. [3] As the range of uses for the Web has increased, there has been a need for the W3C to introduce new data formats. The W3C technology stack has grown from the three original core technologies into a comprehensive suite of data formats, languages and technologies. [4] For the purposes of this paper the focus will be on selected technologies in the Web Applications stack as well as the underlying technologies they are built on which can be seen in figure 1. Web Applications XHTML SVG SMIL XForms CSS WICD XML, Namespaces, Schemas, Xpath, DOM, XSLT Web Architectural Principles URI, HTTP Figure 1: The Web Applications portion of the W3C technology stack. The full stack can be found at [4] 3.2. XML technology Many of the languages standardised by the W3C are XML (extensible Markup Language) applications, that is, they use XML syntax to provide structure and meaning to the content.[5,6] Structured General Markup Language (SGML) was a popular syntax for describing structured data at the time of the Web s inception and was used as the basis for HTML. [1,7] As W3C began to develop HTML further and create new languages, they looked to adopt SGML as a base technology. However, SGML is a powerful and complex language that can be difficult to process.[1,5,6] A streamlined version was required that was easier to process and more appropriate for use on the web. In response to this, XML was developed. XML is based upon a subset of SGML. XML places additional constraints on SGML syntax, such as case sensitivity, enforcing the notion of well formed documents. Despite these constraints, XML provides users with all the features needed to create data formats which can be easily processed. [5,6] DTDs and XML Schema. While being wellformed is important for XML-based documents, there is also a need to verify that the documents are structured correctly and contain valid data. Traditionally, SGML and XML applications have been validated against Document Type Definitions (DTDs) which provide a reference for a parser as to how the document should be structured and which data structures are valid. There are however some limitations to the DTD syntax. For example, DTDs do not offer any specific data types such as strings, integers and floating point numbers. Any data that is not part of the document syntax is considered to be of CDATA (character data) or PCDATA (parsed character data) type. [5] With such loose typing, it is not possible for an author to impose desired restrictions on data, such as a decimal number format on currency. XML Schema is a new standard designed to replace DTDs. XML Schema offers a more descriptive and flexible approach to the problem than DTDs. [5,8] Using schemas, authors can now define a specific data type for use in elements as well as being able to create their own complex types. There is also more flexible control over cardinality and sequencing of child elements. Unlike DTDs, schemas have strong support for XML namespaces which is important when XML vocabularies are used in combination.[5] More details of this are in section 3.6. While XML Schemas are a W3C standard way of defining XML languages, there are other schema languages available, the two most prominent being Schematron [9] and RELAX NG [10] DOM, XPath, XSL Transforms. XML has an extensive set of tools that can be used to navigate and manipulate documents. Three of these are DOM, XPath and XSLT. The Document Object Model (DOM) is a standardised, language and platform independent way of modelling XML documents. [5,11] DOM models the document as a tree of node objects and provides an

3 interface to navigate the tree and manipulate the objects. [5,11] In web browsers this interface is often accessed through an ECMAscript based language such as JavaScript[12], but any language can be supported. For example, Java SE contains multiple classes for working with the W3C DOM. XPath is a language for addressing parts of an XML document.[5,13] It normally uses its own tree model of a document, but can also work with the DOM model. [14] At a basic level XPath can describe relational addressing such as parent or child nodes. More complex expressions can be created that use predicates and perform tests on the nodes in order to target particular occurrences within the document. XPath also provides a number of functions including arithmetic and string handling functions. When used in combination with XSL Transforms XPath can be a powerful tool. XSL Transforms (XSLT) essentially transform one XML document tree into another using a number of rules. The rules are defined in a XSLT document using XPath notation for identifying nodes. [5,15,16] An XSLT processor takes the source document and the XSLT document and outputs a new document based on the specified transforms. The source document and the output document do not have to be of the same type, XSLT can transform a tree into any other tree. XSLT is a Turing complete functional programming language which enables it to perform any transforms. [5,16] XSLT can also be extended with new functions or be used in conjunction with another language such as Java in order to make transforms easier to work with. [16] XSLT processing can be done at either the server or the client side, giving the option of serving the just the transformed data or the original and providing the user with the option of how to transform it. [5,16] 3.3. (X)HTML + CSS + DOM XHTML 1.0 is the HTML 4 recommendation reformulated as an XML application.[17] This enables greater integration with other languages. XHTML is not commonly used in isolation. Designed solely to convey the structure of a document, XHTML is not intended to provide presentation information such as layout and styling. These can be provided by using XHTML in conjunction with Cascading Style Sheets (CSS). CSS can specify various style attributes at different levels of granularity. [18,19] Advantages of this approach of separating content from presentation include re-usability, cleaner mark-up and the ability to present the same document in different ways. XHTML s utilisation of the DOM model is used by authors (commonly through the JavaScript language) to add interactivity to web pages. The powerful combination of XHTML+CSS+JavaScript can be used to create new and interesting applications within the browser. AJAX (Asynchronous JavaScript and XML) is a new programming model which harnesses this power to create powerful browser applications similar to those found on the desktop such as word-processors, and spreadsheets[20]. While for many years Microsoft s Internet Explorer has dominated the Web browser market, several other browsers have recently enjoyed an increase in market share, most notably Mozilla Firefox[21], Opera Software s Opera[22] and Apple Inc. s Safari[23] SMIL Synchronised Multimedia Integration Language (SMIL pronounced smile ) was developed by W3C in conjunction with the multimedia industry. It is designed to provide descriptions of complex multimedia documents using simple XML mark-up. [24,25] The current version of the SMIL specification is SMIL 2.1.[25] SMIL was one of the first W3C languages to be modularised. As of version 2.0 of the specification, similar functionality is grouped together into modules. [24,25] Modularisation is discussed in section 3.6. At the very core of SMIL are the <seq> and <par> elements. The <seq> element declares a group of media objects to be played sequentially. The <par> element encloses objects or instructions to be performed in parallel. These simple constructs provide synchronisation and timing control of the document and can be used to build complex instructions for multimedia playback. Layout control is provided by defining areas of the document display, known as regions within the document s <head> section and then targeting media at those regions within the document s <body> as shown in figure 2. <smil> <head> <layout> <region id= test top= 50px left= 100px width= 200px height= 200px /> </layout> </head> <body> <img region= test src= test.jpg /> </body> </smil> Figure 2: Defining and using a SMIL region Industry support for SMIL comes in two forms. The most common form is use with media players. There are several SMIL specific players available such as Ambulant[26], GRiNS[24,27] and X-Smiles.[28] Some general media players also provide SMIL playback.

4 Apple s QuickTime media framework supports SMIL 1.0 playback.[24,29] Real Networks have been strong supporters of the SMIL standard. Their RealPlayer product has full support for SMIL 2.0. In addition to this Real Networks also provide tools and services for the creation and delivery of SMIL.[24,30] The second form of support is a Microsoft developed technology named XHTML+SMIL (formally HTML+TIME) within its Internet Explorer web browser that enables users to mix SMIL with HTML documents to create synchronised multimedia presentations without the need for an external scripting language such as JavaScript.[24] This was originally a non-standard use of the technology, however in early drafts of SMIL 2.0 it was proposed as an official profile. This was removed before the recommendation was finalised, but remains as a W3C note for future discussion [31]. XHTML+SMIL is only supported in versions 5+ of Microsoft Internet Explorer.[24] 3.5. SVG Structured Vector Graphics (SVG) is a display description language defined as an XML application. [32,33] As a vector graphics format, it is resolution independent. The components of an SVG image are described as individual geometric shapes. This gives the advantage that the resultant image be easily transformed mathematically without the loss of information, as would happen in a raster image.[32] The most common example of this is the ability to scale up a vector image without blurring or artefacts appearing as shown in figure 3. SVG offers text support including the ability to render text along complex paths such as curves. SVG also allows for fonts to be embedded within the file, which enables the author to guarantee that the image will also render the same regardless of machine it is being displayed on. Because unlike raster images, the textual information remains unchanged within the image, it is possible to search for specified text.[32] In addition to this, groups of objects can have titles and descriptions associated with them. This is beneficial when a user wishes to extract the text for use in another format, or for their document to be indexed by a search engine such as Google. [32] SVG receives good application support. Browsers and other applications can make use of SVG though Adobe s SVG Viewer plug-in. [34] Many of the modern browsers have gained the ability to view SVG files natively. FireFox, Opera and Safari all have basic support for SVG built in, with support improving constantly. The Java platform has support for SVG through Apache Software Foundation s open source Batik package which contains tools and classes for generation, manipulation display and rasterising. [35] For creating images in SVG format there are specialist tools such as Inkscape[36]. Some commercial graphics applications such as Adobe Illustrator also have extensive SVG support.[34] SVG is not solely for static images. It can present complex animations using SMIL modules for declarative animation.[32,33] SVG supports interactivity using JavaScript.[32,33] With these features, SVG can be utilised to create web applications similar to those made with Adobe Flash Bringing web standards together Figure 3: Scaling up a vector and a raster image The disadvantage of vector formats is that they are unsuitable for complex images with many small variations and details such as photographs. [32] SVG Images can incorporate raster images such as JPEGs either by linking to external files or by embedding images within the file, encoded as PNG. As Web applications become more complex, there arises a need to combine the functionality of two or more technologies. This could be the need to embed an SVG image within the body of an HTML document or to take advantage of the declarative animation facilities of SMIL in an SVG animation. The common base of XML and the facilities provided by it such as namespaces[5] can help in these situations, however there may be occasions where a more flexible approach is required. By modularising individual web standards into smaller packages of similar functionality, we can extract the best parts of technologies and create more focused solutions for a particular problem. Modularisation also saves us from having to reinvent the wheel each time a similar problem arises in a particular technology. One of the best examples of how modularisation does this is the aforementioned use of SMIL modules in SVG.[24,37] The W3C are pushing modularisation in technologies that can benefit from it. For example, XHTML 1.1 will be a modular language.[37]

5 Combinations and subsets of language modules are known as profiles. Some profiles are officially recognised as W3C recommendations. A common use for profiles is in bringing web technologies to mobile devices. Such devices have different processing and display requirements and different methods of interacting with a user than desktop machines. SVG for example, has two mobile profiles available, SVG Tiny and SVG Basic which are designed for mobile phones and PDAs respectively. WICD (Web Integration Compound Document) is a draft proposal for combining XHTML, CSS and SVG into a single document, both on the desktop and on mobile devices.[38,39] Its is part of a wider work by the W3C on combining XML languages known as CDRF (Compound Document by Reference Framework) and gives an insight into one direction web languages are going in Presentation software Commercial presentation software has been available for over 20 years. Originally, packages such as Harvard Graphics were used only for the production of slides which would be printed onto transparencies for use on overhead projectors. As processing and display technologies improved, the software gradually gained delivery control and animation abilities. Microsoft PowerPoint, a component of the Microsoft Office application suite, is the market leader in this field and has become synonymous with computer presentations. PowerPoint offers a wide variety of animations and effects along with timing control and some modest multimedia capabilities. Older versions of PowerPoint have used the propriety.ppt binary format to store presentations, while the recently released PowerPoint 2007 utilises the XML based PresentationML format. [40] A popular open-source alternative is OpenOffice.org Impress[41] which is largely compatible with PowerPoint files and uses the OASIS OpenDocument XML format.[42] With the recent interest in recording presentations, there has been the introduction of several software packages to enable this, including Microsoft s own Producer software. Due to the popularity of PowerPoint, many of these are based around it, using its APIs to manipulate and extract slides. An example product being AuthorPOINT by authorgen.[43] There are two main categories of recording software. Those which allow the user to capture a presentation live, and those which require the presentation to be edited together with the slides in a post-production process. Some products allow for both methods of production to be used. The Cornell Lecture Browser system developed by Mukhopadyay and Smith[44] is designed to capture live presentations and then automatically edit them afterwards. This system uses multiple cameras, including one with motion tracking hardware to track the presenter. A combination of captured timing information and image recognition techniques are used to synchronise high resolution images of slides with the video of the lecture Web-based presentation software Both PowerPoint and Impress have facilities for exporting presentations to Web standard formats. PowerPoint can export to a series of HTML pages. Impress has more control of the output and can produce pages that automatically advance through the slides using the depreciated META refresh mechanism. In both cases, HTML is only used to provide navigation, the actual slide contents are exported to image files. PowerPoint uses the GIF file format which is limited to a palette of 256 colours and produces poor quality results with anything other than very basic slides. Impress offers the option of GIF or JPEG formats, and can produce some limited textual output in addition to the images. In addition to this, Impress can output individual slides as SVG images with embedded graphics and fonts, but cannot export the whole presentation at once. Many current SVG viewers cannot view this output. This is adequate for simple sharing, but for actual presentation, it is limiting. There are systems that are dedicated to working with presentations in Web standard formats available. Systems for Web-based presentation can be categorised as being either HTML based, SVG based, or SMIL based HTML Based. HTML has long been used to place presentation slides onto the web. For many years W3C members have been using the SlideMaker perl script to produce presentations. The slides themselves were simple static web-pages with links to the previous and next pages in the presentation.[45] This did not give the same experience that you get with traditional presentation system as navigation encroached upon the display. Opera Software developed a system for their Opera web browser, known as Opera Show, that could display a single, specially designed XHTML page as a series of separate slides in full screen mode. The viewer could then navigate through the presentation with the keyboard just like a PowerPoint presentation. The drawback of this system was that it only worked with the Opera browser.[22] Opera Show inspired others to create an open version that would work on any browser. S5 by Eric Meyer[46] and Slidy by Dave Raggett[47,48] are the two most prominent systems. Both systems utilise special CSS stylesheets for display and JavaScript for controlling navigation. This approach uses an XHTML microformat[46,48] to define the slides. Each slide is wrapped in a <div> element that has a class attribute defined as slide. The JavaScript and CSS

6 control which <div> content is displayed at anyone time. This approach is not limited to producing static slides. Bulleted lists can be incrementally displayed if defined as being of the incremental class, and simple step-by-step animation of images can be produced in a similar manner. [47,48] As all of the layout and styling for Slidy and S5 slides is defined in a CSS stylesheet, it is possible to change the look of the presentation easily without needing to alter the content in any way. This property can also be exploited to generate alternative views of the presentation such as hand-outs, notes and outlines simply by changing the stylesheet. Timing and synchronisation can be an issue. XHTML is not designed with media playback in mind. The DOM model does not extend into media objects and so other mechanisms are required to synchronise slides with media. Both the Cornell Lecture Browser and the WSML system by Liu et al[49] can create synchronised, XHTML based output, although Cornell Lecture browser uses images for actual content. With the WSML system there are issues with playback. The main problem being that the system is only usable on Microsoft Windows platforms. Work has begun recently to add audio synchronisation capability to Slidy.[48] This will be achieved through a browser plug-in based on an open audio codec. The obvious drawback of this approach is that a plug-in must be downloaded before a user can use synchronised playback SVG Based. The strong display functionality of SVG combined with its animation and interactivity capabilities make it a suitable tool for delivering presentation slides, however there has been few systems using it for this particular application. Sun Microsystems used to offer an SVG slide toolkit from their web site, but this appears to have been discontinued.[50] The W3C Combined Slidemaker is a set of XSL Transforms that can be used to create slides from specially constructed XML documents. One of the formats available for output is SVG. [51] Dr Piez of Mulberry Technologies has been working with using XML to generate presentations in various formats including SVG.[52] Unlike many other presentation solutions, the proposed system was designed to abandon the common slideshow model in favour of an interactive learning resource that can be used by the presenter as a visual aid without dictating the structure of the presentation SMIL Based. SMIL is most commonly applied to the problem of recording presentations and there has been a lot of work in this area. Real Networks offer a range of solutions. The most basic solution being Real slideshow[24,53], a simple authoring application that can produce SMIL presentations consisting of still images synchronised with an audio track. Unfortunately the resulting SMIL presentations use Real s proprietary RealPix extensions and therefore can only be used with RealPlayer. William Moss of Clemson University describes a workflow for creating such presentations using PowerPoint to create the slides.[53] These presentations can then be streamed over the Internet from a web server. There have been several research projects examining the use of SMIL for recorded lectures. Little and Hunter designed a system based upon Cornell s Lecture Browser for capturing lectures and archiving them.[54] In this approach PowerPoint slides are converted to images and are synchronised with video in a SMIL document which is placed into an archive until it is retrieved for delivery. The main extension this system makes to the Cornell browser is the addition of metadata. This metadata is created from a combination of user input and information generated from the slides. This metadata is stored in an XML format separately and can be used for archive searches. Kaijiri et al produced a similar system with an emphasis on capturing the presentation live and streaming the results.[55] This system was built around Microsoft PowerPoint and Real Networks RealProducer A Different Approach. An earlier system produced at CERN by Bousdira et al. is the WLAP. [56] Originally the system was designed to produce similar output to that of the Cornell Lecture Browser, using an embedded Realplayer object and images of the slides within an HTML document. As one of the main concerns of this project was creating an archive of the lectures, the group found that this approach was limiting future expansion. In response to this, they devised the Lecture Object format which describes a lecture and its assets as an XML file similar in structure to SMIL. Using this format makes the stored lecture independent of how it is created and how it is shown to the end user. 4. Problem Analysis This chapter will examine the requirements and define the scope of the problem. I will also analyse the available technologies and the appropriate existing solutions to the problem discussed in the previous chapter Requirements and Scope In order to gain an understanding of what is required in a university learning environment, a selection of PowerPoint (and other format) presentations were examined from the 2005/ nd Year Computer Science course here at the University of Kent. These slides provided an insight into how the currently available technology was being used. Surprisingly, a large number of presentations sampled used only static slides. The most common

7 animation effect used for slide content was the basic appear effect, which as the name suggests makes the content simply appear when required. The use of this ranged from making every individual bullet point appear separately to only being used in special cases such as to reveal an answer. Simple step-through animation was often used in preference to built in animation features. Labelling, external links and code samples were common, although the latter two may be more indicative of this type of course than university presentations in general. While some presentations contained placeholders or links, there was little indication of when focus of the lecture moved away from PowerPoint for live demonstrations. This sample does not give a complete picture of how presentation software is currently used, or how it might be used. For example the simple nature of the slides could be due to problems or limitations of the authoring environment. However, this does give a good base for specifying minimal functionality that can be used to produce effective lectures. For this project the focus is on synchronising slides with audio. As the Cornell Lecture Browser and the work by Little and Hunter show, handling video adds additional complexity and overheads such as increased storage and processing requirements.[44,54] As Moss argues, the use of audio in recorded presentations can be just as effective as video.[53] Another constraint is that this project does not consider streaming. Again, this adds an additional layer of complexity. Solutions with a heavy emphasis on streaming such as Kaijiri et al, tend to use proprietary software such as RealVideo.[55] Using audio with a sensible compression scheme and bit-rate makes downloading feasible. Also, in many instances web user agents allow playback while media is still being downloaded without any extra effort on the part of the author Analysis of Web Technology Solutions The different Web standard technologies and the solutions based upon then have different strengths and weaknesses. The following is a summary of these. XHTML s main advantage is that it is ubiquitous, it is by far the most common format for data exchange on the Web. XHTML can provide good structure and when used with a microformat such as Slidy, some semantics. Another advantage of XHTML is that its content can be viewed in different ways simply by changing the stylesheet associated with it. Due to the way the DOM model works, XHTML has poor media control and synchronisation capabilities, and must rely on plug-ins for this.[11,48] Overall, as Slidy and S5 have shown, XHTML can be a good format for delivering slides at a lecture, or sharing slide over the internet. The main strength of SVG is that authors can guarantee that images will display the same way on different systems due to its resolution independent nature and its ability to have fonts and images embedded within the markup. The declarative animation and built in interactive features that it provides offer many interesting opportunities as Piez has shown.[52] The fact that unlike other image formats it preserves textual information and can have metadata descriptions of content embedded within it is a great advantage. Due to the way that SVG images are built from primitive shapes, more complex and detailed images can be difficult to author. The current SVG standard does not have media support, which makes it unsuitable for recorded lectures. The next revision of the language, which is currently in draft, will have some media support, but it will still lack the powerful synchronisation control of SMIL. SMIL, with its powerful media and synchronisation control, provides a good solution for recorded slides. There has been a lot of work in leveraging SMIL for this purpose. There are limitations to SMIL, such as the layout mechanism. Using predefined areas lacks the flexibility for displaying slide content such as bullet points. All the possible positions of objects within the presentation would have to be defined in the header, which is an unworkable situation. In addition to this SMIL s text support is very poor, with no text formatting available. All the previous systems for SMIL based presentations have used images such as GIFs or JPEGs to store and display the slides. These issues make SMIL unsuitable for use on its own, but in combination with a good display technology it offers a very compelling solution. In existing systems metadata is added in an additional process that may require user interaction such as manual data entry. The metadata tends not to be adequate for any purpose other than indexing and archiving. None of the solutions target the use of metadata for providing accessibility. 5. Architecture It is clear that there is no one standard technology that can provide a complete solution to the problem. Different output formats are best suited to different uses. Slidy provide an excellent way of delivering slides, but SMIL offers a complete solution for media synchronisation. The WLAP Lecture Object approach of separating storage format from output format is the most logical to take in this case. The metadata associated with the presentation should be extensive and unlike previous systems, tightly bound with the content. To satisfy these needs I propose a new XML format called MAPL (Multimedia Academic Presentation Language) to be used for storage.

8 MAPL Application Text Editor Other XML Format Converter / XSLT application could be a presentation program that takes an existing MAPL document, allows the user to present it, captures that presentation then adds the captured media and timing information to the MAPL file. At the other end we have to convert the MAPL file into a web standard format for display. Again this can be done either with specialised software or utilising XSL Transforms. Similar transformations have been used in other systems such as W3Cs combined XSLT Slidemaker.[51] 5.1. SMIL + SVG HTML Slidy MAPL Converter / XSLT SMIL + SVG Figure 4: Solution architecture using MAPL As shown in figure 4, MAPL is used to tie the various technologies and approaches together. MAPL documents contain all of the information required to generate both the slides themselves and recorded presentations Creating and converting MAPL documents This architecture offers multiple means of producing the MAPL files. The most basic being hand coding with a text editor. As will be seen in the next section, MAPL has been designed to be very easy to author, and capable of creating presentations with the minimum of coding. The second method of generating MAPL documents is to convert from another format using either a conversion program or, if the source format is XML based, an XSL Transform. For example, an XSL Transform could be written that transforms an OpenDocument presentation to MAPL. A benefit of this is that it could be done remotely so a user wouldn t need the conversion software on their own machine. The final method is to have applications that can natively handle the MAPL format. One such Using SVG for images within SMIL documents enables us to utilise the strengths of both technologies for recorded presentations. Using SVG in place of raster images gives a degree of device independence and the ability to search for text without the original MAPL being present. The one issue with this combination is that there currently is no workable support in software. X-Smiles has the ability to use both technologies together, however the libraries that it uses for SVG display are outdated, and as such incompatible with most SVG files. Realplayer should offer a compelling solution when used together with Adobe s SVG viewer. Both companies worked to ensure the combination worked well, and even agreed to distribute the two products together.[59] At this point in time, the current version of RealPlayer no longer works with the SVG viewer, although Real state that it should. This should be resolved in a future update. For this reason, the SVG created for this project has been converted to PNG/JPEG when used with Realplayer. 6. MAPL The MAPL Language is specifically designed to describe presentations. There were four main goals in the creation of the language. The first is to provide improved semantic descriptions of content over current web presentation solutions. The second was to have accessibility built into the core of the language. The third is that language should also be easy to author and understand in the same was that HTML is. Lastly, the language should where appropriate re-use technologies and ideas to avoid re-inventing the wheel and to ensure that the best tried and tested tool is always used to do the job, for example using existing metadata descriptions from other languages MAPL Structure A presentation is essentially structured into two main parts similar to W3C XML based languages. These are the <head> section and the <body> section.

9 The <head> section contains metadata about the presentation. Many of the metadata elements in MAPL are taken from the Dublin Core metadata specification[60] and used under the dc: namespace. These include information about the author, the subject of the presentation, the title of the presentation and any of the intellectual property rights regarding the contents of the presentation. In addition to this there are several MAPL specific metadata elements that provide information about the presenter and the context of the presentation. The <head> section also contains the two master sections. These provide templates for the slides that allows the user to define certain presentational attributes once and reuse them throughout the presentation. The two types of master are the <mastertitle> and <masterslide>. These provide the templates for <titleslide>s and <slides> respectively. The <body> section is where the actual presentation itself is described. This section can contain one of the three types of slide available in MAPL. Optionally these slides can be contained within <section> elements to enable an author to break up a presentation into logical segments. The <body> audiotrack attribute specifies the audio file to which the slides are synchronised Slides The types of slides available in MAPL are <slide>, <titleslide>, and <demo>. The <slide> is the most commonly used, it provides a display area where authors can place presentation information such as text, bullet points, diagrams, charts, and tables. Each <slide> has an optional <title> and can contain most of the slide objects described in the next section. The default values of <slide>s and their child objects are taken from the <masterslide> template. These can be overridden in the slide itself or by individual slide objects. The <titleslide> is similar to a <slide> but differs in that it takes its defaults from <mastertitle> and can only utilise <title>, <subtitle>, <textbox>, and <canvas> objects. Titles are mandatory for titleslides. There are two main reasons for the distinction between <slide> and <titleslide> types. The first is that the titles in <titleslides> are generally of sections and the presentation itself. This could be utilised in activities such as indexing and searching. The second to allow the user to set up a separate master template for these slides as they may wish to have different colours, backgrounds and fonts for them. Also, the layout of the <titleslide> tends to be different. The final type of slide is the <demo> type. It is more of a pseudo-slide. A <demo> slide signifies when the focus of the presentation has been taken away from the slides themselves, for example during a live demonstration, or perhaps a live interaction with the audience. The <demo> slide type has several functions within a presentation. It could be used as a placeholder to remind the presenter of the demonstration at that point in the presentation or simply to have something on screen while the demonstration is taking place. Another use involves recorded presentations. The can contain another slide (typically one already shown) embedded within it and also video footage of the demonstration. The presenter in the recorded video can then reference points or diagrams in the embedded slide. This enables the user to be able to access the information concurrently without the need to go back to a previous slide to see the reference. The <demo> slide type offers an effective learning tool that is not available in other lecture recording packages and that takes advantage of the rich media features offered by the proposed architecture Slide Objects There are several types of slide object at an authors disposal. These can be placed into two categories, the displayed type which are displayed as part of the slide itself and informational type which provide additional in content. The main displayed objects are Title, Textbox, Canvas, Label, Media, and Table. There are also subtitle and embedded slide object which are exclusive to titleslides and demos respectively. The textbox object is one of the most useful in MAPL. It defines a rectangular area for text to be placed into. The text can be free flowing text, bulleted lists or a mixture of the two. This text can contain a wide range of formatting elements. Many of these elements have been adapted from other languages, primarily HTML. The title object defines the title of the slide. Titles are objects in their own right that are similar to textbox object. Titles can be positioned anywhere on the slide and contain a number of formatting elements within them, but are otherwise limited compared to textboxes. For example, they cannot contain lists or line breaks. A feature of titles is that the text within them can be set to automatically resize to fit the defined area. The canvas objects defines an area for an image or diagram to be placed into. Various types of file are supported such as JPEG and SVG. SVG is preferred where possible as it is resolution independent. Canvas objects can contain simple looped animations. More complex animations that play for a finite time or require user interaction are placed in media objects. Media objects need to have start and finish times declared. Examples of types of data that might be placed into a media object are video, or sound clips. Label objects are specialised textboxes that have the ability to point to other objects within a slide. This can be visualised as a line, with an arrowhead from the label textbox to the object being pointed at. Aside from this visualisation, the label element also

10 has two attributes that describe it s relationship with another object, the targetobject attribute which identifies the object through its unique id attribute, and the targetdesc attribute which gives a description of what part of the object is being pointed to. Several different labels can point to different parts of the same object. Table objects are used to describe tabular information. In the current version tables have cells contained by <td> tags, and organised into rows with<tr> tags. Future versions of MAPL could utilise the XHTML 1.1 Table module[37] directly. Using a tried and tested model would benefit MAPL, and present a familiar language construct to those with HTML experience. The informational objects are notes and captions. These are not normally displayed as part of the slides, but may be presented in other ways. The <note> element contains a note about the slide. This note may be displayed handouts or in a script view of the presentation used by the presenter and can be placed anywhere within the slide. The <caption> element provides a mechanism for closed captioning. The <caption> encloses the actual spoken quote, while the start, end and speaker attributes provide timing and naming information. Any number of these two objects can be placed into the slide Layout Layout control is clearly an important aspect of an language that describes displays. MAPL provides two metrics for describing positioning and sizing of slide objects. Relative positioning and sizing is declared as a percentage of either the width or height of the presentation, depending upon which dimension value is in. Absolute positioning is measured in pixels. Relative positioning is preferred where possible as it enables resolution independence of the display. There are case though such as when working with raster images where the absolute size is easier to work with. MAPL uses the convention that the origin of objects is defined as 0,0 and placed in the top left corner of the object s rectangular area. One of the goals of MAPL s layout scheme was to make the user handle low-level layout as little as possible. The default layout of MAPL slides is similar to the defaults used by PowerPoint, enabling the user to quickly create slides without having to define and positioning and size of objects. This is taken further by the content area construct in <slide> objects. The content area provides a way of quickly defining position and sizes of slide objects. By default, the content area is set to 85% of the slide width, and 60% of the slide height, and positioned just below the title s default position. This can be overridden by defining an area in the masterslide. All slide objects within a MAPL document that do not have positioning and sizing attributes defines will use the content area s position, height and width. This enables the author of a presentation to define a slide with just a block of text, list or image without the need to define any layout attributes. As slides that have only one textbox, usually containing a list were found to be common in the sample, this shortcut becomes very useful, not only in saving time, but also in making MAPL documents readable. This idea has been expanded to allow for more complex layouts of multiple objects to be created. Examining the templates for new slides in PowerPoint and Impress revealed that many are based around splitting the content area into quadrants, as shown in figure 5. Figure 5: A selection of slide templates in Microsoft PowerPoint 2004 on Mac OS X In MAPL the defined content area is split into four equal quadrants. These quadrants are separated by vertical and horizontal gaps defined in the masterslide. The top two quadrants are said to be in the north Y position and the bottom two in the south. Likewise the two left-most quadrants are said to be in the west X position and the two right-most in the east. This scheme enables an author to produce many of the most common layouts without having to calculate positions or sizes. In addition to this, there are two named sizes that can be used for width and height. The name full is used when the author requires the width of height to be equal to that of the whole content area, whereas half is used to specify that the width or height is equal to that of just one quadrant. Figure 6 gives a graphical example of how this works. X: west Y: north Width: half Height: full X: east Y: north Width: half Height: half X: east Y: south Width: half Height: half Figure 6: Positioning and sizing within the content area. The author only has to define layout attributes that differ from the defaults and so the layout of figure 6 could be described in MAPL as:

11 <slide> <textbox width= half /> <textbox x= east width= half height= half /> <textbox x= east y= south width= half height= half /> </slide> Ordering of slide objects along the z-axis is determined by the order of the objects within the document. As the objects are rendered in the order they appear, the first declared object is the backmost, and the last declared is foremost Temporal control MAPL has been designed with a simple model for timing control in recorded presentations. The model for control assumes that presentations are linear and presents the slides in the order that they appear within the document. Each slide can be set to display for a specified duration, or be displayed until the user manually moves to the next through a mouse click or key press. This is the default behaviour. Within slides themselves the model works slightly differently. All slide objects (including demos and titleslides) are rendered in the order they appear in the document. Normally, this would not make any difference as the display of the entire slide appears instantaneous to the user, but the author can change this. There is an additional slide object for temporal control, the <pause> element, that denotes that the rendering of the slide should suspend at this point for a specific amount of time. Like slides, this duration can also be set to be manual, requiring user interaction to end the pause. There is no limit to where pauses can be placed within the slide or how many pauses it can have. This model relieves presentation authors from having to specify individual timings for groups of objects that appear at once. It also enforces a good document structure, by ensuring that slide objects in recorded presentations are always declared in the order they are meant to be read. The main drawbacks of this approach are that it gives no option to move backward and that it can become rather verbose when many components are revealed gradually one after the other. The first problem could be overcome in software implementations, for example, duplicating a slide when the user goes back. The model also assumes that any audio track specified in the <body> element is playing continuously, although demo slides have a attribute that when set will pause the audio for the duration of the slide. 7. Montreal Montreal is a Java tool for converting MAPL documents into synchronised SMIL+SVG presentations. Montreal works with MAPL documents both with and without audio recordings and timing information. Currently, Montreal only partially implements the MAPL specification, providing enough functionality to produce basic presentations. The limitations of Montreal are as follows: It can only show whole slides at a time. Support for timed fragments is not implemented. It can only uses slides of <slide> type. Titleslides and demos are not implemented. Only canvas and textbox objects are implemented. Pixels and Point sizes are the only metrics available for layout. Relative layout is not available. Text formatting elements such as <b> and <code> are not implemented. All formatting applies for the entire object. Flowing text and structured lists cannot be mixed in the same textbox. Despite these limitations Montreal can still produce good quality presentations Processing MAPL For processing the MAPL document, Montreal utilises the SAX XML parser API in Java[57,58]. SAX is a simple, fast, memory efficient way of working with XML documents. Unlike other systems such as DOM which build a tree of the XML document in memory and then require the user to navigate the tree, SAX simply scans the file from start to finish creating events when it reaches a specific type of entity. The events similar to those used by AWT and Swing, and handled in the same way. Because there is no structural information produced SAX, Montreal s processing code needs to keep track of depth when nested elements is used within a document. This is achieved using a simple stack. Despite the simple processing model of SAX, it still offers XML syntax checking and validation against a DTD or XML schema. Montreal models a MAPL document as an object tree, the root of which is a MAPLPresentation object. Objects may contain collections of others, for example, slides that contain canvas and textbox objects. The inheritance of values within MAPL is handled through a simple mechanism. When the parser reaches start tag of an element that requires a new object to be created, a method is called that creates the new object initialised with the inherited values. Immediately after this, the specified attributes of the element are processed and overwrite the inherited values Rendering Slides

Structured documents

Structured documents Structured documents An overview of XML Structured documents Michael Houghton 15/11/2000 Unstructured documents Broadly speaking, text and multimedia document formats can be structured or unstructured.

More information

Delivery Options: Attend face-to-face in the classroom or remote-live attendance.

Delivery Options: Attend face-to-face in the classroom or remote-live attendance. XML Programming Duration: 5 Days Price: $2795 *California residents and government employees call for pricing. Discounts: We offer multiple discount options. Click here for more info. Delivery Options:

More information

Delivery Options: Attend face-to-face in the classroom or via remote-live attendance.

Delivery Options: Attend face-to-face in the classroom or via remote-live attendance. XML Programming Duration: 5 Days US Price: $2795 UK Price: 1,995 *Prices are subject to VAT CA Price: CDN$3,275 *Prices are subject to GST/HST Delivery Options: Attend face-to-face in the classroom or

More information

CTI Higher Certificate in Information Systems (Internet Development)

CTI Higher Certificate in Information Systems (Internet Development) CTI Higher Certificate in Information Systems (Internet Development) Module Descriptions 2015 1 Higher Certificate in Information Systems (Internet Development) (1 year full-time, 2½ years part-time) Computer

More information

CTI Short Learning Programme in Internet Development Specialist

CTI Short Learning Programme in Internet Development Specialist CTI Short Learning Programme in Internet Development Specialist Module Descriptions 2015 1 Short Learning Programme in Internet Development Specialist (10 months full-time, 25 months part-time) Computer

More information

Mobile MOUSe WEB SITE DESIGN ONLINE COURSE OUTLINE

Mobile MOUSe WEB SITE DESIGN ONLINE COURSE OUTLINE Mobile MOUSe WEB SITE DESIGN ONLINE COURSE OUTLINE COURSE TITLE WEB SITE DESIGN COURSE DURATION 19 Hours of Interactive Training COURSE OVERVIEW In this 7 session course Debbie will take you through the

More information

Sustainable File Formats for Electronic Records A Guide for Government Agencies

Sustainable File Formats for Electronic Records A Guide for Government Agencies Sustainable File Formats for Electronic Records A Guide for Government Agencies Electronic records are produced and kept in a wide variety of file formats, often dictated by the type of software used to

More information

Introduction to XML. Asst. Prof. Dr. Kanda Runapongsa Saikaew Dept. of Computer Engineering Khon Kaen University

Introduction to XML. Asst. Prof. Dr. Kanda Runapongsa Saikaew Dept. of Computer Engineering Khon Kaen University Introduction to XML Asst. Prof. Dr. Kanda Runapongsa Saikaew Dept. of Computer Engineering Khon Kaen University http://gear.kku.ac.th/~krunapon/xmlws 1 Topics p What is XML? p Why XML? p Where does XML

More information

Embracing HTML5 CSS </> JS javascript AJAX. A Piece of the Document Viewing Puzzle

Embracing HTML5 CSS </> JS javascript AJAX. A Piece of the Document Viewing Puzzle Embracing HTML5 AJAX CSS JS javascript A Piece of the Document Viewing Puzzle Embracing HTML5: A Piece of the Document Viewing Puzzle For businesses and organizations across the globe, being able to

More information

Introduction to XML 3/14/12. Introduction to XML

Introduction to XML 3/14/12. Introduction to XML Introduction to XML Asst. Prof. Dr. Kanda Runapongsa Saikaew Dept. of Computer Engineering Khon Kaen University http://gear.kku.ac.th/~krunapon/xmlws 1 Topics p What is XML? p Why XML? p Where does XML

More information

HTML is a mark-up language, in that it specifies the roles the different parts of the document are to play.

HTML is a mark-up language, in that it specifies the roles the different parts of the document are to play. Introduction to HTML (5) HTML is a mark-up language, in that it specifies the roles the different parts of the document are to play. For example you may specify which section of a document is a top level

More information

A tutorial report for SENG Agent Based Software Engineering. Course Instructor: Dr. Behrouz H. Far. XML Tutorial.

A tutorial report for SENG Agent Based Software Engineering. Course Instructor: Dr. Behrouz H. Far. XML Tutorial. A tutorial report for SENG 609.22 Agent Based Software Engineering Course Instructor: Dr. Behrouz H. Far XML Tutorial Yanan Zhang Department of Electrical and Computer Engineering University of Calgary

More information

Web Standards Mastering HTML5, CSS3, and XML

Web Standards Mastering HTML5, CSS3, and XML Web Standards Mastering HTML5, CSS3, and XML Leslie F. Sikos, Ph.D. orders-ny@springer-sbm.com www.springeronline.com rights@apress.com www.apress.com www.apress.com/bulk-sales www.apress.com Contents

More information

XML: Introduction. !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... Directive... 9:11

XML: Introduction. !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... Directive... 9:11 !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... 7:4 @import Directive... 9:11 A Absolute Units of Length... 9:14 Addressing the First Line... 9:6 Assigning Meaning to XML Tags...

More information

20480C: Programming in HTML5 with JavaScript and CSS3. Course Code: 20480C; Duration: 5 days; Instructor-led. JavaScript code.

20480C: Programming in HTML5 with JavaScript and CSS3. Course Code: 20480C; Duration: 5 days; Instructor-led. JavaScript code. 20480C: Programming in HTML5 with JavaScript and CSS3 Course Code: 20480C; Duration: 5 days; Instructor-led WHAT YOU WILL LEARN This course provides an introduction to HTML5, CSS3, and JavaScript. This

More information

1D CIW: Web Design Specialist. Course Outline. CIW: Web Design Specialist Apr 2018

1D CIW: Web Design Specialist. Course Outline. CIW: Web Design Specialist Apr 2018 Course Outline CIW: Web Design Specialist 22 Apr 2018 Contents 1. Course Objective 2. Pre-Assessment 3. Exercises, Quizzes, Flashcards & Glossary Number of Questions 4. Expert Instructor-Led Training 5.

More information

8/19/2018. Web Development & Design Foundations with HTML5. Learning Objectives (1 of 2) Learning Objectives (2 of 2) Helper Applications & Plug-Ins

8/19/2018. Web Development & Design Foundations with HTML5. Learning Objectives (1 of 2) Learning Objectives (2 of 2) Helper Applications & Plug-Ins Web Development & Design Foundations with HTML5 Ninth Edition Chapter 11 Web Multimedia and Interactivity Slides in this presentation contain hyperlinks. JAWS users should be able to get a list of links

More information

.. Cal Poly CPE/CSC 366: Database Modeling, Design and Implementation Alexander Dekhtyar..

.. Cal Poly CPE/CSC 366: Database Modeling, Design and Implementation Alexander Dekhtyar.. .. Cal Poly CPE/CSC 366: Database Modeling, Design and Implementation Alexander Dekhtyar.. XML in a Nutshell XML, extended Markup Language is a collection of rules for universal markup of data. Brief History

More information

extensible Markup Language

extensible Markup Language extensible Markup Language XML is rapidly becoming a widespread method of creating, controlling and managing data on the Web. XML Orientation XML is a method for putting structured data in a text file.

More information

Web Accessibility Checklist

Web Accessibility Checklist Web Accessibility Checklist = Web Content Accessibility Guidelines published by the World Wide Web Consortium (W3C) 508 = Section 508 of the Rehabilitation Act = Both CATE and Moodle take care of the rule

More information

Layered UI and Adaptation Policies for Ubiquitous Web Applications

Layered UI and Adaptation Policies for Ubiquitous Web Applications Layered UI and Adaptation Policies for Ubiquitous Web Applications Centering ideas for upcoming standards 25 October 2007 José M. Cantera.- Telefónica I+D jmcf@tid.es Introduction Introduction Developing

More information

EXPLORE MODERN RESPONSIVE WEB DESIGN TECHNIQUES

EXPLORE MODERN RESPONSIVE WEB DESIGN TECHNIQUES 20-21 September 2018, BULGARIA 1 Proceedings of the International Conference on Information Technologies (InfoTech-2018) 20-21 September 2018, Bulgaria EXPLORE MODERN RESPONSIVE WEB DESIGN TECHNIQUES Elena

More information

CIW: Web Design Specialist. Course Outline. CIW: Web Design Specialist. ( Add-On ) 16 Sep 2018

CIW: Web Design Specialist. Course Outline. CIW: Web Design Specialist.   ( Add-On ) 16 Sep 2018 Course Outline 16 Sep 2018 ( Add-On ) Contents 1. Course Objective 2. Pre-Assessment 3. Exercises, Quizzes, Flashcards & Glossary Number of Questions 4. Expert Instructor-Led Training 5. ADA Compliant

More information

CompuScholar, Inc. Alignment to Utah's Web Development I Standards

CompuScholar, Inc. Alignment to Utah's Web Development I Standards Course Title: KidCoder: Web Design Course ISBN: 978-0-9887070-3-0 Course Year: 2015 CompuScholar, Inc. Alignment to Utah's Web Development I Standards Note: Citation(s) listed may represent a subset of

More information

PASS4TEST. IT Certification Guaranteed, The Easy Way! We offer free update service for one year

PASS4TEST. IT Certification Guaranteed, The Easy Way!   We offer free update service for one year PASS4TEST IT Certification Guaranteed, The Easy Way! \ http://www.pass4test.com We offer free update service for one year Exam : 9A0-046 Title : Adobe GoLive CS2 ACE Exam Vendors : Adobe Version : DEMO

More information

Tutorial 1 Getting Started with HTML5. HTML, CSS, and Dynamic HTML 5 TH EDITION

Tutorial 1 Getting Started with HTML5. HTML, CSS, and Dynamic HTML 5 TH EDITION Tutorial 1 Getting Started with HTML5 HTML, CSS, and Dynamic HTML 5 TH EDITION Objectives Explore the history of the Internet, the Web, and HTML Compare the different versions of HTML Study the syntax

More information

Creating Accessible Web Sites with EPiServer

Creating Accessible Web Sites with EPiServer Creating Accessible Web Sites with EPiServer Abstract This white paper describes how EPiServer promotes the creation of accessible Web sites. Product version: 4.50 Document version: 1.0 2 Creating Accessible

More information

Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Chapter 7 XML

Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Chapter 7 XML Chapter 7 XML 7.1 Introduction extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML Lax syntactical rules Many complex features that are rarely used HTML

More information

('cre Learning that works for Utah STRANDS AND STANDARDS WEB DEVELOPMENT 1

('cre Learning that works for Utah STRANDS AND STANDARDS WEB DEVELOPMENT 1 STRANDS AND STANDARDS Course Description Web Development is a course designed to guide students in a project-based environment, in the development of up-to-date concepts and skills that are used in the

More information

BMS2062 Introduction to Bioinformatics. Lecture outline. What is multimedia? Use of information technology and telecommunications in bioinformatics

BMS2062 Introduction to Bioinformatics. Lecture outline. What is multimedia? Use of information technology and telecommunications in bioinformatics BMS2062 Introduction to Bioinformatics Use of information technology and telecommunications in bioinformatics Topic 2: The Internet and multimedia Ros Gibson Lecture outline What is the Web? (previous

More information

Semantic Web Lecture Part 1. Prof. Do van Thanh

Semantic Web Lecture Part 1. Prof. Do van Thanh Semantic Web Lecture Part 1 Prof. Do van Thanh Overview of the lecture Part 1 Why Semantic Web? Part 2 Semantic Web components: XML - XML Schema Part 3 - Semantic Web components: RDF RDF Schema Part 4

More information

Creating Web Pages with SeaMonkey Composer

Creating Web Pages with SeaMonkey Composer 1 of 26 6/13/2011 11:26 PM Creating Web Pages with SeaMonkey Composer SeaMonkey Composer lets you create your own web pages and publish them on the web. You don't have to know HTML to use Composer; it

More information

Tennessee. Trade & Industrial Course Web Page Design II - Site Designer Standards. A Guide to Web Development Using Adobe Dreamweaver CS3 2009

Tennessee. Trade & Industrial Course Web Page Design II - Site Designer Standards. A Guide to Web Development Using Adobe Dreamweaver CS3 2009 Tennessee Trade & Industrial Course 655745 Web Page Design II - Site Designer Standards A Guide to Web Development Using Adobe Dreamweaver CS3 2009 ation Key SE Student Edition LE Learning Expectation

More information

WHAT IS WEBKIT? COPYRIGHTED MATERIAL SMASHING WEBKIT CHAPTER 1

WHAT IS WEBKIT? COPYRIGHTED MATERIAL SMASHING WEBKIT CHAPTER 1 1 WHAT IS WEBKIT? WEBKIT IS AN open-source rendering engine designed to display web pages. It powers Google Chrome and Safari as well as a variety of mobile devices such as iphone, ipad, and Android phones

More information

Adobe Captivate Level 1

Adobe Captivate Level 1 Information Technology Services Kennesaw State University Adobe Captivate Level 1 Presented by Technology Outreach in collaboration with The Multimedia Development Group (MDG) Copyright 2007 Information

More information

HTML and CSS COURSE SYLLABUS

HTML and CSS COURSE SYLLABUS HTML and CSS COURSE SYLLABUS Overview: HTML and CSS go hand in hand for developing flexible, attractively and user friendly websites. HTML (Hyper Text Markup Language) is used to show content on the page

More information

Apple Inc. November 2007

Apple Inc. November 2007 Standardized multimedia elements in HTML5 Position paper for the W3C Video on the web workshop Kevin Calhoun, Eric Carlson, Adele Peterson, Antti Koivisto Apple Inc. November 2007 1 Introduction We believe

More information

Etanova Enterprise Solutions

Etanova Enterprise Solutions Etanova Enterprise Solutions Front End Development» 2018-09-23 http://www.etanova.com/technologies/front-end-development Contents HTML 5... 6 Rich Internet Applications... 6 Web Browser Hardware Acceleration...

More information

Accessible Web Sites and EPiServer

Accessible Web Sites and EPiServer Accessible Web Sites and EPiServer How implementation of accessible Web sites can increase equal access and opportunities for everyone using the Web. WHITE PAPER WHAT IS ACCESSIBILITY? Accessibility affects

More information

Business Intelligence and Reporting Tools

Business Intelligence and Reporting Tools Business Intelligence and Reporting Tools Release 1.0 Requirements Document Version 1.0 November 8, 2004 Contents Eclipse Business Intelligence and Reporting Tools Project Requirements...2 Project Overview...2

More information

NEW WEBMASTER HTML & CSS FOR BEGINNERS COURSE SYNOPSIS

NEW WEBMASTER HTML & CSS FOR BEGINNERS COURSE SYNOPSIS NEW WEBMASTER HTML & CSS FOR BEGINNERS COURSE SYNOPSIS LESSON 1 GETTING STARTED Before We Get Started; Pre requisites; The Notepad++ Text Editor; Download Chrome, Firefox, Opera, & Safari Browsers; The

More information

WME MathEdit. An initial report on the WME tool for creating & editing mathematics. by K. Cem Karadeniz

WME MathEdit. An initial report on the WME tool for creating & editing mathematics. by K. Cem Karadeniz 00 000 00 0 000 000 0 WME MathEdit An initial report on the WME tool for creating & editing mathematics by K. Cem Karadeniz 00 000 00 0 000 000 0 Outline MathML WME MathEdit Tool Selection for Implementation

More information

Keynote 08 Basics Website:

Keynote 08 Basics Website: Website: http://etc.usf.edu/te/ Keynote is Apple's presentation application. Keynote is installed as part of the iwork suite, which also includes the word processing program Pages and the spreadsheet program

More information

CSI 3140 WWW Structures, Techniques and Standards. Representing Web Data: XML

CSI 3140 WWW Structures, Techniques and Standards. Representing Web Data: XML CSI 3140 WWW Structures, Techniques and Standards Representing Web Data: XML XML Example XML document: An XML document is one that follows certain syntax rules (most of which we followed for XHTML) Guy-Vincent

More information

Visual HTML5. Human Information Interaction for Knowledge Extraction, Interaction, Utilization, Decision making HI-I-KEIUD

Visual HTML5. Human Information Interaction for Knowledge Extraction, Interaction, Utilization, Decision making HI-I-KEIUD Visual HTML5 1 Overview HTML5 Building apps with HTML5 Visual HTML5 Canvas SVG Scalable Vector Graphics WebGL 2D + 3D libraries 2 HTML5 HTML5 to Mobile + Cloud = Java to desktop computing: cross-platform

More information

7.1 Introduction. extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML

7.1 Introduction. extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML 7.1 Introduction extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML Lax syntactical rules Many complex features that are rarely used HTML is a markup language,

More information

Advanced High Graphics

Advanced High Graphics VISUAL MEDIA FILE TYPES JPG/JPEG: (Joint photographic expert group) The JPEG is one of the most common raster file formats. It s a format often used by digital cameras as it was designed primarily for

More information

XML (Extensible Markup Language

XML (Extensible Markup Language XML (Extensible Markup Language XML is a markup language. XML stands for extensible Markup Language. The XML standard was created by W3C to provide an easy to use and standardized way to store self describing

More information

Introduction to the Internet and World Wide Web p. 1 The Evolution of the Internet p. 2 The Internet, Intranets, and Extranets p. 3 The Evolution of

Introduction to the Internet and World Wide Web p. 1 The Evolution of the Internet p. 2 The Internet, Intranets, and Extranets p. 3 The Evolution of Introduction to the Internet and World Wide Web p. 1 The Evolution of the Internet p. 2 The Internet, Intranets, and Extranets p. 3 The Evolution of the World Wide Web p. 3 Internet Standards and Coordination

More information

Co. Louth VEC & Co. Monaghan VEC. Programme Module for. Web Authoring. leading to. Level 5 FETAC. Web Authoring 5N1910

Co. Louth VEC & Co. Monaghan VEC. Programme Module for. Web Authoring. leading to. Level 5 FETAC. Web Authoring 5N1910 Co. Louth VEC & Co. Monaghan VEC Programme Module for Web Authoring leading to Level 5 FETAC Web Authoring 5N1910 Web Authoring 5N1910 1 Introduction This programme module may be delivered as a standalone

More information

All Adobe Digital Design Vocabulary Absolute Div Tag Allows you to place any page element exactly where you want it Absolute Link Includes the

All Adobe Digital Design Vocabulary Absolute Div Tag Allows you to place any page element exactly where you want it Absolute Link Includes the All Adobe Digital Design Vocabulary Absolute Div Tag Allows you to place any page element exactly where you want it Absolute Link Includes the complete URL of the linked document, including the domain

More information

ACCESSIBLE DESIGN THEMES

ACCESSIBLE DESIGN THEMES WCAG GUIDELINES The Web Content Accessibility Guidelines (WCAG) has been made to guide the Web Content Developers and the Authoring Tools Developers in order to make the Web Content more accessible to

More information

The XML Metalanguage

The XML Metalanguage The XML Metalanguage Mika Raento mika.raento@cs.helsinki.fi University of Helsinki Department of Computer Science Mika Raento The XML Metalanguage p.1/442 2003-09-15 Preliminaries Mika Raento The XML Metalanguage

More information

Interview Question & Answers

Interview Question & Answers BASIC Interview Question & Answers OUR TRAINING YOUR CARRER QUESTIONS & ANSWERS OF HTML Ques: - What are the five possible values for position? Ans: - Values for position: static, relative, absolute, fixed,

More information

1.1 Technical Evaluation Guidelines and Checklist:

1.1 Technical Evaluation Guidelines and Checklist: 1.1 Technical Guidelines and Checklist: This checklist is derived from the LRMDS Technical Specification. Refer to Section 10.2. Instructions: 1. Digital resources may be: a) digital and accessible online

More information

Quark XML Author September 2016 Update for Platform with Business Documents

Quark XML Author September 2016 Update for Platform with Business Documents Quark XML Author 05 - September 06 Update for Platform with Business Documents Contents Getting started... About Quark XML Author... Working with the Platform repository... Creating a new document from

More information

Lesson 5: Multimedia on the Web

Lesson 5: Multimedia on the Web Lesson 5: Multimedia on the Web Learning Targets I can: Define objects and their relationships to multimedia Explain the fundamentals of C, C++, Java, JavaScript, JScript, C#, ActiveX and VBScript Discuss

More information

HTML5 MOCK TEST HTML5 MOCK TEST I

HTML5 MOCK TEST HTML5 MOCK TEST I http://www.tutorialspoint.com HTML5 MOCK TEST Copyright tutorialspoint.com This section presents you various set of Mock Tests related to HTML5 Framework. You can download these sample mock tests at your

More information

Web Development IB PRECISION EXAMS

Web Development IB PRECISION EXAMS PRECISION EXAMS Web Development IB EXAM INFORMATION Items 53 Points 73 Prerequisites COMPUTER TECHNOLOGY Grade Level 10-12 Course Length ONE YEAR Career Cluster INFORMATION TECHNOLOGY Performance Standards

More information

Languages in WEB. E-Business Technologies. Summer Semester Submitted to. Prof. Dr. Eduard Heindl. Prepared by

Languages in WEB. E-Business Technologies. Summer Semester Submitted to. Prof. Dr. Eduard Heindl. Prepared by Languages in WEB E-Business Technologies Summer Semester 2009 Submitted to Prof. Dr. Eduard Heindl Prepared by Jenisha Kshatriya (Mat no. 232521) Fakultät Wirtschaftsinformatik Hochshule Furtwangen University

More information

The course also includes an overview of some of the most popular frameworks that you will most likely encounter in your real work environments.

The course also includes an overview of some of the most popular frameworks that you will most likely encounter in your real work environments. Web Development WEB101: Web Development Fundamentals using HTML, CSS and JavaScript $2,495.00 5 Days Replay Class Recordings included with this course Upcoming Dates Course Description This 5-day instructor-led

More information

COMP9321 Web Application Engineering

COMP9321 Web Application Engineering COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 4 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid=2411 1 Extensible

More information

CS474 MULTIMEDIA TECHNOLOGY

CS474 MULTIMEDIA TECHNOLOGY CS474 MULTIMEDIA TECHNOLOGY Pr. G. Tziritas, Spring 2018 SVG Animation Tutorial G. Simantiris (TA) OVERVIEW Introduction Definitions SVG Creating SVGs SVG basics Examples Animation using software Examples

More information

Scalable Vector Graphics: SVG. The Little-Known Treasure of Document Viewing

Scalable Vector Graphics: SVG. The Little-Known Treasure of Document Viewing Scalable Vector Graphics: SVG The Little-Known Treasure of Document Viewing 1 Introduction Most everyone has experienced that dreaded feeling of downloading an image from the web to use in a document or

More information

CA Productivity Accelerator 12.1 and Later

CA Productivity Accelerator 12.1 and Later CA Productivity Accelerator 12.1 and Later Localize Content Localize Content Once you have created content in one language, you might want to translate it into one or more different languages. The Developer

More information

Web Systems & Technologies: An Introduction

Web Systems & Technologies: An Introduction Web Systems & Technologies: An Introduction Prof. Ing. Andrea Omicini Ingegneria Due, Università di Bologna a Cesena andrea.omicini@unibo.it 2006-2007 Web Systems Architecture Basic architecture information

More information

Exam : 9A Title : Adobe GoLive CS2 ACE Exam. Version : DEMO

Exam : 9A Title : Adobe GoLive CS2 ACE Exam. Version : DEMO Exam : 9A0-046 Title : Adobe GoLive CS2 ACE Exam Version : DEMO 1. Which scripting language is the default for use with ASP, and does NOT require a language specification at the beginning of a Web page's

More information

UNIVERSITY OF NORTH CAROLINA WILMINGTON

UNIVERSITY OF NORTH CAROLINA WILMINGTON Department: Contact Person: Date: Email: Online - Web & Course Accessibility Checklist Text, presentation & content Text equivalent is provided for every non-text element (i.e., image) (Solution: add an

More information

COPYRIGHTED MATERIAL. Part I: Getting Started. Chapter 1: Introducing Flex 2.0. Chapter 2: Introducing Flex Builder 2.0. Chapter 3: Flex 2.

COPYRIGHTED MATERIAL. Part I: Getting Started. Chapter 1: Introducing Flex 2.0. Chapter 2: Introducing Flex Builder 2.0. Chapter 3: Flex 2. 02671c01.qxd:02671c01 4/20/07 11:24 AM Page 1 Part I: Getting Started Chapter 1: Introducing Flex 2.0 Chapter 2: Introducing Flex Builder 2.0 Chapter 3: Flex 2.0 Basics Chapter 4: Using Flex Builder 2.0

More information

M359 Block5 - Lecture12 Eng/ Waleed Omar

M359 Block5 - Lecture12 Eng/ Waleed Omar Documents and markup languages The term XML stands for extensible Markup Language. Used to label the different parts of documents. Labeling helps in: Displaying the documents in a formatted way Querying

More information

Working with Images and Multimedia

Working with Images and Multimedia CHAPTER Working with Images and Multimedia You can make your web page more interesting by adding multimedia elements. You can download the files featured in this chapter from www.digitalfamily.com/tyv.

More information

Envivio Mindshare Presentation System. for Corporate, Education, Government, and Medical

Envivio Mindshare Presentation System. for Corporate, Education, Government, and Medical Envivio Mindshare Presentation System for Corporate, Education, Government, and Medical Introducing the Envivio Mindshare Presentation System The Envivio Mindshare Presentation system is a highly optimized

More information

Introduction to XML. XML: basic elements

Introduction to XML. XML: basic elements Introduction to XML XML: basic elements XML Trying to wrap your brain around XML is sort of like trying to put an octopus in a bottle. Every time you think you have it under control, a new tentacle shows

More information

WPS Workbench. user guide. "To help guide you through using the WPS user interface (Workbench) to create, edit and run programs"

WPS Workbench. user guide. To help guide you through using the WPS user interface (Workbench) to create, edit and run programs WPS Workbench user guide "To help guide you through using the WPS user interface (Workbench) to create, edit and run programs" Version: 3.1.7 Copyright 2002-2018 World Programming Limited www.worldprogramming.com

More information

FUNDAMENTALS OF WEB DESIGN (46)

FUNDAMENTALS OF WEB DESIGN (46) 8 Pages Contestant Number Time Rank FUNDAMENTALS OF WEB DESIGN (46) Regional 2010 Points Section Possible Awarded 20 Questions @ 5pts. 100 pts Application (Subj.) 100 pts TOTAL POINTS 200 pts Failure to

More information

Publishing Technology 101 A Journal Publishing Primer. Mike Hepp Director, Technology Strategy Dartmouth Journal Services

Publishing Technology 101 A Journal Publishing Primer. Mike Hepp Director, Technology Strategy Dartmouth Journal Services Publishing Technology 101 A Journal Publishing Primer Mike Hepp Director, Technology Strategy Dartmouth Journal Services mike.hepp@sheridan.com Publishing Technology 101 AGENDA 12 3 EVOLUTION OF PUBLISHING

More information

Developing a Basic Web Page

Developing a Basic Web Page Developing a Basic Web Page Creating a Web Page for Stephen Dubé s Chemistry Classes 1 Objectives Review the history of the Web, the Internet, and HTML Describe different HTML standards and specifications

More information

Marketplace Simulations Accessibility Conformance Report Based on Voluntary Product Accessibility Template (VPAT ) 1

Marketplace Simulations Accessibility Conformance Report Based on Voluntary Product Accessibility Template (VPAT ) 1 Marketplace Simulations Accessibility Conformance Report Based on Voluntary Product Accessibility Template (VPAT ) 1 Name of Product: Marketplace Simulations Date: September 20, 2017 Contact information:

More information

Dreamweaver: Accessible Web Sites

Dreamweaver: Accessible Web Sites Dreamweaver: Accessible Web Sites Introduction Adobe Macromedia Dreamweaver 8 provides the most complete set of tools available for building accessible web sites. This workshop will cover many of them.

More information

XML BASED MOBILE SERVICES

XML BASED MOBILE SERVICES XML BASED MOBILE SERVICES Outi Marttila and Petri Vuorimaa Telecommunication Software and Multimedia Laboratory, Helsinki University of Technology, P.O Box 5400, FI-02015 HUT, Finland. omarttil@tcm.hut.fi

More information

Implementing Web Content

Implementing Web Content Implementing Web Content Tonia M. Bartz Dr. David Robins Individual Investigation SLIS Site Redesign 6 August 2006 Appealing Web Content When writing content for a web site, it is best to think of it more

More information

XML Update. Royal Society of the Arts London, December 8, Jon Bosak Sun Microsystems

XML Update. Royal Society of the Arts London, December 8, Jon Bosak Sun Microsystems XML Update Royal Society of the Arts London, December 8, 1998 Jon Bosak Sun Microsystems XML Basics...A-1 The XML Concept...B-1 XML in Context...C-1 XML and Open Standards...D-1 XML Update XML Basics XML

More information

Hypertext Markup Language, or HTML, is a markup

Hypertext Markup Language, or HTML, is a markup Introduction to HTML Hypertext Markup Language, or HTML, is a markup language that enables you to structure and display content such as text, images, and links in Web pages. HTML is a very fast and efficient

More information

Quark XML Author October 2017 Update for Platform with Business Documents

Quark XML Author October 2017 Update for Platform with Business Documents Quark XML Author 05 - October 07 Update for Platform with Business Documents Contents Getting started... About Quark XML Author... Working with the Platform repository...3 Creating a new document from

More information

Understanding the Web Design Environment. Principles of Web Design, Third Edition

Understanding the Web Design Environment. Principles of Web Design, Third Edition Understanding the Web Design Environment Principles of Web Design, Third Edition HTML: Then and Now HTML is an application of the Standard Generalized Markup Language Intended to represent simple document

More information

Engineering Aspects of Web Hypermedia:

Engineering Aspects of Web Hypermedia: Engineering Aspects of Web Hypermedia: Examples and Lessons from the GRiNS Editor Dick Bulterman Dick.Bulterman@cwi.nl CWI: Centrum voor Wiskunde en Informatica Amsterdam, The Netherlands Web Engineering

More information

Session 3.1 Objectives Review the history and concepts of CSS Explore inline styles, embedded styles, and external style sheets Understand style

Session 3.1 Objectives Review the history and concepts of CSS Explore inline styles, embedded styles, and external style sheets Understand style Session 3.1 Objectives Review the history and concepts of CSS Explore inline styles, embedded styles, and external style sheets Understand style precedence and style inheritance Understand the CSS use

More information

Chapter 1: Getting Started. You will learn:

Chapter 1: Getting Started. You will learn: Chapter 1: Getting Started SGML and SGML document components. What XML is. XML as compared to SGML and HTML. XML format. XML specifications. XML architecture. Data structure namespaces. Data delivery,

More information

introduction to XHTML

introduction to XHTML introduction to XHTML XHTML stands for Extensible HyperText Markup Language and is based on HTML 4.0, incorporating XML. Due to this fusion the mark up language will remain compatible with existing browsers

More information

16. HTML5, HTML Graphics, & HTML Media 웹프로그래밍 2016 년 1 학기 충남대학교컴퓨터공학과

16. HTML5, HTML Graphics, & HTML Media 웹프로그래밍 2016 년 1 학기 충남대학교컴퓨터공학과 16. HTML5, HTML Graphics, & HTML Media 웹프로그래밍 2016 년 1 학기 충남대학교컴퓨터공학과 목차 HTML5 Introduction HTML5 Browser Support HTML5 Semantic Elements HTML5 Canvas HTML5 SVG HTML5 Multimedia 2 HTML5 Introduction What

More information

Course title: WEB DESIGN AND PROGRAMMING

Course title: WEB DESIGN AND PROGRAMMING Course title: WEB DESIGN AND PROGRAMMING Lecturers Full Prof. Dragutin Kermek, Ph.D., Matija Novak, M.Inf., Matija Kaniški, M.Inf. Language of Croatian and English instruction: Schedule: 75 teaching hours

More information

MyMobileWeb project's position

MyMobileWeb project's position MyMobileWeb project's position Workshop on Declarative Models of Distributed Web Applications Dublin, 5-6 June 2007 José M. Cantera.- Telefónica I+D jmcf@tid.es Ignacio Marín.- Fundación CTIC ignacio.marin@fundacionctic.org

More information

XML: some structural principles

XML: some structural principles XML: some structural principles Hayo Thielecke University of Birmingham www.cs.bham.ac.uk/~hxt October 18, 2011 1 / 25 XML in SSC1 versus First year info+web Information and the Web is optional in Year

More information

XML: Managing with the Java Platform

XML: Managing with the Java Platform In order to learn which questions have been answered correctly: 1. Print these pages. 2. Answer the questions. 3. Send this assessment with the answers via: a. FAX to (212) 967-3498. Or b. Mail the answers

More information

Index LICENSED PRODUCT NOT FOR RESALE

Index LICENSED PRODUCT NOT FOR RESALE Index LICENSED PRODUCT NOT FOR RESALE A Absolute positioning, 100 102 with multi-columns, 101 Accelerometer, 263 Access data, 225 227 Adding elements, 209 211 to display, 210 Animated boxes creation using

More information

Certified HTML5 Developer VS-1029

Certified HTML5 Developer VS-1029 VS-1029 Certified HTML5 Developer Certification Code VS-1029 HTML5 Developer Certification enables candidates to develop websites and web based applications which are having an increased demand in the

More information

Part III: Survey of Internet technologies

Part III: Survey of Internet technologies Part III: Survey of Internet technologies Content (e.g., HTML) kinds of objects we re moving around? References (e.g, URLs) how to talk about something not in hand? Protocols (e.g., HTTP) how do things

More information

Adobe Flash is the industry-standard application

Adobe Flash is the industry-standard application Introducing Flash Adobe Flash is the industry-standard application for creating animation and playing video on Web sites. It is fairly easy to learn when you are first getting started but has many powerful

More information

Getting Started. Most likely, if you ve purchased a copy of Adobe Flash CS3 Professional, Introducing Adobe Flash CS3 Professional 3

Getting Started. Most likely, if you ve purchased a copy of Adobe Flash CS3 Professional, Introducing Adobe Flash CS3 Professional 3 1 Getting Started Introducing Adobe Flash CS3 Professional 3 Why Use Flash CS3? 3 What s New in Flash CS3? 6 Flash, Flash Player, or Flash Lite? 7 File Types Associated with Flash CS3 8 Caution: Player

More information

Interactive Media CTAG Alignments

Interactive Media CTAG Alignments Interactive Media CTAG Alignments This document contains information about eight Career-Technical Articulation Numbers (CTANs) for the Media Arts Career-Technical Assurance Guide (CTAG). The CTANs are:

More information