XML (Extensible Markup Language) är ett språk för strukturerat datautbyte. Istället för ett statiskt filformat är XML ett språk som kan användas för att definiera överenskomna format för datautbyte mellan grupper. Många individer, organisationer och företag använder XML för överföring av produktinformation, transaktioner, lagerinformation och annan affärsinformation.
Du kan hämta exempelfiler för XML-import och -export från sidan hämtningsbara filer och resurser. För mer allmän information om XML och länkar till XML-resurser, se FileMakers webbplats.
FileMaker Pro Advanced stöder syntaxen FMPXMLRESULT för XML-import. Om XML-informationen har ett annat format kan du använda en XSLT-formatmall (Extensible Stylesheet Language for Transformations) vid importen för att transformera XML-koden till FMPXMLRESULT-syntax.
FileMaker Pro Advanced kan exportera XML-data i två typer av syntax: FMPXMLRESULT och FMPDSORESULT. Du kan använda en XSLT-formatmall under exporten om du vill omvandla en syntax till ett annat XML-format eller till andra format, t ex HTML eller oformaterad text. Vid XML-export kan du t ex skapa databaserade webbsidor eller textfiler med data som använder egna fältavgränsare.
Obs! Funktionerna för import och export av XML-data i FileMaker Pro Advanced använder XML-tolken Xerces och XSLT-formatmallsprocessorn Xalan. När du utvecklar med XML- och XSL-data kan du testa XML- eller XSLT-koden med hjälp av någon av de Xerces- eller Xalan-baserade tolkar och processorer som finns på www.apache.org eller hos andra tillverkare.
Syntaxen FMPDSORESULT är användbar om du vill exportera databaser som du vill utforma med överlappande formatmallar eller XSL. Syntaxen är kompatibel med Microsofts XML-datakällobjekt som används i Internet Explorer.
Obs! Datafältnamn bör inte innehålla inledande siffror eller enbytes katakana-tecken (t ex "7"). FMPDSORESULT-syntaxen tillåter inte numeriska eller enbytes katakana-tecken som fältnamnsetiketter, och XML-filen kan därför inte visas i en webbläsare.
Varje ROW-element i den exporterade FMPDSORESULT-syntaxen innehåller ett antal FIELD-element som motsvarar fältnamnen som du har exporterat.
Blanksteg eller ett kolon i fältnamn omvandlas till understreck i elementnamnen (t.ex.<FIRST_NAME>
). Två kolon i portalfält omvandlas till punkter (t.ex.<PHONE.PHONE_NUMBER>
). Detta beror på att kolon är reserverade för namnuttryck i XML-kod och blanksteg inte är tillåtna i XML-elementnamn.
För repeterade fält och relaterade fält kommer alla FIELD-element att innehålla ett DATA-element som motsvarar varje repetition eller portalpost.
Export av data i containerfält stöds inte vid XML-export.
Beroende på XML-begränsningar exporteras endast en post från varje relaterat fält.
FMPXMLRESULT-syntaxen innehåller ytterligare information om databasen utöver den information som finns i FMPDSORESULT-syntaxen, t ex antalet poster, fälttyper och fältformat. Dessa element och attribut krävs för att XML ska kunna kontrolleras ordentligt.
Använd FMPXMLRESULT-syntaxen om du har behov av den metadatainformation som ingår i den här syntaxen. Eftersom FileMaker Pro Advanced stöder både import och export i FMPXMLRESULT-syntax är detta ett användbart format för dataöverföring mellan FileMaker Pro Advanced-filer.
Obs! FMPXMLRESULT-syntaxen är inte särskilt väl lämpad för överlappande formatmallar (CSS). Använd FMPDSORESULT-syntaxen om du vill använda CSS-mallar tillsammans med XML-data.
I FMPXMLRESULT-syntaxen innehåller DATABASE-elementen attributen NAME, RECORDS, DATEFORMAT, LAYOUT och TIMEFORMAT.
Attributet DATEFORMAT anger formatet för datum i XML-dokumentet.
Fält | Fullständigt format | Kortform |
År | åååå (4 siffror) | åå (2 siffror) |
Månad | mm (2 siffror) | M (1 eller 2 siffror) |
Dag | dd (2 siffror) | d (1 eller 2 siffror) |
Attributet TIMEFORMAT anger formatet för tid i XML-dokumentet.
Fält | Fullständigt format | Kortform |
Timme (1-12) | tt (2 siffror) | t (1 eller 2 siffror) |
Timme (1-24) | kk (2 siffror) | k (1 eller 2 siffror) |
Minut | mm |
|
Sekunder | ss |
|
fm/em | a |
|
Elementet METADATA innehåller ett eller flera FIELD-element där vart och ett innehåller information om ett fält eller en kolumn, inklusive fältets namn som det definieras i databasen, fälttypen, möjliga Ja/Nej-värden i tomma fält (EMPTYOK-attribut) och det maximala antalet upprepade värden (MAXREPEAT-attribut). Giltiga värden för fälttyper är TEXT, NUMBER, DATE, TIME, TIMESTAMP och CONTAINER.
RESULTSET-elementet innehåller alla ROW-element som specificerar informationen i posten i XML-koden. Varje ROW-element innehåller fält-/kolumndata för en rad i resultatet – inklusive post-ID för raden, ändrings-ID för raden och COL-elementet som innehåller data för ett fält/en kolumn i raden (där flera DATA-element motsvarar ett av värdena i ett repeterat fält eller ett portalfält).
Export av data i containerfält stöds inte vid XML-export.
Beroende på XML-begränsningar exporteras endast en post från varje relaterat fält.
Ordningen mellan COL-elementen motsvarar ordningen mellan FIELD-elementen i elementet METADATA, t.ex. där elementen "Förnamn", "Efternamn" och sedan "Avdelning" listas i METADATA. "Jan", "Svensson" och sedan "Utveckling" listas i samma ordning i RESULTSET ROW.
•Innan XML-koden importeras använder FileMaker Pro Advanced en XSLT-formatmall (om du angett någon) med en Xerces-baserad XML-tolk och en Xalan-baserad XSLT-processor, för att transformera XML-data. Om ett felmeddelande visas åtgärdar du felet och importerar igen.
•Även om XML-informationen som importeras måste följa FMPXMLRESULT-syntaxen används vissa element och attribut inte under importen. I följande tabell visas vilka element och attribut som används under XML-importen och de tillåtna standardvärdena för attributen. I de flesta fall är attributvärdena ett nollvärde (exempelvis TIMEFORMAT=""
). FMPXMLRESULT-elementet ska också alltid innehålla FileMaker-namnuttrycket för syntaxen.
Element | Attribut | Används vid XML-import | Standardvärde |
FMPXMLRESULT |
| Ja | xmlns="http://www.filemaker.com/ fmpxmlresult" |
ERRORCODE |
| Nej |
|
PRODUCT |
| Nej | " " |
| NAME | Nej | " " |
| VERSION | Nej | " " |
| BUILD | Nej | " " |
DATABASE |
| Nej |
|
| NAME | Nej | " " |
| RECORDS | Nej | " " |
| DATEFORMAT | Nej | " " |
| TIMEFORMAT | Nej | " " |
| LAYOUT | Nej | " " |
METADATA |
| Ja |
|
FIELD |
| Ja |
|
| NAME | Ja | " " |
| TYPE | Ja | "TEXT", "DATE", "NUMBER", "TIME", "TIMESTAMP" eller "CONTAINER" |
| EMPTYOK | Nej | "YES" eller "NO" |
| MAXREPEAT | Nej | " " |
RESULTSET |
| Ja |
|
| FOUND | Nej | " " |
ROW |
| Ja |
|
| RECORDID | Nej | " " |
| MODID | Nej | " " |
COL |
| Ja |
|
DATA |
| Ja |
|