Pflichtenheft Dokumentation Ressourcen
Beschreibung: Verfügbarmachen von X-Links aus einer XLink-Bank
Autoren: Arnd Scharpegge und Alexander Rosenhäger
letzte Änderung: Projekt noch nicht begonnen.
Version: Entwurf

Ziel des zu Skriptes

In einer Linkbank gespeicherte Third-Party- und eingehende Kanten - nach den XLink-Spezifikationen für Extended-Links - sollen in ihre jeweils an den Links teilnehmenden Ressourcen eingbettet werden. Die XLinks sollen in eine Menge von XHTML-Dokumente eingefügt werden.
Dabei müssen die XLinks dergestalt sein, dass sie in einem Dokument auf ein konkretes Element referenzieren.

Version: Entwurf

Zu erfüllende Anforderungen

  • Alle gültigen XLinks müssen von einem ersten Skript gesammelt werden, zunächst aus einer einzigen Link-Bank. Später ist eine Erweiterung denkbar. Die Extended-Links könnten dann aus mehreren Linkbanken ausgelesen werden. Jedes XML-Dokument kann prinzipiell als solche fungieren,
  • das Projekt macht jedoch eine Vorschlag für eine spezielle Link-Bank-DTD.
  • Die XLinks werden nach Ressorcen geordnet in einer XML-Datei zwischengespeichert.
  • Diese Links dieser Sammlung werden in die Zieldokumente eingefügt.

Ein zweites Skript fügt die Links in die externe Ressource ein, die in der zwischengespeicherten Sammlung angegeben ist.

Version: Entwurf

Beschreibung der Funktionsweise

Technische Voraussetzungen / Software und Hardeware

Neben funktionierender Hardware ;-) ist für die Ausführung der Skripte erforderlich:

  • Ein XSL-T Prozessor, etwa der Saxon und zum dessen Betrieb notwendige Software
  • Ein beliebiger Text-Editor oder Browser (zum Überprüfen der Ergebnisse)
  • Schreibrechte auf der Festplatte

Schnittstellen

Die Skripte sollen in XHTML-Elementen erweiterte XLinks zur Verfügung stellen, die von einer weiteren Projekt-Gruppe verarbeitet werden. So soll mit HTML und dessen Erweiterungsmöglichkeiten eine 1:n-Links-Funktionalität implementiert werden.

Version: Entwurf

Skript-Routinen

Im wesentlichen mussen die beiden Skripte enthaltenen Routinen folgende Funktionen erfüllen:

  1. Erstes Skript
    • Jedes Element einer Linkbank (unabhängig von der linkbase.dtd muss auf ein Attribut "xlink:type" mit dem Inhalt "extended" überprüft werden.
    • Die Kinder dieser Knoten müssen nach Locatoren (xlink:type) durchsucht werden und die beteiligten Ressourcen (xlink:href) gefunden werden.
    • Für jede dieser Ressourcen wird in einer Zielstruktur ein Element
      <resource> angelegt, dessen Attribut "desc" die Bezeichnung der Beteiligten Ressource enthält. Hierein werden die gefundenen 3rd-Party-Links geschrieben.
    • Zudem müssen hier ebenso die beteiligten Kanten (xlink:arc) erfasst werden. Dazu müssen die Bezüge über die "xlink:from" und "xlink:to" aufgelöst werden. Sind Namen (xlink:name) von Ressourcen in Kanten enthalten, werden sie der Ressourcen hinzugefügt.
  2. Zweites Skript
    • Alle XHMTL-Dateien in einem Verzeichnis müssen geöffnet werden.
    • Stimmt der Name einer Datei mit einer zwischengespeicherten, an einem Link beteiligten, Ressource überein wird der Xlink eingefügt.
    • So könnte als erstes Kind des <body>-Tags etwa ein <span>-Element eingeschrieben werden, dass ein erweiterter XLink ist und die vollständige gesammelten Ressourcen der Sammlunge als Kinderelemente (wiederum <span>?) entält.
platzhalter platzhalter platzhalter platzhalter platzhalter