1. The following passage is to be found in the middle of a particular XML document:
The heavily-used<service xlink:type = "simple" xlink:href ="http://www.thetrams.co.uk/croydon"> Croydon Tramlink </service> provides a cross link to nearby <location>Wimbledon</location>, <location>Addington</location> and <location>Beckenham</location>.
What can you say about how the text Croydon Tramlink will be treated by a browser such as Mozilla Firefox?
A browser would interpret that XML document as a link to http://www.thetrams.co.uk/croydon displaying it as a hyperlink.
2. It’s possible to provide validation for a class of XML document using a Document Type Definition (.dtd) file, or using an XML schema. The DTD approach is easier. Why might you want to use the XML schema approach?
DTD is nowadays considered a primitive technique for validating XML documents, it only allows general structure validations leaving much to be desired. XSD on the other hand in a much more modern teqnique of validating XML and is considered as the standard nowadays, an XSD schema provides much greater functionality and flexibility.
Longer Questions
Here is an XML document:
<?xml version="1.0" encoding="UTF-8"?>
<book isbn="0836217462">
<title>
Being a Dog Is a Full-Time Job
</title>
<author>Charles M. Schulz</author>
<character>
<name>Snoopy</name>
<friend-of>Peppermint Patty</friend-of>
<since>1950-10-04</since>
<qualification>
extroverted beagle
</qualification>
</character>
<character>
<name>Peppermint Patty</name>
<since>1966-08-22</since>
<qualification>bold, brash and tomboyish</qualification>
</character>
</book>
An XML schema is to be constructed, which will validate this document and other similar documents. Make notes on the elements etc that this document contains, and record any significant factors about them.
The first step in creating an XML schema is define which are the complex and simple types, simple types are elements that contain "simple" data such as string or integer, complex types are the rest e.g. elements which contain nested elements, elements with attributes etc.. these are all considered complex types. After that is complete and a general structure is created, additional validations may be included such as minimum number of occurrences of an element e.g. minOccurs = 0 makes the element optional.
The following XSD schema can be used to validate the above quoted XML document.
<?xml version="1.0" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="book">
<xs:complexType>
<xs:sequence>
<xs:element name="title" type="xs:string" />
<xs:element name="author" type="xs:string" />
<xs:element name="character" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="xs:string" />
<xs:element name="friend-of" type="xs:string" minOccurs="0"/>
<xs:element name="since" type="xs:date" />
<xs:element name="qualification" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="isbn" type="xs:string"/>
</xs:complexType>
</xs:element>
</xs:schema>