0493 - Introduction to XML
Description
Course DetailsXML is today's most popular way to store and send information. In this course, you'll master the essentials of XML through easy-to-follow, real-world examples. Even if you've never tried computer programming, you'll discover how quickly you can learn to produce powerful "code." By the end of this course, you will be surprised at how fun programming can be! You will learn all the essential elements of programming like variables, loops, and branching. Using a full-featured design editor, you'll see how to build efficient, professional-looking user interfaces. You will explore all the main XML techniques - XPath, XSL, schemas, namespaces, DOM, and SAX. You'll practice using XML to search, manipulate, validate, and merge XML files and use SVG for displaying graphics like charts, drawings, and diagrams. When you've finished this course, you will understand how XML simplifies computer programming, and you'll have built a surprisingly sophisticated cookbook program that displays, modifies, searches, imports, and deletes recipes stored in XML format. This is your first step toward writing custom programs or furthering your career!
How It WorksThis course is fully online, you require internet access and an email account. The course duration is 6 weeks, followed by a 2-week period to complete the final exam (online, open book). Lessons are released on Wednesdays and Fridays of each week, for a total of 12. You are not required to be online at any specific time. In addition to the specific lesson content, there is a discussion board with each lesson and often there is an optional assignment to apply the learning. Following each lesson, there is a short multiple choice quiz. Your score on these quizzes does not count towards the final mark but completing these helps solidify your learning as well as prepare you for the final exam. The final exam is an open-book, multiple choice exam and you need to achieve a minimum of 65% on the final exam to pass the course. There is only one opportunity to pass the exam. A certificate of completion from WatSPEED is available within four weeks of successful completion of each course and can be accessed in your student portal. Many of the Ed2Go courses are eligible towards the various online certificates offered by WatSPEED.
RequirementsHardware Requirements:
- This course is not suitable for Macs unless you have a Windows emulator such as Parallels installed.
Software Requirements:
- PC: Windows 8 or later.
- Browser: The latest version of Google Chrome or Mozilla Firefox are preferred. Microsoft Edge is also compatible.
- Microsoft's free Visual Studio Express or Visual Studio Community 2013 through 2019 versions.
- Adobe Acrobat Reader.
- Software must be installed and fully operational before the course begins.
Other:
- Email capabilities and access to a personal email account.
Lesson 1 - Creating Your First XML Document. In this
first lesson, you'll install and personalize one of the greatest bargains in computer
programming—Microsoft's free, yet powerful, Visual Studio (VS) Express. After decades of fine-tuning,
the VS programming suite is widely considered one of the most efficient ways to communicate with
computers. You'll use the VS XML editor to create your first XML document. (The editor shows you any
mistakes and even writes half the code for you!) And by the end of the lesson, you'll discover that
programming can be both easy and fun. You'll be on your way to using XML in your personal projects
or in your career.
Lesson 2 - Mastering the Basics of XML Documents. In
this lesson, you'll explore the rest of the fundamentals of XML. You'll compare XML and HTML and
examine the main similarities and differences between the two languages and look at adding comments
and attributes in XML. When you're finished with those fundamentals, you'll begin to create a cookbook
project using Visual Studio.
Lesson 3 - Understanding Computer Programming.
This lesson is all about programming. You'll explore the most common programming techniques,
including creating variables, setting up loops, and telling the program how to make decisions by
branching to alternative sections of code. You'll also learn how to use the editor's Design window to
align and resize controls. The goal is to make your program's user interface look clean and
professional. Finally, you'll write your first serious XML programming—going through your cookbook
document one recipe at a time (looping) and copying each recipe's title into a listbox so your users can
select whatever recipes they want to see. During this lesson, you'll discover just how much fun
programming can be!
Lesson 4 - Formatting XML With Cascading Style
Sheets. It's time to take control of your XML formatting. In this lesson, you'll focus on ways to make
XML look good when people view it in browsers. You'll specify exactly how you want your XML data
displayed. You'll create style rules about color, position, size, and typeface (font) to make your content
look great on a web page. Finally, you'll add code to the cookbook program that displays a recipe's
instructions when the user clicks its title.
Lesson 5 - Formatting With XSL. This lesson
introduces an important XML feature: XSL, or Extensible Style Sheet Language. You'll learn to present
raw data attractively and efficiently in browsers using XSL style sheets. Then, you'll explore
transforming your XML data by sorting its elements alphabetically and displaying them in a table as a
numbered list. You'll also learn how to add a search feature to your cookbook project.
Lesson 6 - Searching With XPath. This lesson will
discuss the fundamentals of XPath, XML's query language. You'll see how to search through the data
in an XML document to locate a particular element, copy the element into a listbox, and then delete it
from the XML document. You'll also practice using two invaluable learning and debugging tools:
breakpoints and single-stepping.
Lesson 7 - Transforming XML With XSLT. If you've
been wanting to know more about XSLT, this is your chance to learn how to use it. You'll find out how to
use XSLT to transform XML structures and how to change an XML file into CSV—comma separated
values, a format used to store tables like spreadsheets. You'll practice other transformations such as
adding, deleting, and renaming elements in an XML document. You'll also see how to use the Visual
Studio editor's XSLT features. Finally, you'll add a needed feature to the cookbook project: refreshing
the list of titles.
Lesson 8 - Validating With Schemas. This lesson
shows you how to make sure that an XML document is valid. In other words, you'll compare an XML file
to a schema file that describes the XML's correct structure and the types of data it must contain.
Validation goes beyond the simple concept of a "well-formed" document, which only examines simple
errors like missing end tags. But because creating validation files by hand can be complicated and
tedious, you'll use the automatic schema generator built into VS. Then, you'll write a custom VB
validator program of your own. And finally, you'll make the cookbook project even easier to use by
writing code that adds new recipes with one click of an Import button.
Lesson 9 - Exploring XML Graphics. In this lesson,
you'll learn to store and display XML graphics. First, you'll work with SVG, an XML format that
specializes in creating lines, shapes, color, special text effects, and geometric drawings. SVG is
especially useful when you want to display charts, drawings, or diagrams. Then, you'll explore how to
display bitmaps, which are photographic images stored on the hard drive already completely rendered.
Last but not least, you'll learn some techniques that radically improve the cookbook program's
UI.
Lesson 10 - Managing Namespaces. This lesson will
focus on namespaces—the XML technique that avoids ambiguity when two element tag names are
identical but refer to different things. This happens when you try to merge two or more XML documents:
A grocery store means one thing by the tag apple, but a computer store means something else. You'll
learn how to attach a unique web page address (a URL) to a set of tags to avoid this name collision
problem. You'll also see how programmers use namespaces in other areas of computing, such as
separating commands into individual code libraries. Then you'll add a feature to the cookbook program
that allows the user to modify a recipe and automatically save the changes to the XML file!
Lesson 11 - Creating a Homework Quiz Project. In this
lesson, you'll look at two related programs—one that translates user input into XML, and another that
displays the XML data in the form of a quiz. You'll learn how to use both programs, creating practice
quizzes for students or anyone facing a test.
Lesson 12 - Creating a Coin Collection Program. In the
final lesson, you'll explore the two main ways to manage XML data—DOM and SAX. DOM loads the
whole XML document into the computer's memory all at once, permitting random-access to the data.
SAX, the alternative approach, streams data, leaving only a little in memory at a time. SAX is most
useful when you're dealing with immense XML files, but SAX's sequential access (it moves
forward-only) makes modifying the XML structure more difficult. You'll also transform the cookbook
program into a coin collection program—a searchable notebook that can even display photos of each
coin. You'll see how to reuse basic code to create any kind of XML data management program—a
stamp collection, family scrapbook, you name it!
