jendryschik.de

XFrames Working Draft

Deutsche Übersetzung

Diese Version:
http://archiv.jendryschik.de/TR/xframes/
Übersetzer:
Michael Jendryschik <michael@jendryschik.de>

Dies ist die deutsche Übersetzung des W3C Working Draft »XFrames« vom 06. August 2002. Dieses Dokument kann Übersetzungsfehler enthalten. Das englische Original finden Sie unter http://www.w3.org/TR/2002/WD-xframes-20020806/. Bitte senden Sie Fehler und Korrekturen zur deutschen Fassung an den Übersetzer. Kommentare des Übersetzers, die als solche gekennzeichnet sind, sind nicht Bestandteil des Ursprungsdokuments.

Vielen Dank an Alan J. Flavell und Thorsten Kleibaum für ihre Hilfe bei der Übersetzung.

Weitere W3C-Spezifikationen in deutscher Übersetzung und Kommentierung finden Sie bei der edition W3C.de.

W3C

XFrames

W3C Working Draft, 06. August 2002

Diese Version:
http://www.w3.org/TR/2002/WD-xframes-20020806
Aktuelle Version:
http://www.w3.org/TR/xframes
Herausgeber:
Steven Pemberton, CWI/W3C

Kurzbeschreibung

XFrames, eine XML-Applikation mit dem Ziel, mehrere Dokumente zusammenzufügen, ersetzen HTML Frames.

Status dieses Dokuments

Dieser Abschnitt beschreibt den Status dieses Dokuments zu dem Zeitpunkt seiner Veröffentlichung. Andere Dokumente können dieses Dokument ersetzen. Der aktuelle Status dieser Dokumentserie wird beim W3C gepflegt.

Dies ist der erste öffentliche Working Draft dieser Spezifikation zur Überprüfung für Mitglieder des W3C und anderen interessierten Gruppen. Er wird sich garantiert ändern; jedem, der diesen Working Draft implementiert, sollte bewusst sein, dass wir uns in unserer Entscheidung, ob die Spezifikation geändert werden soll, nicht durch experimentelle Implementierungen einschränken lassen.

Dieses Dokument wurde durch die W3C HTML Working Group (nur Mitglieder) als ein Teil der W3C HTML Activity erstellt. Veröffentlichungen als Working Draft setzen keine Billigung durch die W3C-Mitgliedschaft oder Mitgliedern der HTML Working Group voraus.

Kommentare zu diesem Dokument können an die Mailingliste www-html-editor@w3.org (Archiv) gesendet werden. Öffentliche Diskussionen zu diesem Dokument können auf www-html@w3.org (Archiv) stattfinden.

Zum Zeitpunkt der Veröffentlichung glaubt die Working Group, dass keine Patentoffenlegungen für diese Spezifikation relevant sind. Die aktuelle Liste der Patentoffenlegungen, die für diese Spezifikation relevant sein könnten, sind auf der Patentoffenlegungs-Seite der Working Group zu finden.

Dieses Dokument kann jederzeit durch andere Dokumente aktualisiert, ersetzt oder für veraltet erklärt werden. Es ist nicht angemessen, W3C Working Drafts als Referenzmaterial zu verwenden oder sie anders als »in Arbeit« zu zitieren. Eine Liste der aktuellen W3C-Empfehlungen und andere technische Dokumente sind zu finden unter http://www.w3.org/TR.

Inhalt

1. Einleitung

Dieser Abschnitt ist informativ.

Frames wurden in HTML mit Version 4.0 [HTML4] eingeführt. Sie boten eine Methode, mehrere HTML-Dokumente zu einer einzigen, einer Applikation ähnlichen Schnittstelle zusammenzufügen.

Jedoch brachten Frames einige Probleme für die Benutzbarkeit von Webseiten mit sich, was vielen Veröffentlichungen zu diesem Thema Anlass dazu gab, Autoren von Webseiten zu raten, unter allen Umständen auf Frames zu verzichten. Einige dieser Probleme sind zum Beispiel:

Dieses Dokument definiert eine separate XML-Applikation, keinen Teil von XHTML an sich, der ähnliche Funktionalität wie HTML Frames erlaubt, allerdings mit weniger Problemen in der Benutzbarkeit, hauptsächlich dadurch, dass der Inhalt des Framesets im URI sichtbar gemacht wird.

2. XFrames

Dieser Abschnitt ist normativ.

Diese Spezifikation definiert eine XML-Applikation genannt XFrames. XFrames verwendet den XML-Namensraum-Bezeichner [NAME]: http://www.w3.org/2002/06/xframes

Alle Beispiele in diesem Dokument sind informativ.

Der Rest dieses Abschnittes beschreibt die in XFrames vorkommenden Elemente und Attribute und ihre Semantik.

Das XFrames-Modul unterstützt die folgenden Elemente und Attribute:

Element Attribute Inhaltsmodell
frames class (NMTOKENS), id (ID), title (CDATA), xml:base (URI) head?, (row | column | frame+)
head class (NMTOKENS), id (ID), title (CDATA) title, style*
title class (NMTOKENS), id (ID), title (CDATA) PCDATA
style class (NMTOKENS), id (ID), title (CDATA), type* (ContentType) PCDATA
row class (NMTOKENS), id (ID), title (CDATA) (column | frame)+
column class (NMTOKENS), id (ID), title (CDATA) (row | frame)+
frame

class (NMTOKENS), id (ID), title (CDATA), source (URI)

EMPTY

Implementierung: DTD

2.1. Das frames Element

Ein XFrames-Dokument spezifiziert, wie mehrere Dokumente, möglicherweise unterschiedlicher Typen, in einer Ansicht zusammengefügt werden. Das Element frames bildet den Container für die zusammengefügten Dokumente. Die einzelnen Unterdokumente (»Frames«) können rechtwinklig nebeneinander, übereinander oder in Zeilen und Spalten angeordnet werden, sie können als separate verschiebbare Segmente dargestellt werden, ähnlich dem Fenster einer Anwendung, in Form von Karteireitern oder auf eine andere geeignete Art und Weise. Eine Zusammenstellung von Frames in einem XFrames Dokument wird Frameset genannt. Das frames-Element besitzt neben dem Attributsatz, den alle Elemente gemeinsam haben, noch folgendes zusätzliche Attribut:

xml:base
Wird dazu verwendet, relative URIs während des Ausfüllens von Frames innerhalb des Dokuments aufzulösen. Siehe [XMLBASE].

2.2. Das head Element

Das head-Element beinhaltet Metadaten zu dem Dokument und legt einen Titel sowie ein Stylesheet fest.

[[Diskussionspunkt: meta einbeziehen? RDF einbeziehen?]]

2.3. Das title Element

Das title Element beinhaltet Text, der das Dokument betitelt und von einem Benutzeragenten dazu verwendet werden kann, das Dokument zu bezeichnen.

2.4. Das style Element

Das style-Element ermöglicht die Angabe von Style-Anweisungen, die die Darstellung der Frames innerhalb des Dokuments beeinflussen. Das erforderliche Attribut type gibt die Stylesheet-Sprache des Elementinhalts an. Die Stylesheet-Sprache wird als Inhaltstyp angegeben (zum Beispiel »text/css«). Autoren müssen einen Wert für dieses Attribut angeben; es gibt keinen Standardwert.

2.5. Das row Element

Das row-Element definiert eine Reihe von Spalten und einzelnen Frames. Diese werden horizontal von links nach rechts nebeneinander platziert.

2.6. Das column Element

Das column-Element definiert eine Reihe von Zeilen und einzelnen Frames. Diese werden von oben nach unten untereinander platziert.

2.7. Das frame Element

Das frame-Element ist ein Platzhalter für den Inhalt eines Dokuments. Es besitzt ein zusätzliches Attribut:

source
Dieses Attribut definiert eine URI-Referenz auf das Dokument, das diesen Frame standardmäßig ausfüllen soll, wenn dies nicht durch einen Parameter in dem URI des Frameset-Dokuments getan worden ist.

2.8. Gemeinsame Attribute

id

Dieses Attribut weist einem Element einen Namen zu. Dieser Name muss innerhalb eines XFrames-Dokuments eindeutig sein. Er kann als Stylesheet-Selektor, Ziel-Anker für Hypertext-Links oder als ein Mittel verwendet werden, ein bestimmtes Element für die allgemeine Verarbeitung durch Benutzeragenten auszuwählen.

class

Dieses Attribut weist einem Element einen Klassennamen oder einen Satz von Klassennamen zu. Es können beliebig viele Elemente denselben beziehungsweise dieselben Klassennamen zugewiesen bekommen Multiple Klassennamen müssen durch Leerraum (white space) voneinander getrennt werden. Klassennamen können als Stylesheet-Selektor (falls ein Autor einer Menge von Elementen Style-Informationen zuweisen möchte) oder für allgemeine Verarbeitung durch Benutzeragenten verwendet werden.

title
Dieses Attribut bietet kommentierende Information über das Element, für das es gesetzt ist. Es kann dazu verwendet werden, den Zweck eines Frames zu erläutern, und es kann für nicht visuelle Benutzeragenten nützlich sein, um dem Nutzer die Struktur eines Satzes von Frames zu verdeutlichen.

2.8 Beispiele

Anmerkung des Übersetzers:

Dies ist eigentlich Abschnitt 2.9.

Alle folgenden Beispiele setzen ein umgebendes Element <frames xmlns="http://www.w3.org/2002/06/xframes"> voraus. Das Attribut id des Elementes frame wurde zugunsten der Übersichtlichkeit weggelassen.

  1. Um zwei Dokumente nebeneinander zu platzieren, geben Sie an:
    <row><frame/><frame/></row>
  2. Um zwei Dokument untereinander zu platzieren, geben Sie an:
    <column><frame/><frame/></column>
  3. Um ein Layout wie
     -------
    |   |   |
    |---|   |
    |   |   |
    -------

    zu erhalten, geben sie an:

    <row>
        <column>
            <frame/>
            <frame/>
        </column>
        <frame/>
    </row>
  4. Ein Layout wie
     -------
    |   |   |
    |-------|
    |       |
    -------

    erreichen Sie mit

    <column>
        <row>
            <frame/>
            <frame/>
        </row>
        <frame/>
    </column>
  5. Ein Layout wie
     -----
    |     |
    |-----|
    |  |  |
    |-----|
    |     |
    -----

    erreichen Sie mit

    <column>
        <frame/>
        <row>
            <frame/>
            <frame/>
        </row>
        <frame/>
    </column>
  6. Ein Layout wie
     -----
    |  |  |
    |-----|
    |  |  |
    -----

    können Sie entweder als eine Spalte bestehend aus zwei Zeilen oder als eine Zeile bestehen aus zwei Spalten angeben:

    <column>
        <row>
            <frame/>
            <frame/>
        </row>
        <row>
            <frame/>
            <frame/>
        </row>
    </column>

    oder

    <row>
        <column>
            <frame/>
            <frame/>
        </column>
        <column>
            <frame/>
            <frame/>
        </column>
    </row>

3. Ein Frameset füllen

Ein XFrames-Dokument wird durch einen URI in der Form http://example.org/home.frm#frames(id1=uri1,id2=uri2,...) angegeben. Jedes Attribut id kennzeichnet ein Element frame innerhalb des Dokuments mit einem Attribut id, das diesen Wert enthält. Daraufhin ist jeder zugehörige URI diesem Frame zugewiesen. Falls kein Frame mit dieser id existiert, wird der URI ignoriert. Falls ein Frame innerhalb des Dokuments nicht gefüllt ist (entweder weil er kein Attribut id besitzt oder weil keiner der Parameter dessen ID verwendet), aber ein Attribut source enthält, wird stattdessen der URI dieses Attributes verwendet. Falls ein nicht gefüllter Frame kein Attribut source enthält, wird der Frame leer gelassen.

Relative URIs in Parametern werden relativ zum XFrames-Dokument ausgewertet, wobei der Wert xml:base [XMLBASE] jedes Elementes <frames> beachtet wird.

Nachdem die URIs den Frames zugeteilt wurden, wird das XFrames-Dokument dementsprechend angezeigt.

In einem Dokument home.xfm zum Beispiel, das folgendes Layout

 -------
|   |   |
|---|   |
|   |   |
-------

auf folgende Art und Weise beschreibt

<row>
    <column>
        <frame id="a"/>
        <frame id="b"/>
    </column>
    <frame id="c" source="main.xml"/>
</row>

und wie folgt gefüllt wird

home.xfm#frames(a=one.xhtml,b=two.xhtml,c=three.xhtml)

würden die Frames gefüllt werden, indem one.xhtml dem Frame mit id="a", two.xhtml dem Frame mit id="b" und three.xhtml dem Frame mit id="c" zugeordnet würden:

 -------
| 1 |   |
|---| 3 |
| 2 |   |
-------

Gefüllt wie folgt

home.xfm#frames(a=one.xhtml,b=two.xhtml)

würde der Frame mit id="c" mit main.xml gefüllt werden.

Gefüllt wie folgt

home.xfm#frames(a=one.xhtml)

würde zusätzlich der Frame mit id="b" leer bleiben.

Gefüllt wie folgt

home.xfm#frames(z=nav.xml)

würden die Frames mit id="a" und id="b" leer bleiben, und der Frame mit id="c" würde mit main.xml gefüllt werden (und nav.xml würde ignoriert werden).

3.1. Links und Targets

Wenn ein Dokument, das Hyperlinks enthält, von denen einer aktiviert wird (zum Beispiel dadurch, dass ein Nutzer auf ihn klickt), einem Frame zugewiesen wird, dann wird für gewöhnlich der URI dieses Hyperlinks dem Frame an Stelle des bisherigen Dokuments zugewiesen, und das XFrames-Dokument wird neu angezeigt. Dies ändert den URI, der dem Frameset zugewiesen ist, durch hinzufügen oder ersetzen der Verbindung zwischen dem Frame und dem URI des Frame-Dokuments; das ist für den Nutzer für gewöhnlich sichtbar. Wenn der Frame, der das Dokument enthält, kein Attribut id besitzt, sodass keine solche Verbindung möglich ist, wird das gesamte Frameset durch das Dokument, auf das gelinkt wurde, ersetzt.

Wenn der Hyperlink zielgerichtet ist (zum Beispiel dadurch, dass ihm ein Attribut target in XHTML 1.0 [XHTML] zugewiesen ist), und sich innerhalb des Framesets ein Frame mit einer id, die dem Ziel entspricht, befindet, dann wird dieser URI dem Frame an Stelle des bisherigen Dokuments zugewiesen. Wenn das aktuelle Frameset keine solche id enthält, aber das Frameset einem Frame in einem anderen Frameset zugewiesen ist, dann wird der Prozess in diesem Frameset durchgeführt und so weiter. Wenn keine passende id gefunden wird, wird die zielgerichtete Ressource in einer vollkommen neuen Umgebung ausgeführt (ein visueller Browser zum Beispiel könnte ein neues Fenster öffnen).

4. Größenbestimmung, Formgestaltung und Darstellung von Frames

Die gesamte Formgestaltung, Positionierung und Größenbestimmung von Frames wird durch ein Stylesheet in CSS oder anderen geeigneten Style-Sprachen übernommen. Das bedeutet, dass die Namen <row> und <column> nicht normativ zu deuten, sondern lediglich als Vorschlag zu verstehen sind, wie sie dargestellt werden sollten, und als Standard-Darstellung in Abwesenheit eines Stylesheets. Wenn das <frames>-Element nur <frame>-Elemente enthält (und keine Elemente <row> und <column>), ist es Standard, sie als Karteireiter oder sich überlappende Fenster darzustellen.

Wenn keine Höhen- oder Breiteninformationen aus einem Stylesheet vorliegen, werden Zeilen und Spalten gleichmäßig über den verfügbaren Raum ohne auf ihren Inhalt zu achten aufgeteilt (so belegt in einer Spalte, die drei Frames enthält, jeder Frame ein Drittel der Höhe der Spalte; in einer Spalte, die zwei Frames und eine Zeile enthält, belegt die Zeile weiterhin ein Drittel der Höhe der Spalte, auch wenn die Zeile an sich mehrere Spalten enthält; in einer Zeile, die drei Frames enthält, von denen einem eine Höhe zugeteilt worden ist, wird der übrige Raum zwischen den beiden anderen Frames aufgeteilt).

Beachten Sie, dass das Stylesheet in einem XFrames-Dokument keinen Einfluss auf den Inhalt der Frames hat.

[[Diskussionspunkt: Sollten Stylesheets dem Inhalt der Frames zugewiesen werden? <frame stylesheet="override.css"/>]]

[[Diskussionpunkt: Sollte stattdessen der CSS-Tabellen-Layout-Algorithmus verwendet werden?]]

[[Diskussionspunkt: Wird ein Minimum an CSS zur Bestimmung von Breiten und Höhen, zum Beispiel in Prozentanteilen, benötigt, sodass in Abwesenheit von CSS weiterhin vollständig kompatible Kontrolle über das Layout besteht?]]

[[Diskussionspunkt: Sollten weitere sinnvolle Elemente wie zum Beispiel <tabbed> hinzugefügt werden?]]

5. Frames Dokumente zuweisen

Diese Spezifikation verlangt von XFrames-konformen Benutzeragenten nicht, dass sie die Zuweisung bestimmter Dokumenttypen an einen Frame akzeptieren oder ablehnen.

A. DTD Implementierung

Dieser Anhang ist normativ.

[folgt]

B. Referenzen

Dieser Anhang ist normativ.

B.1. Normative Referenzen

[NAME]
»Namespaces in XML«, W3C Recommendation, T. Bray, D. Hollander, A. Layman, eds., 14 January 1999.
Verfügbar unter: http://www.w3.org/TR/1999/REC-xml-names-19990114
Die aktuelle Version ist verfügbar unter: http://www.w3.org/TR/REC-xml-names
[URI]
»RFC2396: Uniform Resource Identifiers (URI): Generic Syntax«, T. Berners-Lee, R. Fielding, L. Masinter, August 1998.
Verfügbar unter: http://www.rfc-editor.org/rfc/rfc2396.txt
[XMLBASE]
»XML Base«, W3C Recommendation, J. Marsh, ed., 27 June 2001.
Verfügbar unter: http://www.w3.org/TR/2001/REC-xmlbase-20010627
Die aktuelle Version ist verfügbar unter: http://www.w3.org/TR/xmlbase

B.2. Andere Referenzen

[CSS2]
»Cascading Style Sheets, level 2 (CSS2) Specification«, W3C Recommendation, B. Bos, H. W. Lie, C. Lilley, I. Jacobs, eds., 12 May 1998.
Verfügbar unter: http://www.w3.org/TR/1998/REC-CSS2-19980512
Die aktuelle Version ist verfügbar unter: http://www.w3.org/TR/REC-CSS2
[HTML4]
»HTML 4.01 Specification«, W3C Recommendation, D. Raggett, A. Le Hors, I. Jacobs, eds., 24 December 1999.
Verfügbar unter: http://www.w3.org/TR/1999/REC-html401-19991224
Die aktuelle Version ist verfügbar unter: http://www.w3.org/TR/html4
[XHTML]
»XHTML™ 1.0 The Extensible HyperText Markup Language (Second Edition): A Reformulation of HTML 4 in XML 1.0«, W3C Recommendation, S. Pemberton et al., 1 August 2002.
Verfügbar unter: http://www.w3.org/TR/2002/REC-xhtml1-20020801
Die aktuelle Version ist verfügbar unter: http://www.w3.org/TR/xhtml1

C. Danksagungen

Dieser Abschnitt ist informativ.

Zur Zeit der Veröffentlichung waren Mitglieder der W3C Working Group:

Die Liste wird eingefügt, wenn dieses Dokument eine Empfehlung (Recommendation) wird.