Title: XML KAM500 Technical Overview
1XML / KAM-500Technical Overview
2Overview
- What is XML
- History of XML
- Applications of XML
- Tools for XML
- Pros and Cons of XML
- ACRA CONTROL and XML
- Data Interchange with XML
- Summary
3What is XML
- What is XML?
- eXtensible Markup Language
- A language for the creation of structured
documents
Excel
XML
XID
Word
GIF
C
TMATS
CSV
Text
4A Better ASCII
- ASCII is normal text
- Human readable (evolved from typewriter)
- Many tools to manipulate it
- Can be easily converted to proprietary (e.g.
Word, Excel) - Plain Text - Low information
Name Author Category Published Price In Stock
Discount LEtranger Albert Camus Fiction 19.99 4
No The Road to McCarthy P. McCarthy Travel 2002
24.99 3 Yes
- No context
- No Structure
- Needs Human interpretation
5CSV
- Common Separated Variables is structured ASCII
- Human readable
- Can be easily converted to proprietary (e.g.
Word, Excel) - More information
Name, Author, Category, Published, Price, In
Stock, Discount LEtranger, Albert Camus,
Fiction,, 19.99, 4, No The Road to McCarthy, P.
McCarthy, Travel, 2002, 24.99, 3, Yes
- Missing Information Highlighted
- Words grouped correctly
- Still No Context
- Needs Human intervention to import/export
6XML
- Adds context and structure
ltBookgt ltName typetextgtLEtrangerlt/Namegt
ltAuthor typetextgt Albert Camuslt/Authorgt ltCatego
ry typetextgt Fictionlt/Categorygt ltPublished
typedategtlt/Publishedgt ltPrice currencyEuro
Typelistpricegt 19.99lt/Pricegt ltInStock
typeIntegergt4lt/InStockgt ltDiscount
typebooleangtNolt/Discountgt lt/Bookgt ltBookgt
ltName typetextgtThe Road to McCarthylt/Namegt ltAu
thor typetextgtP. McCarthylt/Authorgt ltCategory
typetextgtTravellt/Categorygt ltPublished
typedategt2002lt/Publishedgt ltPrice
currencyEuro Typelistpricegt24.99lt/Pricegt ltIn
Stock typeIntegergt4lt/InStockgt ltDiscount
typebooleangtYeslt/Discountgt lt/Bookgt
- Context Added
- Type information added
- Can be automatically manipulated
- Information rich
- Needs rule book to understand
7Example
ltBookgt ltName typetextgtLEtrangerlt/Namegt
ltAuthor typetextgt Albert Camuslt/Authorgt ltCatego
ry typetextgt Fictionlt/Categorygt ltPublished
typedategtlt/Publishedgt ltPrice currencyEuro
Typelistpricegt 19.99lt/Pricegt ltInStock
typeIntegergt4lt/InStockgt ltDiscount
typebooleangtNolt/Discountgt lt/Bookgt ltBookgt
ltName typetextgtThe Road to McCarthylt/Namegt ltAu
thor typetextgtP. McCarthylt/Authorgt ltCategory
typetextgtTravellt/Categorygt ltPublished
typedategt2002lt/Publishedgt ltPrice
currencyEuro Typelistpricegt24.99lt/Pricegt ltIn
Stock typeIntegergt4lt/InStockgt ltDiscount
typebooleangtYeslt/Discountgt lt/Bookgt
8A Better Generic Format
- Generic Formats
- Binary (Excel, Word, Gif) is compact and rich
- Cannot interpret without a tool
- Often need the correct version or a converter
(Word 6.0 vs. Word 2000) - E.g. a 16x16 light blue square
- In JPG binary format this is a 633B file that
looks like this
9JPG Format
10XML Graphics
- In SVG ( A graphics sub-set of XML) this is 179B
file that looks like
lt?xml version"1.0" standalone"yes"?gt ltsvg
width"16" height"16"gt ltpath style"filla6aef6"
d"M16 0 L16 16 L0 16 L0 2 C2.164 2.646 2.164
0.3543 0 1 L0 0 L16 0 z"/gt lt/svggt
- Any Improvement?
- Still need a tool to see the image
- Still need to understand the language
- Easy to repair corrupt file
- Easy to embed in any text file
- Versioned and future proof
11Worldwide Standard
- Who Controls it?
- W3C (World Wide Web Consortium www.w3.org)
- Adobe, AmEx, ATT, Boeing, Computer Associates,
Ericcson, HP, Intel, Microsoft, Oracle, Siemens,
Xerox etc. etc. - Released in 1997
- Intended as a means of distributing context rich
documents on the internet. - A lot of information on the internet
(www.xml.org)
12History of XML I
- XML is not new!!!!
- GML General Markup Language
- Developed by IBM in the 1960s
- Allowed a lot of cheating
- Good for humans, easy identification and
manipulation - Variations meant different programs for each
document type - SGML Standard General Markup Language
- ISO standard in 1986
- Standardized document validation and interchange
13History of XML II
- HTML Hyper Text Markup Language
- Evolved along with World Wide Web for document
interchange - Loose standard fixed tags
- Focuses on presentation, not content or
structure - XML eXtensible Markup Language
- Addresses weaknesses of HTML
- A meta-language for defining structure and
context - Focus on data and data interchange.
- First standard released in 1997
- A sub-set of SGML
14Tools for XML
- XML has a lot of support tools (some free)
- Designed to be easy to develop tools
- Parsers
- Off the shelf tool for reading XML files
- Line by line (good for random access SAX)
- Entire document retaining structure (good for
complex access DOM) - Style sheets
- A language (XSL) for transforming XML into XML
- Controls how browsers display XML files
- Validaters
- Check XML files for correct structure and syntax
- Check field values for range, format etc.
- Need to be told what the XML structure should be
(Schema) - Editing Tools
- Graphical environments that integrate other tools
- Allow XML, schema, stylesheets to be developed
- Validate files with strong error checking.
15XML Schemas (XSchema)
XML documents can be validated against an XML
schema. XML schemas are used to specify grammars
for XML documents. XML documents that have been
correctly validated against an XML schema are
called Valid. An XML schema can be specified
for a document by adding an X-Schema processing
instruction such as ltCATALOG
xmlns"x-schemabook.xml"gt to the root element of
the document. A schema can also be specified for
subsets of an XML documents
16Pros and Cons
- Pros
- Allows specialists to extend language for a
domain - (music, mathematics, graphics, flight test
instrumentation) - Future proof
- Robust, recoverable
- Off the shelf tools
- Well understood and supported
- Maps very well onto structured data (e.g.
databases) - Cons
- Different specialists developing different
standards! - Can be made incomprehensible and proprietary
- Yet another language with a learning curve
17Applications of XML
- XML is good for
- Data interchange between computers, platforms and
applications - Representing structured data for automated
processing - Future-proofing data
- XML is not good for
- Data storage/exchange in a homogenous environment
- It is not a Database (despite the hype!)
18Example I
FINANCEExcelWordFSP
SALESCMS ExcelWordDPS
- Information needs to be shared
- Excel is only common format
- Information exchange is manual, slow and
unsatisfactory
PRODUCTIONIMS Excel
19Example I Solution I
SALES
FINANCE
- Good solution all data in one place
- New interfaces have to be developed for each
department - Constant maintenance
- Political resistance
Database
PRODUCTION
20Example I Solution II
SALESCMS ExcelWordDPS
FINANCEExcelWordFSP
XML
XML
XML
- Each department uses familiar tools
- Once off task to define and set up XML
export/import - Information exchange is automated and fast
PRODUCTIONIMS Excel
21Example II
Test Vehicle
Ground
Flight Test DAU
Ground Station
Vendor 1 Database
Vendor 2 Database
- Same information (or a sub-set) required in each
place - Different database structures
- Different vendors
FTE
Test Config Database
22Example II - Solution I
Test Vehicle
Ground
Flight Test DAU
Ground Station
Vendor 1 Database
Vendor 2 Database
Custom SQL Application
Custom SQL Application
- Database structure cannot change
- Very static
- No flexibility
- Hard to maintain
- Must learn database mapping for each vendor
FTE
Test Config Database
23Example II - Solution II
Test Vehicle
Ground
Flight Test DAU
Ground Station
Vendor 1 Database
Vendor 2 Database
- Must learn to write/read a new format for each
vendor - Must learn database mapping for each vendor
- Freedom to change databases
FTE
Test Config Database
Proprietary File Format
Proprietary File Format
24Example II - Solution III
Test Vehicle
Ground
Flight Test DAU
Ground Station
Tools available to Assist XML transformation
Vendor 1 Database
Vendor 2 Database
XML I
- Must learn database mapping for each vendor
- Freedom to change databases
- Read/Writing significantly easier
FTE
Test Config Database
XML III
XML II
25Northrop XML
Transformation from data source to XML file
XML file, schema defined by ACRA
KSM V2 Database
26XML Northrop Example
27ACRA CONTROL and XML
- XID
- Proprietary ASCII format for describing test
setup - Human readable, flexible, complete
- Structured, easily written
- Direct 1-1 Mapping between XID and XML version of
XID file - Tools for conversion
- KSM
- Graphical software for XID file creation
- Import/Export of XML directly supported
28XID and XML
INSTRUMENT SETUP MyParameter Slave1ADC9 ANALOG,
InputChannel_1 Max0.120 Min-0.120
ExOffset0 ExVoltage2.0
ltINSTRUMENT_SETUPgt ltPARAMETER
ParameterNameMyParameter"
ModuleNameSlave1ADC9" ISMode"ANALOG"gt
ltATTRIBUTE Name"Input" Value"Channel_1" /gt
ltATTRIBUTE NameMax" Value"0.120" /gt
ltATTRIBUTE NameMin" Value-0.120" /gt
ltATTRIBUTE NameExOffset" Value0" /gt
ltATTRIBUTE NameExVoltage" Value2.0" /gt
lt/PARAMETERgt lt/INSTRUMENT_SETUPgt
XMLEx1.xml
29Data Interchange with XML
- Exchanging with a database
My Database
My XML
- Code may be needed here
- Some databases support XML directly
- Otherwise use SQL, C, PHP, or any scripting
language - XML structure should reflect source database
structure
30Data Interchange with XML
- Exchanging with a database
My Database
My XML
Their XML
- Mapping between the source database and
destination database must be understood - Tools are available to assist
- Can be coded in software, or use a stylesheet and
COTS software - Result can be checked against a schema to speed
development
31Data Interchange with XML
- Exchanging with a database
My Database
Their Database
My XML
Their XML
- Normally provided by owner of target database
- If developed, a COTS parser will greatly assist
32Data Interchange with XML
- Exchanging with a database
My Database
Their Database
My XML
Their XML
- Why use two XML files?
- Development and debugging easier
- XML files are human readable test cases easy to
create/change - Easier supporting of multiple vendors/databases
33Data Interchange with KSM
- Exchanging with a database
My Database
KSM Suite
My XML
ACRA XML
- ACRA CONTROL provides import/export functions for
the setup XML file - Documentation
- Schema
- Documented keywords
- Examples stylesheets
34Future Uses of XML
- XML to TMATS format
-
- In principle, it is relatively straight forward
to convert XML in one format to any target
format. Our XML version of the XID file could in
principle be transformed into TMATS format.
35Summary
- XML World standard for data interchange
- A better ASCII
- Community of XML developers for support and
development - Not a database but closely tied to databases
- Optimal solution to the problem of data
interchange - Development effort still required
- ACRA CONTROL has standardized on XML.
36For additional information contact ACRA Control
Inc 44145 Airport View Drive Hollywood, MD
20636 301-373-9220 (phone) 301-373-9223
(fax) www.acracontrol.com ISO 90012000
Certified