Weblide is a general multi-schema XML validator, freeware,
capable of browsing a whole XHTML Web site online or locally, and supporting XHTML5.
It is also a powerful link checker.
It is targeted to Web masters with some knowledge of XML standards,
but the predefined profiles make it suitable from beginners to experts.
Weblide can use at the same time DTD, XML schemas (XSD), RELAX NG and Schematron to validate against.
The software comes with a predefined list of schemas for most cases, but advanced users can extend this list themselves.
The schemas and their inclusions are automatically downloaded once from their Internet location, and cached locally.
While being mostly based on official schemas,
Weblide is stricter (except for XHTML5), checks many more things than e.g.
the W3C validator for XHTML,
and supports many other types of XML documents.
Schematron: using
Rick Jelliffe’s XSLT implementation.
Several schemas can be used at the same time.
The XSLT function document() is supported to allow Schematron validation with multiple sources.
Alternatively, in particular under Linux, you can try Mono.
In particular with Mono, you may download the previous version 2.0 of Weblide (.NET 2.0, partial support since Mono 1.2.5).
Most of the needed schemas will be downloaded from the Web the first time they are used.
In addition, Weblide is packaged with a few schemas in ./weblide/modified-schemas/;
those are corrections of schemas that contained errors, that needed modifications to work with Weblide, or schemas designed especially for Weblide.
Warning: You should avoid running this software on production Web sites,
and rather use it on your own development machine,
as this software can potentially be harmful when for instance it follows some dynamic links
that are making actions on the Web site.
By downloading this software, you agree that the developer is not responsible for any consequence of its use or misuse.
Licence
The program Weblide itself is distributed as freeware, but is currently not open source.
If you want to distribute it, please do it as a link to this page whenever possible.
Schemas are the property of their respective authors.
If you use and like this software (especially for professional purposes), please consider doing a donation.
Current Limitations
No support for CSS.
To be validated, namespaces must be declared at the root level of the XML document.
DTDs are used only when declared inside the document.
Only one RELAX NG schema at a time, per document.
Schematron
No support for line numbers of errors.
No streaming for Schematron validation (the whole document is loaded in memory).
Schematron instructions in RNC (RELAX NG using compact syntax) inclusions are not used.
The list of schemas is stored in a ad hoc XML document SchemaDB instead of using a standard such as DSDL.
Frequently Asked Questions
The program does not start
Have you installed the .NET 4.0 framework? (also available with Windows update)
XML encoding error
Symptoms: The validator raises an Unicode error, or an XML error about an invalid character, and/or a conflict between charsets.
Description: Weblide does not deal with HTML tag soup,
but only with pure XHTML, that is to say XML compliant.
Here is the standard behaviour when no encoding is declared in the HTTP headers:
application/xhtml+xml ou application/xml
The encoding is detected with the Unicode BOM and the XML declaration.
In their absence, UTF-8 is used.
text/xml
The encoding used is US-ASCII and is authoritative over the XML declaration.
text/html
The encoding used is ISO-8859-1.
the old declaration <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> is not used.
Solution: Have a look to the “Output details” tab, where you can see which character set is declared by your Web server if any
(subtitle “HTTP + Unicode”) and which one is been used (subtitle “XML + Unicode”).
In order to have valid XHTML+XML documents, you must:
Have a correct HTTP Content-Type header with a declaration of the character set. Those have highest priority.
Example with Apache .htaccess file: AddCharset UTF-8 .html
Example in PHP: <?php header('Content-Type: text/html; charset=UTF-8');?>
And/or for application/xhtml+xml or application/xml documents:
use an XML declaration on the very first line <?xml version="1.0" encoding="ISO-8859-1"?>
and/or use a native XML character set that are Unicode UTF-8, ASCII or UTF-16.
And/or use the default encoding or the one declared in HTTP headers.
It is a good idea to follow all of those three rules (where you can replace "ISO-8859-1" by e.g. "UTF-8").
Read more at the W3C:
The legend element in fieldset
is mandatory in XHTML 1.0 strict according to the official XML schema (on purpose), but optional in the DTD.
The specification says that legendshould be used to improve accessibility.
If you don’t believe the results
Weblide is almost only an engine that validates documents against external schemas, and most of those are official and normative.
For XHTML pages, please try other validation services before blaming this software:
W3C validator (minimal validity, with little XML constraints except for newer XHTML5 documents).