Skip to main content

Dynamic HTML template compiler with XSS language support.

Project description

This package implements a template compiler for dynamic HTML documents. In particular, it supports the XSS rule language which is used to associate elements with dynamic content.

XSS rule language

The XSS rule language uses a CSS-compliant syntax to let you match HTML elements using CSS selectors and set up dynamic content definitions.

To associate a template with a rule file, use the <link> tag:

<link rel="xss" type="text/xss" src="rules.xss" />

XSS files contain rules like the following:

html > head > title {
  name: document-heading;
  structure: true;
  attributes: document-attributes;
  mode: content;
}

This rule will associate the <title> tag with the dynamic content identifier “document-heading”, escape the inserted content and apply the dynamic attributes bound to the “document-attributes” identifier.

See the file template.txt within the package for documentation on how to render templates and provide dynamic content and attributes.

Syntax

Brief explanation of the properties in the XSS format:

@name        dynamic content slot name
@structure   if set to true, inserts content without escaping
@attributes  inserts dynamic attributes into tag
@mode        one of ('content', 'append', 'prepend')

Resource rebase functionality

If a resource location adapter is available (see chameleon.html.interfaces.IResourceLocation), references resources (e.g. images, stylesheets, javascripts) will be “rebased” to the URL returned by the component.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chameleon.html-0.9.3.tar.gz (12.0 kB view details)

Uploaded Source

File details

Details for the file chameleon.html-0.9.3.tar.gz.

File metadata

File hashes

Hashes for chameleon.html-0.9.3.tar.gz
Algorithm Hash digest
SHA256 6f339fd9007969472187f7c545127c5b7b9ecafa5124ee046262e3f5e8484a41
MD5 386139b0d2cdd4f1d1316cd2df18cf52
BLAKE2b-256 5323c436c31932651d7dd63fa2bf0dcc96cbbb6f6fb0c1c8e2295c7f90f270ca

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page