Extensible Markup Language (XML) is a flexible structured document format that defines human- and machine-readable encoding rules.

Extensible Markup Language

Wikipedia defines XML as follows:

XML (Extensible Markup Language) is a set of rules for encoding documents in both human-readable and machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards.

In short, XML is:

  • designed to transport and store data; and
  • a flexible text format derived from SGML (ISO 8879).
  • a markup language much like HTML
  • designed to be self-descriptive

The design goals of XML emphasize simplicity, generality, and usability over the Internet. It is a textual data format with strong support via Unicode for the languages of the world. Although the design of XML focuses on documents, it is widely used for the representation of arbitrary data structures, for example in web services.

Joomla Manifest

Joomla requires an XML manifest file for all of the extensions. These files include the general installation information as well as parameters for the configuration of the extension itself.

The file must be named manifest.xml or <extension_name>.xml and located in the root directory of the installation package.

Example Joomla Manifest file

The following code is the example XML manifest from the Joomla Module Tutorial. Additional information regarding the structure and syntax of an XML manifest file can be found at Joomla Docs:

<?xml version="1.0" encoding="utf-8"?>
<extension type="module" version="3.1.0" client="site" method="upgrade">
    <name>Hello, World!</name>
    <author>John Doe</author>
    <version>1.0.0</version>
    <description>A simple Hello, World! module.</description>
    <files>
        <filename>mod_helloworld.xml</filename>
        <filename module="mod_helloworld">mod_helloworld.php</filename>
        <filename>index.html</filename>
        <filename>helper.php</filename>
        <filename>tmpl/default.php</filename>
        <filename>tmpl/index.html</filename>
    </files>
    <config>
    </config>
</extension>
history | excerpt history