{"product_id":"xslt-2-0-and-xpath-2-0-programmers-reference-hardback-9780470192740","title":"XSLT 2.0 and XPath 2.0 Programmer's Reference (Hardback) 9780470192740","description":"\u003cfont face=\"Georgia\"\u003e\r\n\u003cp\u003e\u003cfont size=\"6\"\u003eXSLT 2.0 and XPath 2.0 Programmer's Reference\u003c\/font\u003e\u003cbr\u003e\r\n\r\n\r\n\r\n\r\n\r\n\u003c\/p\u003e\n\u003cp\u003e\u003cfont size=\"4\"\u003eMichael Kay (Author)\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\u003cp\u003e\u003cfont size=\"3\"\u003e9780470192740, Wiley\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\u003cp\u003e\u003cfont size=\"3\"\u003eHardback, published 3 June 2008\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\u003cp\u003e\u003cfont size=\"3\"\u003e1376 pages, Drawings: 0 B\u0026amp;W, 0 Color; Screen captures: 0 B\u0026amp;W, 0 Color; Tables: 0 B\u0026amp;W, 0 Color\u003cbr\u003e23.9 x 19.6 x 6.9 cm, 2.427 kg\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\r\n\r\n\r\n\r\n\u003cp align=\"justify\"\u003e\u003cstrong\u003e\u003cfont size=\"3\"\u003e\u003cp\u003eCombining coverage of XSLT 2.0 and XPath 2.0 into one book, this authoritative reference provides equal weight to the powerful new features of XSLT 2.0 and XPath 2.0 and the established capabilities of the 1.0 versions. Author Michael Kay has created his own implementation of XSLT 2.0 (Saxon), and he puts his unique knowledge to work in this detailed reference to the elements of the XSLT 2.0 language and the fundamentals of XPath, complete with syntax, practical usage advice, and examples.\u003c\/p\u003e \u003cp\u003eThe book begins by teaching the essential concepts behind the language, knowledge you need if you are going to write good code rather than just working code. You will discover how XSLT and XPath differ from other languages, and how you use them to create effective web-based applications. The central chapters provide meticulous coverage of the language features of XSLT 2.0 and XPath 2.0. You will return to this reference whenever you encounter new programming challenges. You finish with detailed case studies highlighting real applications to give you insights you would otherwise gain only from months of practical experience.\u003c\/p\u003e \u003cp\u003e\u003cb\u003eWhat you will learn from this book\u003c\/b\u003e\u003c\/p\u003e \u003cul\u003e \u003cli\u003eAll the XSLT elements you can use in a stylesheet and the detailed rules for the syntax and semantics of each\u003c\/li\u003e \u003cli\u003eHow Path expressions enable you to navigate around the structure of an XML document\u003c\/li\u003e \u003cli\u003eHow you can improve your stylesheets by taking advantage of the XML Schema definitions of input and output documents\u003c\/li\u003e \u003cli\u003eHow to take advantage of vendor extensions without losing portability\u003c\/li\u003e \u003cli\u003eTechniques for taking advantage of XSLT to write real applications\u003c\/li\u003e \u003c\/ul\u003e \u003cp\u003e\u003cb\u003eWho this book is for\u003cbr\u003e\u003c\/b\u003eThis book is for experienced programmers who are looking to become proficient with XSLT 2.0. Previous experience with XSLT or XPath is not necessary. However, a working knowledge of XML, HTML, and web architecture is beneficial.\u003c\/p\u003e \u003cp\u003e\u003cb\u003eWrox Programmer's References\u003c\/b\u003e are designed to give the experienced developer straight facts on a new technology, without hype or unnecessary explanations. They deliver hard information with plenty of practical examples to help you apply new tools to your development projects today.\u003c\/p\u003e \u003cp\u003e\u003cb\u003eNote:\u003c\/b\u003e CD-ROM\/DVD and other supplementary materials are not included as part of eBook file.\u003c\/p\u003e\u003c\/font\u003e\u003c\/strong\u003e\u003c\/p\u003e\r\n\r\n\u003cp\u003e\u003cfont size=\"3\"\u003e\u003cp\u003eIntroduction xxix\u003c\/p\u003e \u003cp\u003eList of Examples xxxix\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart I: Foundations\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 1: XSLT in Context 3\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eWhat Is XSLT? 3\u003c\/p\u003e \u003cp\u003eHow Does XSLT Transform XML? 7\u003c\/p\u003e \u003cp\u003eThe Place of XSLT in the XML Family 21\u003c\/p\u003e \u003cp\u003eThe History of XSL 26\u003c\/p\u003e \u003cp\u003eXSLT 2.0 as a Language 33\u003c\/p\u003e \u003cp\u003eSummary 40\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 2: The XSLT Processing Model 41\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eXSLT: A System Overview 41\u003c\/p\u003e \u003cp\u003eThe XDM Tree Model 45\u003c\/p\u003e \u003cp\u003eThe Transformation Process 67\u003c\/p\u003e \u003cp\u003eError Handling 80\u003c\/p\u003e \u003cp\u003eVariables and Expressions 80\u003c\/p\u003e \u003cp\u003eSummary 88\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 3: Stylesheet Structure 89\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eChanges in XSLT 2.0 90\u003c\/p\u003e \u003cp\u003eThe Modular Structure of a Stylesheet 90\u003c\/p\u003e \u003cp\u003eThe \u003cxsl:stylesheet\u003e Element 98\u003c\/xsl:stylesheet\u003e\u003c\/p\u003e \u003cp\u003eThe \u003c?xml-stylesheet ?\u003e Processing Instruction 99\u003c\/p\u003e \u003cp\u003eEmbedded Stylesheets 102\u003c\/p\u003e \u003cp\u003eDeclarations 104\u003c\/p\u003e \u003cp\u003eInstructions 108\u003c\/p\u003e \u003cp\u003eSimplified Stylesheets 125\u003c\/p\u003e \u003cp\u003eWriting Portable Stylesheets 127\u003c\/p\u003e \u003cp\u003eWhitespace 141\u003c\/p\u003e \u003cp\u003eSummary 148\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 4: Stylesheets and Schemas 151\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eXML Schema: An Overview 151\u003c\/p\u003e \u003cp\u003eDeclaring Types in XSLT 161\u003c\/p\u003e \u003cp\u003eValidating the Source Document 165\u003c\/p\u003e \u003cp\u003eValidating the Result Document 170\u003c\/p\u003e \u003cp\u003eValidating a Temporary Document 174\u003c\/p\u003e \u003cp\u003eValidating Individual Elements 176\u003c\/p\u003e \u003cp\u003eValidating Individual Attributes 179\u003c\/p\u003e \u003cp\u003eThe default-validation Attribute 180\u003c\/p\u003e \u003cp\u003eImporting Schemas 180\u003c\/p\u003e \u003cp\u003eUsing xsi:type 181\u003c\/p\u003e \u003cp\u003eNillability 182\u003c\/p\u003e \u003cp\u003eSummary 183\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 5: Types 185\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eWhat Is a Type System? 185\u003c\/p\u003e \u003cp\u003eChanges in 2.0 186\u003c\/p\u003e \u003cp\u003eSequences 187\u003c\/p\u003e \u003cp\u003eAtomic Values 189\u003c\/p\u003e \u003cp\u003eAtomic Types 191\u003c\/p\u003e \u003cp\u003eSchema Types and XPath Types 217\u003c\/p\u003e \u003cp\u003eThe Type Matching Rules 219\u003c\/p\u003e \u003cp\u003eStatic and Dynamic Type Checking 221\u003c\/p\u003e \u003cp\u003eSummary 224\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart II: XSLT and XPath Reference\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 6: XSLT Elements 227\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003exsl:analyze-string 230\u003c\/p\u003e \u003cp\u003exsl:apply-imports 237\u003c\/p\u003e \u003cp\u003exsl:apply-templates 240\u003c\/p\u003e \u003cp\u003exsl:attribute 254\u003c\/p\u003e \u003cp\u003exsl:attribute-set 266\u003c\/p\u003e \u003cp\u003exsl:call-template 271\u003c\/p\u003e \u003cp\u003exsl:character-map 280\u003c\/p\u003e \u003cp\u003exsl:choose 282\u003c\/p\u003e \u003cp\u003exsl:comment 285\u003c\/p\u003e \u003cp\u003exsl:copy 287\u003c\/p\u003e \u003cp\u003exsl:copy-of 292\u003c\/p\u003e \u003cp\u003exsl:decimal-format 298\u003c\/p\u003e \u003cp\u003exsl:document 303\u003c\/p\u003e \u003cp\u003exsl:element 306\u003c\/p\u003e \u003cp\u003exsl:fallback 316\u003c\/p\u003e \u003cp\u003exsl:for-each 322\u003c\/p\u003e \u003cp\u003exsl:for-each-group 326\u003c\/p\u003e \u003cp\u003exsl:function 344\u003c\/p\u003e \u003cp\u003exsl:if 353\u003c\/p\u003e \u003cp\u003exsl:import 357\u003c\/p\u003e \u003cp\u003exsl:import-schema 368\u003c\/p\u003e \u003cp\u003exsl:include 372\u003c\/p\u003e \u003cp\u003exsl:key 376\u003c\/p\u003e \u003cp\u003exsl:matching-substring 386\u003c\/p\u003e \u003cp\u003exsl:message 386\u003c\/p\u003e \u003cp\u003exsl:namespace 390\u003c\/p\u003e \u003cp\u003exsl:namespace-alias 394\u003c\/p\u003e \u003cp\u003exsl:next-match 399\u003c\/p\u003e \u003cp\u003exsl:non-matching-substring 402\u003c\/p\u003e \u003cp\u003exsl:number 403\u003c\/p\u003e \u003cp\u003exsl:otherwise 420\u003c\/p\u003e \u003cp\u003exsl:output 420\u003c\/p\u003e \u003cp\u003exsl:output-character 424\u003c\/p\u003e \u003cp\u003exsl:param 425\u003c\/p\u003e \u003cp\u003exsl:perform-sort 437\u003c\/p\u003e \u003cp\u003exsl:preserve-space 439\u003c\/p\u003e \u003cp\u003exsl:processing-instruction 442\u003c\/p\u003e \u003cp\u003exsl:result-document 445\u003c\/p\u003e \u003cp\u003exsl:sequence 452\u003c\/p\u003e \u003cp\u003exsl:sort 455\u003c\/p\u003e \u003cp\u003exsl:strip-space 465\u003c\/p\u003e \u003cp\u003exsl:stylesheet 465\u003c\/p\u003e \u003cp\u003exsl:template 483\u003c\/p\u003e \u003cp\u003exsl:text 492\u003c\/p\u003e \u003cp\u003exsl:transform 495\u003c\/p\u003e \u003cp\u003exsl:value-of 495\u003c\/p\u003e \u003cp\u003exsl:variable 500\u003c\/p\u003e \u003cp\u003exsl:when 515\u003c\/p\u003e \u003cp\u003exsl:with-param 517\u003c\/p\u003e \u003cp\u003eSummary 519\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 7: XPath Fundamentals 521\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eNotation 522\u003c\/p\u003e \u003cp\u003eWhere to Start 523\u003c\/p\u003e \u003cp\u003eExpressions 524\u003c\/p\u003e \u003cp\u003eLexical Constructs 527\u003c\/p\u003e \u003cp\u003ePrimary Expressions 539\u003c\/p\u003e \u003cp\u003eVariable References 540\u003c\/p\u003e \u003cp\u003eParenthesized Expressions 542\u003c\/p\u003e \u003cp\u003eContext Item Expressions 543\u003c\/p\u003e \u003cp\u003eFunction Calls 544\u003c\/p\u003e \u003cp\u003eConditional Expressions 551\u003c\/p\u003e \u003cp\u003eThe XPath Evaluation Context 553\u003c\/p\u003e \u003cp\u003eSummary 568\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 8: XPath: Operators on Items 571\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eArithmetic Operators 571\u003c\/p\u003e \u003cp\u003eValue Comparisons 581\u003c\/p\u003e \u003cp\u003eGeneral Comparisons 588\u003c\/p\u003e \u003cp\u003eNode Comparisons 593\u003c\/p\u003e \u003cp\u003eBoolean Expressions 594\u003c\/p\u003e \u003cp\u003eSummary 596\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 9: XPath: Path Expressions 599\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eExamples of Path Expressions 600\u003c\/p\u003e \u003cp\u003eChanges in XPath 2.0 601\u003c\/p\u003e \u003cp\u003eDocument Order and Duplicates 602\u003c\/p\u003e \u003cp\u003eThe Binary «⁄» Operator 602\u003c\/p\u003e \u003cp\u003eAxis Steps 606\u003c\/p\u003e \u003cp\u003eRooted Path Expressions 625\u003c\/p\u003e \u003cp\u003eThe «⁄⁄» Abbreviation 626\u003c\/p\u003e \u003cp\u003eCombining Sets of Nodes 628\u003c\/p\u003e \u003cp\u003eSummary 632\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 10: XPath: Sequence Expressions 633\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eThe Comma Operator 634\u003c\/p\u003e \u003cp\u003eNumeric Ranges: The «to» Operator 636\u003c\/p\u003e \u003cp\u003eFilter Expressions 638\u003c\/p\u003e \u003cp\u003eThe «for» Expression 640\u003c\/p\u003e \u003cp\u003eSimple Mapping Expressions 644\u003c\/p\u003e \u003cp\u003eThe «some» and «every» Expressions 646\u003c\/p\u003e \u003cp\u003eSummary 651\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 11: XPath: Type Expressions 653\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eConverting Atomic Values 654\u003c\/p\u003e \u003cp\u003eSequence Type Descriptors 668\u003c\/p\u003e \u003cp\u003eThe «instance of» Operator 677\u003c\/p\u003e \u003cp\u003eThe «treatas» Operator 678\u003c\/p\u003e \u003cp\u003eSummary 680\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 12: XSLT Patterns 681\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003ePatterns and Expressions 681\u003c\/p\u003e \u003cp\u003eChanges in XSLT 2.0 682\u003c\/p\u003e \u003cp\u003eThe Formal Definition 683\u003c\/p\u003e \u003cp\u003eAn Informal Definition 685\u003c\/p\u003e \u003cp\u003eConflict Resolution 686\u003c\/p\u003e \u003cp\u003eMatching Parentless Nodes 688\u003c\/p\u003e \u003cp\u003eThe Syntax of Patterns 689\u003c\/p\u003e \u003cp\u003eSummary 708\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 13: The Function Library 709\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eA Word about Naming 710\u003c\/p\u003e \u003cp\u003eFunctions by Category 710\u003c\/p\u003e \u003cp\u003eNotation 712\u003c\/p\u003e \u003cp\u003eCode Samples 714\u003c\/p\u003e \u003cp\u003eFunction Definitions 714\u003c\/p\u003e \u003cp\u003eSummary 913\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 14: Regular Expressions 915\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eBranches and Pieces 916\u003c\/p\u003e \u003cp\u003eQuantifiers 916\u003c\/p\u003e \u003cp\u003eAtoms 917\u003c\/p\u003e \u003cp\u003eSubexpressions 918\u003c\/p\u003e \u003cp\u003eBack-References 918\u003c\/p\u003e \u003cp\u003eCharacter Groups 919\u003c\/p\u003e \u003cp\u003eCharacter Ranges 919\u003c\/p\u003e \u003cp\u003eCharacter Class Escapes 920\u003c\/p\u003e \u003cp\u003eCharacter Blocks 922\u003c\/p\u003e \u003cp\u003eCharacter Categories 924\u003c\/p\u003e \u003cp\u003eFlags 925\u003c\/p\u003e \u003cp\u003eDisallowed Constructs 927\u003c\/p\u003e \u003cp\u003eSummary 927\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 15: Serialization 929\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eThe XML Output Method 929\u003c\/p\u003e \u003cp\u003eThe HTML Output Method 936\u003c\/p\u003e \u003cp\u003eThe XHTML Output Method 939\u003c\/p\u003e \u003cp\u003eThe Text Output Method 940\u003c\/p\u003e \u003cp\u003eUsing the \u003cxsl:output\u003e declaration 940\u003c\/xsl:output\u003e\u003c\/p\u003e \u003cp\u003eCharacter Maps 941\u003c\/p\u003e \u003cp\u003eDisable Output Escaping 945\u003c\/p\u003e \u003cp\u003eSummary 949\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart III: Exploitation\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 16: Extensibility 953\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eWhat Vendor Extensions Are Allowed? 954\u003c\/p\u003e \u003cp\u003eExtension Functions 955\u003c\/p\u003e \u003cp\u003eKeeping Extensions Portable 970\u003c\/p\u003e \u003cp\u003eSummary 971\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 17: Stylesheet Design Patterns 973\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eFill-in-the-Blanks Stylesheets 973\u003c\/p\u003e \u003cp\u003eNavigational Stylesheets 976\u003c\/p\u003e \u003cp\u003eRule-Based Stylesheets 980\u003c\/p\u003e \u003cp\u003eComputational Stylesheets 985\u003c\/p\u003e \u003cp\u003eSummary 1000\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 18: Case Study: XMLSpec 1001\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eFormatting the XML Specification 1002\u003c\/p\u003e \u003cp\u003ePreface 1004\u003c\/p\u003e \u003cp\u003eCreating the HTML Outline 1008\u003c\/p\u003e \u003cp\u003eFormatting the Document Header 1012\u003c\/p\u003e \u003cp\u003eCreating the Table of Contents 1019\u003c\/p\u003e \u003cp\u003eCreating Section Headers 1023\u003c\/p\u003e \u003cp\u003eFormatting the Text 1024\u003c\/p\u003e \u003cp\u003eProducing Lists 1028\u003c\/p\u003e \u003cp\u003eMaking Cross-References 1029\u003c\/p\u003e \u003cp\u003eSetting Out the Production Rules 1033\u003c\/p\u003e \u003cp\u003eOverlay Stylesheets 1041\u003c\/p\u003e \u003cp\u003eStylesheets for Other Specifications 1044\u003c\/p\u003e \u003cp\u003eSummary 1047\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 19: Case Study: A Family Tree 1049\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eModeling a Family Tree 1050\u003c\/p\u003e \u003cp\u003eCreating a Data File 1058\u003c\/p\u003e \u003cp\u003eDisplaying the Family Tree Data 1072\u003c\/p\u003e \u003cp\u003eSummary 1098\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 20: Case Study: Knight’s Tour 1099\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eThe Problem 1099\u003c\/p\u003e \u003cp\u003eThe Algorithm 1100\u003c\/p\u003e \u003cp\u003ePlacing the Knight 1104\u003c\/p\u003e \u003cp\u003eDisplaying the Final Board 1105\u003c\/p\u003e \u003cp\u003eFinding the Route 1106\u003c\/p\u003e \u003cp\u003eRunning the Stylesheet 1112\u003c\/p\u003e \u003cp\u003eObservations 1112\u003c\/p\u003e \u003cp\u003eSummary 1113\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart IV: Appendices\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eAppendix A: XPath 2.0 Syntax Summary 1117\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eWhitespace and Comments 1118\u003c\/p\u003e \u003cp\u003eTokens 1118\u003c\/p\u003e \u003cp\u003eSyntax Productions 1119\u003c\/p\u003e \u003cp\u003eOperator Precedence 1122\u003c\/p\u003e \u003cp\u003e\u003cb\u003eAppendix B: Error Codes 1123\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eFunctions and Operators (FO) 1124\u003c\/p\u003e \u003cp\u003eXPath Errors (XP) 1126\u003c\/p\u003e \u003cp\u003eXSLT Errors (XT) 1127\u003c\/p\u003e \u003cp\u003e\u003cb\u003eAppendix C: Backward Compatibility 1139\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eStage 1: Backward-compatibility Mode 1140\u003c\/p\u003e \u003cp\u003eStage 2: Setting version=‘‘2.0’’ 1142\u003c\/p\u003e \u003cp\u003eStage 3: Adding a Schema 1145\u003c\/p\u003e \u003cp\u003eSummary 1145\u003c\/p\u003e \u003cp\u003e\u003cb\u003eAppendix D: Microsoft XSLT Processors 1147\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eMSXML 1147\u003c\/p\u003e \u003cp\u003eSystem.Xml 1158\u003c\/p\u003e \u003cp\u003eSummary 1161\u003c\/p\u003e \u003cp\u003e\u003cb\u003eAppendix E: JAXP: The Java API for Transformation 1163\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eThe JAXP Parser API 1164\u003c\/p\u003e \u003cp\u003eThe JAXP Transformation API 1169\u003c\/p\u003e \u003cp\u003eExamples of JAXP Transformations 1187\u003c\/p\u003e \u003cp\u003eSummary 1193\u003c\/p\u003e \u003cp\u003e\u003cb\u003eAppendix F: Saxon 1195\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eUsing Saxon from the Command Line 1196\u003c\/p\u003e \u003cp\u003eUsing Saxon from a Java Application 1199\u003c\/p\u003e \u003cp\u003eUsing Saxon from a .NET Application 1203\u003c\/p\u003e \u003cp\u003eSaxon Tree Models 1205\u003c\/p\u003e \u003cp\u003eExtensibility 1205\u003c\/p\u003e \u003cp\u003eCollations 1207\u003c\/p\u003e \u003cp\u003eExtensions 1208\u003c\/p\u003e \u003cp\u003eThe evaluate() Extension 1210\u003c\/p\u003e \u003cp\u003eSummary 1214\u003c\/p\u003e \u003cp\u003e\u003cb\u003eAppendix G: Altova 1215\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eRunning from within XMLSpy 1215\u003c\/p\u003e \u003cp\u003eConformance 1216\u003c\/p\u003e \u003cp\u003eExtensions and Extensibility 1217\u003c\/p\u003e \u003cp\u003eThe Command Line Interface 1217\u003c\/p\u003e \u003cp\u003eUsing the API 1218\u003c\/p\u003e \u003cp\u003eSummary 1220\u003c\/p\u003e \u003cp\u003e\u003cb\u003eAppendix H: Glossary 1221\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eIndex 1233\u003c\/p\u003e\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\u003cp\u003e\u003cfont size=\"3\"\u003eSubject Areas: Computer programming \/ software development [\u003ca title=\"See our other books on Computer programming \/ software development\" href=\"https:\/\/freshlyprintedbooks.co.uk\/search?q=%22Computer%20programming%20\/%20software%20development%20%5BUM%5D%22\"\u003eUM\u003c\/a\u003e]\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\r\n\u003c\/font\u003e","brand":"Wrox","offers":[{"title":"Brand New","offer_id":52320634372376,"sku":"9780470192740","price":50.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0730\/2037\/5320\/files\/9780470192740.jpg?v=1781963359","url":"https:\/\/freshlyprintedbooks.co.uk\/products\/xslt-2-0-and-xpath-2-0-programmers-reference-hardback-9780470192740","provider":"Freshly Printed Books","version":"1.0","type":"link"}