1 / 34

RHIT/CSSE

Experience with an XML-Based Syllabus Editor and Search Engine Michael Wollowski Computer Science and Software Engineering Department Rose-Hulman Institute of Technology. RHIT/CSSE. Small engineering school Students expect the use of technology: e-mail web newsgroups online gradebook

cady
Download Presentation

RHIT/CSSE

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Experience with an XML-Based Syllabus Editor and Search EngineMichael Wollowski Computer Science and Software Engineering Department Rose-Hulman Institute of Technology

  2. RHIT/CSSE • Small engineering school • Students expect the use of technology: • e-mail • web • newsgroups • online gradebook • RHINO • Not interested in online instruction • Interested in use of technology to facilitate learning

  3. Introduction: Benefits of XML • Separation of form and contents • Common information can be placed into separate files • Webpages of the same kind are rendered in the same way • Ease of editing • Pinpoint searching

  4. XML: The Technology • Three technologies in one: • DTD • XML document • XSL stylesheet

  5. XML: XML Documents • XML documents contain elements • An element consists of an opening and closing tag • Elements are nested • Element names describe contents • Elements are not used to format documents

  6. XML: XML Documents • Example: <course_description> <id>CSSE 100</id> <title>Introduction to Programming and Problem Solving </title> </course_description>

  7. XML: XML Documents <?xml version="1.0"?> <!DOCTYPE course_description SYSTEM "course_description.dtd"> <?xml-stylesheet type="text/xsl" href="course_description.xsl"?> <course_description> <id> CSSE 120</id> <title> Fundamentals of Software Development I </title> <credits> 3R-3L-4C F,W,S </credits> <description> This course develops problem solving skills and introduces both fundamental concepts of computer science and current practices of object-oriented software development. Students complete a series of projects requiring the choice of appropriate algorithms and the use of procedural abstraction, control constructs, and elementary data structures. The projects explore current practices of object-oriented software development, such as multi-threaded event-driven programming, the development of graphical user interfaces, and interaction among objects. Students complete some projects individually, some in small groups, and one in a challenging multi-week team project. The use of a disciplined design process is emphasized in each of the projects, including good programming style and thorough testing. This course presumes no prior programming experience. </description> </course_description>

  8. XML: XML Documents • Design your own element structure by defining a DTD • Use someone else’s DTD

  9. XML: DTDs • A DTD defines a class of documents • A DTD specifies: • Elements of the document • Attributes of elements • Order and nesting of elements • Whether elements are necessary

  10. XML: XSL Stylesheets • Used to transform an XML document into an HTML document • XML documents specify which XSL stylesheet is to be used. • Web-browser receives XML document and then requests XSL stylesheet

  11. XML: XSL Stylesheets

  12. XML: XSL Stylesheets • Uniform appearance of classes of documents: use same stylesheet • Stylesheet has to be edited just once • Separation of form and contents • Content providers focus on providing contents

  13. XML: XSL Stylesheets • They are complex • Determine order of presentation • Leave out information • Limited amount of processing, e.g. fill in missing information

  14. XML: XSL Stylesheets • Combine information from several documents • Minimize repetition of information, by placing common information into separate documents • Ensures consistency of information • Reduces amount of nuisance editing

  15. Structural Overview of Documents Syllabus Course Description Departmental Information

  16. Department.xml file <?xml version="1.0"?> <!DOCTYPE departmental_information SYSTEM "department.dtd"> <departmental_information> <institution> Rose-Hulman Institute of Technology</institution> <department> Computer Science and Software Engineering Department </department> <term> Fall</term> <year> 2002/3</year> </departmental_information>

  17. Editing • Separation of form and contents greatly aids in editing • Contents providers do not have to be concerned about formatting • Three ways to edit an XML document: • Edit a template (good) • Copy and edit another document (better) • Use a forms-based editor (best)

  18. Forms-Based Editor • A web-page with text-fields for XML elements • Customized to DTD • Straight-forward to provide • Possible to auto-generate

  19. Forms-Based Editor

  20. Syllabus Editor Demo

  21. Syllabus Editor Demo

  22. Syllabus Editor Demo

  23. Syllabus Editor Demo

  24. Syllabus Editor Demo

  25. Syllabus Editor Demo

  26. Pinpoint Searching • Special-purpose search engine tailored to DTD • Information processing engine

  27. Pinpoint Searching

  28. Syllabus Search Demo

  29. Syllabus Search Demo

  30. Syllabus Search Demo

  31. Experience with the Technology • Course description editor is easy • Tested syllabus editor on 20 students • Editor works well for structured XML documents • HTML can be added and is properly rendered • Preview of documents is being added

  32. Experience with the Technology • Tested course descriptions search engine on 30 students • One side of classroom used our XML search engine, other side used Google, restricted to RHIT • Asked a variety of questions, some favored ours, some favored Google, and some were neutral

  33. Experience with the Technology • “Which courses can I take if I passed CSSE230?” favored XML search • “What are the required CS courses for a CS major?” favored Google • “What programming languages are used in the CS curriculum?” favored neither • XML searchers turned in their results before Google searchers

  34. Future Work • General purpose search engine • DTDs for other course materials

More Related