Transkluzja

Z Wikipedii, wolnej encyklopedii
Transkluzja tekstu „foo” z dokumentu B do dokumentu A

Transkluzja (dosł. przeniesienie i włączenie) – sposób włączenia w systemie hipertekstowym fragmentów innych dokumentów.

Przykładowo, artykuł o gospodarce jakiegoś kraju mógłby zawierać wykres czy akapit opisujący eksport produktów rolnych pochodzący z innego artykułu. Zamiast kopiować dane z dokumentu źródłowego do docelowego i utrzymywać w ten sposób dwie kopie, można dokonać transkluzji, czyli odwołania się w dokumencie docelowym do dokumentu źródłowego, które spowoduje wyświetlenie fragmentu dokumentu źródłowego w docelowym. Zaletą takiego rozwiązania jest również aktualność tego fragmentu, którego zawartość może się zmieniać, gdy jego autor dokona poprawek. Odwołanie to służy też jako wzajemny odsyłacz między oboma dokumentami.

W projekcie Xanadu Teda Nelsona oryginalna propozycja hipertekstu, naszkicowana w książce „Literary Machines” z 1982 roku, mówi, że od czytelnika pobierane byłyby automatycznie mikropłatności honorujące wkład pochodzący z rozmaitych źródeł.

Idea transkluzji zakłada, że poszczególne sekcje są pisane w sposób „zatomizowany”, jako „całostki”, tak aby zawartość jednej sekcji dokumentu nie była sprzeczna z zawartością innych fragmentów. Przykładowo, nie byłoby możliwe używanie spotykanych w papierowych książkach sformułowań w rodzaju „patrz: sekcja wyżej” czy „jak wspomniano wcześniej”, gdyż w razie użycia tej sekcji w dokumencie innego autora, drogą transkluzji, tego rodzaju sformułowanie stałoby się w innym kontekście niezrozumiałe i mylące, zwłaszcza w dokumentach o charakterze technicznym i informacyjnym.

Obecny HTML zawiera ograniczoną implementację transkluzji. Można się odwołać do obrazka znajdującego się w innym dokumencie, nawet na innym serwerze, można też stosować technikę ramek, czyli <iframe>, która przywołuje dokument z zewnątrz. Przyszłe wersje HTML, będą prawdopodobnie zawierać głębsze techniki transkluzji z użyciem XML-owych technik, jak odwołania na bazie XPath z użyciem transformacji XSL.

Praktyka włączania danych z innych źródeł jest niekiedy krytykowana, gdyż oznacza zużywanie cudzej mocy komputerowej i cudzego pasma (bandwidth theft - kradzież pasma). Powszechnie stosowanym wyjątkiem jest jednak technika banerów reklamowych - ogłoszeniodawca woli sam udostępniać zawartość banera ze swojego serwera niż polegać na innym serwerze, dzięki czemu może łatwo weryfikować wywołany tym ruch w sieci i oglądalność.

Jeśli na stronie internetowej A za pomocą transkluzji i znacznika <iframe> wstawiona zostanie cała zawartość innej strony internetowej B, nie wyświetlą się żadne elementy informujące użytkownika, że ogląda treść pochodzącą ze strony B. Oglądający wówczas będzie przekonany, że ogląda treść strony A, ponieważ na pasku adresu przeglądarki wyświetlany jest adres strony A, a nie B. Czasami na stronie A wyświetlana jest zawartość strony B wzbogacona jedynie o bannery reklamowe wygenerowane przez stronę A. Tego typu praktyka jest krytykowana za możliwość oszustw i podszywanie się pod cudzą pracę.

Jest szereg technologii internetowych, które dysponują podobną możliwością włączania zewnętrznych komponentów, jak języki skryptowe typu server-side: ASP (Active Server Pages), JSP (JavaServer Pages), PHP (PHP Hypertext Preprocessor) oraz SSI (Server Side Includes).