XML-Based Course Websites Michael Wollowski Computer Science and Software Engineering Department

advertisement
XML-Based Course Websites
Michael Wollowski
Computer Science and
Software Engineering Department
Rose-Hulman Institute of Technology
Introduction: Background
My interest is in search engines
XML promises the development of powerful
search engines
Placed CSSE course descriptions into XML
Wrote a search engine for them
Realized that editors are easy
Have to rely on other people to provide
contents
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
Introduction: XML in comparison
Benefits of courseware products:
Ease of use
Integration with other systems
Drawbacks of courseware products:
Formatting and functionality are as
provided
Introduction: XML in comparison
Benefits of direct editing:
Complete control over appearance and
contents
Drawbacks of direct editing:
A lot of work formatting contents
Introduction: XML in comparison
XML promises to share some of the
benefits of both:
Complete control over appearance and
contents
Ease of contents creation and maintenance
Additional benefit of XML:
Powerful search engines
XML: The Technology
Three technologies in one:
DTD
XML document
XSL stylesheet
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
XML: XML Documents
Example:
<course_description>
<id>CSSE 100</id>
<title>Introduction to Programming
and Problem Solving
</title>
</course_description>
XML: XML Documents
Design your own element structure by
defining a DTD
Use someone else’s DTD
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
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
XML: XSL Stylesheets
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
XML: XSL Stylesheets
They are complex
Determine order of presentation
Leave out information
Limited amount of processing, e.g. fill in
missing information
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
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)
Forms-Based Editor
A web-page with text-fields for XML
elements
Customized to DTD
Straight-forward to provide
Possible to auto-generate
Forms-Based Editor
Pinpoint Searching
Special-purpose search engine tailored
to DTD
Information processing engine
Pinpoint Searching
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
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
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
Future Work
General purpose search engine
DTDs for course materials
Download