XML-indeling
Extensible Markup Language (XML) is een taal voor de uitwisseling van gestructureerde gegevens. XML is geen strakke bestandsopmaak, maar een taal voor het definiëren van afgesproken indelingen die groepen kunnen gebruiken voor gegevensuitwisseling. Vele gebruikers, organisaties en bedrijven gebruiken XML om productinformatie, transacties, voorraadgegevens en andere bedrijfsgegevens over te brengen.
Voorbeeldbestanden voor XML-import en -export zijn beschikbaar als download op
http://www.filemaker.com/nl/support/index.html. Bezoek de FileMaker-website op
http://www.filemaker.com/nl voor algemene informatie over XML en koppelingen naar XML-bronnen.
XML importeren
FileMaker Pro ondersteunt de FMPXMLRESULT-grammatica voor XML-import. Als uw XML-bestand in een andere indeling is, kunt u tijdens de import een
XSLT-opmaakmodel (Extensible Stylesheet Language for Transformations) toepassen om uw XML naar de FMPXMLRESULT-grammatica te converteren.
XML exporteren
FileMaker Pro kan XML exporteren in twee grammatica's: FMPXMLRESULT en FMPDSORESULT. U kunt een XSLT-opmaakmodel tijdens de export toepassen om een van beide grammatica's in een andere XML-indeling, of in een heel andere indeling zoals
HTML of gewone tekst, te converteren. Via XML-export kunt u bijvoorbeeld een gegevensgestuurde
webpagina maken, of een tekstbestand met gegevens waarin een eigen scheidingsteken voor velden wordt gebruikt.
Opmerking De functies voor XML-import en -export in FileMaker Pro maken gebruik van de XML-parser Xerces en de XSLT-processor voor opmaakmodellen Xalan. Wanneer u XML en XSL ontwikkelt, doet u er goed aan uw XML en XSLT te testen met een van de op Xerces- en Xalan gebaseerde parsers en processors die beschikbaar zijn op
http://www.apache.org en locaties van andere leveranciers.
XML-grammatica FMPDSORESULT
De FMPDSORESULT-grammatica is nuttig voor het exporteren van databases die u met
trapsgewijze opmaakmodellen (Cascading Style Sheets of CSS) of XSL wilt opmaken. Deze grammatica is compatibel met het XML-DSO (Data Source Object) van Microsoft dat door Internet Explorer wordt gebruikt.
Opmerking Gebruik in de naam van uw gegevensvelden geen voorloopgetallen of kanatekens van één byte (bijvoorbeeld “7”). De FMPDSORESULT-grammatica staat het gebruik van numerieke of Kanatekens van één byte niet toe als veldnaamtags en zal het resulterende XML-bestand niet in een browser weergeven.
Elk ROW-element in de geëxporteerde FMPDSORESULT-grammatica bevat een aantal FIELD-elementen die overeenkomen met de door u geëxporteerde veldnamen.
Spaties of een dubbele punt in veldnamen worden in de elementnamen in onderstrepingstekens omgezet (bijvoorbeeld
<FIRST_NAME>). Twee dubbele punten in
portaalvelden worden in punten omgezet (bijvoorbeeld
<PHONE.PHONE_NUMBER>). De reden hiervoor is dat dubbele punten in XML voor het specificeren van naamruimten gereserveerd zijn en er geen spaties in XML-elementnamen zijn toegestaan.
Voor herhalende velden en gerelateerde velden zal elk FIELD-element een DATA-element bevatten dat overeenkomt met elke herhaling of portaalrecord.
Het exporteren van gegevens uit
containervelden wordt niet door de XML-export ondersteund.
Door de XML-beperkingen wordt slechts één record van elk gerelateerd veld geëxporteerd.
XML-grammatica FMPXMLRESULT
De FMPXMLRESULT-grammatica bevat extra informatie over de database die niet in de FMPDSORESULT-grammatica te vinden is, zoals het aantal records, veldtypen en veldformaten. Deze elementen en kenmerken zijn vereist om de
XML goed te kunnen valideren.
Gebruik de FMPXMLRESULT-grammatica als u de METADATA-informatie nodig hebt die door deze grammatica wordt gegeven. Aangezien FileMaker Pro zowel importeren in als exporteren naar de FMPXMLRESULT-grammatica ondersteunt, kan dit een nuttig formaat zijn om gegevens tussen FileMaker Pro-bestanden uit te wisselen.
Opmerking De FMPXMLRESULT-grammatica is niet goed geschikt voor gebruik met trapsgewijze opmaakmodellen (Cascading Style Sheets, CSS). Gebruik de FMPDSORESULT-grammatica als u met uw XML-gegevens trapsgewijze opmaakmodellen wilt gebruiken.
In de FMPXMLRESULT-grammatica bevat het DATABASE-element de kenmerken NAME, RECORDS, DATEFORMAT, LAYOUT en TIMEFORMAT.
Het kenmerk DATEFORMAT specificeert de opmaak van datums in het XML-document.
Veld | Volledige vorm | Korte vorm |
Jaar | jjjj (4 cijfers) | jj (2 cijfers) |
Maand | mm (2 cijfers) | M (1 of 2 cijfers) |
Dag | dd (2 cijfers) | d (1 of 2 cijfers) |
Het kenmerk TIMEFORMAT specificeert de opmaak van tijden in het XML-document.
Veld | Volledige vorm | Korte vorm |
Uur (1 – 12) | uu (2 cijfers) | u (1 of 2 cijfers) |
Uur (1 – 24) | kk (2 cijfers) | k (1 of 2 cijfers) |
Minuut | mm | |
Seconde | ss | |
AM/PM | a: | |
Het METADATA-element bevat een of meer FIELD-elementen die informatie voor één veld/kolom bevatten — waaronder de naam van het veld volgens de definitie in de database, het veldtype, de Ja- of Nee-consideratie voor lege velden (kenmerk EMPTYOK) en het maximumaantal herhalende waarden (kenmerk MAXREPEAT). Geldige waarden voor veldtypen zijn TEXT, NUMBER, DATE, TIME, TIMESTAMP en CONTAINER.
Het element RESULTSET bevat alle ROW-elementen die de recordgegevens opgeven in het XML. Elk ROW-element bevat de veld-/kolomgegevens voor één rij in de resultatenset — waaronder de record-ID voor de rij, de modificatie-ID voor de rij, en het COL-element dat de gegevens voor één veld/kolom in de rij bevat (waarbij meerdere DATA-elementen een van de waarden in een herhalend of portaalveld vertegenwoordigen).
Het exporteren van gegevens uit
containervelden wordt niet door de XML-export ondersteund.
Door de XML-beperkingen wordt slechts één record van elk gerelateerd veld geëxporteerd.
De volgorde van de COL-elementen komt overeen met de volgorde van de FIELD-elementen in het METADATA-element. Waar bijvoorbeeld de elementen Voornaam, Achternaam en dan Afdeling in de METADATA staan, komen Jan, Smit en dan Constructie in dezelfde volgorde in de RESULTSET ROW te staan.
Opmerkingen
•Voordat u het XML-bestand importeert, gebruikt FileMaker Pro een op Xerces gebaseerde XML-parser en een op Xalan gebaseerde XSLT-processor om een XSLT-opmaakmodel toe te passen (als u er een had opgegeven) om de XML-gegevens te converteren. Als een foutbericht verschijnt, corrigeert u de fout en probeert u opnieuw te importeren.
•Hoewel de XML die u importeert, moet beantwoorden aan de FMPXMLRESULT-grammatica, kunnen bepaalde elementen en kenmerken tijdens het importeren niet worden gebruikt. In de volgende tabel staan de elementen en kenmerken die tijdens XML-import worden gebruikt, en de toegestane standaardwaarden voor kenmerken. In de meeste gevallen kunnen kenmerkwaarden leeg (null) zijn (zoals TIMEFORMAT=""). Bovendien moet het element FMPXMLRESULT altijd de FileMaker-naamruimte declareren voor de grammatica.
Element | Kenmerken | Gebruikt tijdens XML-import | Standaardwaarde |
FMPXMLRESULT | | Ja | xmlns="http://www.filemaker.com/ fmpxmlresult" |
ERRORCODE | | Nee | |
PRODUCT | | Nee | " " |
| NAME | Nee | " " |
| VERSION | Nee | " " |
| BUILD | Nee | " " |
DATABASE | | Nee | |
| NAME | Nee | " " |
| RECORDS | Nee | " " |
| DATEFORMAT | Nee | " " |
| TIMEFORMAT | Nee | " " |
| LAYOUT | Nee | " " |
METADATA | | Ja | |
FIELD | | Ja | |
| NAME | Ja | " " |
| TYPE | Ja | "TEXT", "DATE", "NUMBER", "TIME", "TIMESTAMP" of "CONTAINER" |
| EMPTYOK | Nee | "YES" of "NO" |
| MAXREPEAT | Nee | " " |
RESULTSET | | Ja | |
| FOUND | Nee | " " |
ROW | | Ja | |
| RECORDID | Nee | " " |
| MODID | Nee | " " |
COL | | Ja | |
DATA | | Ja | |
Verwante onderwerpen