AIR 2004 Presentation - Kennesaw State University

Download Report

Transcript AIR 2004 Presentation - Kennesaw State University

Embracing the Value of XML in
Institutional Research
Jim Few
Center for Institutional Effectiveness
Kennesaw State University
http://ie.kennesaw.edu
Association for Institutional Research 2005 Forum
San Diego, CA
Agenda
 What is XML?
 Why should you care?
 What should you know?
 How can you use XML?
What is XML?
 The eXtensible Markup Language (XML) is a nonproprietary standard that provides a format for
describing structured data.
 XML was designed to describe, store, carry, and
exchange data in a unified manner.
 XML provides the ability to liberate data from
proprietary data silos.
 XML separates data from presentation.
W3C: http://www.w3schools.com/xml/xml_whatis.asp
What XML is Not
 A replacement for HTML
 A replacement for relational databases
 A programming language (e.g. Java, C++, VB)
 Terse
 A panacea
Text File Format
ID
Lname
Mname
Fname
Gender
83492
Clark
F
Betty
F
89430
Bhatt
Soham
M
94032
Jones
T
John
M
48392
Klein
R
Kim
F
XML Format
Why Should You Care?
 Standard (Non-proprietary)
 Extensible
 Flexible
 Easy to share
 Web-friendly
 Separates data from presentation
 Far richer than flat text files
 Makes the structure of the document trivial, leaving
the implementation and dialect up to you
What Should You Know?
 XML syntax is strict
 XML documents provide a self-describing syntax
 All XML elements must have a closing tag
 XML tags are case sensitive
 All XML elements must be properly nested
 All XML documents must have a root element
W3C: http://www.w3schools.com/xml/xml_syntax.asp
Who Supports XML?
 Microsoft
 IBM
 Oracle
 Sun Microsystems
 BEA
 SAS
 Adobe
 Business Objects
 W3C
 Computer Associates
 SAP
 PeopleSoft
Anyone who is a player in the computing world
Data Silos
Oracle
MS Excel
PDF
Crystal
MS Word
MS
Access
HTML
XML Facilitates Data Sharing
Oracle
MS Excel
SQL
Server
MS Word
DB2
XML
Dreamweaver
Crystal
MS
Access
Text Versus XML
Student Record
<Student>
<LName>Roberts</LName>
Nick Roberts
<FName>Nick</FName>
0001462395
<ID>0001462395</ID>
143 Main St
<Street>143 Main St</Street>
Clemson, SC
<City>Clemson</City>
29634
<State>SC</State>
26
<ZipCode>29634</ZipCode>
3.4
<Age>26</Age>
3.8
<GPACumulative>3.4</GPACumulative>
<GPATerm200508>3.8</GPATerm200508>
</Student>
HTML Versus XML
<b>Student Record</b>
<Student>
<br>
<LName>Roberts</LName>
<br>
<FName>Nick</FName>
Nick Roberts<br>
<ID>0001462395</ID>
0001462395<br>
<Street>143 Main St</Street>
143 Main St<br>
<City>Clemson</City>
Clemson, SC <br>
<State>SC</State>
29634<br>
<ZipCode>29634</ZipCode>
26
<Age>26</Age>
</Student>
What is XML Schema?
 An XML schema defines:
 Elements that can appear in a document
 Attributes that can appear in a document
 Which elements are child elements
 The order of child elements
 The number of child elements
 Whether an element can be null or must include data
 Data types for elements and attributes
 Default and fixed values for elements and attributes
W3C: http://www.w3schools.com/schema/schema_why.asp
So, What is XML Schema?
 A schema describes the structure of an XML
document using XML
 An XML schema manages the expectations of those
sharing an XML document
 A schema enforces business constraints and
ensures data validation
 For example, we can create a standard definition
for social security number (data type is string,
format=###-##-####, required field, etc.).
W3C: http://www.w3schools.com/schema/schema_intro.asp
XML Schema Example
What is XSL?
 XSL stands for eXtensible Stylesheet Language
 Think of XSL as a set of languages that can:
 Transform XML into XHTML
 Filter and sort XML data
 Format XML data based on the data value
(e.g. displaying negative numbers in red)
 Output XML data to different media
(e.g. web browsers, screens, print, or voice)
W3C: http://www.w3schools.com/xsl/xsl_languages.asp
XSL Example
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<strong>Student Record</strong>
<br />
<br />
<xsl:value-of select="Student/FName" />
<xsl:value-of select="Student/LName" />
<br />
<xsl:value-of select="Student/Street" />
<br />
<xsl:value-of select="Student/City" />,
<xsl:value-of select="Student/State" />
<xsl:value-of select="Student/ZipCode" />
<br />
<xsl:value-of select="Student/Age" />
</body>
</html>
</xsl:template>
</xsl:stylesheet>
How Can You Use XML?
 Share data across disparate applications, platforms
and networks
 Abstract periodic data structure changes
 Single data source satisfies multiple uses
 Aggregate data from multiple sources into one file
 Render data from complex queries without latency
 Snapshot/Census data captures
 Shift database hit to off-peak times
 Manage security concerns
 Impress those reading your resume
XML Workflows
Database
XML
Document
Schema
Validation
Stylesheet
Transformation
XML
Application
Database
XML
Document
Print
Document
Web
Browser
XML Workflow Example
XML
Generator
XML
Document
Database
ASP.NET
XSL
Stylesheet
Web
Browser
Multiple Data Sources
Oracle
DB2
XML
SQL
Server
MS
Access
The End
Questions?
Comments?
Thank You
[email protected]
Center for Institutional Effectiveness
Kennesaw State University
http://ie.kennesaw.edu
Thanks to Nick Roberts for being a dear friend, professional colleague, and valuable contributor to this presentation. Thanks to Randy Hinds for the
use of his PowerPoint graphics.