When you make a Make me Droid screen, you can either put only static content in it, which means that this content is fixed by you and doesn't change, or you can decide to connect your screen to the rest of the world through internet. In this case, your application dynamically gathers data from various sources, and you choose how you want to display it on screen.
These data sources have various origins, but they are automatically converted by the application to be used in an homogeneous way in screens. Thus, no matter if you use a JSON or a RSS data source, you finally get a list of keywords that you use the same way in the screen.
Data source types
The available data sources are the following ones:
Make me Droid online storage:
From a form name (see help on forms), you get a list of every entry created for it. These entries are either previously created by you through the form editor, or by application users through the send form to Make me Droid storage action that you have put in your application somewhere.
A web page returning a JSON content:
If you own a website, a database, you can create a page that will be called by the application, and that returns an object or a list in JSON format. See help on JSON data sources to know more about it.
A RSS/ATOM news feed:
You can use a news feed as data source for a screen. You can find this kind of feed on most of the websites. For more information on how to use the information received from those feeds, see page about RSS/ATOM data sources.
Data sources usually provide a list of items. If not, you will have to provide the name of a "list" field located somewhere in your data source object (happens for JSON data source mostly).
When using data sources in custom layout screens, only the first item of the list is used, as this kind of screen type cannot display lists of items contrary to dynamic list screens. Thus, when using a RSS news feed as a data source for example, a custom layout screen will only use data from the very latest news.
Every source type is specific and is detailed in the following help pages, but when using them in the application, what you see is only a basic list of keyword / value pairs. For instance, a source will provide the following data list:
Keyword: "Title" - Value: "Product launch"
Keyword: "Description" - Value: "This new product will be available in..."
Keyword: "Title" - Value: "Opening sales"
Keyword: "Description" - Value: "Sales will begin on..."
Item X ...
In order to use those values in a screen, you use their keyword value such as $[Title] or $[Description] in a graphical text item, in a picture, etc. The application replaces those keywords with their real value automatically.
How to know which keywords are available in a data source?
It depends what your data source is. For Make me Droid online storage, or JSON web page, you define the keywords you want to provide either when building your dynamic content on Make me Droid (for online storage), or in the returned JSON list (for a JSON web page). For RSS/ATOM news feeds, keywords are predefined and explained in the relevant help page.
Advanced keywords usage
A basic data source contains a list of "identifier"/"value" pairs, and you then use $[identifier] to read it.
In case of richer data sources, such as JSON ones (see JSON documentation for more details), some of the "identifiers" are not only simple strings, but can also be sub-objects or lists. Here are some examples:
$[identifier]: Simple access to a identifier, when the data source provides an object.
$[(2)->name]: If the data source provides a list: access to field "name" of the second item of that list.
$[user->addresses->(1)->city]: The data source is an object containing a "user" key, which is a sub-object that contains a list named "addresses", for which we get the first item, then the "city" key of that item.
Where to use these data sources?
On dynamic list screen types, or on every screen based on custom layout screen format (most of them are - these are the screens where you can assemble items the way you want).
Select your screen, and define its data source from its properties panel.
Advanced cases: mix of several sources
In addition to standard data sources explained above, screens can sometimes also receive information (keywords + values) from additional ways. In such a case, information from every origin is mixed, and available to use in the screen. Those cases are the following ones:
From a dynamic list screen, if you show a custom layout screen through an action, that custom layout screen receives information from the selected list item.
When sending a form, if you choose to show a screen after sending, that screen receives data of the sent form. This is for example useful to show a summary of what has been sent. Optionally, if you send a form to a web page, that page can return information too, and those information also become available.