About schemes

An ORD is a list of one or more queries separated by the pipe symbol (|). Each query is an ASCII string formatted as <scheme>:<body>.

Figure 1. Example ORD scheme and body
  • <scheme> name is a globally unique identifier which specifies how to find a piece of code to lookup an object from the body string.

  • <body> string is formatted differently, according to the requirements of the scheme. The only rule is that it cannot contain a pipe symbol. Queries can be piped together to let each scheme focus on how to look up a specific type of object. In general, absolute ORDs are in the following format: host | session | space.

    Some examples follow:

    • ip:somehost|fox:|file:/dir/somefile.txt

      In this example, the ip scheme identifies a host machine. The fox scheme specifies a session to that machine usually on a specific IP port number. Finally, the file scheme identifies an instance of a file within the somehost file system.

    • ip:somehost|fox:1912|station:|slot:/Graphics/Home

      In this example, the ip scheme identifies a host machine using an IP address. The fox scheme specifies a session to that machine usually on a specific IP port number. Finally, the station and slot schemes identify a specific component in the station database.

    • local:|module://icons/x16/cut.png

      This example illustrates a special case. The scheme local, which always resolves to BLocalHost.INSTANCE is both a host scheme and a session scheme. It represents objects found within the local VM.