\documentclass[a4paper,11pt]{article} \usepackage[german]{babel} \usepackage{epsfig} \usepackage{graphicx} \usepackage{verbatim} \newcommand{\tilda}{\def\~{}} \newcommand{\grad}{\ensuremath{^\circ}} \newcommand{\lvw}{{\tt Lixto Visual Wrapper}} \newcommand{\lts}{{\tt Lixto Transformation Server}} \usepackage[titleformat={italic,commasep},% authorformat={citationreversed,reducedifibidem},% ibidem={strictdoublepage,name&title}, % lookforgender,% commabeforerest,% endnote,% crossref={long},% bibformat={ibidem,compress,raggedright}]{jurabib} %\usepackage{german} %\selectlanguage{\austrian} \usepackage[breaklinks=true]{hyperref} \hypersetup{ pdfauthor = {Alexander \"Olzant}, pdftitle = {Praktikum: Syndication}, pdfsubject = {Interdisziplinaeres Praktikum}, pdfkeywords = {Lixto Visual Wrapper, Transformation Server}, pdfcreator = {LaTeX with hyperref package}, pdfproducer = {pdflatex} } \sloppy \begin{document} \titlepage \title{ Interdisziplin\"ares Praktikum\\ 181.149 } \author{Alexander \"Olzant\\ 9301547\\ E 190 884 423} \maketitle \thispagestyle{empty} \newpage \tableofcontents \newpage \section{Szenario} Syndizierung einiger Genderdatenbanken im Informatik-Umfeld mittels Lixto und `"zu Fuss'", Zusammenfassung von Inhalten in einem RSS-File zur Verfuegbarkeit in einem RSS-Reader. Auflistung der verwendeten Datenbanken: \begin{tabular}[l]{l@{\hspace{1cm}}p{0.5\textwidth}} \href{http://www.univie.ac.at/gender/}{http://www.univie.ac.at/gender/} & Genderreferat Universit\"at Wien\\ \href{http://www.gem.or.at/}{http://www.gem.or.at/} & Gender Mainstreaming im Europäischen Sozialfonds (ESF): Mehrere Themenbereiche\\ \href{http://www.genderandcomputing.no/}{http://www.genderandcomputing.no/} & Weblog von Hilde Corneliussen (Department of Humanistic Informatics, Univ. of Bergen)\\ \href{http://www.gendernet.at/}{http://www.gendernet.at/} & European Network for Assessment, Validation and Dissemination of Gender Mainstreaming Strategies in Vocational Guidance and Qualification (Methoden, Projekte) \end{tabular} \section{Scraping mit {\tt Lixto}} Entsprechend dem Tutorial wurden Bereiche der Ursprungsdokumente mit dem \lvw{} markiert und die Projektfiles mit den Wrappern zu den jeweiligen Source-Komponenten am Transformation Server eingebunden. Als erster Ansatz wurden dazu feingranular den Quellen unterschiedliche XML-Tags zugeordnet, letztlich kam aber zur Vereinfachung des Syndizierungsprozesses eine Struktur zur Verwendung, bei der nur {\tt items} im {\tt rootPattern} definiert wurden, die jeweils wieder Muster mit den Bezeichnungen {\tt title} und {\tt description} beinhalteten (Abb. \ref{wrapper}). \begin{figure} \includegraphics[width=0.9\textwidth]{gem-wrapper.jpg} \caption{Wrapper-Darstellung einer der Komponenten} \label{wrapper} \end{figure} Am \lts{} wurden anschliessend die Quellen mit einem {\tt Integrator} vereint, wobei das Ausgabeschema von einem der Eingabeschemata uebernommen werden konnte. Dieses konnte fast direkt auch im Transformer iterativ wieder ausgegeben werden, wo aber noch die RSS-Tags im XSLT eingef\"ugt wurden (s. Anhang \ref{transformer}). \begin{figure} \includegraphics[width=0.9\textwidth]{ts-overview.jpg} \caption{\"Ubersicht \"uber den Datenflu\ss{} am \lts} \label{ts} \end{figure} \section{Websource-Eingabe/Verknuepfung mit Content Extractor} Die Wrapper-Dateien wurden dann zur Extrahierung der Rohdaten den Websources am \lts{} zugeordnet, teilweise mit mehreren Quelldateien (Abb. \ref{websource}). Komplizierte Navgationssequenzen waren allerdings nicht notwendig, da keine Paginierung in den Ursprungsdokumenten ausgef\"uhrt war und die Quellen direkt (ohne POST von Forms) zug\"anglich sind. \begin{figure} \includegraphics[width=0.9\textwidth]{websource.jpg} \caption{Websource (mehrere Quelldateien)} \label{websource} \end{figure} \section{Scheduler f\"ur den Deliverer} Um das RSS-File aktuell zu halten, wurde ein Scheduler eingerichtet, der die Pipe jede Studne ausf\"uhren sollte (Abb. \ref{scheduler}). Allerdings wird eine delivery nur gemacht, wenn sich Datenbanken \"andern. \begin{figure} \includegraphics[width=0.9\textwidth]{deliver-scheduler.jpg} \caption{Scheduler: st\"undliche Aktualisierungen} \label{scheduler} \end{figure} \section{Systemtest mit einem RSS-Reader} Das RSS 2.0 kompatible Resultat wurde dann mit einem Aggregator (liferea) getestet, um die Kompatibilit\"at zu \"uberpr\"ufen. \includegraphics[width=0.9\textwidth]{liferea-lixto.jpg} \appendix \clearpage \section{\label{transformer}XSLT in der Transformer-Komponente} \verbatiminput{transformer2.xml} \clearpage \section{Alternativersion: Perl} \parindent0pt RSS Output: \href{http://tigerente.htu.tuwien.ac.at/~aoe/studium/la_aoe/lixto/gender.rdf}{http://tigerente.htu.tuwien.ac.at/\~{}aoe/studium/la\_{}aoe/lixto/gender.rdf} Perl Source: \href{http://tigerente.htu.tuwien.ac.at/~aoe/studium/la_aoe/lixto/gender-rdf.pl}{http://tigerente.htu.tuwien.ac.at/\~{}aoe/studium/la\_{}aoe/lixto/gender-rdf.pl} \verbatiminput{gender-rdf.pl} % %\section{RSS-Reader Output lixto-Variante} %\includegraphics[width=\textwidth]{liferea-lixto.jpg} %% example of target from a link %% use extra arrows in veiwer to return \clearpage %\section{Bibliographie} \nocite{*} \def\btxeditionlong{} \def\btxeditionshort{Aufl.} \def\Btxinlong{in} \def\Btxinshort{i.} \def\btxandlong{und} \def\btxandshort{u.} \def\btxeditorshort{Hrsg.} \def\btxeditorlong{Hrsg.} \def\btxeditorslong{Hrsg.} \def\btxeditorsshort{Hrsg.} \bibliographystyle{jurabib} % (uses file "plain.bst") % \bibliographystyle{plainnat} % (uses file "plain.bst") %\bibliography{lixto} % expects file "fap.bib" \end{document} % vim: textwidth=75