<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 24249 -->
<!-- Reviewed: 17789 -->
<sect1 id="zend.tag.introduction">
    <title>Einführung</title>

    <para>
        <classname>Zend_Tag</classname> ist eine Komponenten Suite welche zwei Klassen anbietet
        um mit Tags zu arbeiten, <classname>Zend_Tag_Item</classname> und
        <classname>Zend_Tag_ItemList</classname>. Zusätzlich kommt sie mit dem Interface
        <classname>Zend_Tag_Taggable</classname>, welches es erlaubt jedes eigene Modell als
        markiertes Element, in Verbindung mit <classname>Zend_Tag</classname>, zu verwenden.
    </para>

    <para>
        <classname>Zend_Tag_Item</classname> ist eine grundsätzliche Implementation eines
        markierten Elements, welche mit der essentiellen Funktionalität kommt, die notwendig ist
        um mit der <classname>Zend_Tag</classname> Suite zu arbeiten. Ein markierbares Element
        besteht immer aus einem Titel und einem relativen Gewicht (z.B. die Anzahl der
        Vorkommnisse). Es speichert auch Parameter welche von den unterschiedlichen
        Sub-Komponenten von <classname>Zend_Tag</classname> verwendet werden.
    </para>

    <para>
        Um mehrere Element miteinander zu gruppieren, existiert
        <classname>Zend_Tag_ItemList</classname> als Array Iterator und bietet zusätzliche
        Funktionalitäten um die Werte des absoluten Gewichts, basierend auf dem angegebenen
        relativen Gewicht jedes Elements in diesem, zu kalkulieren.
    </para>

    <example id="zend.tag.example.using">
        <title>Verwenden von Zend_Tag</title>

        <para>
            Dieses Beispiel zeigt wie eine Liste von Tags erstellt, und Werte des absoluten Gewichts
            auf diesen verteilt werden kann.
        </para>

        <programlisting language="php"><![CDATA[
// Erstellen des Elementliste
$list = new Zend_Tag_ItemList();

// Hinzufügen der Tags zur Elementliste
$list[] = new Zend_Tag_Item(array('title' => 'Code', 'weight' => 50));
$list[] = new Zend_Tag_Item(array('title' => 'Zend Framework', 'weight' => 1));
$list[] = new Zend_Tag_Item(array('title' => 'PHP', 'weight' => 5));

// Absolute Werte auf den Elementen verteilen
$list->spreadWeightValues(array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10));

// Die Werte mit ihren absoluten Werten ausgeben
foreach ($list as $item) {
    printf("%s: %d\n", $item->getTitle(), $item->getParam('weightValue'));
}
]]></programlisting>

        <para>
            Das wird die drei Elemente Code, Zend Framework und <acronym>PHP</acronym>, mit den
            absoluten Werten 10, 1 und 2, ausgeben.
        </para>
    </example>
</sect1>
