Validating Your Genealogy Site

Have you ever tried to validate your RootsWeb FreePages? One of the first error messages you might see is –

No DOCTYPE found! Attempting validation with HTML 4.01 Transitional.

The DOCTYPE Declaration was not recognized or is missing. This probably means that the Formal Public Identifier contains a spelling error, or that the Declaration is not using correct syntax. Validation has been performed using a default “fallback” Document Type Definition that closely resembles “HTML 4.01 Transitional”, but the document will not be Valid until you have corrected this problem with the DOCTYPE Declaration. You should place a DOCTYPE declaration as the very first thing in your HTML document.

Why do I need a DOCTYPE statement?

  • A DOCTYPE statement is required by validators
  • It describes the version of markup in which the document is written: HTML, XHTML, XML…
  • Browsers use the DOCTYPE to render a page. Use the wrong DOCTYPE, and your page might look funny.

What DOCTYPE statement should I use?

  • If you are a beginner, then use the one I use – it is the most forgiving.

<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”
“http://www.w3.org/TR/html4/loose.dtd”>

To read more about DOCTYPE visit
http://www.htmlbasictutor.ca/doctype-declaration.htm

Validating Your RootsWeb World Connect Links

If you website contains any links to the Rootsweb Worldconnect databases – or any other databases for that matter, you have probably seen this error message or one similar to it when trying to validate your page.

Warning Line 156, column 76: cannot generate system identifier for general
entity “db”

…logy.rootsweb.com/cgi-bin/igm.cgi?op=GET&db=gearyfamily&id=I76″>

An entity reference was found in the document, but there is no reference by that name defined. Often this is caused by misspelling the reference name, unencoded ampersands, or by leaving off the trailing semicolon (;). The most common cause of this error is unencoded ampersands in URLs as described by the WDG in “Ampersands in URLs”.

Entity references start with an ampersand (&) and end with a semicolon (;). If you want to use a literal ampersand in your document you must encode it as & (even inside URLs!). Be careful to end entity references with a semicolon or your entity reference may get interpreted in connection with the following text. Also keep in mind that named entity references are case-sensitive; &Aelig; and æ are different characters.

If this error appears in some markup generated by PHP’s session handling code, this article has explanations and solutions to your problem.

Note that in most documents, errors related to entity references will trigger up to 5 separate messages from the Validator. Usually these will all disappear when the original problem is fixed.

To correct the database link so that it will validate change this

http://worldconnect.genealogy.rootsweb.com/cgi-bin/igm.cgi?op=GET&db=gearyfamily&id=I76

so that all occurrences of the ampersand & read &

Your corrected code would look like this:

http://worldconnect.genealogy.rootsweb.com/cgi-bin/igm.cgi?op=
GET&db=gearyfamily&id=I76

Doublecheck your links to make sure they still work and validate the page again.

Other error messages you might receive include:

required attribute “ALT” not specified – an ALT tag is required for all image elements

Many of the other error messages you receive in validating your pages will be caused by deprecated tags that need to be moved to a style sheet – embedded or external – and improperly nested tables.

Go through and fix the errors as you can, ask if you need help, and slowly work your way through the validation process.

Speak Your Mind

*