Hans Brough

Document Sample
Hans Brough Powered By Docstoc
					Hans Brough
XML - eXtensible Markup Language - COIN 78
Summer Qtr, 2002
August 04, 2002

Q1. What are the primary differences between XML and HTML?
A1. Both are children of SGML but HTML is a specific markup language that
enables users to define layout of data whereas XML is a meta language that can
be extended to create other markup languages and deals data definition.

Q2. Why was XML created?
A2. In order that data could be defined, transmitted, validated and interpreted
across the web between applications and organizations.

Q3. What business problem does XML solve?
A3. XML provides a common framework for the exchange of data amongst business's
with potentially disparate systems.
For example Ford and General Motors could use xml to help with communicate with
their supply chain business partners.

Q4. Is XML a language or meta-language? Explain
A4. "XML provides a metalanguage in which you can write specialized languages to
express complex interactions between clients and services or between components
of a composite service."1

Q5. What language was XML and HTML derived from?

Q6. Why does XML need to be human and machine readable?
A6. It is machines who do the processing and presentation of data with an XML
document but it is humans who must ultimately turn the data into information.

Q7. What are the three requirements for writing well formed XML?
A7. The book lists several rules:
      1. A root element is required.
      2. Closing tags are required.
      3. Elements must be properly nested.
      4. Case matters
      5. values must be enclosed in quotation marks.
      6. Entity references must be declared.

Q8. What is the role of a DTD with XML? (Think valid XML)
A8. DTD's are a type of XML schema that ensure xml documents are valid. In other
words they ensure a given xml document is formatted as expected by the markup
language's author.

Q9. Write a very short DTD document
A9.   <!ELEMENT dictionary (entry+)>
      <!ELEMENT entry (#PCDATA)>

Q10. What is the role of CSS with XML?
A10. CSS can optionally be used to format data found within XML. In other words
CSS deals entirely with the presentation of XML within a browser to the end

Q11. Write very short CSS document
A11. word {display:block; font-size: 12pt; padding:5;} As you can see CSS is a
essentially a set of rules comprised of name value pairs.

Q12. What is the role of XSD with XML? (Think namespaces and datatypes)
A12. The .xsd file type is used to define an XML Schema. Within the schema is
defined what one or more xml documents may look like similar to a DTD although
in a more robust fashion.
In addition to defining an xml document's elements ,order and content xsd
schemas can define each elements allowable datatype. For instance rather than
just declaring #PCDATA as might be done in a DTD, elements can be tailored to
contain specific datatypes such as strings ,numbers and dates.

Q13. Write a very short XSD document
A13. <?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs=""
<xs:element name="dictionary">
                  <xs:element name="entry" type="entryType"

Q14. Why are namespaces important to XSD? (Think about the Web as a database)
A14. "In order for XML documents to be able to use elements and attributes that
have the same name but come from different sources, there must be a way to
differentiate between the markup elements that come from the different

Q15. Compare and contrast DTDs with XSD
A15. As I mentioned above DTD's and the .xsd file format are both ways to define
a schema for a set of xml documents. DTD's are an older, less flexible approach
to declaring a schema. XSD allows more flexibility through the use of datatype
declarations for elements similar to those traditionally found in programming
and database design.
In Addison our book mentions that DTD's force you to declare elements globally
and the DTD syntax has 'little to do' with xml as such is impossible to parse
with an xml parser.

Q16. Compare and contrast CSS with XSLT
A16. Both allow you to format xml documents according to a set of rules. CSS
however is strictly a formatting tool it has no transformation ability. This
means that your end users must use an 'xml-able' browser in able to view the end
In contrast XSLT does not "contain any explicit formatting instructions itself"4
It can transform xml into any other markup language and in doing include enough
HTML that the end result will be the same as a CSS generated file. In addition
XSLT has capabilities like batch processing and conditional processing that CSS
does not.

Q17. What is XSL or XSLT?
A17. The formatting and transformation markup language for xml documents.
Transformation occurs via a processor that looks at the elements found within an
xml document and takes formatting actions according to a predefined set of rules
in an xslt file.
Q18. What is XLink and XPointer?
A18. XLink "allows elements to be inserted into XML documents in order to create
and describe links between resources. It uses XML syntax to create structures
that can describe links similar to the simple unidirectional hyperlinks of
today's HTML, as well as more sophisticated links."5
The W3C says that Xlinks allow linking relationships among more than two
resources, associate metadata with a link and express links that reside in a
location separate from the linked resources.

Q19. What is RDF?
A19. Short for Resource Description Framework. An XML based markup which
provides a universal method of describing a web sites metadata.
For example as search engines index web sites they need to know data about the
site such as it's title, description, version etc - RDF provides a common means
to this end.

Q20. What is EAI? Why is XML useful in EAI?
A20. Acronym for enterprise application integration."EAI is the unrestricted
sharing of data and business processes throughout the networked applications or
data sources in an organization. "2
Because enterprises have developed disparate, proprietary systems there is a
need for a common language, such as XML, to share information across an

Q21. Compare and contrast middleware with EAI
A21. Middleware is defined as software that connects two otherwise separate
applications. Middleware could be considered a component of EAI since
it enables the sharing of data between otherwise disparate sources although is
distinct from any import or export functionality that may also be found in EAI.

Q22. How does Microsoft use XML
A22. Probably the best known use of xml is their .net initiative which is a of
set web services offerings. With .net end users can access functionality like
identification and authentication, e-mail, instant messaging, automated alert,
calendar, address book, and storage.
For example their Passport service allows developers to incorporate a remote
authentication scheme within their sites. This is supposed to do away with the
need for multiple username/password pairs.

Q23. How does Sun use XML?
A23. I couldn't find much. They have something called Pipeline which seems to be
an alternative to the other 3 web services technologies.

Q24. What is UDDI, and why is it important?
A24. Short for Universal Description, Discovery and Integration. "Provides a
mechanism for
clients to dynamically find other web services."1 Using UDDI let's businesses
actually connect to the services provided by business partners. There is no
point in having web services if no one can find them.

Q25. What are web services, SOAP, and WSDL, and how do they incorporate XML?
A25. Web services are stand alone components of business logic available for use
over the web.
"SOAP is a protocol specification that defines a uniform way of passing XML-
encoded data as well as a way to perform remote procedure calls (RPCs) using
HTTP as the underlying communication protocol."1
WSDL (Web Services Definition Language) is used to describe what a web service
can do, where it resides, and how to invoke it.
Web services, SOAP and WSDL all use XML as a meta language to describe

----------------Bonus Essay Start--------------
      HTML is so ubiquitous that it truly may not matter how easy to learn or
efficient XML
is for the average web author. HTML is like the English Language; it's quirky
but it's
everywhere so it becomes the default lingua franca. If HTML is like English then
perhaps XML is
akin to Esperanto - well thought out, easier to learn than English, in theory a
middleware. I'm sure we all have fond memories of whispering sweet nothings to
our loved ones in
Esperanto or meaningful conversations in Esperanto with that guy in the coffee
shop who doesn't
speak English. Ah Esperanto - the sheer brilliance of it! No you say? Well in
truth these things
never happened to me either. English always sufficed and besides how could I
ever be sure the
other guy even knew Esperanto?
      Sometimes I feel the same way about XML. Sure it is easy to learn and
isn't it nifty how
we can organize data but what the heck can I do with it... today? HTML may be
nonsensical at times,
cross browser issues may drive me nuts but at least I know the markup and can
rest assured everyone's browser
also understands some dialect. Some argue that HTML is unable to deal with more-
complex application
specific problems because it's elements are fixed. This is true but it does
provide support for a few
fairly robust scripting languages, namely Ecmascript and vbscript. Ecmascript at
least is fully able
to model data in an object based manner which some might argue makes up for
HTML's data modeling
      In the end economics will be the determining factor. If those who employ
us find they can not
communicate with their business partners via HTML because of disparate processes
or proprietary applications
then one day we will all be speaking some variant of XML at work. Business
always seems so pre-occupied
with the bottom line.
      All metaphors aside HTML is a dead language in the sense that the W3C
plans to release
no further enhancements. In fact they have already approved a Recommendation for
version 1.0 of what it's
dubbed Extensible HTML or XHTML. Resistance is futile.
      Outside of school I'm a web developer who worked several years after
university at a few Bay Area
start-ups. My experience is primarily on the client side although I made the
switch last year to databases
and server-side scripting. I'm currently excited by data modeling in general and
despite my sarcasm, specifications
like XML specifically. I plan on obtaining an associates degree in Database
Administration with an emphasis
on obtaining my Oracle DBA certification. I'm also a fan of open source products
like PHP and MySQL. I plan
on paying the bills as a DBA and if possible heading back to school to obtain an
M.A. in Computational Linguistics.
Outside of work this is where I plan on using XML to help me model syntactic and
semantic elements of the
English language for use in web based applications like conversation processors.
For the time being I'm thinking
about finding a way to incorporate XML into a database driven site I created for
fun. The site
revolves around the literal paper trail of letters, documents, journals and more
that my family has left over the
last one hundred years. I've created a schema of this scenario that lets family
members search and cross reference
everything I've been able to get my hands on. This is all still a work in
progress so I hope to find a use for XML.
If I'm successful I will send you a link.
-----------------Bonus Essay End---------------


1.Vasudevan, Venu, 'A Web Services Primer',, April 04, 2001, assorted pages

3.Simpson,John E., 'Will XML replace HTML?', December 13, 2000,

4.Castro, Elizabeth, 'XML for the World Wide Web', Peachpit Press, Berkeley

5.DeRose, Steve, XML Linking Language (XLink) Version 1.0 W3C Recommendation 27
June 2001,

Shared By:
About Good!!!NICE!!! The best document database!