0
A Framework for Display of Information from a Data Source Presented by Shaolong Wu University of Houston Department of Com...
Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Introduction </li></ul><ul><li>4. Archit...
Motivation <ul><li>Web Publishing Technology </li></ul><ul><li>- Components: Browser, Web Server, Database, Network </li><...
Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Purpose </li></ul><ul><li>4. Architectur...
Objectives <ul><li>Understand  Web Publishing Architecture and Technologies </li></ul><ul><li>Develop a Framework for Disp...
Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Introduction </li></ul><ul><li>4. Archit...
Complexities of Web Publishing Browser CGI ASP Servlet HTTP Response Database JDBC/ODBC HTML Create/Transform HTTP Request...
Complexities of Web Publishing <ul><li>Expensive resources </li></ul><ul><li>- ODBC/JDBC </li></ul><ul><li>- ASP/JSP, Java...
Simplify The Process Browser Database HTTP Request Web Server Template HTTP Response HTTP Response HTTP Request HTML Creat...
Simplify The Process <ul><li>Release a lot of  resources </li></ul><ul><li>- No database connection at Server </li></ul><u...
XML Technology <ul><li>New technology about data </li></ul><ul><li>Platform independent </li></ul><ul><li>Metalanguage </l...
XSL and XSLT <ul><li>XSL is a formatting language </li></ul><ul><li>XSL transforms XML data </li></ul><ul><li>XSLT is a te...
SQL Server 2000 XML Support  <ul><li>HTTP Access </li></ul><ul><li>FOR XML </li></ul><ul><li>XML Mode </li></ul><ul><li>- ...
Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Introduction </li></ul><ul><li>4. Archit...
Framework Architecture QueryTemplate.xml Schema Query XSL Stylesheet Mapper SQL Database XML Data HTTP Request HTTP Respon...
Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Introduction </li></ul><ul><li>4. Archit...
Components and Objects <ul><li>Defines which data to display and how to display </li></ul><ul><li>Must follow a Schema </l...
Components and Objects The Generators <ul><li>Retrieve the QueryTemplate.xml Template from Server </li></ul><ul><li>Accept...
Components and Objects <ul><li>Generated by the Generators based on the Template </li></ul><ul><li>Used by the Mapper to r...
Components and Objects <ul><li>Generated by the Generators based on the Template </li></ul><ul><li>Used by the Mapper to t...
Components and Objects <ul><li>The SQL Database </li></ul><ul><li>SQL Server 2000 database </li></ul><ul><li>Support retri...
Components and Objects <ul><li>Include Java objects the Generators and the Mapper </li></ul><ul><li>Specify a location to ...
Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Introduction </li></ul><ul><li>4. Archit...
Demonstration <ul><li>accounts Database </li></ul><ul><li>Show how to develop, deploy, and apply our framework  step by st...
Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Introduction </li></ul><ul><li>4. Archit...
Benefits and Significance <ul><li>HTML is dynamically created on client machine     Increase scalability and performance ...
Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Introduction </li></ul><ul><li>4. Archit...
Scope for Future Work <ul><li>Support Netscape browser </li></ul><ul><li>Validate XML data in browser </li></ul><ul><li>Su...
<ul><li>Thank You ! </li></ul>
Upcoming SlideShare
Loading in...5
×

Defense Presentation

1,439

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,439
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Title Slide
  • Transcript of "Defense Presentation"

    1. 1. A Framework for Display of Information from a Data Source Presented by Shaolong Wu University of Houston Department of Computer Sciences
    2. 2. Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Introduction </li></ul><ul><li>4. Architecture </li></ul><ul><li>5. Implementation </li></ul><ul><li>6. Demonstration </li></ul><ul><li>7. Conclusion </li></ul><ul><li>8. Future Work </li></ul>
    3. 3. Motivation <ul><li>Web Publishing Technology </li></ul><ul><li>- Components: Browser, Web Server, Database, Network </li></ul><ul><li>- Technologies: HTML, HTTP, XML/XSL, JDBC/ODBC, ASP, Servlet/JSP </li></ul><ul><li>- Expensive Resources </li></ul><ul><li>- Complexities </li></ul><ul><li>Simplify Web Publishing Process </li></ul><ul><li>Increase Performance and Scalability </li></ul>
    4. 4. Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Purpose </li></ul><ul><li>4. Architecture </li></ul><ul><li>5. Implementation </li></ul><ul><li>6. Demonstration </li></ul><ul><li>7. Conclusion </li></ul><ul><li>8. Future Work </li></ul>
    5. 5. Objectives <ul><li>Understand Web Publishing Architecture and Technologies </li></ul><ul><li>Develop a Framework for Display of Information from a Data Source </li></ul><ul><li>Demonstrate How Easy and Simple to Use the Framework </li></ul>
    6. 6. Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Introduction </li></ul><ul><li>4. Architecture </li></ul><ul><li>5. Implementation </li></ul><ul><li>6. Demonstration </li></ul><ul><li>7. Conclusion </li></ul><ul><li>8. Future Work </li></ul>
    7. 7. Complexities of Web Publishing Browser CGI ASP Servlet HTTP Response Database JDBC/ODBC HTML Create/Transform HTTP Request Web Server
    8. 8. Complexities of Web Publishing <ul><li>Expensive resources </li></ul><ul><li>- ODBC/JDBC </li></ul><ul><li>- ASP/JSP, Java/VBScript etc </li></ul><ul><li>- SQL </li></ul><ul><li>- Web Server Administration </li></ul><ul><li>Expensive processes </li></ul><ul><li>- Connecting to database at Server </li></ul><ul><li>- Creating HTML at Server </li></ul>
    9. 9. Simplify The Process Browser Database HTTP Request Web Server Template HTTP Response HTTP Response HTTP Request HTML Create/Transform
    10. 10. Simplify The Process <ul><li>Release a lot of resources </li></ul><ul><li>- No database connection at Server </li></ul><ul><li>- SQL dynamically generated at client machine </li></ul><ul><li>- HTML created at client machine </li></ul><ul><li>Reduce complexity of the process </li></ul><ul><li>- No ODBC/JDBC </li></ul><ul><li>- No Code for ASP/JSP </li></ul><ul><li>- Server only provides the Template </li></ul><ul><li>- Web Server Administration becomes easy </li></ul>
    11. 11. XML Technology <ul><li>New technology about data </li></ul><ul><li>Platform independent </li></ul><ul><li>Metalanguage </li></ul><ul><li>Provides structural and semantic information to the data </li></ul><ul><li>Provide additional meaning and context to the application </li></ul><ul><li>Well-formed, hierarchical structure and can be valid </li></ul>
    12. 12. XSL and XSLT <ul><li>XSL is a formatting language </li></ul><ul><li>XSL transforms XML data </li></ul><ul><li>XSLT is a text based transformation process </li></ul><ul><li>XSLT is completed through a XSL Stylesheet </li></ul>XSL Stylesheet XML Data XLST Processor Result Tree HTML, XML, Text … Transforms
    13. 13. SQL Server 2000 XML Support <ul><li>HTTP Access </li></ul><ul><li>FOR XML </li></ul><ul><li>XML Mode </li></ul><ul><li>- Raw: each row in result becomes “row” element </li></ul><ul><li>and columns become attributes </li></ul><ul><li>- Auto: table become element or sub-element, columns become attributes, hierarchy depends on table order in SQL </li></ul><ul><li>- Explicit: user defines the elements and attributes </li></ul>
    14. 14. Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Introduction </li></ul><ul><li>4. Architecture </li></ul><ul><li>5. Implementation </li></ul><ul><li>6. Demonstration </li></ul><ul><li>7. Conclusion </li></ul><ul><li>8. Future Work </li></ul>
    15. 15. Framework Architecture QueryTemplate.xml Schema Query XSL Stylesheet Mapper SQL Database XML Data HTTP Request HTTP Response RunValidator HTML Document Transforms Generators Java Objects Our Framework
    16. 16. Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Introduction </li></ul><ul><li>4. Architecture </li></ul><ul><li>5. Implementation </li></ul><ul><li>6. Demonstration </li></ul><ul><li>7. Conclusion </li></ul><ul><li>8. Future Work </li></ul>
    17. 17. Components and Objects <ul><li>Defines which data to display and how to display </li></ul><ul><li>Must follow a Schema </li></ul><ul><li>Root Element: <xmlMapper:mapper> </li></ul><ul><li>First Part: <xmlMapper:query> defines which data </li></ul><ul><ul><li>Sub-element <xmlMapper:fields> defines fields and table </li></ul></ul><ul><ul><li>Sub-element <xmlMapper:where> defines the WHERE clause </li></ul></ul><ul><ul><li>Used by Generators to generate the Query </li></ul></ul><ul><li>Second Part: <xmlMapper:output> defines how to display </li></ul><ul><ul><li>Define targets and actions for XML Stylesheet </li></ul></ul><ul><ul><li>Can be any HTML output </li></ul></ul><ul><ul><li>Used by Generators to create the XSL Stylesheet </li></ul></ul>The QueryTemplate.xml Template
    18. 18. Components and Objects The Generators <ul><li>Retrieve the QueryTemplate.xml Template from Server </li></ul><ul><li>Accept user input query condition </li></ul><ul><li>Generate the Query and the XSL Stylesheet </li></ul><ul><li>Also validate the Template when running at terminal </li></ul><ul><li>Accept the Query, XSL Stylesheet and database address </li></ul><ul><li>Retrieve XML Data from SQL Server 2000 database </li></ul><ul><li>Transform the XML data into HTML document </li></ul>The Mapper <ul><li>GUI Tool to help developing the Template </li></ul><ul><li>Run at Server terminal </li></ul>The RunValidator
    19. 19. Components and Objects <ul><li>Generated by the Generators based on the Template </li></ul><ul><li>Used by the Mapper to retrieve the XML data from database </li></ul><ul><li>Format: </li></ul><ul><li>SELECT+'<ROOT>';SELECT </li></ul><ul><li>… </li></ul><ul><li>TableName.FieldName </li></ul><ul><li>… </li></ul><ul><li>WHERE TableName1.FieldName=TableName2.FieldName </li></ul><ul><li>AND TableName.Field= </li></ul><ul><li>FOR XML AUTO;SELECT '</ROOT>' </li></ul>The Query
    20. 20. Components and Objects <ul><li>Generated by the Generators based on the Template </li></ul><ul><li>Used by the Mapper to transform the XML data into HTML </li></ul><ul><li>Regular XSL Stylesheet </li></ul><ul><li>Specifies matching targets and actions </li></ul><ul><li>Usually, the matching targets are XML elements or </li></ul><ul><li>Attributes </li></ul><ul><li>Application dependent </li></ul>The XSL Stylesheet
    21. 21. Components and Objects <ul><li>The SQL Database </li></ul><ul><li>SQL Server 2000 database </li></ul><ul><li>Support retrieving XML data via HTTP access with the </li></ul><ul><li>“ FOR XML” clause </li></ul>The XML Data <ul><li>Database table name become elements or sub-elements </li></ul><ul><li>Hierarchy depends on the order defined in the Template </li></ul>The HTML Document <ul><li>The desired HTML Document </li></ul><ul><li>Display in client’s browser </li></ul>
    22. 22. Components and Objects <ul><li>Include Java objects the Generators and the Mapper </li></ul><ul><li>Specify a location to display the resulting HTML </li></ul><ul><li>Use a form to get user input query condition </li></ul><ul><li>Use a button to trigger the Javascript method that did all the process </li></ul>The Starting HTML
    23. 23. Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Introduction </li></ul><ul><li>4. Architecture </li></ul><ul><li>5. Implementation </li></ul><ul><li>6. Demonstration </li></ul><ul><li>7. Conclusion </li></ul><ul><li>8. Future Work </li></ul>
    24. 24. Demonstration <ul><li>accounts Database </li></ul><ul><li>Show how to develop, deploy, and apply our framework step by step </li></ul><ul><li>Northwind Database </li></ul><ul><li>Show how to transform deep hierarchical XML data </li></ul><ul><li>Show how easy to insert a column into HTML table after development </li></ul>
    25. 25. Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Introduction </li></ul><ul><li>4. Architecture </li></ul><ul><li>5. Implementation </li></ul><ul><li>6. Demonstration </li></ul><ul><li>7. Conclusion </li></ul><ul><li>8. Future Work </li></ul>
    26. 26. Benefits and Significance <ul><li>HTML is dynamically created on client machine  Increase scalability and performance of the server </li></ul><ul><li>Retrieve XML data from database directly on client machine  Reduce complexity </li></ul><ul><li>One Template to specify what to display and how to display it  Easy to use and maintain </li></ul><ul><li>All processes are executed on client machine </li></ul><ul><li> More secure </li></ul>
    27. 27. Agenda <ul><li>1. Motivation </li></ul><ul><li>2. Objectives </li></ul><ul><li>3. Introduction </li></ul><ul><li>4. Architecture </li></ul><ul><li>5. Implementation </li></ul><ul><li>6. Demonstration </li></ul><ul><li>7. Conclusion </li></ul><ul><li>8. Future Work </li></ul>
    28. 28. Scope for Future Work <ul><li>Support Netscape browser </li></ul><ul><li>Validate XML data in browser </li></ul><ul><li>Support writing data to database, even keep a user session </li></ul><ul><li>Support other databases </li></ul>
    29. 29. <ul><li>Thank You ! </li></ul>
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×