XQuery-constructies in de ontwikkeling van mobiele applicaties
Ontwikkelaars zijn voortdurend op zoek naar eenvoudigere en efficiëntere manieren om mobiele apps te maken en ze nog sneller op de markt te brengen. De recent geïntroduceerde online training voor Altova XQuery 3.1 behandelt XQuery-constructies die ontwikkelaars kunnen gebruiken als krachtige hulpmiddelen voor een snellere ontwikkeling van mobiele apps.

We hebben onlangs XQuery-constructies gebruikt om een van onze eigen mobiele apps te vereenvoudigen: de kleine app die we hebben gemaakt om de functionaliteit van MobileTogether voor het vastleggen van handtekeningen te demonstreren. In die app worden handtekeningen van meerdere gebruikers opgeslagen in één XML-bestand, samen met metadata over elk mobiel apparaat dat is gebruikt voor het vastleggen. Later kunnen de handtekeningen en metadata op andere apparaten worden bekeken.

De oorspronkelijke app gebruikt een Actiegroep om elke nieuwe handtekening op te slaan in het bestand. De onderstaande screenshot toont de Actiegroep "Handtekening opslaan" in het dialoogvenster "Actiegroepen" van MobileTogether:

De oorspronkelijke actiegroep voegde eerst een nieuwe, lege datastructuur voor handtekeningen toe als het laatste element, en paste vervolgens een reeks acties toe om de meest recente vastgelegde handtekening op te slaan.
Deze hele reeks acties kan worden vervangen door een enkele XQuery-constructoruitdrukking om de volledige datastructuur van de handtekening te creëren, zoals hieronder te zien is:

De XQuery-constructor vervangt acht acties door één enkele actie. Bovendien is deze aanzienlijk efficiënter, omdat de gehele datastructuur direct wordt opgebouwd, waardoor het onnodig is om in eerste instantie een lege datastructuur te creëren en op te slaan.
Het bekijken van de resultaten van de constructor
Het venster "Broncode van de pagina" in de MobileTogether Simulator stelt ons in staat om te zien welke code de XQuery-constructor genereert terwijl de applicatie wordt uitgevoerd:

De XQuery-constructoruitdrukking maakt gebruik van een combinatie van directe en berekende XQuery-elementconstructors. (Voor een korte herhaling van directe en berekende XQuery-elementconstructors, raadpleeg hoofdstuk 3 van de Altova Online XQuery-tutorial en trainingscursus.)
Implementeer verbeteringen efficiënt
XQuery-constructies kunnen het ook eenvoudiger maken om een mobiele app bij te werken of te verbeteren. Zo kan bijvoorbeeld onze app voor het verzamelen van handtekeningen worden verbeterd door de datum waarop elke handtekening wordt vastgelegd, op te slaan.
We kunnen de XQuery-constructoruitdrukking openen in de XPath/XQuery-expressie-editor door erop te klikken in het dialoogvenster "Actiegroepen", en vervolgens een nieuwe constructor invoegen om de datum vast te leggen:

Aangezien er nergens in de applicatie een apart model is voor de gegevensstructuur van de handtekening, hoeven er geen andere onderdelen aangepast te worden.
In het venster "Broncode" van de MobileTogether Simulator kunnen we het resultaat van de nieuwe XQuery-functie zien. Voor een diepere analyse opent het contextmenu dat verschijnt bij een rechtermuisklik zelfs de XML-structuur in XMLSpy:

Download de gratis MobileTogether Designer om in recordtijd uw eigen mobiele apps te ontwikkelen die op verschillende platforms werken, met behulp van XQuery-constructies. Een bijgewerkte versie van de voorbeeld-app die in dit artikel wordt beschreven, is beschikbaar op GitHub, met meer Altova-voorbeelden op: https://github.com/altova