Data for Map Type lists (maps) can be retrieved from external and subscribed lists.
For retrieving map data from an external list, the ExtLists.StringMap property is provided, which you can use in the criteria of a suitable rule. The value of this property is a list of maps that have an external list as their source.
For example, to find out whether a particular key is contained in a list that is retrieved from an external source, you can configure the following rule criteria:
Map.GetKeys(ExtLists.StringMap(" ", " ", " ")<External Lists>) contains "samplekeyname"
To specify the external list and where it can be retrieved from, you need to configure the settings of the External Lists module, which is the module that performs the retrieval. In the above criteria, these settings appear under the name of External Lists.
External list data can be retrieved from a web service, a file, a PostgreSQL or SQLite3 database, or using LDAP. For these source types, the following must be observed when configuring the retrieval of data for a map:
- Web service or file - The type of data that is retrieved from a web service or a file must be Plain Text.
To locate the data, a regular expression is used that includes two parts. The first part is for the keys, the second for the values.
- Databases - The database query for retrieving the data must return two columns. The first column delivers the keys, the second column delivers the values.
- LDAP - To retrieve the data, a first and a second attribute are configured within the LDAP settings. The first attribute delivers the keys, the second attribute delivers the values.
Entries in subscribed lists that map data is retrieved from must have the following format.
<listEntry> <complexEntry defaultRights="2"> <configurationProperties> <configurationProperty key="key" type="com.scur.type.string" value="key"/> <configurationProperty key="value" type="com.scur.type.string" value="value"/> </configurationProperties> </complexEntry> <description></description> <l/istEntry>
Within the listEntry element, there's a complexEntry embedded. This allows the Subscribed Lists module to process the format.