InfoPath bringt XML in Form

Mit dem formularbasierten Autorenwerkzeug soll End-Usern der Umgang mit XML-Daten erleichtert werden.

Artikel erschienen in Swiss IT Magazine 2003/12

     

XML wird in Microsofts neuester Bürosuite, Office 11, grossgeschrieben: Einerseits bieten Applikationen wie Word oder Excel immer besseren Support für das standardisierte Datenformat, andererseits haben die Redmonder ihrem Büropaket mit InfoPath erstmals eine Anwendung spendiert, die sich ausschliesslich der Verarbeitung von XML-Daten widmet.



Das Programm, mit dem Power-User und Entwickler einfache formularbasierte Anwendungen designen können, soll den Umgang mit XML-Daten endlich auch an den Endanwender heranbringen. Die kryptische und unübersichtliche XML-Syntax lässt sich dazu hinter benutzerfreundlichen und ansprechend gestalteten Formularen verstecken. Formulardaten können direkt als reines XML gespeichert, an andere Benutzer zur Ergänzung weitergeleitet oder direkt einem Web Service zur Weiterverarbeitung übergeben werden.




Von den Abläufen im Hintergrund wird der Endanwender aber komplett abgeschirmt, so dass er sich voll und ganz auf die Formularerfassung konzentrieren kann.


Intelligenz dank Schemata

Formulare werden in InfoPath typischerweise mit Hilfe eines vorhandenen XML-Schemas generiert. Der Anwender braucht bloss ein Schema zu wählen, für das er ein Formular entwerfen möchte, worauf das Programm eine Baumstruktur mit allen verfügbaren Elementen und Attributen liefert. Die gewünschten Objekte müssen nun nur noch per Drag&Drop auf den Formulardesigner gezogen zu werden. Dabei lassen sich auch ganze Objekthierarchien auf dem Bildschirm plazieren.



Die im Schema definierten Regeln werden von InfoPath beim Design berücksichtigt. Notwendige Validierungs-Mechanismen werden beispielsweise automatisch in das Formular eingebaut. So stellt InfoPath bereits während der Erfassung sicher, dass nur gültige Daten im Formular erfasst werden. Ungültige Informationen werden dem Benutzer direkt im Formular durch rote Feldrahmen signalisiert.





Point&Click-Design

Für die Gestaltung der Formulare bietet InfoPath jede Menge Freiheiten und Features: So lassen sich Felder und Controls beliebig umplazieren, grafische Elemente einfügen und Formularobjekten Formatierungen und Farben zuweisen. Auch das Zufügen von eigenen Validierungsregeln, die über die Vorgaben des Schemas hinausgehen, ist möglich.



Um die Datenerfassung für die Benutzer komfortabler zu machen, stellt das Programm eine Reihe von Controls zur Verfügung, wie man sie beispielsweise aus Visual Basic oder WYSIWYG-HTML-Editoren kennt. Dazu zählen etwa ein Datums-Picker, Drop-Down-Listen oder Radio- und Checkbox-Buttons. Für die Erfassung von längeren Texten gibt es eine Rich-Textbox, die freie Formatierung zulässt und Office-Funktionen wie Spellchecking und Autokorrektur bietet. Auf diese Weise eingegebene Texte werden direkt als CSS-formatiertes XHTML im XML-Dokument abgelegt.




Ein besonderes Highlight sind die sogenannten Repeating Edit Regions. Immer wenn das XML-Schema Aufzählungen in einem XML-Dokument zulässt (z.B. Artikelpositionen in einer Bestellung, Tasks in einer To-Do-Liste), können diese mit dynamisch erweiterbaren Formularelementen abgebildet werden. Will ein Anwender etwa einer Bestellung eine weitere Position zufügen, kann er den Bereich mit den Bestellpositionen einfach um eine zusätzliche Tabellenzeile erweitern.



InfoPath-Formulare sind im Grunde genommen bloss XSL-Stylesheets (eXtensible Stylesheet Language), die die XML-Daten in hochgestylte Formulare verwandeln. Für dieselbe Datenbasis lassen sich daher auch problemlos unterschiedliche Ansichten definieren, die jeweils durch eine eigene XSL-Datei repräsentiert werden.




Client für Web Services

XML-Schemata sind aber nicht die einzige Quelle, die für das Formulardesign angezapft werden kann. InfoPath kann auch direkt Datenbanken via ADO ansteuern oder einfach nur XML-Dokumente ohne Schema in Formulare umwandeln.



Besonders interessant ist das Ansteuern von Web Services. InfoPath wertet dazu das WSDL-File (beschreibt die Funktionalität eines Web Service) aus und hilft per Wizard beim Erzeugen des passenden Formulars. Der Anwender braucht nur noch zu definieren, welche Daten vom Web Service abgefragt und wie das überarbeitete Formular an diese zurückübermittelt werden sollen. Ein paar Mausklicks genügen, und schon hat man sich einen fertigen Web-Service-Client zusammengebaut.




InfoPath lässt sich übrigens auch für das Schema-Design heranziehen. Hierzu erstellt man einfach von Grund auf ein neues Formular, definiert Regeln und übernimmt anschliessend das generierte Schema. Dank diesem visuellen Approach können vor allem auch End-User, die mit XML noch nichts am Hut haben, viel besser in den Schemata-Design-Prozess miteinbezogen werden.




Workflow Processing

InfoPath speichert Formulare inklusive Schema, XSL-Stylesheets und Metadaten zusammengefasst in einer Datei (CAB-Format). Dadurch können Formulare relativ einfach in bestehende Workflows eingebunden werden.



Ein Benutzer füllt beispielsweise sein Spesenformular aus und leitet dieses per E-Mail an seinen Vorgesetzten weiter. Dieser genehmigt und ergänzt die Spesenabrechnung und übermittelt die Formulardaten via Web Service an das interne Abrechnungssystem.




In solche Workflows können auch andere Systeme wie die Message Queuing Services, BizTalk Server oder Sharepoint Services einbezogen werden. Einfache Routing-Mechanismen können direkt im Formular hinterlegt werden. Je nach Feldinhalt wird dann das Formular beim Absenden automatisch an die richtige Stelle oder den richtigen Service geleitet.




Keine echtes Entwicklertool

InfoPath ist zweifellos ein hervorragendes Produkt, wenn es um die Verarbeitung von XML-Daten geht. Beeindruckt hat uns vor allem, wie wenig Zeit es braucht, um ein voll funktionstüchtiges Formular oder einen Web-Service-Client auf die Beine zu stellen. Positiv aufgefallen sind auch verschiedene Datenquellen und Dienste, die sich mit dem Programm anzapfen oder für den Workflow nutzen lassen.



Schade finden wir allerdings, dass es sich bei InfoPath vielmehr um eine Office-Anwendung als um ein echtes Entwicklungstool handelt. Das Programm gibt es im Gegensatz zu ähnlichen Werkzeugen wie Altovas Authentic (XML Spy) oder Corels XMetal 4 (siehe Vergleichstest InfoWeek 11/03) nicht als wiederverwendbare Komponente. InfoPath-Formulare lassen sich dadurch nicht in eigene Anwendungen einbinden. Sollen Formulare an andere Benutzer verteilt werden, muss gleichzeitig sichergestellt werden, dass diese über eine installierte InfoPath-Version verfügen.




Für die Programmierung der Formulare gibt es momentan nur Unterstützung für VBScript oder JavaScript. Support für .Net-Sprachen wie C# oder VB.Net fehlt ebenso wie die Integration mit Visual Studio.Net.



InfoPath könnte zu einer echten Killerapplikation für XML- und Web-Service-Anwendungen werden, wenn Microsoft sich dazu entschliesst, die neue Formularsoftware auch für Entwickler attraktiver zu machen. Denn für ein reines Office-Werkzeug ist das innovative Programm viel zu schade.



Artikel kommentieren
Kommentare werden vor der Freischaltung durch die Redaktion geprüft.

Anti-Spam-Frage: Was für Schuhe trug der gestiefelte Kater?
GOLD SPONSOREN
SPONSOREN & PARTNER