Comparison of layout engines (XML)

From Seo Wiki - Search Engine Optimization and Programming Languages

Jump to: navigation, search

The following tables compare XML compatibility and support for a number of layout engines. Please see the individual products' articles for further information. This article is not all-inclusive or necessarily up-to-date. Unless otherwise specified in footnotes, comparisons are based on the stable versions without any add-ons, extensions or external programs.

Version number, if possible, is provided for feature that is fully supported. Proprietary extensions are not included.

Contents

Explanation of the tables

Engine nomenclature

Rather than the names of web browsers, the names of the underlying engines are used. The browsers that use the various engines are listed below.

Layout engine Used by
Trident Internet Explorer and other Internet Explorer shells (Microsoft Windows operating systems only)
Tasman Mac OS X versions of Internet Explorer and MSN
Gecko All Mozilla software, including Firefox; SeaMonkey; Galeon; Camino; K-Meleon; Flock; also Epiphany-gecko
WebKit Apple Safari; Google Chrome; Shiira; iCab 4; OmniWeb 5.5+; Epiphany; Adobe AIR; Midori; Adobe Dreamweaver CS4
KHTML Konqueror
Presto Opera; Opera Mobile, Nintendo DS Browser; Internet Channel; future Adobe Systems products
iCab iCab 1-3
Prince XML Prince

Values

Values indicate the level of support in the most recent version of the layout engine, or (if a version number is given) in the specified version. Version numbers without any other value indicate the version at which the layout engine first fully supported the feature.

Value Meaning
Yes Indicates that the layout engine fully supports this property/element when valid values are used.
No Indicates that the property/element is completely ignored.
Partial Indicates that the property/element is understood, but that not all values are supported. Supported values are implemented correctly.
Incorrect Indicates that the property/element is understood, but that it is not implemented correctly in all cases.
Experimental Indicates that the property/element is understood, but supported under an alternate name. May be incomplete or buggy.
Dropped Indicates that the property/element is no longer supported.
Nightly build Indicates that the property/element is supported to some extent in an experimental/nightly build. Future support is expected.

Core technologies

A general overview of what core XML technologies are supported.

Trident Tasman Gecko WebKit KHTML Presto iCab Prince XML
XML namespace  ?  ? 1.0  ? Yes 1.0  ? 5.1
xml:id No  ? No No No 2.0  ? 5.1
XML Events No  ? 1.8  ?  ? 1.0  ?  ?
XInclude 7.0  ? No No  ? No  ? 5.1
XML Fragment Interchange  ?  ?  ?  ?  ?  ?  ?  ?
Associating CSS 5.0  ? 1.0 419 Yes 1.0  ? Yes

XSL technologies

A general overview of what XSL technologies are supported.

Trident Tasman Gecko WebKit KHTML Presto iCab Prince XML
XSLT 6.0  ? 1.0 314 No Incorrect  ?  ?
XSL-FO No No No No No  ?  ?
EXSLT  ?  ? 1.9  ? Partial  ?  ?

Trident XSL technology notes

  1. XSLT — Trident relies on the MSXML library to implement XML processing. MSXML3 and MSXML4 implement XSLT 1.0, while MSXML2 implements the December 1998 XSL Working Draft, which predates XSLT 1.0 and is not fully compatible with it. Further complicating matters is that the MSXML libraries can coexist, but only one of them will be used by Trident, depending on a setting in the Windows Registry. Prior to the release of Internet Explorer 6, MSXML2 was the default XML library for Trident, but MSXML3 or MSXML4 could be installed separately and then registered as the default if desired. Regardless of which version was the default, any version, if installed, could be invoked directly by Microsoft-specific scripting code in the document being rendered by Trident.

Linking technologies

A general overview of what XML linking technologies are supported.

Trident Tasman Gecko WebKit KHTML Presto iCab Prince XML
XLink No  ? Partial  ? No Partial  ? 5.1
XML Base  ?  ? 1.0 No Yes No  ? 6.0
XPointer  ?  ? Partial  ? No No  ?  ?

Query technologies

A general overview of what XML query technologies are supported.

Trident Tasman Gecko WebKit KHTML Presto iCab Prince XML
XPath 1.0 Yes  ? 1.8 Yes  ? 2.0  ?  ?
XPath 2.0 No  ? No  ?  ?  ?  ?  ?
XQuery  ?  ? No No  ? No  ?  ?

Schema technologies

A general overview of what XML schema technologies are supported.

Trident Tasman Gecko WebKit KHTML Presto iCab Prince XML
DTD No  ? Partial No No Partial  ? 3.0
XML Schema  ?  ? Partial  ?  ?  ? No
RELAX NG  ?  ? No  ?  ?  ?

Gecko schema technology notes

  1. DTD — Only inline DTDs are allowed; external DTDs are ignored.

Presto schema technology notes

  1. DTD — Prior to version 2.0, only inline DTDs are allowed; external DTDs are ignored. In 2.0, it is possible to load external DTDs, but not cross domain.

Security technologies

A general overview of what XML security technologies are supported.

Trident Tasman Gecko WebKit KHTML Presto iCab Prince XML
XML Signature No No No No No No No No
XML Encryption No
XML Key Management

References

Personal tools

Served in 0.418 secs.