What is a
Complex XML Element?
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
What is a
Simple XML Element?
A simple element is an XML element that can contain only
text.
A simple element cannot have attributes
A simple element cannot contain other elements
A simple element cannot be empty
However, the text can be of many different types, and may
have various restrictions applied to it.
What is
XPATH ?
XPath, the XML Path Language, is a query language
for selecting nodes from an XML document. In addition, XPath may be used to
compute values (e.g., strings, numbers, or Boolean values) from the content of
an XML document.
The XPath language is based on a tree representation of the
XML document, and provides the ability to navigate around the tree, selecting
nodes by a variety of criteria.
XPATH Syntax & Operators ?
Expression
|
Description
|
nodename
|
Selects all nodes with the name "nodename"
|
/
|
Selects from the root node
|
//
|
Selects nodes in the document from the current node
that match the selection no matter where they are
|
.
|
Selects the current node
|
..
|
Selects the parent of the current node
|
@
|
Selects attributes
|
*
|
Matches any element node
|
@*
|
Matches any attribute node
|
node()
|
Matches any node of any kind
|
Example of
some XPath Expressions ?
Example XML document
<?xml version="1.0"
encoding="UTF-8"?>
<books>
<book>
<title
lang="en">Harry Potter</title>
<price>29.99</price>
</book>
<book>
<title
lang="en">Learning XML</title>
<price>39.95</price>
</book>
</books>
Example XPATH
expressions and Result
Path Expression
|
Result
|
/books/book[1]
|
Selects the first book element that is the child of the
books element.
|
/books/book[last()]
|
Selects the last book element that is the child of the books
element
|
//title[@lang]
|
Selects all the title elements that have an attribute
named lang
|
//title[@lang='en']
|
Selects all the title elements that have a
"lang" attribute with a value of "en"
|
/books/book[price>35.00]
|
Selects all the book elements of the books element that
have a price element with a value greater than 35.00
|
What is XSLT ?
XSLT (Extensible
Stylesheet Language Transformations) is a language for transforming XML
documents into other XML documents, or other formats such as HTML for web
pages, plain text or into XSL Formatting Objects.
The original document is not changed; rather, a new
document is created based on the content of an existing one. Typically, input
documents are XML files.
Example XSLT code ?
<?xml version="1.0"
encoding="UTF-8"?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output
method="xml" indent="yes"/>
<xsl:template
match="/persons">
<root>
<xsl:apply-templates select="person"/>
</root>
</xsl:template>
</xsl:stylesheet>
XSLT vs XPATH ?
XSLT uses XPath to identify subsets of the source
document tree and perform calculations.
XPath also provides a range of functions, which XSLT
itself further augments.
How to
refer another XSL from main XSL file ?
The <xsl:import> element is a top-level element
that is used to import the contents of one style sheet into another.
Note: This element must appear as the first child node of
<xsl:stylesheet> or <xsl:transform>.
Syntax: <xsl:import href="URI"/>
Why we use
Call-template inside XSL ?
Call-template works similar to the apply-template element
in XSLT. Both attach a template to specific XML data. This provides formatting
instructions for the XML. The main difference between the two processes is the
call function only works with a named template. You must establish a 'name'
attribute for the template in order to call it up to format a document.
<?xml
version="1.0"?>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<
xsl:call-template name="myTemplate">
< !-- Content:
xsl -->
<
/xsl:call-template>
< stylesheet>
Refer Previous post on Interview questions at
1. SOA Interview Questions : Service Oriented Architecture Interview Questions Part 1
http://osb-dheeraj.blogspot.com/2016/02/soa-interview-questions-service.html
2. SOA Interview Questions : Service Oriented Architecture Interview Questions Part 2
http://osb-dheeraj.blogspot.com/2016/02/soa-interview-questions-service_16.html
3. SOA Interview Questions : Service Oriented Architecture Interview Questions Part 3
http://osb-dheeraj.blogspot.com/2016/02/soa-interview-questions-service_21.html
4. SOA Interview Questions : Service Oriented Architecture Interview Questions Part 4
http://osb-dheeraj.blogspot.com/2016/02/soa-interview-questions-service_77.html
I really liked your blog post.Much thanks again. Awesome.
ReplyDeleteSOA Training
Oracle SOA Online Training India