During the First week of Lecture CMT3315  we were given questions to research in the history of XML, XSL and  CSS answers are below.  For the duration of the lecture we talked about  what is XML what it is about, etc we also talked XSL, CSS and the course  duration which 24 weeks plus deadlines and more. After about an hour we  finalised the history of XML XSL and CSS.
1. What  was the first Browser to read XML????   
Microsoft Internet Explorer 4  was the first browser to support XML.  To accomplish this, IE4 uses the  external MSXML parser that can break a document's XML tags into an  object tree.  Values contained in structured tag sets are exposed as  objects that can be manipulated within the browser by JavaScript.  The  next generation of browsers, however, will natively recognize and parse  XML documents. 
2. What is the current status of CSS? 
CSS is the       language for describing the  presentation of       Web pages, including colors, layout, and        fonts. It allows to adapt the presentation       to different types of  devices, such as       large screens, small screens, or       printers.  CSS is independent of HTML and       can be used with any XML-based  markup       language. The separation of HTML from CSS       makes it  easier to maintain sites, share       style sheets across pages, and  tailor pages       to different environments. The current  status of CSS is at level 3.0, also known as CSS3, and there has been  4.0 releases proceeding to this version which are the version 1.0,  version 2.0, and version 2.1. below are the CSS work current and  upcoming specification. 
• Ruby – CR  • Media Queries - CR• Color –  CR • User Interface – CR • TV Profile – CR • Selectors – LC • Fonts – LC  • Pages Media – LC • Print Profile – LC • Web Fonts - LC
  3. What is the  current status of XSL?
XSL allows the author to apply formatting operations to XML elements. XSL is a language in which the author can indicate that the 'footer' element should be displayed as a paragraph, in blue and in italic using Arial. XSL is not the only way to display XML data. However, it provides you with a simple declarative solution. Also, because XSL syntax is XML itself, you don't have to learn a whole new syntax to begin writing XSL stylesheets.The current state release of XSL was the version 2.0, whereas X- Query version is 1.0 and X- Path version is also 2.0.
XSL allows the author to apply formatting operations to XML elements. XSL is a language in which the author can indicate that the 'footer' element should be displayed as a paragraph, in blue and in italic using Arial. XSL is not the only way to display XML data. However, it provides you with a simple declarative solution. Also, because XSL syntax is XML itself, you don't have to learn a whole new syntax to begin writing XSL stylesheets.The current state release of XSL was the version 2.0, whereas X- Query version is 1.0 and X- Path version is also 2.0.
 4.  What are the relative merits of CSS and XSL?
The  uses of style sheet languages have opened new possibilities and  opportunities for web designers in terms of freedom in designing and  maintainability of web sites. Currently, there are two kinds of style  sheet languages used by many web designers today. These are cascading  style sheet CSS and extensible style sheet language (XSL). While they  are both called style sheet languages, they have very different purposes  and ways of going about their tasks.
Advantages of CSS
CSS  express how to display (Inline style) HTML elements
The  HTML documents can be displayed using different output styles. HTML tags  were originally designed to define the content of a document. Cascading  Styles sheets define how HTML elements are to be displayed. Style  sheets bring genuine leading and sophisticated margination to the web  designing.
CSS allows for smaller  file sizes
Cascading  Style Sheets save bandwidth, diminish the overall amount of code in web  pages and vastly reduces the size of your files when compared to  old-style markup.
External Style Sheets  can save you a lot of work
CSS can save you a lot of work when designing a  website. Most modern browsers now support CSS so it's safe and easy to  use.
External Style Sheets  are stored in CSS files
CSS allows external style sheet to control the  layout and web design of the whole site. The best way is generally to  use an external CSS file; it controls many different elements throughout  the entire site instead of defining the same elements again and again  in all of the HTML files. Web Designing is normally stored in Style  Sheets
Web design for the entire web is a thoughtful  appearance for design issues and how they differ from designing for the  web page through CSS. Smaller Web site web designing companies are now  able to make web design accessible to both smaller companies and  individuals further mounting the growth of the web development. CSS  allows web design authors to move much of that information to a separate  style sheet resulting in significantly simpler HTML language.
CSS allows you  greater control of page structure
The  main ability of CSS is to control the page structure without needing to  use presentational markup. Using CSS you can hide content from certain  browsers in certain situations and multiple style definitions will  cascade into one. It explains to create two and three column float based  layouts and horizontally center a design on a page.
Cascade  Style sheets also offer much more flexibility in terms of the  presentation effects it provides. Such as margin, color, border,  background and much more. CSS develop strategies for maximizing forward  and backwards browser compatibility. There are plenty of exposure of web  design and testing tools that can aid in the creation of attractive,  standards-abiding documents.
Advantage Over CSS
The  combination of XSLT and XSL-FO creates a powerful styling language,  though much more complex than CSS. 
XSLT is a Turing complete language, while CSS  is not; this demonstrates a degree of power and flexibility not found in  CSS. 
XSLT is capable of creating content, such as  automatically creating a table of contents just from chapters in a book,  or removing/selecting content, such as only generating  a glossary from a book. 
XSLT  version 1.0 with the EXSLT extensions, or XSLT  version 2.0 is capable of generating multiple documents as well, such as  dividing the chapters in a book into their own individual pages. By  contrast, a CSS can only selectively remove content by not displaying  it.
XSL-FO is unlike CSS in that the XSL-FO document  stands alone. CSS modifies a document that attached to it, while the  XSL-FO document contains all of the content to be presented in a purely  presentational format. 
For richly specified paged media, such  complexity is ultimately required in order to be able to solve various  typesetting problems which is where XSL-FO is used.
Disadvantage of XSL
The  complexity of XSL-FO is a problem, largely because implementing an FO  processor is very difficult.
CSS implementations in web browsers are still  not entirely compatible with one another, and it is much simpler than  writing an FO processor.
5. What are the implications of the concept of the document tree ?
The  document tree – it’s a family thing
All  HTML documents are trees. Each level of the tree is described in the  same manner as a human family tree, with ancestors, descendants,  parents, children and siblings. CSS rules are based on the document  tree. If you understand the document tree concept, then CSS selectors  will be easy to understand and apply. 
Let’s  start with a sample of HTML. This sample doesn’t include the head or  title, as we are focussing on what is inside the body: 
<body>       <div id="content">             <h1>Heading here</h1>             <p>Lorem ipsum dolor sit amet.</p>             <p>Lorem ipsum dolor <em>sit</em> amet.</p>             <hr>      </div>       <div id="nav">             <ul>                  <li>item 1</li>                   <li>item 2</li>                   <li>item 3</li>             </ul>      </div></body>The  document tree diagram for the sample above would be: 
Ancestor
An  ancestor refers to any element that is connected but further up the  document tree – no matter how many levels higher. In the diagram below,  the <body> element is the ancestor of all other elements on the  page. 
Descendant
A  descendant refers to any element that is connected but lower down the  document tree – no matter how many levels lower. In the diagram below,  all elements that are connected below the <div> element are  descendants of that <div>. 
Parent
A parent is an element that is directly  above and connected to an element in the document tree. In the diagram  below, the <div> is a parent to the <ul>. 
Child
A child is an element that is directly  below and connected to an element in the document tree. In the diagram  above, the <ul> is a child to the <div>. 
Sibling
A  sibling is an element that shares the same parent with another  element. In the diagram below, the <li>’s are siblings as they all  share the same parent – the <ul>. 
Links  for more detailed information can be found on this website http://www.maxdesign.com.au/articles/workshop/
