XML Input

Prince processes well-formed XML 1.0 documents with full support for namespaces, internal and external entities, DTDs, character references and CDATA sections. Comments and processing instructions are ignored and do not affect the output.


Prince loads DTD files in order to resolve entity definitions and default attribute values. However, Prince does not perform validation upon input documents. If validation is a processing requirement, the use of an external validator is recommended.


Prince supports the xml:lang attribute, which is used to indicate the language of the document text. Elements can be selected by language using the CSS :lang() selector.


Prince supports the xml:id attribute, which is used to give elements a unique identifier. This identifier can be used when creating links and cross-references; it also allows elements to be selected using the CSS ID selector.


Prince does not support the xml:base attribute, therefore hyperlinks must be absolute URLs or relative to the document path.


Prince supports simple XLinks and will treat any element containing a href attribute in the XLink namespace as a link.