There are several kinds of location in the configuration language. We shall present them in the next subsections, but here is a short overview of these locations:
A location is composed of a support name and a specific data for this support. For instance, a network location is composed of a protocol name like tcp and a protocol data like <machine>:<port>. A storage location is composed of a storage support name like dfs (for Distributed File System) and a storage support data like a directory /dfs/glade.
LOCATION ::= ([Support_Name =>] STRING_LITERAL, [Support_Data =>] STRING_LITERAL) LOCATION_LIST ::= (LOCATION [,LOCATION)])
Note that a location may have an undefined or incomplete support data. In this case, the support is free to compute a support data. For instance, ("tcp", "") specifies that the protocol is used but that the protocol data <machine>:<port> is to be determined by the protocol itself.
A location or a list of locations can be can be concatenated into a single string to be used as a command line option or an environment variable (see Partition Runtime Parameters).
If a partition wants to communicate with another partition once the location list of the latter is known, the caller will use the first location of the callee whose protocol is locally available. For instance, if a callee exports three locations ("N1", "D1"), ("N2", "D2") and ("N3", "D3"), a caller with protocols N2 and N3 locally available will try to communicate with the callee using the protocol of name N2 and of specific data D2.