XML Extensible Markup Language is simply a set of rules.This set of rules identifies how you can...
If you can't read please download the document
XML Extensible Markup Language is simply a set of rules.This set of rules identifies how you can define tags that seprate a document into individual parts
XML Extensible Markup Language is simply a set of rules.This
set of rules identifies how you can define tags that seprate a
document into individual parts and subparts. XML rules are based on
earlier markup language called the SGML(standard generalized markup
language) which was developed to provide a method to identify the
portions and content of a document,not by the actual content or
line no.but by the type of information it contains. XML cretes text
files to store your structured information. 1Sunil Kumar
Sahu,Lecturer RCET
Slide 2
XML is very easy to use,easy to read by a computer,easy to
debug and easy to use to crate XML suitable for any industry that
uses structured data such as spreadsheetdatabases,financial
information and technical drawings. XML file can be saved with.xml
extension. What is XML? XML stands for EXtensible Markup Language
XML is a markup language much like HTML XML was designed to carry
data, not to display data XML tags are not predefined. You must
define your own tags XML is designed to be self-descriptive XML is
a W3C Recommendation 2Sunil Kumar Sahu,Lecturer RCET
Slide 3
The Difference Between XML and HTML XML is not a replacement
for HTML. XML and HTML were designed with different goals: XML was
designed to transport and store data, with focus on what data is
HTML was designed to display data, with focus on how data looks
3Sunil Kumar Sahu,Lecturer RCET
Slide 4
XML Does Not DO Anything Maybe it is a little hard to
understand, but XML does not DO anything. XML was created to
structure, store, and transport information. The following example
is a note to Tove, from Jani, stored as XML: Tove Jani Reminder
Don't forget me this weekend! always appearing as the first line in
xml document which specify the version of xml that is used. used to
specify the relationship xml file to other file. The note above is
quite self descriptive. It has sender and receiver information, it
also has a heading and a message body. 4Sunil Kumar Sahu,Lecturer
RCET
Slide 5
With XML You Invent Your Own Tags The tags in the example above
(like and ) are not defined in any XML standard. These tags are
"invented" by the author of the XML document. That is because the
XML language has no predefined tags. The tags used in HTML are
predefined. HTML documents can only use tags defined in the HTML
standard (like,, etc.). XML allows the author to define his/her own
tags and his/her own document structure. 5Sunil Kumar Sahu,Lecturer
RCET
Slide 6
Extensible Stylesheet Language(XSL) The Extensible Style
Language (XSL) is a more advanced style-sheet language specifically
designed for use with XML documents. XSL documents are themselves
well-formed XML documents. 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.CSS The XSL
standards provides a framework for converting XML documents to
other forms of structured text(HTML) and for studying XML documents
for output to various media including print and electronic media.
6Sunil Kumar Sahu,Lecturer RCET
Slide 7
The Need for XSL CSS can not change the order of appearance of
content within a document. CSS can not display attribute
values,even though you can use attribute as selectors in CSS rules.
CSS does not address the ongoing need for formatting documents in
print. XSL is the bridge between XML and HTML 7Sunil Kumar
Sahu,Lecturer RCET
Slide 8
8 Using an XSL Processor XSL Processor XML document XML
document XSL stylesheet XSL stylesheet Result is either an XML,
HTML or text document Result is either an XML, HTML or text
document Sunil Kumar Sahu,Lecturer RCET
Slide 9
The XSL standard actually comprises two specification- 1.XSL
Transformation(XSLT) 2.XSL Formatting Objects(XSL-FO) 9Sunil Kumar
Sahu,Lecturer RCET
Slide 10
XSLT An XSLT stylesheet is a program that transforms an XML
document into another non-XML document For example: Transforming
XML to XHTML (HTML that conforms to XML syntax) Transforming an XML
document to WML (a format of XML that cellular phones can display)
XSLT accomplishes the transformation using series of one or more
template rule with source documents to be transformed. These
template rules are fed into XSLT processor which performs the
desired transformation. 10Sunil Kumar Sahu,Lecturer RCET
Slide 11
An xsl:template element consist of 2 parts- 1.A match
expression indicating which portion of the source document will be
processed by this template rule. 2.The template proper, meaning
something to be instantiated or some action to take place when a
matching portion of the source document is found. 11Sunil Kumar
Sahu,Lecturer RCET
Slide 12
For eg.- Consider the following xml document. Compelete
Reference XML Heather Williamson Assume that we want to convert the
above document into HTML. Specifically the Book title will be
transformed to a level-1 and author name will transformed to
level-2 heading. The following XSLT style sheet accomplish the
objective. 12Sunil Kumar Sahu,Lecturer RCET
Slide 13
http://www.w3.org/TR/REC/Html-40 Book information 13Sunil Kumar
Sahu,Lecturer RCET
Slide 14
Linking XSLT Style sheet to an XML Document- The result of
passing this style sheet through XSLT processor will be the html
document- Book Information Complete Reference heather Williamson
14Sunil Kumar Sahu,Lecturer RCET
Slide 15
XSL-FO(XSL-Formatting Objects) :-Formatting Objects) it consist
of Comprehensive set of markup that works much like CSS to render
XML documents for display,print and other media. A language for
formatting XML documents Unlike CSS or XSLT style sheet, it is not
linked directly to an xml document because the XSL-FO vocabulary is
not meant to style another document,it styles its own documents
content. Its all content comes from an XSLT style sheet. The html
vocabulary consist of elements & attributes representing
combination of content and presentation but XSL-FO vocabulary
represents nothing but presentation. 15Sunil Kumar Sahu,Lecturer
RCET
Slide 16
The XSL-FO specification defines a quite large no. of elements
and attributes. We could use XSLT to transform the document to
XSL-FO instead of HTML 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 (to make them more accessible to XML
editors). 16Sunil Kumar Sahu,Lecturer RCET
Slide 17
What is XSL-FO XSL-FO is a language for formatting XML data
XSL-FO stands for Extensible Stylesheet Language Formatting Objects
XSL-FO is based on XML XSL-FO is a W3C Recommendation XSL-FO is now
formally named XSL 17Sunil Kumar Sahu,Lecturer RCET
Structure explained XSL-FO documents are XML documents, and
must always start with an XML declaration: The element is the root
element of XSL-FO documents. The root element also declares the
namespace for XSL-FO: The element contains one or more page
templates: 19Sunil Kumar Sahu,Lecturer RCET
Slide 20
Each element contains a single page template. Each template
must have a unique name (master-name): One or more elements
describe the page contents. The master-reference attribute refers
to the simple-page-master template with the same name: Note: The
master-reference "A4" does not actually describe a predefined page
format. It is just a name. You can use any name like "MyPage",
"MyTemplate", etc. 20Sunil Kumar Sahu,Lecturer RCET
Slide 21
XSL-FO Output XSL-FO output is normally nested inside elements,
nested inside elements, nested inside elements: Example Hello HOW
ARE YOU 21Sunil Kumar Sahu,Lecturer RCET
Slide 22
The output from this code would be something like this: Hello
HOW ARE YOU 22Sunil Kumar Sahu,Lecturer RCET
Slide 23
DTD(Document Type Definition) A DTD (Document Type Definition)
describes the structure of one or more XML documents. Specifically,
a DTD describes: Elements Attributes, and Entities DTD provide the
rules by which information within your XML document can be
validated. It can be internal or external. An XML document is
well-structured if it follows certain simple syntactic rules. An
XML document is valid if it also specifies and conforms to a DTD.
Only the valid documents are valuable in terms of sharing and
retrieving information. 23Sunil Kumar Sahu,Lecturer RCET
Slide 24
XML documents are designed to be processed by computer programs
If you can put just any tags in an XML document, its very hard to
write a program that knows how to process the tags A DTD specifies
what tags may occur, when they may occur, and what attributes they
may (or must) have. A DTD allows the XML document to be verified
(shown to be legal) A DTD that is shared across groups allows the
groups to produce consistent XML documents. 24Sunil Kumar
Sahu,Lecturer RCET
Slide 25
A validating parser is an XML parser that compares the XML
document to a DTD and reports any errors Most browsers dont use
validating parsers DTD(Document Type Definition) 25Sunil Kumar
Sahu,Lecturer RCET
Slide 26
An XML example This is the great American novel. It was a dark
and stormy night. Suddenly, a shot rang out! An XML document
contains- Elements, such as novel and paragraph, consisting of tags
and content Attributes, such as number="1", consisting of a name
and a value Entities (not used in this example) 26Sunil Kumar
Sahu,Lecturer RCET
Slide 27
A DTD example ]> A novel consists of a foreword and one or
more chapter s, in that order Each chapter must have a number
attribute A foreword consists of one or more paragraph s A chapter
also consists of one or more paragraph s A paragraph consists of
parsed character data. 27Sunil Kumar Sahu,Lecturer RCET
Slide 28
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. Tags
inside the text will be treated as markup and entities will be
expanded. However, parsed character data should not contain any
&, characters; these need to be represented by the & <
and > entities, respectively. 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. 28Sunil Kumar Sahu,Lecturer RCET
Slide 29
#PCDATA describes elements with only character data #PCDATA can
be used in an or grouping: This is called mixed content Attributes
Attributes provide extra information about elements. Attributes are
always placed inside the opening tag of an element. In XML: In DTD:
29Sunil Kumar Sahu,Lecturer RCET
Slide 30
30 Types of DTD Internal DTD DTD is created within the XML
document itself. External DTD Instead of copying the DTD into each
document, you create an external file that contains the DTD.
Reference its URL for each document that uses it. Sunil Kumar
Sahu,Lecturer RCET
Slide 31
Internal DTD 31Sunil Kumar Sahu,Lecturer RCET
Slide 32
External DTD Create a new text file with any text editor Define
the rules of the DTD. Save file as text only with the (.dtd)
extension. 32Sunil Kumar Sahu,Lecturer RCET
Slide 33 33Sunil Kumar Sahu,Lecturer RCET">
Linking to Document Type Definition Ken Anderson Lukasz Kurgan
Ok! We can see some progress The SYSTEM declaration identifies this
DTD as being part of local,or nonpublic selection of DTD and use
PUBLIC for official, published DTDs. And also with PUBLIC we use
full path URL of the document.like
"http://www.mysite.com/mydoc.dtd"> 33Sunil Kumar Sahu,Lecturer
RCET
Slide 34
Another example: XML 05/29/2002 Philadelphia, PA USA 84 51
34Sunil Kumar Sahu,Lecturer RCET
Slide 35
The DTD for this example 35Sunil Kumar Sahu,Lecturer RCET
Slide 36
Limitations of DTDs DTDs are a very weak specification language
You cant put any restrictions on element contents Its difficult to
specify: All the children must occur, but may be in any order This
element must occur a certain number of times There are only ten
data types for attribute values But most of all: DTDs arent written
in XML! If you want to do any validation, you need one parser for
the XML and another for the DTD This makes XML parsing harder than
it needs to be There is a newer and more powerful technology: XML
Schemas However, DTDs are still very much in use 36Sunil Kumar
Sahu,Lecturer RCET
Slide 37
XML Namespace The purpose of XML Namespaces is to distinguish
between duplicate element and attribute names. In order to give
documents the ability to use multiple elements of the same name
within the same document,XML namespace was created. For example: $
Both sedans and trucks have the same price element, so the parser
doesnt know which one is which. 37Sunil Kumar Sahu,Lecturer
RCET
Slide 38
Notation for Namespace- Namespace is a mapping between an
element prefix and a URL. For eg. cars is the prefix in this
example, URLs are not a pointer to information about the Namespace.
They are just unique identifiers. You cannot resolve XML namespace
URIs. 38Sunil Kumar Sahu,Lecturer RCET
Slide 39
Ways to Specify Namespaces 1.Inside the XML file. 2.Inside the
DTD file. 39Sunil Kumar Sahu,Lecturer RCET
Slide 40
This XML carries HTML table information: Apples Bananas This
XML carries information about a table (a piece of furniture):
African Coffee Table 80 120 1.Inside the XML File 40Sunil Kumar
Sahu,Lecturer RCET
Slide 41
If these XML fragments were added together, there would be a
name conflict. Both contain a element, but the elements have
different content and meaning. An XML parser will not know how to
handle these differences. Name conflicts in XML can easily be
avoided using a name prefix. When using prefixes in XML, a so-
called namespace for the prefix must be defined. 41Sunil Kumar
Sahu,Lecturer RCET
In the example above, the xmlns attribute in the tag give the
h: and f: prefixes a qualified namespace. When a namespace is
defined for an element, all child elements with the same prefix are
associated with the same namespace. Namespaces can be declared in
the elements where they are used or in the XML root element.
43Sunil Kumar Sahu,Lecturer RCET
Default Namespaces Defining a default namespace for an element
saves us from using prefixes in all the child elements. It has the
following syntax: xmlns="namespaceURI" Default namespace affects
element names only; it does not apply to attributes. In long
documents with a lot of markup, all in the same namespace, you
might find it inconvenient to add a prefix to each element name.
You can attach a default namespace to an element and its child
elements using an xmlns attribute with no prefix. 45Sunil Kumar
Sahu,Lecturer RCET
Slide 46
This XML carries HTML table information : Apples Bananas This
XML carries information about a piece of furniture: African Coffee
Table 80 120 46Sunil Kumar Sahu,Lecturer RCET
Slide 47
A Namespace specification can be overridden using the prefixes.
Its uppercase now. 47Sunil Kumar Sahu,Lecturer RCET
Slide 48
2.Inside the DTD File Here is a sample Namespace specification
within a DTD. ] > 48Sunil Kumar Sahu,Lecturer RCET
Slide 49
XML Schema XML Schema documents are used to define and validate
the content and structure of XML data. Schema provide a means of
defining the structure,content and semantics of XML documents that
can be shared between many types of computers and documents. XML
Schemas are based on XML so like XML they can be created in a
simple text editor or by one of available development programs that
are availabe through internet. It can be saved with.xsd extension.
49Sunil Kumar Sahu,Lecturer RCET
Slide 50
XML Schema was originally proposed by Microsoft, but became an
official W3C recommendation in May 2001. Diffrence between DTD and
Schema 1)DTD are focused on providing simple data typing on
attributes and elements of XML documents while XML schema provides
a systematic data typing capability. 2) DTD provide a basic macro
facility using parameter entities, XML Schema allow you to re-
create these effects using a system of high level built in
features. 50Sunil Kumar Sahu,Lecturer RCET
Slide 51
Schema Workflow 51Sunil Kumar Sahu,Lecturer RCET
Slide 52
Example- Computer Concept and Web Technology Williamson PHD
52Sunil Kumar Sahu,Lecturer RCET
Slide 53
Save as Book.xsd The use of element defines the order of the
child elements. 53Sunil Kumar Sahu,Lecturer RCET
Slide 54
Element types Schema breaks your XML document elements into 2
types 1.complex types 2.simple types 1.Complex types- Complex types
of elementes,which enable attribute and elements in their content
are created using schema element declaration. 54Sunil Kumar
Sahu,Lecturer RCET
Slide 55 55Sunil Kumar Sahu,Lecturer RCET">
Inheritance Each complex type definition is either a
restriction of a complex type definition an extension of a simple
or complex type definition a restriction of the ur-type definition.
Example 55Sunil Kumar Sahu,Lecturer RCET
Slide 56
Type Definitions Simple Type Definition VS. Complex Type
Definition Attributes & Elements without element children
Complex Type Definition Simple Type Definition Elements 56Sunil
Kumar Sahu,Lecturer RCET
Slide 57
Simple Type Definition Simple Type Definition can be: a
restriction of some other simple type; a list or union of simple
type definition;or a built-in primitive datatypes. Example 57Sunil
Kumar Sahu,Lecturer RCET
Slide 58
Advantages of Schema Syntax in XML Style. Supporting Namespace
and import/include More data types. Able to create complex data
type by inheritance Inheritance by extension or restriction.
58Sunil Kumar Sahu,Lecturer RCET
Slide 59
Problems of XML Schema General Problem Several-hundred-page
spec in a very technical language Practical Limitations of
expressibility content and attribute declarations cannot depend on
attributes or element context. Technical Problem The notion of type
adds an extra layer of confusing complexity 59Sunil Kumar
Sahu,Lecturer RCET
Slide 60
Extensible linking Language (XLL) XLL stands for Extensible
Linking language and consists of the following parts: XLink -
Advanced linking. It links to multiple destinations, is
bi-directional and allows for links to be displayed on other
documents. XPointer - It is built on XPath and it establishes a
common system to specify node locations. It allows for locating
data that is not a complete node. 60Sunil Kumar Sahu,Lecturer
RCET
Slide 61
XLINK(XML Linking Language) XLink is short for XML Linking
Language Define link relationships among more than two resources.
XLink is capable of linking more than just documents; XLink links
resources which includes documents,audio,video,database data,etc.
XLink is used to create hyperlinks in XML documents Any element in
an XML document can behave as a link. 61Sunil Kumar Sahu,Lecturer
RCET
Slide 62
XLink is a W3C Recommendation. XLink supports simple links
(like HTML) and extended links (for inking multiple resources
together) With XLink, the links can be defined outside the linked
files. Web Browsers will eventually support XLink. However,XLink is
intended for a broader base of applications, not just Web browsers.
Xlink elements that specify linking information are called linking
elements. 62Sunil Kumar Sahu,Lecturer RCET
Slide 63
Xlink allow XML document to- 1.Create a relationship of links
between multiple documents. 2.Add information about the link to a
link(metadata). 3. Create and describe links to documents in a
myriad of locations. 63Sunil Kumar Sahu,Lecturer RCET
Slide 64
Xlink Namespace The XML Namespace specification controls how
declaration of other standardized documents or document defining
elements and attributes used within an XML document must be
referenced. the xlink prefix is the standard method of referring to
the Xlink namespace in XML documents. 64Sunil Kumar Sahu,Lecturer
RCET
Slide 65
Xlink Attribute- type-specifies the type of link to be created.
href-specifies the address of the link. role-Specifies the type of
resource that defines the destination of the link.
arcrole-Specifies the type of resource that defines the source of
the link. title-Describes the meaning of a link. show-Specifies how
the destination resource should be displayed. actuate-Specifies
when the link should be traversed. label-Specifies an identifiable
name for the link. From-Refrences a label of a link to use as a
reference point in the traversal of the current link. To-References
a label of a link to use as a destination reference point in the
traversal of the current link. 65Sunil Kumar Sahu,Lecturer
RCET
Slide 66
Types of Links 1.Simple Links 2.Extended Links Simple Links:-
Define a one-way connection between two resources. One resource is
an xml element and the other is remote. This is the only link that
looks like the html anchor element. Simple Links are always
outbound. 66Sunil Kumar Sahu,Lecturer RCET
Slide 67 The W"> The Wonderful Wizard of Oz L. Frank Baum
1900 67Sunil Kumar Sahu,Lecturer RCET"> The W" title="Simple
link Example- The W">
Simple link Example- The Wonderful Wizard of Oz L. Frank Baum
1900 67Sunil Kumar Sahu,Lecturer RCET
Slide 68
simple - Link Example XML Document Role definition Linked
resource Instruction to open the link in a new window when the link
is traversed Instruction to traverse the link when loading the
original document 68Sunil Kumar Sahu,Lecturer RCET
Slide 69
2.Extended Link:- Define a collection of resources and links
between them. These may be used to define a directed, labeled
graph. It provides complex linking relationship among multiple
resources including both inbound(arriving from another destination)
and outbound(departing for a another destination) arcs. 69Sunil
Kumar Sahu,Lecturer RCET
Slide 70
Extended links will normally contain the following:- Local
resources involved in the connections. These have type=resource
Remote resources involved in the connections. These have
type=locator Descriptions of the connections,These have type=arc An
element with XLink type=title only has XLink specified meaning if
it is the child of an element with an XLink type of extended,
locator, or arc An element with XLink type=none has no XLink
specified meaning. 70Sunil Kumar Sahu,Lecturer RCET
Slide 71
71 Example of extended links Linear Algebra Linear Algebra II
Sunil Kumar Sahu,Lecturer RCET
Slide 72
XPOINTER Xpointer stands for XML Pointer Language. XPointer,
defines an addressing scheme for individual parts of an XML
document. XLinks point to a URL that specifies a particular
resource. The URL may include an XPointer part that more
specifically identifies the desired part or element of the targeted
resource or document. It allow you to identify fragments or
individual parts of XML documents for linking purpose which can be
used by any Uniform Resource Identifier(URI) reference to locate
Internet media Resource type such as text,images,or applications.
Xpointer can be used to identify the specific strings and content
of a document. 72Sunil Kumar Sahu,Lecturer RCET
Slide 73
The XPointer extension to XPath allows it to- 1.Address
point,ranges and nodes. 2.using string matching to locate
information. 3.using addressing expression in URI references as
identifiersof fragments. If the hyperlink points to an XML
document, we can add an XPointer part after the URL in the
xlink:href attribute,to navigate (with an XPath expression) to a
specific place in the document. XPointer Example- In this example,
we will show you how to use XPointer in conjunction with XLink to
point to a specific part of another document. 73Sunil Kumar
Sahu,Lecturer RCET
Slide 74
The following XML document refers to information of the
Colleges for each of my college, all through XLink and XPointer
references: 76Sunil Kumar Sahu,Lecturer RCET
Slide 77
Entities Entities are placeholders in XML. You declare an
entity in the document prolog or in a DTD, and you can refer to it
many times in the document. Different types of entities have
different uses. You can substitute characters that are difficult or
impossible to type with character entities. You can pull in content
that lives outside of your document with external entities. And
rather than type the same thing over and overvagain, such as
boilerplate text, you can instead define your own general entities.
The storage unit that contains the XML declaration, the document
type declaration, and the root element is called the document
entity. 77Sunil Kumar Sahu,Lecturer RCET
Slide 78
An entity consists of a name and a value. When an XML parser
begins to process a document, it first reads a series of
declarations, some of which define entities by associating a name
with a value. The value is anything from a single character to a
file of XML markup. As the parser scans the XML document, it
encounters entity references, which are special markers derived
from entity names. For each entity reference, the parser consults a
table in memory for something with which to replace the marker
78Sunil Kumar Sahu,Lecturer RCET
Slide 79
It replaces the entity reference with the appropriate
replacement text or markup, then resumes parsing just before that
point, so the new text is parsed too. Any entity references inside
the replacement text are also replaced; this process repeats as
many times as necessary. 79Sunil Kumar Sahu,Lecturer RCET
Slide 80
Types of entities 1.General entities for use in document
1.Internal 2.External Example of use: &entity; 2.Parameter
entities for use in DTD 1.Internal 2.External Example of use:
%entity; 80Sunil Kumar Sahu,Lecturer RCET
Slide 81
General entity It is used to add content to XML documents by
substituting information for the entity reference that is used
within the document. General entity references begin with an
ampersand (&) and end with a semicolon(;), with the entitys
name between these two characters. internal general entity Internal
entities are defined completely within the document and external
entities draw their content from another resource located via a
URL. Internal general entity references are defined in the DTD with
the tag, which has the following format: 81Sunil Kumar
Sahu,Lecturer RCET
Predefined General Entity XML predefines five general entity
references, as listed in Table 9-1. These five entity references
appear in XML documents in place of specific characters that would
otherwise be interpreted as markup. For instance, the entity
reference < stands for the less-than sign (
Slide 93
Once the company and customer DTDs are created you can start
creating the primary XML documents DTD. The complete DTD for this
document is given- %customer; %company; 93Sunil Kumar Sahu,Lecturer
RCET
Slide 94
94Sunil Kumar Sahu,Lecturer RCET
Slide 95
XPath W3C has issued the Xpath as a means of locating any
single unit of content,any node within an xml document. XPath is
used to navigate through elements and attributes in an XML
document. XPath is a major element in W3C's XSLT standard - and
XQuery and XPointer are both built on XPath expressions. What is
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 recommendation. 95Sunil Kumar Sahu,Lecturer
RCET
Slide 96
Fig.Xpath,XSLT and XLink 96Sunil Kumar Sahu,Lecturer RCET
Slide 97
XPath Path Expressions XPath uses path expressions to select
nodes or node-sets in an XML document. These path expressions look
very much like the expressions you see when you work with a
traditional computer file system. XPath Standard Functions XPath
includes over 100 built-in functions. There are functions for
string values, numeric values, date and time comparison, node and
QName manipulation, sequence manipulation, Boolean values, and more
97Sunil Kumar Sahu,Lecturer RCET
Slide 98
XPath is Used in XSLT XPath is a major element in the XSLT
standard. Without XPath knowledge you will not be able to create
XSLT documents 98Sunil Kumar Sahu,Lecturer RCET
Slide 99
XPath Terminology Nodes In XPath, there are seven kinds of
nodes: element, attribute, text, namespace, processing-instruction,
comment, and document nodes. XML documents are treated as trees of
nodes. The topmost element of the tree is called the root element.
Look at the following XML document: Harry Potter J K. Rowling 2005
29.99 99Sunil Kumar Sahu,Lecturer RCET
Slide 100
Example of nodes in the XML document above: (root element node)
J K. Rowling (element node) lang="en" (attribute node) Atomic
values Atomic values are nodes with no children or parent. Example
of atomic values:J K. Rowling "en Items Items are atomic values or
nodes. 100Sunil Kumar Sahu,Lecturer RCET
Slide 101
101Sunil Kumar Sahu,Lecturer RCET
Slide 102
102Sunil Kumar Sahu,Lecturer RCET
Slide 103
Xpath Syntax 103Sunil Kumar Sahu,Lecturer RCET
Slide 104
104Sunil Kumar Sahu,Lecturer RCET
Slide 105
105Sunil Kumar Sahu,Lecturer RCET
Slide 106
106Sunil Kumar Sahu,Lecturer RCET
Slide 107
107Sunil Kumar Sahu,Lecturer RCET
Slide 108
XPath Examples- Loading the XML Document Using XMLHttpRequest
to load XML documents is supported in all modern browsers. Code for
most modern browsers: var xmlhttp=new XMLHttpRequest() Code for old
Microsoft browsers (IE 5 and 6): var xmlhttp=new
ActiveXObject("Microsoft.XMLHTTP") Selecting Nodes Internet
Explorer uses the selectNodes() method to select nodes from the XML
document: xmlDoc.selectNodes(xpath); 108Sunil Kumar Sahu,Lecturer
RCET
Slide 109
Firefox, Chrome, Opera and Safari use the evaluate() method to
select nodes from the XML document: xmlDoc.evaluate(xpath, xmlDoc,
null, XPathResult.ANY_TYPE,null); Select all the titles The
following example selects all the title nodes: Example
/bookstore/book/title Select the title of the first book The
following example selects the title of the first book node under
the bookstore element: Example /bookstore/book[1]/title 109Sunil
Kumar Sahu,Lecturer RCET
Slide 110
XML Parser All modern browsers have a built-in XML parser. An
XML parser converts an XML document into an XML DOM object - which
can then be manipulated with JavaScript. 110Sunil Kumar
Sahu,Lecturer RCET
Slide 111
111Sunil Kumar Sahu,Lecturer RCET
Slide 112
112Sunil Kumar Sahu,Lecturer RCET
Slide 113
XML Application XML is a meta-markup language for designing
domain-specific markup languages. Each XML-based markup language is
called an XML application. Each XML application has its own syntax
and vocabulary. 113Sunil Kumar Sahu,Lecturer RCET
Slide 114
Chemical Markup Language CML was originally developed as an
SGML application, and gradually transitioned to XML as the XML
standard developed. In its most simplistic form, CML is HTML plus
molecules, but it has applications far beyond the limited confines
of the Web. Molecular documents often contain thousands of
different, very detailed objects. For example, a single
medium-sized organic molecule may contain hundreds of atoms, each
with several bonds. 114Sunil Kumar Sahu,Lecturer RCET
Slide 115
Example(The water molecule H2O) H O H 1 2 2 3 1 1 115Sunil
Kumar Sahu,Lecturer RCET
Slide 116
Mathematical Markup Language The Mathematical Markup Language
(MathML) is an XML application for mathematical equations. MathML
is sufficiently expressive to handle pretty much all forms of math.
Channel Definition Format Microsofts Channel Definition Format
(CDF) is an XML application for defining channels. Web sites use
channels to upload information to readers who subscribe to the site
rather than waiting for them to come and get it. This is
alternately called Webcasting or push. 116Sunil Kumar Sahu,Lecturer
RCET
Slide 117
A CDF document is an XML file, separate from, but linked to an
HTML document on the site being pushed. The channel defined in the
CDF document determines which pages are sent to the readers, how
the pages are transported, and how often the pages are sent. You
can add CDF to your site without changing any of the existing
content. 117Sunil Kumar Sahu,Lecturer RCET
Slide 118
Synchronized Multimedia Integration Language The Synchronized
Multimedia Integration Language (SMIL, pronounced smile) is a W3C
recommended XML application for writing TV- like multimedia
presentations for the Web. SMIL documents dont describe the actual
multimedia content (that is the video and sound that are played)
but rather when and where they are played. 118Sunil Kumar
Sahu,Lecturer RCET
Slide 119
A SMIL film festival 119Sunil Kumar Sahu,Lecturer RCET
Slide 120
HTML+TIME HTML+TIME builds on SMIL to support timing for
traditional HTML elements and features much closer integration with
the HTML on the Web page. Open Software Description OSD defines XML
tags that describe software components. The description of a
component includes the version of the component, its underlying
structure, and its relationships to and dependencies on other
components. 120Sunil Kumar Sahu,Lecturer RCET
Slide 121
Scalable Vector Graphics Vector graphics are superior to the
bitmap GIF and JPEG images currently used on the Web for many
pictures including flow charts, cartoons, advertisements, and
similar images. A vector graphics format for the Web should support
a lot of features that dont make sense on paper like transparency,
anti-aliasing, additive color, hypertext, animation, and hooks to
enable search engines and audio renderers to extract text from
graphics. 121Sunil Kumar Sahu,Lecturer RCET
Slide 122
Vector Markup Language Microsoft has developed their own XML
application for vector graphics called the Vector Markup Language
(VML). VML is more finished than SVG, and is already supported by
Internet Explorer 5.0 and Microsoft Office 2000. MusicML The
Connection Factory has created an XML application for sheet music
called MusicML. MusicML includes notes, beats, clefs, staffs, rows,
rhythms, rests, beams, rows, chords and more. 122Sunil Kumar
Sahu,Lecturer RCET
Slide 123
VoxML Motorolas VoxML is an XML application for the spoken
word. In particular, its intended for those annoying voice mail and
automated phone response systems. VoxML enables the same data thats
used on a Web site to be served up via telephone. Human Resources
Markup Language Human Resources Markup Language (HRML) is an XML
application that provides a simple vocabulary for describing job
openings. It defines elements matching the parts of a typical
classified want ad such as companies, divisions, recruiters,
contact information, terms, experience, and more. 123Sunil Kumar
Sahu,Lecturer RCET