1,681 votesfeature-under-review · 184 comments · Adobe XD: Feature Requests » 02 : Prototype mode · Flag idea as inappropriate… · Admin →Eoin Morgan commented
Using the Variables panel, you can import an XML file and use that to control the existence of objects, what images appear in linked image containers, and what text appears in a text frame. You can also control the data that appears in a graph. The typical workflow is to create a template document and then tag it for variables.
To tag for variables, you need to create the variables in the variables panel. Choose New Variable... from the Variables panel flyout and then select the variable type. Once you make your variables, you can then apply them to your template. For instance, to make text variable, select a text object on the art board, then select a variable name, and then choose Make Text Dynamic.
Once you are finished tagging the variables, create a data set in the variables panel. This locks down the structure of the content and makes it possible for you now to inspect the XML. To save the data set to a file, choose Save Variable Library from the Variables panel flyout.
You will need to make your form receiver (web page? Filemaker?) emit XML in exactly the form you see in the XML file that AI just made. Look at it carefully, and then ensure that the data you collect and the file your service makes fit into that structure.
Now that you have a template and an XML file, you can load the variable library into AI. Under the Variables flyout, choose Load Variables Library.
To make a big pile of new AI files (or anything else AI can make), you need to create an action in the action panel. A simple one is to start recording, and then choose Save As. Stop recording. Now, you can choose Batch from the bottom of the Actions flyout to save out a new file for each entry in the XML file.
Ensure that you have Data Sets chosen in the Source option, and that you select a file naming convention from the File Name options so that you don't overwrite your work. Also, your script might need to have the Override Action Save.... command option chosen as well.