What is XML ?
Extensible Markup Language (XML) is a markup language that defines a set of rules for encoding documents in a format which is both human-readable and machine-readable. It is defined by the W3C's XML 1.0 Specification
The design goals of XML emphasize simplicity, generality and usability across the Internet. XML was designed to store and transport data, and designed to be self-descriptive.
Sample XML file ?
<?xml version="1.0" encoding="UTF-8"?>
What are Main Key Terminology of XML ?
A markup construct that begins with < and ends with >. Tags come in three flavors:
start-tags; for example: <section>
end-tags; for example: </section>
empty-element tags; for example: <section/>
A logical document component which either begins with a start-tag and ends with a matching end-tag or consists only of an empty-element tag.
The characters between the start- and end-tags, if any, are the element's content, and may contain markup, including other elements, which are called child elements.
An example of an element is
A markup construct consisting of a name/value pair that exists within a start-tag or empty-element tag.
In the example (below) the element img has two attributes, src and desc:
<img src="myimage.jpg" desc='my image' />
What is Data Object model (DOM) ?
The Document Object Model (DOM) is an interface-oriented application programming interface that allows for navigation of the entire document as if it were a tree of node objects representing the document's contents. A DOM document can be created by a parser, or can be generated manually by users.
What is difference between XML & HTML ?
XML was developed to describe data and to focalize on what the data represent.
HTML was developed to display data about to focalize on the way that data looks.
HTML is about displaying data, XML is about describing information.
XML is extensible.The tags used to mark the documents and the structures of documents in HTML are pre-defined.
The author of HTML documents can use only tags that were previously defined in HTML.
The Standard XML gives you the possibility to define personal structures and tags.
What is XML Schema (XSD) ?
An XML Schema describes the structure of an XML document. XSD (XML Schema Definition) is the language used to describe schema. They use a rich datatyping system and allow for more detailed constraints on an XML document's logical structure.
Write a sample Schema File ?
<?xml version="1.0" encoding="utf-8" ?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.example.org"
<xsd:element name="exampleElement" type="xsd:string">
<xsd:documentation>A sample element</xsd:documentation>
What is Inline schema ?
Inline schemas are a way of including the schema within a WSDL file rather than specifying that it be imported. A schema defines the structure of an XML document. A schema is itself an XML document defined with an xsd extension.
Difference between Include and Import in context to XML schema ?
The fundamental difference between include and import is that you must use import to refer to declarations or definitions that are in a different target namespace and you must use include to refer to declarations or definitions that are (or will be) in the same target namespace.
What Is XML Namespace ?
XML namespaces are used for providing uniquely named elements and attributes in an XML document. They are defined in a W3C recommendation. XML Namespaces enable the same document to contain XML elements and attributes taken from different vocabularies, without any naming collisions occurring.
An XML namespace is declared using the reserved XML attribute xmlns or xmlns:prefix,
What is targetNamespace ?
<schema xmlns="http://www.w3.org/2001/SchemaXML targetNamespace="http://www.example.com/name" xmlns:target="http://www.example.com/name">
The targetNamespace declares a namespace for other xml and xsd documents to refer to this schema. The target prefix in this case refers to the same namespace and you would use it within this schema definition to reference other elements, attributes, types, etc. also defined in this same schema definition.
What is ElementFormDefault ?
The form for elements declared in the target namespace of this schema. The value must be "qualified" or "unqualified". Default is "unqualified". "unqualified" indicates that elements from the target namespace are not required to be qualified with the namespace prefix. "qualified" indicates that elements from the target namespace must be qualified with the namespace prefix.
What is AttributetFormDefault ?
The form for attributes declared in the target namespace of this schema. The value must be "qualified" or "unqualified". Default is "unqualified". "unqualified" indicates that attributes from the target namespace are not required to be qualified with the namespace prefix. "qualified" indicates that attributes from the target namespace must be qualified with the namespace prefix.
Refer Previous post on Interview questions at