Beginning XML Databases

by
Format: Paperback
Pub. Date: 2006-11-13
Publisher(s): Wrox
List Price: $41.99

Rent Book

Select for Price
There was a problem. Please try again later.

New Book

We're Sorry
Sold Out

Used Book

We're Sorry
Sold Out

eBook

We're Sorry
Not Available

How Marketplace Works:

  • This item is offered by an independent seller and not shipped from our warehouse
  • Item details like edition and cover design may differ from our description; see seller's comments before ordering.
  • Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
  • Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
  • Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.

Summary

Supported by all major database systems, XML provides an easy, standardized method of transferring data between databases and to and from the Web, independent of the software in use Offers database programmers and data-driven Web developers detailed guidance on how to understand and work with XML as data Numerous hands-on, step-by-step examples help readers learn to simplify database work using XML Shows how to use XML to exchange data between multiple databases either internally or with external customers and partners Covers XML in popular databases including Oracle Database, SQL Server, and brief coverage of DB2 Database Covers basic syntax for XML, the XML DOM, and XSL - with an emphasis on database use, and native XML databases Additional topics covered include Native XML databases, XPath, XQuery, XLink, XPointer, DTDs, XML Schemas, among others

Author Biography

Gavin Powell has a BSc. in Computer Science, along with numerous professional accreditations and skills. He has had a lot of practice with things like XML, Oracle, Ingres, and MSAccess, as well as a multitude of application development languages and platforms. He has almost 20 years of contracting, consulting, and hands-on educating experience—in both software development and database administration roles. He has lived, studied, and worked on three different continents, and is now scratching a living as a writer, musician, and family man. He can be contacted at creativemusician@bellsouth.net or info@oracledbaexpert.com.

Table of Contents

Introduction xvii
What Is XML?
1(28)
Comparing HTML and XML
2(1)
What Is XML Capable Of?
3(1)
What Is XSL?
3(1)
Creating and Displaying a Simple XML Document
4(7)
Embedding XML in HTML Pages (Data Islands)
7(4)
Introducing the XML Document Object Model
11(1)
XML Browsers and Different Internet Browsers
12(1)
The Document Type Definition
12(5)
XML Syntax
17(10)
Elements
17(2)
Attributes
19(5)
Reserved Characters in XML
24(1)
Ignoring the XML Parser with CDATA
24(1)
What Are XML Namespaces?
24(2)
XML in Many Languages
26(1)
Summary
27(1)
Exercises
27(2)
The XML Document Object Model
29(28)
Basic XML DOM Structure
30(2)
The Primary XML DOM Classes
32(15)
The Node Class
33(1)
The NodeList Class
34(1)
The NamedNodeMap Class
35(3)
The Document Class
38(4)
The Element Class
42(2)
The Attr Class
44(1)
The Text Class
45(2)
More Obscure XML DOM Classes
47(5)
The parseError Class
47(3)
HTTPRequest Class
50(2)
Other Classes
52(1)
Generating XML Using ASP
52(2)
Summary
54(1)
Exercises
54(3)
Extending the Power of XML with XSL
57(30)
What Is XSL?
57(2)
The Roots of XSL
58(1)
Basic XSL Elements Syntax
59(17)
Processing Instruction Elements
60(1)
xsl:processing-instruction
60(1)
xsl:stylesheet
60(1)
xsl:comment
61(1)
xsl:script
61(1)
Transformation Elements
61(1)
xsl:template
61(3)
xsl:apply-templates
64(2)
xsl:call-template
66(1)
Node Creation Elements
66(1)
xsl:element
66(1)
xsl:attribute
67(1)
xsl:copy
67(1)
xls:copy-of
68(1)
Data Retrieval Elements
69(1)
xsl:value-of
69(1)
xsl:output
70(1)
xsl:text
70(1)
Control Structure Elements
70(1)
xsl:if
70(1)
xsl:for-each
71(1)
xsl:choose, xsl:when and xsl:otherwise
72(2)
xsl:sort
74(1)
xsl:variable
75(1)
xsl:param
75(1)
Advanced XSL Syntax
76(6)
Function Versus Method
76(1)
XSL Function Syntax
77(4)
XSL Method Syntax
81(1)
XSL Pattern Matching Syntax
81(1)
Combining the XML DOM and XSL
82(2)
Summary
84(1)
Exercises
85(2)
Relational Database Tables and XML
87(44)
Using SQL for Database Access
88(34)
Queries
89(1)
The Select Command
89(3)
The Where Clause
92(8)
The Order By Clause
100(2)
The Group By Clause
102(2)
The Join Clause
104(6)
Subqueries
110(5)
The Union Clause
115(4)
Changing Data in a Database
119(1)
Subqueries in Database Change Statements
120(1)
What Is a Transaction?
121(1)
Changing Database Objects
121(1)
Generating XML Pages Using Basic SQL
122(6)
Summary
128(1)
Exercises
129(2)
Oracle Database and XML
131(34)
The Oracle XMLType Data Type
131(3)
Oracle XMLType Data Type Methods
132(2)
Implementing XML in an Oracle Database
134(19)
Creating XML Documents from an Oracle Database
134(1)
The SQL/XML Standard
135(11)
The SYS_XMLGEN Function
146(5)
PL/SQL and XML
151(2)
XML and the Database
153(8)
New XML Documents
153(1)
Retrieving from XML Documents
154(1)
Using XMLType Methods to Read XML Documents
155(4)
Changing and Removing XML Document Content
159(2)
Summary
161(1)
Exercises
162(3)
SQL Server and XML
165(40)
The SQL Server XML Data Type
166(3)
SQL Server XML Data Type Methods
168(1)
Generating XML: The FOR XML Clause
169(14)
FOR XML RAW Mode
170(4)
FOR XML AUTO Mode
174(5)
FOR XML EXPLICIT Mode
179(2)
FOR XML PATH Mode
181(2)
Generating Tuples from XML: OPENXML
183(2)
Working with XML Data Types
185(6)
Adding XML Documents to SQL Server
185(1)
Retrieving and Modifying XML Data Types
186(5)
Defining XML Content with XSD Schemas
191(8)
Strongly Typing XML Documents with XSD
191(1)
Mapping an XSD Schema to a Table
192(1)
Annotating the XSD Script to Enforce Relationships
193(2)
Storing XSD as a Schema Collection
195(4)
Creating Indexes on XML Data Types
199(3)
Summary
202(1)
Exercises
202(3)
XML in Heterogeneous Environments
205(20)
Basic XML Document Transfer
206(1)
Sharing XML with Web Services
207(2)
The HTTP Protocol
207(1)
Transformation Processing
208(1)
Web Services Protocol
208(1)
Applying Semantics to XML Transfers
209(10)
Simple Object Access Protocol
210(9)
External Data and XML
219(3)
B2B Data Transfer
220(2)
Summary
222(1)
Exercises
222(3)
Understanding XML Documents as Objects
225(20)
Why Explain the Object Model Here?
225(1)
XML Data as a Relational Structure
226(4)
The Basics of the Object Data Model
230(5)
Creating an Object Model from a Relational Model
232(3)
XML Data as an Object Structure
235(7)
Summary
242(1)
Exercises
242(3)
What Is a Native XML Database?
245(20)
An XML Document Is a Database
246(14)
Defining a Native XML Database
248(1)
Creating a Native XML Database
248(4)
Schema-Less Native XML Database Collections
252(4)
What Is Indexing?
256(2)
Indexing a Native XML Database
258(1)
What About Using XSL and the XML DOM?
259(1)
Classify Native XML Databases by Content
260(1)
Document-Centric XML
260(1)
Data-Centric XML
260(1)
Using a Native XML Database
261(1)
Summary
262(1)
Exercises
262(3)
Navigating XML Documents Using XPath
265(30)
What Is XPath?
265(1)
Absolute and Relative Paths
266(1)
XPath Nodes
266(2)
XPath Node Relationships
267(1)
XPath Expression Syntax
268(11)
Simple Expressions to Find Nodes
272(2)
Find Specific Values Using Predicates
274(1)
XPath Operators
275(2)
Use Wildcards to Find Unknown Nodes
277(1)
Expressions on Multiple Paths
278(1)
XPath Axes
279(2)
XPath Functions
281(12)
Accessor Functions
282(1)
Errors and Tracing
283(1)
Constructor Functions
283(1)
Numeric Functions
284(1)
String Functions
285(1)
URI Functions
285(1)
Boolean Functions
286(1)
Boolean Operators
286(1)
Functions on Durations, Dates, and Times
286(1)
QName Functions
287(1)
Node Functions
288(1)
Sequence Functions
288(1)
Context Functions
289(4)
Summary
293(1)
Exercises
293(2)
Reading XML Documents Using XQuery
295(20)
What Is XQuery?
296(1)
Shared Components
296(1)
The Basics of XQuery
296(8)
Executing XQuery Queries
296(1)
Using Saxon
297(2)
Embedding XQuery Code into HTML
299(3)
XQuery Terminology
302(1)
XQuery Syntax
303(1)
Functions in XQuery
303(1)
XQuery FLWOR
304(7)
FLWOR: The Basic for Loop and Return Clause
304(2)
FLWOR: Adding a where Clause
306(1)
FLWOR: Adding an Order By Clause
307(1)
FLWOR: Declaring Variables with the Let Clause
308(1)
FLWOR: Embedded for Loops and Communication
309(2)
XQuery in Oracle XML DB
311(1)
What Is XQueryX?
312(1)
Summary
313(1)
Exercises
314(1)
Some Advanced XML Standards
315(36)
XLink and XPointer
316(23)
What Is XLink?
316(1)
Simple XLinks
316(4)
Some More Advanced XLink Attributes
320(2)
Extended XLinks
322(11)
What Is XPointer?
333(6)
XForms and HTML Form Generation
339(9)
The XForms Model
339(1)
XForms Namespaces
340(2)
Other XForms Input Types
342(1)
Data Types in XForms
342(1)
Restricting Values with XForms Properties
343(1)
XForms Object Actions
344(1)
Built-in and User-Defined Functions
345(1)
Binding Data Using XPath
346(2)
Embedding XML Documents with XInclude
348(1)
Formatting XML Output Using XML-FO
348(1)
Summary
348(1)
Exercises
349(2)
Data Modeling and XML
351(30)
The Document Type Definition
352(18)
DTD Elements
354(1)
DTD Element Categories
354(1)
DTD Element Content
355(2)
DTD Element Cardinality
357(3)
DTD Attributes
360(1)
Attribute Types
361(1)
Attribute Defaults
362(2)
DTD Entities
364(1)
Built-In Entities and ASCII Code Character Entities
364(1)
Custom and Parameter Entities
365(5)
The XML Schema Definition
370(10)
Global and Local Types
370(1)
Basic XSD Structures
371(1)
XML Schema Data Types
371(2)
Cardinality
373(1)
Element Ordering Sequence and Choice
374(1)
Custom Data Types
375(4)
Substitution
379(1)
Summary
380(1)
Exercises
380(1)
Applying XML Databases in Industry
381(16)
What Can XML Do?
381(3)
Managing Complex Data with XML
382(1)
Does Database Size Matter?
382(1)
Are Schema Changes Easier with XML?
383(1)
Native XML Databases
384(2)
Specific XML Vocabularies
386(6)
XML Vocabularies
386(6)
Commercial Implementation of XML
392(2)
When to Use a Native XML Database
394(2)
Summary
396(1)
Glossary 397(22)
Appendix A: Exercise Answers 419(8)
Appendix B: The Sample Database 427(4)
Appendix C: Syntax Conventions 431(2)
Appendix D: XML Technology 433(2)
Appendix E: XML Relational Database Technology 435(10)
Index 445

An electronic version of this book is available through VitalSource.

This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.

By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.

Digital License

You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.

More details can be found here.

A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.

Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.

Please view the compatibility matrix prior to purchase.