S1000D Transformation Toolkit Guide for Developers

Tyler Shumaker Software Engineer

1 CTC Overview

• 501(c)(3) nonprofit established in 1987 • Staff of 1,400+ professionals • More than 50 locations • 900,000 sq. ft., including labs & demonstration space • Top 100 Government Contractor • Quality/EH&S Management System comprised of industry-best models: ISO 9001 (Quality) and 14001 (Environmental), AS9100 (Aerospace), and CMMI- SE/SW (Systems/Software Engineering) • Nationally recognized security capabilities with 300,000+ sq. ft. of Top Secret/Sensitive Compartmented Information Facility Space, JWICS, SIPRNet, and NIPRNet access

2

The Bridge Project

• An OSD-funded project managed by the ADL Initiative. – Improves lifecycle management of technical training content. – Uses the S1000D technical data specification to manage learning content. • The Bridge Project enables enterprise training content management: – CONOPS: Sets parameters and operational scenarios for an S1000D development environment. – Bridge API: Connects learning content development tools to common source databases – AIM/SCO Workbench S1000D Support: Authoring tools write directly to S1000D. – S1000D Transformation Toolkit – Product Data Identification Service: Locates all S1000D based product support data linked to engineering change proposals. • Cost Benefits Analysis – 10% reduction in total ownership cost due to quicker data identification.

3 S1000D Transformation Toolkit

• Problem Statement Driver – There is no interoperable publishing activity that supports the building of multiple delivery platforms from lifecycle-aware learning content formats. • Solution – S1000D Transformation Toolkit – The Toolkit is an open source design that specifically targets developers of technical learning content who have the following requirements: • Separation of source data from delivery formats • Manage lifecycle and configuration of technical training content; • Output source content to multiple outputs (e.g., SCORM and mobile devices) • Leverage and build upon open source technologies

4 Toolkit Overview

• The Toolkit is a black box that consumes S1000D input files and graphics from a Common Source Database (CSDB) and produces a SCORM content package, mobile web application or PDF output

5 Toolkit Output

SCORM

PDF

MOBILE

6 Development Strategy

• Open source – SourceForge http://sourceforge.net/projects/s1000d-scorm/ • SVN (Subversion) • Written as a -based library (1.6.0_21) • Uses Apache Ant v 1.8.2 http://ant.apache.org/ • Uses Apache Commons Chain http://commons.apache.org/chain/ • Allows for expandability and allow for plug-in support for future desired formats • XML Style Sheet Translation (XSLT) files • Cascading Style Sheets (CSS) • jQuery Mobile Framework (Mobile Output) http://jquerymobile.com/ • Flying Saucer Project (PDF Output) http://code.google.com/p/flying-saucer/ • Eclipse Project - source includes the Eclipse .classpath and .project files

7 How Developers Will Use the Toolkit

• Publishing SCORM from an S1000D Compliant Application (CSDB)

• Importing S1000D Content into a Learning Management System

• Independent Application Development

8 Apache Commons Chain Library

• Ability to add new features to support specific needs • Apache Commons Chain Library which provides an API that facilitates the Chain of Responsibility design pattern

s1000DToolkit1.0\conf\bridge\toolkit\chain-config.

9 Viewer Application

• The Viewer Application is a browser-based rendering environment. – XML style sheet translation (XSLT) files along with other files necessary to provide content navigation and other features required for presentation of the content in a Web browser. – The viewer is required because the S1000D content is left in its original XML form. • The Viewer Application contains the files to do the SCORM API communication at runtime. • Assessments handled with Flash templates – (ViewerApplication\Assesment_templates) • Assessments handled with HTML XSLT files

10 Modifying the SCORM Output Images

Key Graphic Name Graphic Description 1 toolkit_header_01.jpg Bridge Project Header 2 toolkit_header_02.jpg Header Background, stretches horizontally 3 toolkit_footer_01.jpg Footer, left 4 toolkit_footer_02.jpg Footer Background, stretches horizontally 5 toolkit_footer_03.jpg Footer, middle 6 toolkit_footer_04.jpg Back Button 7 toolkit_footer_05.jpg Next Button 8 toolkit_footer_06.jpg Footer Background

s1000DToolkit1.0/ViewerApplication/app/images

11 Modifying the SCORM Output

• Changing Interface Elements with Different Filename or Type – s1000DToolkit1.0\ViewerApplication\app\navPage.htm • Modifying the Course Style Sheet – s1000DToolkit1.0\ViewerApplication\app\common. • Modifying Viewer Transformations – s1000DToolkit1.0\ViewerApplication\app\s1000d_4.xslt • Modifying Viewer Navigation – s1000DToolkit1.0\ViewerApplication\app\navScript.js – List.js created at by Toolkit contains the order of Data Module files

12 Modifying the Mobile Web Application Output

• jQuery Mobile Framework v 1.0b3 • Performance Support Output (no assessments) – s1000DToolkit1.0\xsl\bridge\toolkit\commands\dmStylesheet.mobile.xsl – s1000DToolkit1.0\xsl\bridge\toolkit\commands\scpmStylesheet.mobile.xsl • Full Mobile Course Output (assessments handled with HTML/JavaScript) – s1000DToolkit1.0\xsl\bridge\toolkit\commands\dmStylesheetCourse.mobile.xsl – s1000DToolkit1.0\xsl\bridge\toolkit\commands\scpmStylesheetCourse.mobile.xsl • Viewer Application plus some mobile variation found in s1000DToolkit1.0\xsl • MobiApp – Mobile.css, mobileEvents.js, jquery-1.6.2.min.js plus the jQuery Mobile 1.0b3 files • Note: References to ICN files in the data modules that are Flash files (.swf) are included in the mobile web application output

13 Modifying the PDF Output

• The PDF module uses the Flying Saucer project. CSS files are used to transform the S1000D XML to PDF. • s1000DToolkit1.0\cssPDF

– s1000d_intructor.css

– s1000d_student.css

14 QUESTIONS

15 Technical Point of Contact:

Tyler Shumaker Software Engineer 814-262-2302 [email protected]

Business Development Point of Contact:

David A. Kingston, P. E. Director, Learning and Human Performance Solutions 573-329-8548 [email protected]

16