Special Offers

XML Pocket Consultant
Author William R. Stanek
Pages 416
Disk N/A
Level All Levels
Published 01/16/2002
ISBN 9780735611832
Price $29.99
To see this book's discounted price, select a reseller below.

More Information

About the Book
Table of Contents
Sample Chapter
Related Series
About the Author

Support: Book & CD

Rate this book
Barnes Noble Amazon Quantum Books


Table of Contents

1  Introducing XML3
    XML Basics3
    Using XML5
    Extensions to XML6
        XLink and XPointer6
        XML Namespaces7
        XML Schema7
    Creating XML-Based Solutions7
        Authoring Tools8
        Application Development Environments8
        Database and Data Integration Solutions8
2  XML Document Structure9
    XML Naming Rules9
    Working with Root, Parent, and Child Elements10
        Understanding Root Elements10
        Understanding Parent and Child Elements11
        Nesting Parent and Child Elements11
        Adding Root Elements to Documents11
    Defining XML Elements and Tags12
        Using Elements with Beginning and Ending Tags12
        Using Empty Elements13
    Using XML Attributes15
        Defining Attributes15
        When to Use Attributes16
        Adding Attributes to Elements17
    Working with Entity References, Character Data, Comments, and Processing Instructions17
        Using Predefined Entity References17
        Using Character Data Sections19
        Using Comments20
        Using Processing Instructions21
    Specifying XML Declarations21
        Using the Version Attribute22
        Using the Encoding Attribute22
        Using the Standalone Attribute23
    Creating Well-Formed Documents23
3  Creating DTDs27
    Understanding DTDs27
    Working with Internal DTDs29
        Declaring Internal DTDs29
        Adding Internal DTDs to Documents32
    Working with External DTDs32
        Declaring Public External DTDs32
        Adding Public External DTDs to Documents34
        Declaring Nonpublic External DTDs35
        Adding Nonpublic DTDs to Documents35
        Resolving Errors with Externally Referenced DTDs36
    Combining Internal and External DTDs36
        Adding Internal and External DTDs to Documents37
        Writing External DTD Files38
4  XML Elements in DTDs41
    Defining Elements in DTDs41
        Declaring Elements with Standard Content42
        Declaring Elements with Character Data Only43
        Declaring Elements with Mixed Content44
        Declaring Elements with Any Content Allowed45
        Declaring Elements with No Content Allowed46
    Structuring Elements47
        Understanding Element Order Indicators and Qualifiers47
        Specifying Sequences49
        Specifying Choices51
        Specifying Groups51
        Specifying the Number of Child Elements53
5  XML Attributes in DTDs57
    Defining Attributes in DTDs57
        Making Attribute Assignments57
        Specifying Attribute Names, Types, and Default Usages58
        Assigning Values to Attributes in DTDs62
    Declaring Standard Attribute Types in DTDs63
        Defining CDATA Attribute Types64
        Restricting Attribute Values Using Name Tokens64
        Defining Enumerated Attribute Types66
        Defining Attributes with Unique Values67
        Referencing Attributes with Unique Values68
6  XML Entities and Notations in DTDs73
    Getting Started with Entities and Notations73
    Working with General Entities in DTDs76
        Using Internal General Entities76
        Using External Parsed General Entities79
        Using External Unparsed General Entities81
    Working with Parameter Entities in DTDs86
        Using Internal Parameter Entities86
        Using External Parameter Entities88
    Using Encoded Characters89
        Setting Language Encoding with xml:lang89
        Declaring the xml:lang Attribute for Validated Documents89
        Specifying Character References90
        Creating Entities to Reference Characters91
7  XML Namespaces93
    Understanding Namespaces93
    Creating Namespaces96
        Declaring Namespaces96
        Associating URIs with Namespaces99
        Setting Default Namespaces102
    Using Namespaces with DTDs104
        Using Namespaces with Elements in DTDs104
        Using Namespaces with Attributes in DTDs105
        Declaring xmlns Attributes105
8  XML Schemas109
    Getting Started with Schemas109
        Understanding Simple and Complex Types110
        Understanding Local and Global Declarations111
    Working with Basic Schemas112
        Creating a Basic Schema Document112
        Associating the Schema with an XML Document116
        Adding Documentation to Schemas120
        Adding Comments to Schemas121
    Using Targeted Namespaces with Schemas122
        Targeting Namespaces: The Essentials122
        Adding Elements to Target Namespaces127
        Adding Attributes to Target Namespaces128
        Referencing Components with Namespaces128
    Including and Importing Schemas129
        Including Multiple Schema Files129
        Importing Multiple Schema Files131
9  Defining Simple Types in Schema133
    Making Simple Element and Attribute Declarations134
        Declaring Simple Elements with Character Content134
        Declaring Default and Fixed Values for Simple Elements136
        Declaring Simple Empty Elements137
        Declaring Simple Attributes138
        Declaring Default and Fixed Values for Simple Attributes140
        Creating Optional, Required, and Prohibited Simple Attributes141
    Creating Simple Types142
        Using Values Derived by Restriction142
        Using Values Derived by List148
        Using Values Derived by Union151
10  Specifying Datatypes and Restrictions in Schema155
    Using String and Name Datatypes155
        Defining a string Datatype156
        Defining a normalizedString Datatype156
        Defining a token Datatype156
        Defining Other string Datatypes157
    Using Date and Time Datatypes159
        Using the duration Datatype159
        Using the dateTime Datatype161
        Using the time Datatype163
        Using the date Datatype163
        Using the gYear, gYearMonth, gMonthDay, gMonth, and gDay Datatypes164
    Using Numeric Datatypes165
        Working with the Decimal Datatype and Its Derivatives165
        Working with Floating-Point Datatypes168
    Using Other Datatypes171
        Using boolean Datatypes171
        Using Binary Datatypes172
        Using URI Datatypes172
    Controlling Acceptable Values173
        Specifying a Set of Acceptable Values173
        Specifying Expressions for Acceptable Values175
        Specifying Acceptable Whitespace Characters179
        Specifying a Range of Acceptable Values180
        Limiting the Length of Values182
        Limiting the Number of Digits184
11  Defining Complex Types in Schema187
    Working with Complex Types187
        Declaring Elements with Named Complex Types188
        Declaring Elements with Anonymous Complex Types189
        Basing Complex Types on Complex Types190
    Defining Content for Complex Elements193
        Defining Complex Elements with Standard Content193
        Defining Complex Elements with Mixed Content196
        Defining Complex Elements with Text-Only Content197
        Defining Complex Elements with No Content200
    Structuring Complex Elements in Schemas201
        Specifying Sequences202
        Specifying Choices205
        Allowing Elements to Appear in Any Order208
        Controlling Element Occurrence210
    Using Groups and References213
        Defining and Referencing Element Groups213
        Defining and Referencing Attribute Groups215
        Referencing Globally Declared Elements218
12  Content Models for Schema Declarations219
    all Definitions220
    annotation Definitions220
    any Definitions221
    anyAttribute Definitions221
    attribute Definitions221
    attributeGroup Definitions and References222
    choice Definitions222
    complexType Definitions223
        Complex Type with Simple Content223
        Complex Type with Complex Content224
    element Definitions225
    Element group Definitions and References226
    import Definitions226
    include Definitions226
    notation Definitions227
    schema Definitions228
    selector and field Definitions228
    sequence Definitions229
    simpleType Definitions229
    unique Constraint Definitions230
13  XSL Transformations and Formatting235
    Introducing XSLT235
    Matching Document Structures to Template Rules239
        Understanding the Built-In Template for Element and Root Nodes241
        Understanding the Built-In Template for Modes241
        Understanding the Built-In Template for Text and Attribute Nodes242
        Understanding Other Built-In Templates242
    Structuring XSLT Stylesheets243
        Starting the XSLT Stylesheet243
        Defining the Output Format244
        Defining Template Rules and Declarations258
14  XPath Operators and Expressions263
    Understanding Location Paths264
    Understanding XPath Operators and Datatypes268
    Using Relative XPath Expressions with Elements272
        Referencing the Current Context Node272
        Referencing a Parent Node273
        Referencing Siblings Relative to the Current Context274
        Referencing Child Nodes274
    Using Absolute XPath Expressions with Elements276
    Locating Attribute, Text, Comment, and Processing Instruction Nodes277
        Working with Attribute Nodes277
        Working with Text Nodes280
        Working with Comment Nodes280
        Working with Processing Instruction Nodes281
    Using Namespaces with Element and Attribute Nodes282
    Using Wildcards and Predicates in XPath Expressions283
        Selecting Any Node284
        Skipping Levels in the Hierarchy285
        Filtering to Match Nodes with Specific Values287
15  Branching and Control Functions291
    Processing Nodes Conditionally with if Statements291
    Processing Nodes Conditionally with choose-when and choose-when-otherwise Statements294
    Processing Multiple Nodes with for-each Statements296
    Invoking, Including, and Importing Templates300
        Including and Importing Templates300
        Calling Templates by Name303
        Invoking Templates by Mode304
16  Variables and Parameters in XSLT307
    Working with Parameters307
        Defining and Referencing Parameters307
        Setting Default Values for Parameters309
        Passing Parameter Values to Templates311
        Using Global Parameters312
    Working with Variables318
        Defining Variables318
        Referencing Variables320
        Using Global Variables321
17  Working with Strings, Booleans and Numbers323
    Manipulating Strings323
        Converting Values to Strings323
        Managing Spaces Within Strings325
        Normalizing Space in Strings327
        Merging Values into a Single String328
        Examining and Manipulating String Contents329
        Translating Characters in Strings336
    Converting and Manipulating Boolean Values337
        Using the true() Function339
        Using the false() Function339
        Using the not() Function339
    Working with Numeric Values340
        Converting Values to Numbers340
        Formatting Values as Numbers341
        Rounding Numbers345
        Summing Values346
18  Restructuring Input Documents and Manipulating Document Subsets351
    Combining and Merging Documents351
        Document Merging Essentials351
        Using Base Paths with the document() Function354
        Using the document() Function To Process the Stylesheet Itself356
        Declaring the document() Function in a Stylesheet357
    Manipulating Document Structures358
        Creating Copies of Node Sets358
        Generating Elements and Attributes in the Output361
    Sorting Document Structures366
        Sorting Essentials366
        Defining Sort Keys, Order, and Type367
        Sorting Nodes in a Document371
    Counting Nodes371

Last Updated: January 17, 2002
Top of Page