Acknowledgments |
|
xi | |
Introduction |
|
xiii | |
|
SQL, XML, and the Business Internet |
|
|
1 | (12) |
|
|
1 | (2) |
|
The Challenge of Integration |
|
|
3 | (1) |
|
|
4 | (5) |
|
Representing Business Entities with XML |
|
|
5 | (4) |
|
Web-Enabling a Business Using XML |
|
|
9 | (4) |
|
Using XML in Business to Consumer (B2C) Solutions |
|
|
9 | (1) |
|
Using XML in Business to Enterprise (B2E) Solutions |
|
|
10 | (1) |
|
Using XML in Business to Business (B2B) Solutions |
|
|
10 | (1) |
|
Web-Enabling Northwind Traders with XML |
|
|
11 | (2) |
|
Retrieving XML Data Using Transact-SQL |
|
|
13 | (22) |
|
The Select...for XML Statement |
|
|
13 | (2) |
|
|
15 | (1) |
|
Using Joins in RAW Mode Queries |
|
|
15 | (1) |
|
Using Column Aliases to Specify Attribute Names |
|
|
16 | (1) |
|
|
16 | (3) |
|
Using Aliases in Auto Mode Queries |
|
|
17 | (1) |
|
|
17 | (1) |
|
Using the Elements Option |
|
|
18 | (1) |
|
|
19 | (14) |
|
Identifying the Required Universal Table |
|
|
20 | (2) |
|
Directives in Explicit Mode Queries |
|
|
22 | (1) |
|
Retrieving Subelements with the element and xml Directives |
|
|
22 | (2) |
|
Using Explicit Mode to Retrieve Related Data |
|
|
24 | (4) |
|
Sorting Data with the hide Directive |
|
|
28 | (1) |
|
Using the xmltext Directive to Retrieve XML Values |
|
|
29 | (2) |
|
Retrieving CDATA with the cdata Directive |
|
|
31 | (1) |
|
Using the ID, IDREF, and IDREFS Directives and the XMLDATA Option |
|
|
32 | (1) |
|
Retrieving Binary Fields with the Binary Base64 Option |
|
|
33 | (1) |
|
|
34 | (1) |
|
Using ADO for XML Data Access |
|
|
35 | (14) |
|
|
36 | (1) |
|
|
36 | (3) |
|
Submitting a For XML Query |
|
|
37 | (1) |
|
Calling a Stored Procedure |
|
|
38 | (1) |
|
Using ADO to Execute XML Queries |
|
|
39 | (6) |
|
Submitting an XML Query Using the MSSQLXML Dialect |
|
|
40 | (2) |
|
Submitting an XML Query as a Stream Object |
|
|
42 | (3) |
|
XML-Related SQLOLEDB Provider Properties |
|
|
45 | (2) |
|
Applying a Style Sheet with the XSL Property |
|
|
45 | (1) |
|
Using Relative Paths and the Base Path Property |
|
|
45 | (1) |
|
Controlling File References with the SS Stream Flags Property |
|
|
46 | (1) |
|
Managing the Output Format with the Output Encoding Property |
|
|
47 | (1) |
|
|
47 | (2) |
|
Using HTTP for Data Access |
|
|
49 | (22) |
|
SQL Server HTTP Publishing Architecture |
|
|
49 | (1) |
|
Publishing a Database Through an IIS Virtual Directory |
|
|
50 | (10) |
|
Specifying a Name and a Path for the Virtual Directory |
|
|
51 | (2) |
|
Securing the Virtual Directory |
|
|
53 | (3) |
|
Specifying the Data Source |
|
|
56 | (1) |
|
Specifying Data Access Settings |
|
|
57 | (1) |
|
|
58 | (2) |
|
Specifying Advanced Options |
|
|
60 | (1) |
|
Scripting Virtual Directory Configuration |
|
|
60 | (4) |
|
The SQLVDirControl Object |
|
|
61 | (1) |
|
The SQLVDirs Collection Object |
|
|
62 | (1) |
|
|
62 | (1) |
|
The VirtualNames Collection Object |
|
|
63 | (1) |
|
|
64 | (1) |
|
Using URL Queries to Test a Virtual Directory |
|
|
64 | (5) |
|
Retrieving XML Documents Using a URL Query |
|
|
64 | (1) |
|
Encoding Special Characters in a URL Query |
|
|
65 | (1) |
|
Specifying a Style Sheet in a URL Query |
|
|
66 | (1) |
|
Specifying a Content Type |
|
|
67 | (2) |
|
Executing Stored Procedures in a URL Query |
|
|
69 | (1) |
|
|
69 | (2) |
|
Using XML Templates to Retrieve Data over HTTP |
|
|
71 | (14) |
|
|
71 | (1) |
|
|
72 | (1) |
|
Creating Parameterized Templates |
|
|
73 | (1) |
|
Applying Style Sheets with Templates |
|
|
73 | (6) |
|
Applying a Style Sheet on the Server |
|
|
75 | (3) |
|
Applying a Style Sheet on the Client Side |
|
|
78 | (1) |
|
|
79 | (4) |
|
Posting a Template from an HTML Form |
|
|
79 | (2) |
|
Posting Templates from Non-HTML Clients |
|
|
81 | (2) |
|
|
83 | (2) |
|
Retrieving Data with Mapping Schemas |
|
|
85 | (34) |
|
XML Schemas---An Overview |
|
|
85 | (3) |
|
Defining an XML Document with a Schema |
|
|
86 | (1) |
|
XML-Data Reduced (XDR) Schemas |
|
|
86 | (1) |
|
|
87 | (1) |
|
|
88 | (6) |
|
|
89 | (1) |
|
Using Annotations to Map Data |
|
|
90 | (4) |
|
Using a Mapping Schema to Retrieve Data |
|
|
94 | (8) |
|
Using an XPath Expression with a Schema |
|
|
94 | (1) |
|
Using Mapping Schemas with ADO |
|
|
95 | (4) |
|
Using Mapping Schemas over HTTP |
|
|
99 | (2) |
|
|
101 | (1) |
|
|
102 | (16) |
|
Defining Constants in a Schema |
|
|
102 | (4) |
|
|
106 | (3) |
|
|
109 | (1) |
|
Using ID, IDREF, and IDREFS Annotations |
|
|
110 | (3) |
|
Specifyign a Target Namespace |
|
|
113 | (2) |
|
|
115 | (1) |
|
Retrieving CDATA Sections |
|
|
116 | (1) |
|
Retrieving Overflow Columns |
|
|
117 | (1) |
|
|
118 | (1) |
|
Inserting XML Data Using OpenXML |
|
|
119 | (20) |
|
A Model for Receiving XML Documents |
|
|
119 | (3) |
|
Passing XML Data to a Stored Procedure |
|
|
120 | (1) |
|
Parsig and Shredding an XML Document |
|
|
120 | (1) |
|
|
121 | (1) |
|
Generating Rowsets with the OpenXML Function |
|
|
122 | (7) |
|
Specifying the Row Pattern |
|
|
123 | (3) |
|
Using Flags to Retrieve Attributes and Elements |
|
|
126 | (1) |
|
Defining the Rowset Schema |
|
|
127 | (2) |
|
Using OpenXML to Insert Data |
|
|
129 | (4) |
|
Inserting Data into an Existing Table |
|
|
129 | (3) |
|
|
132 | (1) |
|
Using OpenXML to Retrieve XML Metadata |
|
|
133 | (3) |
|
|
134 | (1) |
|
|
135 | (1) |
|
|
136 | (3) |
|
|
139 | (32) |
|
Installing the XML For SQL Server 2000 Web Release |
|
|
139 | (2) |
|
XML For SQL Server 2000 Web Release 1 at a Glance |
|
|
140 | (1) |
|
Modifying Data with Updategrams |
|
|
141 | (16) |
|
|
141 | (1) |
|
Mapping Data in an Updategram |
|
|
142 | (2) |
|
Handling NULLs in an Updategram |
|
|
144 | (1) |
|
Using Parameters in an Updategram |
|
|
144 | (2) |
|
|
146 | (1) |
|
|
147 | (1) |
|
Inserting Rows with an Updategram |
|
|
148 | (4) |
|
Deleting Data with an Updategram |
|
|
152 | (1) |
|
Updategrams and Concurrency |
|
|
153 | (3) |
|
Combining Insert, Update, and Delete Operations in an Updategram |
|
|
156 | (1) |
|
The XML Bulk Load Component |
|
|
157 | (13) |
|
How the Bulk Load Component Works |
|
|
157 | (2) |
|
|
159 | (1) |
|
Maintaining Referential Integrity |
|
|
160 | (6) |
|
Generating the Database Schema |
|
|
166 | (4) |
|
|
170 | (1) |
|
Buildign an E-Commerce Solution with SQL Server and XML |
|
|
171 | (58) |
|
The Sample E-Commerce Scenario |
|
|
171 | (3) |
|
Overview of the E-Commerce Scenario |
|
|
172 | (1) |
|
Challenges in the E-Commerce Scenario |
|
|
173 | (1) |
|
The Online Retail Web Site |
|
|
174 | (26) |
|
Displaying Product Categories |
|
|
175 | (3) |
|
Displaying the Products in a Specified Category |
|
|
178 | (4) |
|
Displaying Product Details |
|
|
182 | (3) |
|
|
185 | (3) |
|
Managing the Shopping Basket |
|
|
188 | (7) |
|
|
195 | (5) |
|
Order Processing at the Supplier |
|
|
200 | (11) |
|
Inserting the Order in the Supplier Database |
|
|
201 | (1) |
|
Preparing Goods for Shipment with the Order Picking Application |
|
|
202 | (6) |
|
Sending the Order Details to the Delivery Company |
|
|
208 | (3) |
|
Viewing Delivery Information |
|
|
211 | (1) |
|
|
212 | (4) |
|
|
213 | (2) |
|
Importing the Catalog Data |
|
|
215 | (1) |
|
|
216 | (11) |
|
Introducing BizTalk Server 2000 |
|
|
216 | (1) |
|
|
216 | (11) |
|
|
227 | (2) |
Appendix Introduction to XML |
|
229 | (34) |
|
|
229 | (8) |
|
|
231 | (1) |
|
Representing Data in an XML Document |
|
|
232 | (3) |
|
|
235 | (2) |
|
Navigating XML Documents with XPath |
|
|
237 | (4) |
|
Specifying a Location Path |
|
|
239 | (2) |
|
Using Criteria in Location Paths |
|
|
241 | (1) |
|
|
241 | (11) |
|
XSL Style Sheet Documents |
|
|
242 | (6) |
|
Using Multiple Templates in a Style Sheet |
|
|
248 | (2) |
|
|
250 | (2) |
|
|
252 | (9) |
|
|
252 | (2) |
|
Specifying a Content Model |
|
|
254 | (2) |
|
Limiting the Content of an Element |
|
|
256 | (1) |
|
Determining the Required Occurrences of Data |
|
|
257 | (1) |
|
|
258 | (2) |
|
Validating an XML Document |
|
|
260 | (1) |
|
|
261 | (2) |
Index |
|
263 | |