Presentation is loading. Please wait.

Presentation is loading. Please wait.

XML TECHNOLOGY FAMILY UNIT - I XML XML - Introduction.

Similar presentations


Presentation on theme: "XML TECHNOLOGY FAMILY UNIT - I XML XML - Introduction."— Presentation transcript:

1

2 XML TECHNOLOGY FAMILY UNIT - I

3 XML XML - Introduction

4 XML stands for E x tensible Markup Language XML is a markup language much like HTML XML was designed to describe data[carry data], not to display data XML is a Well Formed document XML tags are not predefined. You must define your own tags XML is designed to be self-descriptive XML is a W3C Recommendation

5 XML BENEFITS

6 Simplicity Openness Extensibility Self-description Contains machine-readable context information Supports multilingual documents and Unicode Separates the process and its data contents-loosely coupled Facilitates the comparison and aggregation of data Can embed multiple data types Can embed existing data Provides a 'one-server view' for distributed data Rapid adoption by industry

7 ADVANTAGES OF XML OVER HTML

8 HTML and XML, I XML stands for eXtensible Markup Language HTML is used to mark up text so it can be displayed to users XML is used to mark up data so it can be processed by computers HTML describes both structure (e.g.,, ) and appearance (e.g.,, ) XML describes only content, or “meaning” HTML uses a fixed, unchangeable set of tags In XML, you make up your own tags

9 HTML and XML, II HTML and XML look similar, because they are both SGML languages (SGML = Standard Generalized Markup Language)  Both HTML and XML use elements enclosed in tags (e.g. This is an element )  Both use tag attributes (e.g., )  Both use entities (<, >, &, ", &apos; ) More precisely,  HTML is defined in SGML  XML is a (very small) subset of SGML

10 HTML and XML, III HTML is for humans – HTML describes web pages – You don’t want to see error messages about the web pages you visit – Browsers ignore and/or correct as many HTML errors as they can, so HTML is often sloppy XML is for computers – XML describes data – The rules are strict and errors are not allowed In this way, XML is like a programming language – Current versions of most browsers can display XML However, browser support of XML is spotty at best

11 XML ADVANTAGES OF XML OVER EDI

12 EDI Electronic Document Interchange (EDI) has been used in e-commerce for many years EDI exchanges documents between commercial partners regarding a transaction EDI requires special proprietary software, but EDI data will soon travel inside XML EDI don ’ t easily support the needs for internationalization and localization

13 XML vs. EDI (cont) EDI failed to become the universal data description language due to its high cost and complexity, blocking small businesses EDI-to-XML and XML-to-EDI translation is already taking place, ebXML group taking the lead

14 What does XML mean for e-commerce? (cont) Companies running different accounting and business management applications will exchange documents in a cross-system flow ebXML is mapping business processes to facilitate XML to XML B2B

15 XML ADVANTAGES OF XML OVER DATABASES

16 Databases XML is a structured document that includes not only the data but also metadata that describes that data’s content and context. Relational and object-oriented databases and formats can represent data as well as metadata, but their formats are textbased. Most databases use a proprietary binary format to represent their information. XML’s greatest strengths is that processing tools have become relatively widespread and inexpensive.

17 XML XML BASED STANDARDS

18 XPATH – XPath is a syntax for defining parts of an XML document – XPath uses path expressions to navigate in XML documents – XPath contains a library of standard functions – XPath is a major element in XSLT – XPath is a W3C Standard XSD – defines elements that can appear in a document – defines attributes that can appear in a document – defines which elements are child elements – defines the order of child elements – defines the number of child elements – defines whether an element is empty or can include text – defines data types for elements and attributes – defines default and fixed values for elements and attributes

19 XML BASED STANDARDS(contd..) XSL – XSL describes how the XML document should be displayed! – XSL consists of three parts: XSLT - a language for transforming XML documents XPath - a language for navigating in XML documents XSL-FO - a language for formatting XML documents XSLT – A common way to describe the transformation process is to say that XSLT transforms an XML source-tree into an XML result-tree. – XSLT stands for XSL Transformations – XSLT is the most important part of XSL – XSLT transforms an XML document into another XML document – XSLT uses XPath to navigate in XML documents – XSLT is a W3C Recommendation

20 XML Structuring With Schemas

21 XML DOCUMENT STRUCTURE XML document includes the following The xml declaration The document type declaration The element data The attribute data The character data or XML content

22 XML XML Schema

23 Introduction to XML Schema An XML schema describes the structure of an XML document. XML Schema is an XML-based alternative to DTD. The XML Schema language is also referred to as XML Schema Definition (XSD).

24 Purpose of an XML Schema  The purpose of an XML Schema is to define the legal building blocks of an XML document, just like a DTD.  An XML Schema:  defines elements that can appear in a document  defines attributes that can appear in a document  defines which elements are child elements  defines the order of child elements  defines the number of child elements  defines whether an element is empty or can include text  defines data types for elements and attributes  defines default and fixed values for elements and attributes

25 Example XML Schema & DTD XML Tove Jani Reminder Don't forget me this weekend! DTD

26 XML Schema 

27 XSD Simple Elements  XML Schemas define the elements of your XML files.  A simple element is an XML element that contains only text. It cannot contain any other elements or attributes.  Defining a Simple Element  The syntax for defining a simple element is:  where xxx is the name of the element and yyy is the data type of the element.  XML Schema has a lot of built-in data types. The most common types are:  xs:string  xs:decimal  xs:integer  xs:boolean  xs:date  xs:time  Example  Refsnes 36 1970-03-27

28 XSD Complex Elements  A complex element is an XML element that contains other elements and/or attributes.  There are four kinds of complex elements:  empty elements  elements that contain only other elements  elements that contain only text  elements that contain both other elements and text  Note: Each of these elements may contain attributes as well!  EXAMPLE 

29 STRUCTURING WITH SCHEMAS TWO TYPES OF SCHEMAS – SIMPLE TYPE – COMPLEX TYPE SIMPLE TYPE – A simple element is an XML element that can contain only text. It cannot contain any other elements or attributes.

30 RULES FOR XML STRUCTURE All XML elements must have a closing tag XML tags are case sensitive All XML elements must have a proper nesting All XML Documents must contain a single root element Attribute values must be quoted Attributes may only appear once in the same start tag Attribute values cannot contain references to external entities All entities except amp,lt,gt,apos,and quot must be declared before they are used

31 SIMPLE TYPE XML Schema has a lot of built-in data types. The most common types are: – xs:string – xs:decimal – xs:integer – xs:boolean – xs:date – xs:time Example Here are some XML elements: Refsnes 36 1970-03-27 And here are the corresponding simple element definitions:

32 COMPLEX TYPE A complex element is an XML element that contains other elements and/or attributes. Look at this simple XML document called "note.xml": Tove Jani Reminder Don't forget to submit the assignment this monday!

33 COMPLEX TYPE(contd..) The following example is a DTD file called "note.dtd" that defines the elements of the XML document above ("note.xml"):

34 COMPLEX TYPE(contd..) The following example is an XML Schema file called "note.xsd" that defines the elements of the XML document above ("note.xml"):

35 XML DTD Document Type Definition

36 DTD - Document Type Definition The purpose of a DTD (Document Type Definition) is to define the legal building blocks of an XML document. A DTD defines the document structure with a list of legal elements and attributes. A DTD can be declared inline inside an XML document, or as an external reference.

37 Internal DTD Declaration  If the DTD is declared inside the XML file, it should be wrapped in a DOCTYPE definition with the following syntax:  Example XML document with an internal DTD:  ]> Tove Jani Reminder Don't forget me this weekend

38 External DTD Declaration  If the DTD is declared in an external file, it should be wrapped in a DOCTYPE definition with the following syntax:  This is the same XML document as above, but with an external DTD.  Tove Jani Reminder Don't forget me this weekend! And this is the file "note.dtd" which contains the DTD: 

39 DTD - XML Building Blocks The Building Blocks of XML Documents Seen from a DTD point of view, all XML documents (and HTML documents) are made up by the following building blocks: Elements Attributes Entities PCDATA CDATA

40 DTD - XML Building Blocks – Cont….  Elements  Elements are the main building blocks of both XML and HTML documents.  Attributes  Attributes provide extra information about elements  Entities  Some characters have a special meaning in XML, like the less than sign (<) that defines the start of an XML tag.  PCDATA  PCDATA means parsed character data.  Think of character data as the text found between the start tag and the end tag of an XML element.  PCDATA is text that WILL be parsed by a parser. The text will be examined by the parser for entities and markup.  CDATA  CDATA means character data.  CDATA is text that will NOT be parsed by a parser. Tags inside the text will NOT be treated as markup and entities will not be expanded.

41 DTD A Document Type Definition (DTD) defines the legal building blocks of an XML document. It defines the document structure with a list of legal elements and attributes. TWO TYPES OF DTD – INTERNAL DTD – EXTERNAL DTD

42 INTERNAL DTD If the DTD is declared inside the XML file, it should be wrapped in a DOCTYPE definition with the following syntax: Example XML document with an internal DTD: ]> Tove Jani Reminder Don't forget to prepare for the UNIT TEST this weekend

43 EXTERNAL DTD If the DTD is declared in an external file, it should be wrapped in a DOCTYPE definition with the following syntax: This is the same XML document as above, but with an external DTD Tove Jani Reminder Don't forget to prepare for the UNIT TEST this weekend! And this is the file "note.dtd" which contains the DTD:

44 XML SCHEMAS XML Schema is an XML-based alternative to DTDs. An XML Schema describes the structure of an XML document. The XML Schema language is also referred to as XML Schema Definition (XSD). The purpose of an XML Schema is to define the legal building blocks of an XML document, just like a DTD. An XML Schema: defines elements that can appear in a document defines attributes that can appear in a document defines which elements are child elements defines the order of child elements defines the number of child elements defines whether an element is empty or can include text defines data types for elements and attributes defines default and fixed values for elements and attributes (REFER http://www.w3.org/TR/2001/REC-xmlschema-0-20010502/ )

45 XML XML PROCESSING DOM SAX

46 XML PROCESSING The JavaTM API for XML Processing (JAXP) includes the basic facilities for working with XML documents through the following standardized set of Java Platform APIs. There are two types of XML Parsers namely – Document Object Model (DOM) – Simple API For XML Parsing (SAX)

47 DOM  The XML DOM views an XML document as a tree-structure. The tree structure is called a node-tree.  All nodes can be accessed through the tree. Their contents can be modified or deleted, and new elements can be created.  The nodes in the node tree have a hierarchical relationship to each other.  The terms parent, child, and sibling are used to describe the relationships. Parent nodes have children. Children on the same level are called siblings (brothers or sisters).  In a node tree, the top node is called the root  Every node, except the root, has exactly one parent node  A node can have any number of children  A leaf is a node with no children  Siblings are nodes with the same parent

48 SAX SAX (Simple API for XML) is an event-driven model for processing XML. Most XML processing models (for example: DOM and XPath) build an internal, tree-shaped representation of the XML document. The developer then uses that model's API (getElementsByTagName in the case of the DOM or findnodes using XPath, for example) to access the contents of the document tree. The SAX model is quite different. Rather than building a complete representation of the document, a SAX parser fires off a series of events as it reads the document from beginning to end. Those events are passed to event handlers, which provide access to the contents of the document. Event Handlers There are three classes of event handlers: DTDHandlers, for accessing the contents of XML Document-Type Definitions; ErrorHandlers, for low-level access to parsing errors; and, by far the most often used, DocumentHandlers, for accessing the contents of the document. A SAX processor will pass the following events to a DocumentHandler: – The start of the document. – A processing instruction element. – A comment element. – The beginning of an element, including that element's attributes. – The text contained within an element. – The end of an element. – The end of the document.

49 EXAMPLE FOR SAX try //Internet Explorer { xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); } catch(e) { try //Firefox, Mozilla, Opera, etc. { xmlDoc=document.implementation.createDocument("","",null); } catch(e) { alert(e.message) } } try { xmlDoc.async=false; xmlDoc.load("books.xml"); document.write("xmlDoc is loaded, ready for use"); } catch(e) {alert(e.message)}

50 SAX vs DOM

51 XML PRESENTATION TECHNOLOGIES

52 XSL XFORMS XHTML

53 XML XSL & XSLT

54 XSL Extensible Style sheet Language XSL is a language for expressing style sheets. An XSL style sheet is, like with CSS, a file that describes how to display an XML document of a given type. XSL shares the functionality and is compatible with CSS2.CSS A transformation language for XML documents: XSLT. Originally intended to perform complex styling operations, like the generation of tables of contents and indexes, it is now used as a general purpose XML processing language. XSLT is thus widely used for purposes other than XSL, like generating HTML web pages from XML data. Advanced styling features, expressed by an XML document type which defines a set of elements called Formatting Objects, and attributes and adding more complex ones.

55 XSL Cont…. Styling requires a source XML documents, containing the information that the style sheet will display and the style sheet itself which describes how to display a document of a given type.

56 XML Coding General Road Building noises. Come off it Mr Dent, you can't win you know. There's no point in lying down in the path of progress. I've gone off the idea of progress. It's overrated

57 XSL Coding... :...

58 XSL – FO XSL- Formatting Objects XSL-FO is a language for formatting XML data for output to screen, paper or other media. Styling is both about transforming and formatting information. XSL-FO Documents XSL-FO documents are XML files with output information. XSL-FO documents are stored in files with a.fo or a.fob file extension. You can also store XSL-FO documents with an.xml extension

59 XSL-FO Areas XSL-FO uses rectangular boxes (areas) to display output Pages Regions Block areas Line areas Inline areas

60 XSL-FO Areas Cont…. XSL-FO Pages XSL-FO output is formatted into pages. Printed output will normally go into many separate pages. Browser output will often go into one long page. XSL-FO Pages contain Regions. XSL-FO Regions Each XSL-FO Page contains a number of Regions: region-body (the body of the page) region-before (the header of the page) region-after (the footer of the page) region-start (the left sidebar) region-end (the right sidebar) XSL-FO Regions contain Block areas.

61 XSL-FO Areas Cont…. XSL-FO Block Areas XSL-FO Block areas define small block elements (the ones that normally starts with a new line) like paragraphs, tables and lists. XSL-FO Block areas can contain other Block areas, but most often they contain Line areas. XSL-FO Line Areas XSL-FO Line areas define text lines inside Block areas. XSL-FO Line areas contain Inline areas. XSL-FO Inline Areas XSL-FO Inline areas define text inside Lines (bullets, single character, graphics, and more).

62 XSL & XSLT XSL stands for EXtensible Stylesheet Language What is XSLT? – XSLT stands for XSL Transformations – XSLT is the most important part of XSL – XSLT transforms an XML document into another XML document – XSLT uses XPath to navigate in XML documents – XSLT is a W3C Recommendation

63 XSL & XSLT (contd…) We want to transform the following XML document ("cdcatalog.xml") into XHTML: Empire Burlesque Bob Dylan USA Columbia 10.90 1985...

64 XSL & XSLT (contd…) Then you create an XSL Style Sheet ("cdcatalog.xsl") with a transformation template: My CD Collection Title Artist

65 XSL & XSLT (contd…) The result is:

66 XML XFORMS Next generation of HTML forms

67 Introduction XForms is the next generation of HTML forms. XForms uses XML to create input forms on the Web. XForms is richer and more flexible than HTML forms XForms will be the forms standard in XHTML 2.0 XForms is platform and device independent XForms separates data and logic from presentation XForms uses XML to define form data XForms stores and transports data in XML documents XForms contains features like calculations and validations of forms XForms reduces or eliminates the need for scripting XForms is a W3C Recommendation

68 Xforms An HTML form makes it possible for web applications to accept input from a user. web users do complex transactions that are starting to exceed the limitations of standard HTML forms. XForms provides a richer, more secure, and device independent way of handling web input. We should expect future web solutions to demand the use of XForms-enabled browsers.

69 Xforms Cont… XForms uses XML for data definition and HTML or XHTML for data display. XForms separates the data logic of a form from its presentation. This way the XForms data can be defined independent of how the end-user will interact with the application. With XForms, the rules for describing and validating data are expressed in XML. With XForms, the data displayed in a form are stored in an XML document, and the data submitted from the form, are transported over the internet using XML. The data content is coded in, and transported as Unicode bytes.

70 Xforms Cont… XForms device independent, because the data model can be used for all devices. The presentation can be customized for different user interfaces, like mobile phones, handheld devices, and Braille readers for the blind. XForms is device independent and based on XML, it is also possible to add XForms elements directly into other XML applications like VoiceXML (speaking web data), WML (Wireless Markup Language), and SVG (Scalable Vector Graphics).

71 XFORMS  XForms is the next generation of HTML forms  XForms is richer and more flexible than HTML forms  XForms will be the forms standard in XHTML 2.0  XForms is platform and device independent  XForms separates data and logic from presentation  XForms uses XML to define form data  XForms stores and transports data in XML documents  XForms contains features like calculations and validations of forms  XForms reduces or eliminates the need for scripting  XForms is a W3C Recommendation

72 XFORMS (contd…) The XForms Model The XForms model is used to describe the data. The data model is an instance (a template) of an XML document. The XForms model defines a data model inside a element:

73 XFORMS (contd…) The XForms model uses a element to describe how to submit the data. The XForms user interface is used to display and input the data. The user interface elements of XForms are called controls (or input controls) XForms is not designed to work alone. There is no such thing as an XForms document. XForms has to run inside another XML document. It could run inside XHTML 1.0, and it will run inside XHTML 2.0.

74 XFORMS (contd…) All together it looks as below First Name Last Name Submit Output seems like

75 XML XHTML

76 XHTML stands for EXtensible HyperText Markup Language XHTML is aimed to replace HTML XHTML is almost identical to HTML 4.01 XHTML is a stricter and cleaner version of HTML XHTML is HTML defined as an XML application XHTML is a W3C Recommendation XHTML elements must be properly nested XHTML elements must always be closed XHTML elements must be in lowercase XHTML documents must have one root element

77 XHTML ( Contd…) simple document a simple paragraph

78 XHTML ( contd…) The 3 Document Type Definitions – DTD specifies the syntax of a web page in SGML. – DTD is used by SGML applications, such as HTML, to specify rules that apply to the markup of documents of a particular type, including a set of element and entity declarations. – XHTML is specified in an SGML document type definition or 'DTD'. – An XHTML DTD describes in precise, computer-readable language, the allowed syntax and grammar of XHTML markup. There are currently 3 XHTML document types: – STRICT – TRANSITIONAL – FRAMESET

79 XHTML ( contd…) XHTML 1.0 specifies three XML document types that correspond to three DTDs: – Strict – Transitional – Frameset XHTML 1.0 Strict We can use this when you want really clean markup, free of presentational clutter. We can use this together with Cascading Style Sheets. XHTML 1.0 Transitional We can use this when you need to take advantage of HTML's presentational features and when you want to support browsers that don't understand Cascading Style Sheets. XHTML 1.0 Frameset We can use this when you want to use HTML Frames to partition the browser window into two or more frames.

80 XHTML ( contd…) Why XHTML Modularization? By splitting XHTML into modules, the W3C (World Wide web Consortium) has created small and well-defined sets of XHTML elements that can be used separately for small devices, or combined with other XML standards into larger and more complex applications.

81 XHTML ( contd…) Some of the modules are as below

82 XML Manipulation & Transformation Technologies

83 TRANSFORMATION XSLT XLINK XPATH XQuery

84 XML XSLT

85 XSL stands for EXtensible Stylesheet Language, and is a style sheet language for XML documents. XSLT stands for XSL Transformations. CSS = Style Sheets for HTML XSL = Style Sheets for XML XSL consists of three parts: XSLT - a language for transforming XML documents XPath - a language for navigating in XML documents XSL-FO - a language for formatting XML documents

86 XSLT Introduction XSLT is a language for transforming XML documents into XHTML documents or to other XML documents. XPath is a language for navigating in XML documents

87 XSLT = XSL Transformations XSLT is the most important part of XSL. XSLT is used to transform an XML document into another XML document, or another type of document that is recognized by a browser, like HTML and XHTML. Normally XSLT does this by transforming each XML element into an (X)HTML element. With XSLT you can add/remove elements and attributes to or from the output file. You can also rearrange and sort elements, perform tests and make decisions about which elements to hide and display, and a lot more. A common way to describe the transformation process is to say that XSLT transforms an XML source-tree into an XML result-tree. XSLT Uses XPath XSLT uses XPath to find information in an XML document. XPath is used to navigate through elements and attributes in XML documents.

88 How Does it Work? In the transformation process, XSLT uses XPath to define parts of the source document that should match one or more predefined templates. When a match is found, XSLT will transform the matching part of the source document into the result document.

89 XML XLINK

90 XLink and XPointer XLink defines a standard way of creating hyperlinks in XML documents. XPointer allows the hyperlinks to point to more specific parts in the XML document.

91 XLINK & XPOINTER

92 XLINK & XPOINTER Cont…. XLink is short for XML Linking Language XLink is used to create hyperlinks in XML documents Any element in an XML document can behave as a link XLink supports simple links (like HTML) and extended links (for linking multiple resources together) With XLink, the links can be defined outside the linked files ################################################ XPointer is short for XML Pointer Language XPointer allows the links to point to specific parts of an XML document XPointer uses XPath expressions to navigate in the XML document

93 XLINK XLink Syntax In HTML, we know (and all the browsers know!) that the element defines a hyperlink. However, this is not how it works with XML. In XML documents, you can use whatever element names you want - therefore it is impossible for browsers to predict what hyperlink elements will be called in XML documents. The solution for creating links in XML documents was to put a marker on elements that should act as hyperlinks. Example Visit W3Schools Visit W3C

94 XLINK ( contd…)

95 XML XPATH

96 XPATH Introduction XPath is used to navigate through elements and attributes in an XML document. XPath is a language for finding information in an XML document. XPath is a syntax for defining parts of an XML document XPath uses path expressions to navigate in XML documents XPath contains a library of standard functions XPath is a major element in XSLT XPath is a W3C recommendation

97 XPATH Introduction Cont…..

98 XPath Nodes XPath Terminology Nodes In XPath, there are seven kinds of nodes: element, attribute, text, namespace, processing-instruction, comment, and document nodes.

99 Relationship of Nodes Parent Each element and attribute has one parent. Children Element nodes may have zero, one or more children. Siblings Nodes that have the same parent. Ancestors A node's parent, parent's parent, etc. Descendants A node's children, children's children, etc.

100 XPATH XPath is a syntax for defining parts of an XML document XPath uses path expressions to navigate in XML documents XPath contains a library of standard functions XPath is a major element in XSLT XPath is a W3C Standard

101 XPATH ( contd…) XPath Terminology Nodes In XPath, there are seven kinds of nodes: element, attribute, text, namespace, processing-instruction, comment, and document (root) nodes. XML documents are treated as trees of nodes. The root of the tree is called the document node (or root node). Relationship of Nodes – Parent – Children – Siblings – Ancestors – Descendants

102 XPATH ( contd…)

103 Predicates

104 XPATH ( contd…) Selecting Unknown Nodes Selecting several paths

105 XML XQUERY

106 Xquery Introduction XQuery is to XML what SQL is to database tables. XQuery was designed to query XML data. XQuery is designed to query XML data - not just XML files, but anything that can appear as XML, including databases. XQuery is the language for querying XML data XQuery for XML is like SQL for databases XQuery is built on XPath expressions XQuery is supported by all major databases XQuery is a W3C Recommendation

107 Xquery - Usage Extract information to use in a Web Service Generate summary reports Transform XML data to XHTML Search Web documents for relevant information

108 XQuery XQuery is the language for querying XML data XQuery for XML is like SQL for databases XQuery is built on XPath expressions XQuery is supported by all the major database engines (IBM, Oracle, Microsoft, etc.) XQuery is a W3C Recommendation

109 XQuery ( contd…) Example XML file - Everyday Italian Giada De Laurentiis 2005 30.00 - Harry Potter J K. Rowling 2005 29.99 - XQuery Kick Start James McGovern Per Bothner Kurt Cagle James Linn Vaidyanathan Nagarajan 2003 49.99 - Learning XML Erik T. Ray 2003 39.95

110 XQuery ( contd…) Functions XQuery uses functions to extract data from XML documents. The doc() function is used to open the "books.xml" file: doc("books.xml") Path Expressions XQuery uses path expressions to navigate through elements in an XML document. The following path expression is used to select all the title elements in the "books.xml" file: doc("books.xml")/bookstore/book/title(/bookst ore selects the bookstore element, /book selects all the book elements under the bookstore element, and /title selects all the title elements under each book element) The XQuery above will extract the following: Everyday Italian Harry Potter XQuery Kick Start Learning XML Predicates XQuery uses predicates to limit the extracted data from XML documents. The following predicate is used to select all the book elements under the bookstore element that have a price element with a value that is less than 30: doc("books.xml")/bookstore/book[price<30]The XQuery above will extract the following: Harry Potter J K. Rowling 2005 29.99

111 XQuery ( contd…) With FLWOR FLWOR is an acronym for "For, Let, Where, Order by, Return" The for clause selects all book elements under the bookstore element into a variable called $x. The where clause selects only book elements with a price element with a value greater than 30. The order by clause defines the sort- order. Will be sort by the title element. The return clause specifies what should be returned. Here it returns the title elements. Example doc("books.xml")/bookstore/book[price >30]/title The following FLWOR expression will select exactly the same as the path expression above: for $x in doc("books.xml")/bookstore/book where $x/price>30 return $x/title The result will be: XQuery Kick Start Learning XML With FLWOR you can sort the result: for $x in doc("books.xml")/bookstore/book where $x/price>30 order by $x/title return $x/title


Download ppt "XML TECHNOLOGY FAMILY UNIT - I XML XML - Introduction."

Similar presentations


Ads by Google