220 likes | 379 Views
XML-Based Neutral Language for Data Display Systems. John Hamilton Ron Fernandes Mike Graul Knowledge Based Systems, Inc. Dr. Charles Jones AFFTC, EAFB Jon Morgan JT3 LLC, EAFB. 113 th RCC Telemetry Group Conference Albuquerque, NM March 8th, 2006. Agenda. Background Motivation
E N D
XML-Based Neutral Language for Data Display Systems John Hamilton Ron Fernandes Mike Graul Knowledge Based Systems, Inc. Dr. Charles Jones AFFTC, EAFB Jon Morgan JT3 LLC, EAFB 113th RCC Telemetry Group Conference Albuquerque, NM March 8th, 2006
Agenda • Background • Motivation • DDML and Translator Review • DDML Status • DDML Translator Status
Background • Work based on a Phase I and II SBIR sponsored by Edwards Air Force Base • Technical POC: Dr. Charles Jones • Work with • China Lake / Lockheed Martin, Ridgecrest • NAWS, Pt. Mugu • Pax River Test Range Center • PM Utility Helicopter, U.S. Army • Sherrill-Lubinski Corp • Symvionics Corp. • Bruce Lipe, EAFB • Jon Morgan, EAFB • Project ends Nov 2006
Why Neutral Language? • Data display setup is a lengthy procedure • Diverse data display systems • Test and Evaluation (T&E) performed at different locations • Need reuse of displays for joint service T&E missions • Joint Strike Fighter (JSF) • Joint Air-to-Surface Standoff Missile (JASSM)
Vendor 6 Vendor 5 Vendor 1 Vendor 4 Vendor 2 Vendor 3 Why Neutral Language? • Currently, displays are created manually • Develop translators without neutral language
Vendor 5 Vendor 6 Vendor 1 Vendor 4 DDML Document Vendor 2 Vendor 3 Why Neutral Language? • Develop translators with neutral language
Data Display Markup Language • Based on eXtensible Markup Language (XML) • Four logical layers: graphics resources, dynamics, variables and data sources • Includes most T&E display objects • plotters, meters, strip charts, etc. • Primitive graphics resources based on Scalable Vector Graphics (SVG) • rectangles, lines, etc. • Generic to support nonstandard objects
Typical Software Layer (e.g., Model-View Architecture) DDML Layers Graphics Resources (position, color, etc.) Graphics Resources (controls, color, etc.) User Interfaces (rendering, display, etc.) Dynamics Information Management (objects, variables, etc.) Data variables and derived data Persistence (load, save, etc.) Data Sources Data Display Markup Language • Layers similar to typical software architecture
DDML Design • DDML is generic enough to support multiple data display systems, despite • Nomenclature differences across tools • Different functionality and focus for each system • Architectural differences and fuzzy specification of architectural layers • Nonstandard, tool-specific concepts
DDML Design artifacts • Data dictionary – Excel-based • Maps vendor objects to DDML elements and attributes • IDEF1X data model • Special mapping rules file • XML Schema • UML Model (in progress)
DDML Details • <model> contains all display objects on a given screen. • Standard display objects including • <stripchart> • <barchart> • <piechart> • <dial> • <slider> • Non-Standard/Custom objects • <object>
Data Display Translator Framework • DDML Model Repository with Translators
DDML Benefits • Supports interoperability of display systems • Same look and feel across environments and test centers • Vendor-independent way of cataloging display information • Can be used in various environments • T&E missions • Industrial process control • Cockpit and automobile dashboards • Health monitoring: man and machine
DDML Status • DDML Version 2.0 presented at 112th RCC Telemetry Group Conference • Several Suggestions made by Attendees • Convert XML Attributes to Elements • Use MathML for derived variables • Develop UML model for further documentation.
DDML Status • Current DDML Version: 3.0 • Changes since 2.0 • All XML attributes have been converted to elements, except for id. • DDML <expr> element replaced with MathML <apply> element. • Improved <rules> logic for defining thresholds, etc.
Attributes to Elements DDML 2.0 <barchart id="BAGC1“ name="BAGC1“ scrollDirection="down" title="Title" titleColor="0“ valueAxisMin="0“ valueAxisMax="5“ valueAxisLabelForegroundColor="0“ valueGrid1Color="16711935“ valueGrid1Quantity=“2” valueTicLabelForegroundColor="0“ valueTicLabelFormat="%4.2f“ valueGrid2Color=“58302” DDML 3.0 <barchart id="BAGC1"> <name>BAGC1</name> <scrollDirection>down</scrollDirection> <title>Title</title> <titleColor>0</titleColor> <yAxis> <axisType>value</axisType> <axisMin>0</axisMin> <axisMax>5</axisMax> <axisLabelForegroundColor>0</axisLabelForegroundColor> <axisGrid> <axisGridColor>16711935</axisGridColor> <axisGridInterval>2.5</axisGridInterval> <tickLabelForegroundColor>0</tickLabelForegroundColor> <tickLabelFormat>%4.2f</tickLabelFormat> </axisGrid> <axisGrid> <axisGridColor>58302</axisGridColor> </axisGrid> </yAxis>
MathML for Derived Data Example: 3x2 – sin(y) DDML 3.0 <apply> <minus/> <apply> <times/> <cn>3</cn> <apply> <power/> <ci>x</ci> <cn>2</cn> </apply> </apply> <apply> <sin/> <ci>y</ci> </apply> </apply> DDML 2.0 <exp> <expcoef="3" power="2" var_ref="x" /> <expcoef="-1" power="1" oper="SIN" var_ref="y" /> </exp>
Improved Rules Example: if (var == 0) value=16711680 else if(var == 1) value=65280 DDML 2.0 <rule> <ifstart="0" finish="0" /> <then value="16711680“ /> <else> <rule> <ifstart="1" finish="1" /> <then value="65280“ /> </rule> </else> </rule> DDML 3.0 <rule> <if> <operator>EQ</operator> <value>0</value> </if> <then> <value>16711680</value> </then> <else> <rule> <if> <operator>EQ</operator> <value>1</value> </if> <then> <value>65280</value> </then> </rule> </else> </rule>
DDML Documentation Status • DDML 3.0 Improvements documented • ITC 2006 Paper • ITEA Test Instrumentation Workshop 2006 Paper • Both of these are intended to gain feedback from T&E community. • DDML website maintenance • http://www.kbsi.com/DDML/DDML.htm • 3.0 Schema and UML model will be on website soon.
DDML Translator Status • DDML translators in use by Pt. Mugu to support transition from GRIDS to RangeView. • Progress on SL-GMS translator • Maintenance of DataViews, IADS, and C++/OpenGL translators.
Conclusions • DDML is a generic XML-based neutral language for data display applications • DDML has been tested to support at least three vendor-specific formats • DDTF provides integrated framework for future translators • DDML and DDTF have applications beyond T&E
Points of Contact • Charles Jones, AFFTC, EAFB • charles.jones@edwards.af.mil • Jon Morgan, JT3 LLC, EAFB • jon.morgan.ctr@edwards.af.mil • Mike Graul, KBSI • Mgraul@kbsi.com • John Hamilton, KBSI • JLHamilton@kbsi.com • Ronald Fernandes, KBSI • Rfernandes@kbsi.com