The Skinny on Schemas - what are they for? why were they developed? can we look at them?

Some random examples:

<!DOCTYPE html>

What are these for?  What is their origin?

Can these references be viewed?  For example, the one for HTML4 I can go to the strict.dtd page, but what about the one for HTML5?  Or are they proprietary / confidential?  How do web programmers take advantage of them?
Tom KnowltonWeb developerAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Chinmay PatelChief Technical NinjaCommented:
Hi Tom,

I am copy-pasting from WikiPedia:

An XML schema is a description of a type of XML document, typically expressed in terms of constraints on the structure and content of documents of that type, above and beyond the basic syntactical constraints imposed by XML itself. These constraints are generally expressed using some combination of grammatical rules governing the order of elements, Boolean predicates that the content must satisfy, data types governing the content of elements and attributes, and more specialized rules such as uniqueness and referential integrity constraints.

You can say they are the guidelines/rules to which a particular XML document has to confirm(if it is a valid one).

You can access the schema by opening it in a browser

käµfm³d 👽Commented:
A DTD is similar to a schema in function, but it is a separate document type from a schema.

The DTDs for HTML are created/governed by the W3C, which is a standards consortium for things on the Web. You can certainly view the specifications they create as all are hosted on their site. However, HTML 5 does not have a defining DTD (though it does use the !DOCTYPE attribute).

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Tom KnowltonWeb developerAuthor Commented:
What does HTML5 use?
Chinmay PatelChief Technical NinjaCommented:
HTML being a very different language than XML there is no schema for it.

That being said, browsers from the beginning of time are not strictly (with HTML5's !DOCTYPE you can force the browsers to be standard compliant though) standards compliant. I think one of the biggest offender was Microsoft and its implementation of many IE-only features (For example, CSS Gradient support). And HTML5 is not validated via schema per say, there are specs to which your markup has to be compliant.

You can get a list of HTML specs at:
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Web Development

From novice to tech pro — start learning today.