Natural supports distributable applications with multiple-layer architecture: presentation, business application logic and database access. A Natural application is modular and provides the appropriate types of object required for each application layer.
Natural allows programming of a variety of user interfaces: web-based interfaces (for example, HTML or XML), process-driven applications with character user interfaces (CUIs) and event-driven graphical user interfaces (GUIs).
In addition, a Natural application can interact with user interfaces that are connected to non-Natural environments such as J2EE and .NET. Connections between Natural and non-Natural environments are established, for example, by using a remote procedure call (RPC) or a SOAP request that allows programs on a client computer to run a Natural object of the type subprogram on the Natural RPC server.