Format XML

L'acronyme XML (Extensible Markup Language) désigne un langage conçu pour l'échange de données structurées. Au lieu d'être un format de fichier rigide, XML est un langage de définition de formats convenus utilisé par les groupes pour échanger des données. Un grand nombre d'utilisateurs, d'organisations et d'entreprises utilisent le langage XML pour transférer des informations sur les produits, des transactions, des informations sur le stock, ainsi que d'autres données commerciales.

Des exemples de fichiers pour l'importation et l'exportation au format XML sont disponibles en téléchargement sur la page Mises à jour et notes de publication. Pour des informations d'ordre général sur le format XML et des liens vers des ressources XML, consultez le site Web de Claris.

Importation de données XML

FileMaker Pro prend en charge la grammaire FMPXMLRESULT pour l'importation de donnée  XML. Si le format de vos données XML est différent, vous pouvez appliquer une feuille de style XSLT (Extensible Stylesheet Language for Transformations) pendant l'importation pour convertir vos données XML dans la grammaire FMPXMLRESULT.

Exportation de données XML

FileMaker Pro peut exporter des données XML dans deux grammaires : FMPXMLRESULT et FMPDSORESULT. Vous pouvez appliquer une feuille de style XSLT pendant l'exportation pour convertir l'une de ces grammaires dans un autre format XML, ou dans un format différent tel que HTML ou texte brut. Par exemple, lors d'une exportation au format XML, vous pouvez créer une page Web orientée données ou un fichier texte de données utilisant un délimiteur de rubriques personnalisé.

Remarque  Les fonctions d'importation et d'exportation XML de FileMaker Pro utilisent un analyseur XML appelé libxml2 et un processeur de feuilles de style XSLT intitulé libxslt. Au fur et à mesure que vous développez XML et XSL, vous pouvez tester votre XML et XSLT avec des analyseurs et des processeurs basés sur libxml2 et libxslt, tels que les outils de ligne de commande xmllint et xsltproc, respectivement, disponibles sous macOS. Pour plus d'informations, consultez les référentiels libxml2 et libxslt ou d'autres ressources tierces.

Grammaire XML FMPDSORESULT

La grammaire FMPDSORESULT est adaptée à l'exportation de bases de données que vous souhaitez mettre en forme avec des feuilles de style en cascade ou du langage XSL.

Remarque  Lorsque vous attribuez un nom aux rubriques de données, n'utilisez pas de chiffres au début ni de caractères kana à un seul octet (par exemple, « 7 »). La grammaire FMPDSORESULT n'autorise pas l'utilisation de caractères numériques ou kana d'un octet pour les balises de nom de rubrique et n'affichera pas le fichier XML résultant dans un navigateur.

Chaque élément ROW de la grammaire FMPDSORESULT exportée contient un certain nombre d'éléments FIELD correspondant aux noms des rubriques exportées.

Les espaces et les deux-points simples affichés dans les noms de rubrique sont convertis en traits de soulignement dans les noms d'élément (par exemple FIRST_NAME). Les deux-points doubles dans les rubriques de table externe sont convertis en points (par exemple, <PHONE.PHONE_NUMBER>). En langage XML, les deux-points sont en effet réservés à la définition d'espaces de nom, et les espaces sont interdits dans les noms d'élément XML.

Pour les rubriques multivaluées et les rubriques liées, chaque élément FIELD contient un élément DATA correspondant à chaque valeur de la rubrique multivaluée ou à chaque enregistrement de la table externe.

L'exportation de données XML ne prend pas en charge l'exportation des données de rubriques Conteneur.

Du fait des limitations XML, l'application ne peut exporter qu'un seul enregistrement de chaque rubrique liée.

Grammaire XML FMPXMLRESULT

La grammaire FMPXMLRESULT contient plus d'informations sur la base de données que la grammaire FMPDSORESULT, comme le nombre d'enregistrements ainsi que le type et le format des rubriques. Ces éléments et attributs sont nécessaires pour que les données XML soient correctement validées.

Utilisez la grammaire FMPXMLRESULT si vous avez besoin des informations de métadonnées METADATA fournies par cette grammaire. FileMaker Pro prend en charge à la fois l'importation et l'exportation de données dans la grammaire FMPXMLRESULT, ce format se révèle bien adapté au transfert de données entre fichiers FileMaker Pro.

Remarque  En revanche, l'utilisation de la grammaire FMPXMLRESULT n'est pas recommandée avec l'emploi de feuilles de style en cascade (CSS). Si vous souhaitez utiliser des feuilles de style en cascade (CSS) avec vos données XML, utilisez la grammaire FMPDSORESULT.

Dans la grammaire FMPXMLRESULT, l'élément DATABASE contient les attributs NAME, RECORDS, DATEFORMAT, LAYOUT et TIMEFORMAT.

L'attribut DATEFORMAT spécifie le format des dates dans le document XML.

Rubrique

Forme complète

Forme abrégée

Année

aaaa (4 chiffres)

aa (2 chiffres)

Mois

mm (2 chiffres)

M (1 ou 2 chiffres)

Jour

jj (2 chiffres)

j (1 ou 2 chiffres)

L'attribut TIMEFORMAT spécifie le format des heures dans le document XML.

Rubrique

Forme complète

Forme abrégée

Heure (1 - 12)

hh (2 chiffres)

h (1 ou 2 chiffres)

Heure (1 - 24)

kk (2 chiffres)

k (1 ou 2 chiffres)

Minutes

mm

 

Secondes

ss

 

AM/PM

a

 

L'élément METADATA comporte un ou plusieurs éléments FIELD, chacun contenant des informations pour l'une des rubriques/colonnes, dont le nom de la rubrique définie dans la base de données, le type de rubrique, la tolérance du choix Oui ou Non pour les rubriques vides (attribut EMPTYOK), ainsi que le nombre maximal de valeurs de rubriques multivaluées (attribut MAXREPEAT). Les valeurs autorisées pour les types de rubriques sont les suivantes : TEXTE, NOMBRE, DATE, HEURE, HORODATAGE et CONTENEUR.

L'élément RESULTSET contient tous les éléments ROW spécifiant les données d'enregistrement dans le format XML. Chaque élément ROW contient les données des rubriques/colonnes d'une ligne des résultats, dont les numéros d'identification d'enregistrement et de modification pour la ligne, ainsi que l'élément COL contenant les données d'une rubrique/colonne de la ligne (où plusieurs éléments DATA représentent l'une des valeurs d'une rubrique multivaluée ou d'une rubrique de table externe).

L'exportation de données XML ne prend pas en charge l'exportation des données de rubriques Conteneur.

Du fait des limitations XML, l'application ne peut exporter qu'un seul enregistrement de chaque rubrique liée.

L'ordre des éléments COL correspond à celui des éléments FIELD de l'élément METADATA. Exemple : lorsque les éléments « Prénom », « Nom » et « Service » sont répertoriés sous l'élément METADATA, les valeurs « Jean », « Bonbeurre » et « Ingénierie » sont répertoriées dans le même ordre sous l'élément RESULTSET ROW.

Remarques 

  • Avant l'importation XML, FileMaker Pro utilise un analyseur XML reposant sur libxml2 et un processeur XLST reposant sur libxslt pour appliquer une feuille de style XSLT (si vous en avez spécifié une) pour transformer les données XML. Si un message d'erreur s'affiche, corrigez l'erreur, puis tentez de recommencer l'importation.

  • Bien que les données XML que vous importez doivent respecter la grammaire FMPXMLRESULT, certains éléments et attributs ne sont pas utilisés pendant l'importation. Le tableau ci-dessous définit les éléments et attributs utilisés pendant l'importation des données XML et répertorie les valeurs par défaut autorisées pour les attributs. La plupart du temps, les valeurs d'attribut peuvent être vides (par exemple, TIMEFORMAT=""). En outre, l'élément FMPXMLRESULT doit toujours déclarer l'espace de nom FileMaker pour la grammaire.

  • Elément

    Attributs

    Utilisé pendant l'importation de données XML

    Valeur par défaut

    FMPXMLRESULT

     

    Oui

    xmlns="http://www.filemaker.com/ fmpxmlresult"

    ERRORCODE

     

    Non

     

    PRODUIT

     

    Non

    " "

     

    NAME

    Non

    " "

     

    VERSION

    Non

    " "

     

    BUILD

    Non

    " "

    DATABASE

     

    Non

     

     

    NAME

    Non

    " "

     

    RECORDS

    Non

    " "

     

    DATEFORMAT

    Non

    " "

     

    TIMEFORMAT

    Non

    " "

     

    LAYOUT

    Non

    " "

    METADATA

     

    Oui

     

        FIELD

     

    Oui

     

     

    NAME

    Oui

    " "

     

    TYPE

    Oui

    "TEXTE", "DATE", "NOMBRE", "HEURE", "HORODATAGE" ou "MULTIMEDIA"

     

    EMPTYOK

    Non

    "OUI" ou "NON"

     

    MAXREPEAT

    Non

    " "

    RESULTSET

     

    Oui

     

     

    FOUND

    Non

    " "

        ROW

     

    Oui

     

     

    RECORDID

    Non

    " "

     

    MODID

    Non

    " "

        COL

     

    Oui

     

          DATA

     

    Oui