Shaun McCance
shaunm@gnome.org 2008
Use elements and attributes from other namespaces in Mallard documents.

# External Namespaces

Shaun McCance

Add content

    mal_external = element * - (mal:* | local:*) {
      attribute * { text } *,
      mal_anything *
    }
    mal_anything = element * {
      attribute * { text } *,
      mal_anything *
    }

# External Namespace Attributes

# Atributos

All elements in Mallard can have attributes from external namespaces. This can be used to clarify the meaning of an element in a particular context, to provide additional information to processing tools, or to embed richer semantic data in a document.

For example, a translation tool might copy code blocks directly into the translated document without presenting them to translators. Some code blocks, however, may contain human-readable comments which should be translated. In order to force translation tools to present these code blocks for translation, authors could use the `its:translate` attribute from the Internationalization Tag Set, as in the following:

<code xmlns:its="http://www.w3.org/2005/11/its" its:version="1.0" its:translate="yes"> // This code block should be translated because it contains this comment. some_code () </code>

Processing tools should ignore any attributes from external namespaces they do not understand.

# External Namespace Elements

# Elementos