Skip To Content

Athabasca University

Section 3.1 Extended Markup Language (XML)

Learning Objectives

After you have completed this section, you should be able to

  • define XML.
  • explain why it has been developed.
  • explain some basic terminologies of XML.
  • define DTDs and Schemas.
  • write a DTD or schema for a given XML-based markup language.
  • describe some XML-based markup languages such as MathML and XML.
  • define the Document Object Model (DOM) and where it should be used.
  • explain how XML documents are parsed and used in a website.
  • write and use XSL and XSLT for website development.

Activities

Study Questions

  1. What is XML? For what purpose was it developed?
  2. What are the main features of XML compared to HTML?
  3. Is XML case sensitive?
  4. What should an XML document start with?
  5. Should every start tag have a matching end tag?
  6. Should every attribute value be enclosed in either double quotes or single quotes?
  7. Are XML tags allowed to overlap one another?
  8. What is a root element of an XML document?
  9. What are XML namespaces? Why are namespaces used in XML documents?
  10. How do you introduce a namespace and use it in an XML document?
  11. If you have written an XML document, how do you check whether it is valid or not?
  12. What are data type definitions?
  13. How are DTDs used?
  14. How does a DTD help an XML parser to verify that an XML document is valid?
  15. What does an ELEMENT element type define in a DTD?
  16. What does an ATTLIST element type define in a DTD?
  17. How do you specify child elements for an element in a DTD?
  18. Can you specify the data type of an element or attribute in a DTD?
  19. What do the keywords #IMPLIED, #REQUIRED, #FIXED, EMPTY specify?
  20. What data do CDATA and #PCDATA refer to?
  21. What is XML Schema? What led to the development of schemas?
  22. What are the differences between DTD and Schema?
  23. What are the main advantages of XML Schema over DTDs?
  24. What namespace do XML Schema documents use?
  25. What markup tags are provided to write XML schemas?
  26. Can you specify what type of data an element or attribute may take? How do you do that?
  27. What is MathML?
  28. What markup tags are provided to describe mathematical notions and expressions?
  29. What other markup language derived from XML is interesting to you?
  30. What is the Document Object Model (DOM)?
  31. What are DOM-based XML parsers?
  32. What does a DOM-based XML parser generate?
  33. What are root nodes, parent nodes, sibling nodes, and child nodes in a DOM tree?
  34. What can you do with the nodes in a DOM tree?
  35. What properties are associated with each node in a DOM tree?
  36. How do you describe the relationships between DTDs, XML Schema, XML parsers, and DOMs?
  37. What methods are associated with each node in a DOM tree?
  38. What are the advantages and disadvantages of DOM-based XML parsers?
  39. What is the simple API for XML (SAX)?
  40. What are the differences between DOM-based parsers and SAX-based parsers?
  41. What does a SAX-based XML parser generate?
  42. What are the advantages and disadvantages of SAX-based parsers?
  43. What is the Extensible Stylesheet Language (XSL)?
  44. What does an XSL document specify?
  45. What is the relationship between XML and XSL?
  46. What is XSLT?
  47. What are source trees and result trees in XSLT?
  48. How do you refer to an XSL style sheet within an XML document?
  49. How do you use an XSL style sheet to transform each element or attribute of an XML document?
  50. What are templates in XSL style sheets? What does each template describe?

Review

Do the self-review exercises for Chapter 15.

Summary

Read the Chapter 15 summary.

Updated May 06 2022 by FST Course Production Staff