Contents
Overview 1
Lesson: Solutions That Use XML 2
Lesson: XML Web Services 17
Lesson: What Is Next? 27
Lab 10: Building a Menu System 32
Review 36
Course Evaluation 37
Module 10: The
Challenge of Designing
XML Solutions
Information in this document, including URL and other Internet Web site references, is subject to
change without notice. Unless otherwise noted, the example companies, organizations, products,
domain names, e-mail addresses, logos, people, places, and events depicted herein are fictitious,
and no association with any real company, organization, product, domain name, e-mail address,
logo, person, places or events is intended or should be inferred. Complying with all applicable
copyright laws is the responsibility of the user. Without limiting the rights under copyright, no
part of this document may be reproduced, stored in or introduced into a retrieval system, or
this area.
By the time participants get to this module, they have learned about a
considerable number of new technologies and ideas. Some participants might
feel overwhelmed. Hopefully, most are also excited by the capabilities that they
have learned about.
Throughout this module, you will need to be mindful of the time. Move through
this module quickly. Because it is at the end of the course, use the module to
review and relate the previous modules to one another.
Even though this is the final module, it still contains a significant amount of
new material. Be sure to prepare thoroughly for this module so that you can
lead the demonstrations and the lab smoothly.
You might want to do the challenge lab as a group exercise. This purpose of the
lab is to help the participants see the many possibilities provided by XML and
the .NET Framework.
After completing this module, participants will be able to:
!
List additional XML technologies that they can use in solution development.
!
List possible solutions to which you can apply XML and related
technologies.
!
Identify the skill sets required to design XML solutions.
!
Review a proposed solution and choose an appropriate mix of XML and
related technologies to address design requirements.
Presentation:
40 Minutes
Lab:
!
Review the XML site on MSDN to see what additional examples and
articles are available if participants want to extend their learning beyond the
class. In particular, check to see if there are later versions of any of the
demonstration files used in the module.
Required Materials
Preparation Tasks
Module 10: The Challenge of Designing XML Solutions v Instructor Setup for a Lab
This section provides setup instructions that are required to prepare the
instructor computer or classroom configuration for a lab.
!
Prepare for the lab
1. Internet Information Server (IIS) must be installed and running properly.
There will be no time to install IIS at this point in the course if it has not
been done.
2. The file msdntocc2.exe must be available in the install_folder\Labfiles\
Lab10\Starter folder.
3. Verify that the file installs and works properly on the instructor computer.
Multimedia Presentation
There are no media for this module. If the course is customized and extended,
use the various .NET media downloads to teach more about the relevant topics
covered in this module.
Lab 10: Building a Menu
System
vi Module 10: The Challenge of Designing XML Solutions
Stress the broader .NET context for participants to learn about across the
full range of the .NET Framework. The better you understand this yourself,
the easier this will be.
If you have time, open the Cold Storage Web site to demonstrate it to
students.
!
What Is Next?
This lesson is designed to help participants see where they can go beyond
this course for information and skills learning. Keep the main emphasis on
skills development. Do not sound like you are trying to sell other courses. If
the course is effective, participants will know how they can benefit by
developing their skill sets.
For the Jobs and Opportunities topic, stress that many traditional jobs will
be refined or redefined as a result of the .NET Framework. Even those who
are new to this field have many opportunities due to this fact.
Encourage participants to discuss the changing jobs and roles. If there is
extra time, lead a discussion on this topic. Refer participants to other events
that might help them.
Finally, stress that participants must constantly be learning in this rapidly
changing field about the many ways that they support this effort, and
encourage participants to get their home organizations involved in courses
like this to drive awareness and solutions.
Module 10: The Challenge of Designing XML Solutions 1 Overview
!
Solutions That Use XML
!
XML Web Services
2 Module 10: The Challenge of Designing XML Solutions Lesson: Solutions That Use XML
!
Layered Designs
!
XML-Based Menu Systems
!
Data Handling
!
Proprietary Systems
*****************************
ILLEGAL FOR NON
-
TRAINER USE
******************************
There are many ways that you can use and implement XML in solutions for the
handling of data, metadata, and data exchange. This lesson will briefly describe
several of these.
One particularly useful application of XML technologies is to use XML to
manage Web site navigation and menu systems. Combined with a sound
approach to layered architecture, you can use XML to manage communication
within and between particular layers of your solution. Many Microsoft MSDN
®
articles have addressed this topic since XML first came into focus in 1998.
After completing this lesson, you will be able to:
!
Task Scheduler
Fulfillment
Workflow
Fulfillment
Workflow
Active Server Pages with XSLT
Active Server Pages with XSLT
Fulfillment
Data Source
Fulfillment
Data Source
Duwamish
Database
Duwamish
Database
Queued
Workflow
Queued
Workflow
Workflow
Component
Workflow
Component
Business Logic Layer
Business Logic Layer
Data Access Layer
Data Access Layer
*****************************
ILLEGAL FOR NON
MsdnCompositeDoc.xml&frame=true.
Introduction
Note
4 Module 10: The Challenge of Designing XML Solutions When implementing layered design, the Web design team clearly separates the
various application functions from each other. This results in much easier
development routines, because each layer is maintained independently of each
other layer. You can manage code for each layer without impinging on any
other layer. Maintenance of the interaction between layers can be managed in
many different ways, including through XML data and XML documents.
The number of layers that you use depends on your conceptual framework and
the detail that you want to associate with each layer. Layers are thought of as
either top-down or bottom-up. Conventionally, the layers are as follows (using
a bottom-up listing).
Layer Purpose
Data access To provide access to data
Business logic To store business rules and logic processes
Presentation Actual display of information to the client
This does not provide the details about layers that are required in practical Web
design. The following table more specifically identifies layers and what they
do.
Layer Purpose
Data layer To provide the actual data storage (for example,
SQL Server)
XML-Based Menu Systems
!
XML-based menu systems use XML for content
and navigation
!
Microsoft.com site example
!
XML-based menus systems are a recurring theme
"
Menu articles in MSDN since 1998
XML Example
*****************************
ILLEGAL FOR NON
-
TRAINER USE
******************************
You can develop Web applications and menu systems by using XML. When
combined with data storage in SQL Server 2000 or other databases that support
XML, XML-based menu systems help to reduce page counts on a Web site. In
one example, the number of files was reduced by a factor of 10. The overall
efficiency of using XML also makes these systems very powerful.
You might not think that menu systems are important. However, every Web
site needs a menu system, and ideally they are as efficient and as easy to
maintain as possible. Many articles that are concerned with menu design and
implementation have appeared in MSDN publications. Combining XML
with .NET languages has resulted in a vigorous search for better ways of
creating menus.
TABINDEX="0">Download Center
Mostly XML/XSL
/us/SearchMS25"
TABINDEX="0">Search
XML/XSL
The benefits that result from using XML on Microsoft.com include the
following:
!
Reduced numbers of pages
!
Greater granularity of code
!
Less code breakage
!
Less replication required across the Microsoft network
!
More robust and data-driven ASP pages
!
More rapid development Links in these articles do not always work. The article contents are
still very useful, but do not be surprised if some of the links are broken. The
Microsoft site undergoes constant changes and some of the technical reference
pages no longer exist.
XML on Microsoft.com
Caution
Module 10: The Challenge of Designing XML Solutions 7
</TD>
<xsl:if test="context()[not(end())]">
<TD>|</TD>
</xsl:if>
</xsl:for-each>
</TR>
</TABLE>
</DIV>
<!-- BUILD INDIVIDUAL MENUS -->
<xsl:for-each select="//TOPICS[TOPIC]">
<DIV CLASS="clsMenu">
<xsl:attribute name="ID">
divMenu<xsl:value-of select="@TYPE" />
</xsl:attribute>
<DIV CLASS="clsMenuSpacer"></DIV>
<xsl:for-each select="TOPIC">
<DIV>
<A>
<xsl:attribute name="HREF">
<xsl:value-of select="URL" />
</xsl:attribute>
<xsl:value-of select="TITLE" />
</A>
</DIV>
</xsl:for-each>
</DIV>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
!
Visio 2002
!
Technical vocabularies: MathML and VoiceXML
!
XML editors
XML Data for Visio Drawing MathML Examples
*****************************
ILLEGAL FOR NON
-
TRAINER USE
******************************
You can represent data of any type in XML. By using the other XML
technologies, you can render that data in many ways.
Microsoft Excel can store typical numeric business data in a worksheet in XML
format. Microsoft Access and SQL Server 2000 can store structured data.
Microsoft BizTalk
™
Server 2000 uses XML to store all types of data for
e-commerce and document management, and Microsoft Visio
®
uses XML to
store workflow and diagrammatic data. Other specialist languages such as
MathML use XML to render mathematical data, and various editors are
designed for document data handling.
To render data, you use XML with the following applications:
!
Microsoft Excel
The capabilities of XML worksheets are not identical to those of a standard
diagrammatic-driven environments that use XML data to manage other
processes, as is done with XLANG schedules in BizTalk Server 2000.
Visio uses XML in a particularly interesting way, because it allows you to
develop visual solutions that can be translated into XML and thereby used
in many different data-centric scenarios.
The following screen shot is a Visio drawing of the Microsoft WordPad
interface, saved as a VXD file.