Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweis e wurde die Datei verschoben, 1 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft. Martin Brändle Grundlagen von XML, XSLT und Web 2.0 in FileMaker Server Advanced 8
61
Embed
Grundlagen von XML, XSLT und Web 2.0 in FileMaker Server Advanced 8
Dies ist ein alter Vortrag, gehalten an der FileMaker Konferenz 2006 Deutschland. Er könnte für Anfragende nützlich sein, die sich für RSS mit FileMaker interessieren. This is an old presentation given at FileMaker Conference 2006 in Germany. It could be useful for some requesters that are interested in RSS publishing with FileMaker.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
1 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft.
Martin Brändle
Grundlagen von XML, XSLT und Web 2.0 in
FileMaker Server Advanced 8
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
2 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Inhalt
• Custom Web Publishing • Allgemeines zu XML • Allgemeines zu XSLT
• FileMaker XML und XSLT-Abfragen
• Newsticker Demo
• RSS
• AJAX
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
3 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Über mich
• Informationsspezialist Chemie (prom. Chemiker, NDS Information + Dokumentation)
Ca. 320‘000 Zugriffe / Woche (25% FileMaker CWP Zugriffe)
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
5 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Über Sie
• XML Import/Export mit XSLT? • Erfahrungen mit Web Design und Publishing (HTML, CSS, JavaScript)? • Projekte mit CDML (Claris Dynamic Markup Language)? • FileMaker Server Advanced (FMSA)? • XSLT Site Assistant? • CDML-nach-XSLT Konversionstool? • XML/XSLT vs. XML/PHP?
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
6 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
CWP : Erzeugen von XML mit FMSA
DEMO
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
7 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
XML
• XML = eXtensible Markup Language • Menge von Regeln zur Schaffung von Auszeichnungs- bzw. Markup-Sprachen • Markup-Sprache = Menge von Symbolen (Tags) im Dokument
Benennung (Auszeichnung) einzelner Teile Abgrenzung einzelner Teile (Start-Tag, Ende-Tag)
<Meldung> <Titel>Nur noch 9 Tage bis zur FileMaker Konferenz 2006!</Titel>���<Absatz>Die zweitägige Konferenz bietet <nichtwichtig>vielfältige Informationen zu unterschiedlichstenThemen</nichtwichtig>. Sie haben erstmals die Möglichkeit, unter einer Auswahl von 3 parallelen Sessions Ihr maßgeschneidertes Programm selbst zusammen zu stellen. <Wichtig>Melden Sie sich gleich an und geben Sie uns Ihre Wünsche bekannt.</Wichtig></Absatz>
</Meldung>
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
8 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Elemente: Die Bausteine von XML
• Behälter für Text und Unterelemente��� <Text>Das ist im Element Text enthaltener Text</Text> <Aussen>Hier Text<Innen>und noch mehr Text</Innen> und wieder Text</Aussen> • Syntax��� <Name Attribut1="Wert1" Attribut2="Wert2">Inhalt</Name> • Leeres Element <Leer></Leer> ⇒ <Leer/> <Leer Attribut1="Wert1" Attribut2="Wert2"/>
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
9 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Element-Erweiterungen: Attribute
• Syntax Attributname="Wert" oder Attributname='Wert' Beispiel: <resultset count="232" fetch-size="10"> • Ein Element darf jedes Attribut nur einmal enthalten Falsch: <Gruppe Person="Max" Person="Sonja" Person="Jonas"> Richtig: <Gruppe Personen="Max Sonja Jonas"> Richtig: <Gruppe Person1="Max" Person2="Sonja" Person3="Jonas"> Richtig: <Gruppe><Person>Max</Person><Person>Sonja</Person>
<Person>Jonas</Person></Gruppe>
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
10 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
XML-Dokumente : Baumstruktur
<?xml version="1.0" encoding="UTF-8"?> <Fruechte> <!-- Kommentar: Hier folgen die einzelnen Fruechte --> <Frucht id="1">Apfel<Farbe>rot</Farbe></Frucht> <Frucht id="2">Zitrone<Farbe>gelb</Farbe></Frucht> </Fruechte>
XML-Deklaration
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
11 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Zeichen-Entities
• Vordefinierte Zeichen-Entities & : & ' : ' > : > < : < " : " • Zahlendefinierte Zeichen-Entities : Unterstützung von Unicode in XML
Dezimal: € : € Sedezimal: &x20ac; : €
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
12 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Namensräume
• Namensraum = Gruppe von Element- und Attributnamen • Vermeidung von Namenskonflikten Beispiel: Bank (Geldinstitut, Sitzgelegenheit, Untiefe) ���
• Qualifizierte Elementnamen��� <Geldinstitute:Bank> und <Sitzgelegenheiten:Bank>
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
13 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Wohlgeformte XML-Dokumente
• Jedes Element, das Text oder Elemente enthält, muss ein Start- und End-Tag haben
• Der Tag eines leeren Elements muss vor der Abschlussklammer einen Schrägstrich / haben
• Alle Attributwerte müssen in Anführungszeichen stehen • Elemente dürfen sich nicht überlappen
<Beispiel>Richtiges <fett>Beispiel</fett> für Verschachtelung.</Beispiel>
<Beispiel>Falsches <fett>Beispiel</Beispiel> für Verschachtelung.</fett>
• Keine isolierte Markupzeichen: < , ]]> und & • Elementnamen dürfen nur mit Buchstaben und Unterstrichen _ beginnen • Elementnamen dürfen nur Buchstaben, Zahlen, Bindestriche, Punkte,
Unterstriche enthalten, und Doppelpunkte für Namensräume
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
14 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Sinn und Zweck von XML
• W3C Standard • Anwendungsspezifisch • Eindeutige Strukturen • Trennung von Inhalt und Präsentation ⇒ XSLT • Fehlerüberprüfung möglich
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
15 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
FMSA XML Abfragen
• Merkmal der URL http://host/fmi/xml/fmresultset.xml?.... • Allgemeiner Aufbau der URL (kursiv = optional)
http://host/fmi/xml/fmresultset.xml?-db=Datenbank&-lay=Layout���&Feld1.op=bw&Feld1=Wert1&Feld2.op=bw&Feld2=Wert2&-sortfield.1=Feldname���&-sortorder.1=ascend&-max=Anzahl_Datensätze&-befehl • Häufige Befehle -find, -findall, -new, -edit (-edit braucht &-recid=Record_ID) Für alle Parameter und Befehle siehe FMSA CWP Handbuch, Anhang A!
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
16 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
• Deklarativ anstelle prozedural (nicht wie C++, Java, JavaScript, PHP, ...) Transformation wird beschrieben. ���XSLT-Prozessor entscheidet, wie am effizientesten transformiert wird. ���
• Regelbasiert Templat-basierte Regeln die für Muster, die im Input vorkommen, greifen und dann den Output generieren. Reihenfolge der Deklaration egal.
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
22 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
24 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
XSLT - Wichtige Elemente
• <xsl:value-of select="XPath-Ausdruck, Ausdruck oder Datentyp"/> für Ausgabe • <xsl:template match="XPath-Ausdruck"> für Templatregeln • <xsl:for-each select="XPath-Ausdruck"> für Loops • <xsl:choose> für Verzweigungen • <xsl:attribute name="attributname"> zum Setzen von Elementattributen • <xsl:copy-of select="XPath-Ausdruck"/> zum Kopieren ganzer XML-Fragmente
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
25 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Auswahl von XML-Elementen: XPath
• XSLT und XPath bedingen sich gegenseitig! XPath = W3C Standard • XPath-Ausdrücke zum Auswählen von Knoten (Elemente, Attribute) eines XML-Baums • XPath verwendet Pfade und Achsen. Wir verwenden abgekürzte Notationen . relativ im Kontext: Der aktuelle Knoten record relativ im Kontext: alle record-Kinderknoten /fmrs:fmresultset/fmrs:resultset absolut: Alle resultset-Kinder des Kindelements fmresultset���
des Wurzelelements fmrs:resultset/fmrs:record relativ im Kontext: Alle record-Kinder von resultset fmrs:error/@code relativ im Kontext: Das Attribut code des Elements error fmrs:record[2] relativ im Kontext: Das zweite record-Kindelement fmrs:field[@name = 'Vorname'] relativ im Kontext: Das Element field mit Attribut name, ���
dessen Attributwert Vorname ist (Test-Ausdruck) • XPath-Ausdrücke auch für Berechnungen und Vergleiche <xsl:value-of select="($x + $y) div 10"/> <xsl:value-of select="$x != 'Vergleichstring'/>
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
26 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
„Kontext“ in XSLT
• Statischer Kontext Hängt von Position des Ausdrucks im Stylesheet ab Bsp. Globale Variablen (Kopf-Bereich) Bsp. Lokale Variable (Kind von xsl:template oder Unterelement)
• Dynamischer Kontext Gegenwärtiger Wert der Variable Gegenwärtige Position im XML-Baum der Quelle, umfasst: Knoten (xsl:for-each, xsl:apply-templates) Kontext-Knoten (normalerweise gleich wie gegenwärtiger Knoten) Kontext-Position (abfragbar über position(), ��� bestimmt durch Durchlauf in xsl:for-each )
Kontext-Grösse (Anzahl der Knoten in der gegenwärtigen Knotenliste)
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
27 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Datentypen in XSLT
• Dynamische Typen, assoziiert mit Werten anstelle von Variablen
• Boolean: true(), false()
• Zahlen: Bsp. -10, 0, 9999999999, 1 div 0, NaN
• Strings: Bsp. 'Text', 'Abk&uuml;rzung'
• Node-sets: Satz von Knoten eines XML-Baums oder Kombination
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
28 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Beispiel: Newsticker
• Zeigt neueste Meldungen an • Entfernt nicht mehr aktuelle Meldungen nach einem Verfalldatum • Anreisser (mehr ...) und Detailanzeige • Zweisprachig • Suchfunktion • RSS NewsFeed • AJAX-basierte Auswahl nach Schlagworten • E-mailing einzelner News
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
31 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Schritt 0 : Website-Templat
• Erzeugen in einer Webseiten-Erstellungssoftware, bspw. Macromedia Dreamweaver
• Erzeugte Seiten müssen im XHTML-Format sein Dreamweaver: Menu Datei > Konvertieren > XHTML 1.0 Transitional
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
32 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Schritt 1 : Einfache Abfragen
• XML und XSLT CWP einschalten • Datenbank CWP fähig machen
Erweiterte Privilegien einstellen: fmxslt, fmxml WICHTIG fmxml immer mit passwort-geschütztem Account, sonst Sicherheitsrisiko!
• Layouts für CWP erstellen WICHTIG Nur benötigte Felder für Suchen und Resultate aufnehmen
• XHTML in Stylesheet-Vorlage einfüllen
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
33 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Was kommt wohin?
• XSLT-Stylesheets Relativ zum Verzeichnis, in welchem FileMaker Server installiert ist: Web Publishing/xslt-template-files/ oder Unterverzeichnisse desselben���
• XML-Dateien, die nachgeladen werden Web Publishing/xslt-template-files/ oder Unterverzeichnisse desselben���
• Alle statischen Dateien (HTML, CSS, JavaScript, GIF, JPG, PNG, ...) ins Verzeichnis der Webdateien , das im Webserver bezeichnet wurde, z.B. /Library/Webserver/Documents (OS X) ���oder ~/Sites (OS X, Personal Web Sharing) oder frei wählbares Verzeichnis (OS X Server, Windows Server)
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
34 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
• Information über den Kontext current(), last(), position()
• XML-Dokument laden document()
Keine Angabe eines Namensraums nötig!
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
37 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Schritt 1+: Refactoring
• Modularisierung: Integration von Seitenteilen in separate Stylesheets Kopf mit Breadcrumb : header_de.xsl, header_en.xsl Resultate : results_de.xsl, results_en.xsl
Fuss : footer_de.xsl, footer_en.xsl
• Einbinden der Stylesheets in Hauptseite mit <xsl:include href="url">
• Aufruf der Teile mit <xsl:call-template name="name">
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
38 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
XSLT: Subroutinen
• Subroutinen über benannte Template implementieren���
<xsl:template name="meine_subroutine">��� <xsl:param name="uebergabe1"/>��� <xsl:param name="uebergabe2"/>��� <!-- hier etwas tun -->���</xsl:template>
• Aufruf der Subroutine���
<!-- hier etwas tun --> <xsl:call-template name="meine_subroutine"> <xsl:with-param name="uebergabe1" select="$var1"/> <xsl:with-param name="uebergabe2" select="XPath-Ausdruck2"/>���</xsl:call template> <!-- hier etwas tun -->
Übergebene Parameter
Übergabeparameter
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
39 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
FileMaker XSLT Erweiterungsfunktionen
• Namensraum muss in <xsl:stylesheet xmlns:fmxslt="xalan://com.fmi.xslt.ExtensionFunctions“> spezifiziert werden
• Angabe des fmxslt: Namensraumpräfixes • Beispiele
Siehe FMSA CWP Handbuch, S. 65ff ; XSLT Reference.fp7
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
40 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Schritt 2 : Aufruf der Detailseite
• Verwendung des Templats get-link in der Bibliothek cdml2xsl_utilities.xsl
• Falls Bibliothek nicht vorhanden Dummy-CDML generieren (wie: siehe lib/results_de.xsl) Mit CDML-XSLT Konversionstool konvertieren, erzeugt cdml2xsl_utilities.xsl
• Siehe: FMSA CWP Handbuch, Anhang C, insbesonders S. 139ff.
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
41 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Schritt 2+: Nachladen von Dokumenten
• Verwendung der XSLT-Funktion document() und Abspeichern in einer Variable
• <xsl:variable name="xmlbaum" select="document('url')"/> • Verwendung von $xmlbaum an beliebiger Stelle im Stylesheet
• document() akzeptiert nur wohlgeformtes XML
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
42 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Schritt 3: Suche
• XSLT-Abfrage in Formular umwandeln &Parameter=Wert Paare ⇒
<input type="..." name="Parameter" value="Wert"/>
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
43 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Schritt 3+ : Smarte Suche
• Stoppwort-Filterung • Automatisch erzeugte Logdatei • Einsatz von fmxslt:set_status_code() und fmxslt:set_header() zur
Beeinflussung des HTTP-Headers (FMSA CWP Handbuch, S. 76)
• Weitere Möglichkeiten Abfrage umformulieren (CLICAPS, Seilbahnliteratur) Abfragen in mehreren Tabellen gleichzeitig (CLICAPS) Abfrageanalyse (CLICAPS) Unterstützte Abfragen (Meinen Sie? in CLICAPS) History-Funktion Alerts
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
44 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Schritt 4 : RSS
• RSS = Familie von Nachrichtenformaten in XML, Transport über HTTP RSS 0.9, 1.0 RDF Site Summary RSS 0.91, 1.0 Rich Site Summary RSS 2.0 Really Simple Syndication ATOM 1.0 Standard der IETF (versucht Probleme mit eingebettetem���
HTML zu lösen)
• Content-Syndication (Mehrfach-Verwendung von Inhalten) • Braucht NewsReader oder RSS-fähigen Browser (Safari, FireFox, IE7) • RSS 0.9-2.0 siehe Ben Hammersley, Content Syndication with RSS, O'Reilly, 2003 • Beispiel: Erzeugen von RSS 1.0
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
45 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
RSS 1.0 Grundstruktur
<rdf:RDF ...> <channel rdf:about="channel_url"> <title>Titel</title> <description>Zusammenfassung des Feeds</description> <link>URL der Feed-Website</link> <items> <rdf:Seq> <rdf:item resource="URI des Items 1"/> <rdf:item resource="URI des Items 2"/> </rdf:Seq> </items> </channel> <item/> <item/> </rdf:RDF>
Kanal: Feed-Spezifikation
Inhalt der einzelnen Meldungen
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
46 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Schritt 4+ : RSS optimiert
• Stetiges Pollen durch NewsReader ⇒ RSS-Meldungen fressen Bandbreite ⇒ Server wird durch Abfragen belastet���
• Lösung: Meldungen nur schicken, wenn sich etwas geändert hat NewsReader lesen HTTP-Header aus: ��� Not-Modified Statuscode (304) und Modified-Since Meldung
NewsReader senden If-Modified-Since Meldung im HTTP-Header Verwenden der fmxslt:set_status_code(), fmxslt:get_header() und fmxslt:set_header() Erweiterungsfunktionen zur Optimierung
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
47 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Web 2.0
• Tim O'Reilly, What is Web 2.0 : Design Patterns and Business Models for the Next Generation of Software, 2005 http://www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/what-is-web-20.html
• Prinzipen Web als Plattform Kollektive Aktivität ermöglichen (RSS, Blogs, Wikis, User Tagging, User Content)
Datengetriebene Applikationen Ende des Software-Release-Zyklus - Co-Entwicklung durch Benutzer Einfache Programmiermodelle und Protokolle (z.B. AJAX, RSS, REST) Software für verschiedene Devices Rich Internet Applications : AJAX als Schlüsselkomponente
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
48 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Schritt 5: AJAX
• AJAX = Asynchronous JavaScript And XML • Umfasst mehrere Technologien
Präsentation über XHTML und CSS Dynamische Anzeige und Interaktion via Document Object Model (DOM) Datenaustausch und -manipulation über XML und XSLT Asynchrones Laden/Schreiben von Daten über XMLHttpRequest-Objekt Verbindung der Komponenten über JavaScript
• Prinzipien von AJAX Browser enthält Anwendung, nicht Inhalt Server liefert Daten, nicht Inhalt Interaktion des Benutzers ist flüssig und ununterbrochen
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
49 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
AJAX: XMLHttpRequest()-Objekt
• Von neueren Browsern unterstütztes API • Laden und Schreiben von XML-Daten über HTTP • Ursprünglich von Microsoft entwickelt, jetzt W3C Draft • Dokumentation
• Verwendung der OpenSource JavaScript Bibliothek prototype.js
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
50 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
AJAX: DOM
• Document Object Model (DOM) erschliesst geladene Webseite für JavaScript • Hierarchischer Baum von Dokumentknoten • Zugang in JavaScript über Methoden der document- und node-Objekte
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
56 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft
Literatur
• Michael Kay, XSLT - Programmer‘s Reference, 2. Auflage, Wiley, 2003 • Beverly Voth, FileMaker Pro 6 : Developer's Guide to XML/XSL, Wordware,
2003
• Sal Mangano, XSLT Cookbook, O'Reilly, 2003 • Erik T. Ray, Einführung in XML, O'Reilly, 2001 • Ben Hammersley, Content Syndication with RSS, O'Reilly, 2003 • Dave Crane, Eric Pascarello, AJAX in Action, Manning, 2005
Das verknüpfte Bild kann nicht angezeigt werden. Möglicherweise wurde die Datei verschoben,
57 1.12.2006 FileMaker Konferenz 2006 Mehr Möglichkeiten. Mehr Chancen. Mehr Geschäft