Pour les documents XML, un modèle de document vous permet de définir comment un noeud d'un document XML est mappé vers une zone, un attribut de document ou les deux.
Exemple de document XML :
<?xml version="1.0"?> <purchaseOrder orderDate="2001-01-20"> [4] <shipAddress countryCode="US"> [1] <name>Alice Smith</name> [2] <street>123 Maple Street</street> <city>Mill Hill</city> <state>CA</state> <zip>90999</zip> </shipAddress> <item partNo="123" quantity="1"> <name>S&B Lawnmower Type ABC-x</name> [3] <price>239.90</price> <shipDate>2001-01-25</shipDate> </item> <item partNo="987" quantity="1"> [3] <name>Multifunction Rake ZYX</name> <price>69.90</price> <shipDate>2001-01-24</shipDate> </item> </purchaseOrder>
Exemple de modèle de document XML :
<?xml version="1.0"?> <XMLModel> <XMLFieldDefinition [1] name="addresses" locator="/purchaseOrder/shipAddress" <XMLFieldDefinition [2] name="customerName" locator="//shipAddress/name" <XMLAttributeDefinition [3] name="partNumber" type="NUMBER" locator="/purchaseOrder//item/@partNo" /> <XMLFieldDefinition [4] name="none" locator="/purchaseOrder/@orderDate" exclude="yes"/> </XMLModel>
La première ligne, <?xml version="1.0"?>, indique que le modèle est écrit en langage XML. Chaque zone est définie dans une balise XMLFieldDefinition ou XMLAttributeDefinition qui contient les paramètres des éléments.
Notez que toutes les définitions de zone de texte doivent être contenues dans la balise <XMLModel>. Pour connaître les limites, reportez-vous à la section Limites des zones de texte et des attributs de document.