Home | SWire 0.1 documentation
SWire stands for Stata-Wire. SWire is a software interface, enabling us to query Stata for the executing of basic operations, such as reading or writing data. Its core is a Stata-Java plugin which functions as a server; it can be queried by using the HTTP protocol. Clients, such as a desktop software application or a web page, can be developed for interacting with SWire, thus allowing the integration between Stata and other software.
SWire is in essence a wrapper around the Stata-Java API: all the functions relating to this API can, therefore, be externally called by clients. SWire exposes the Stata-Java API, together with the SWire special methods. The SWire special methods are functions facilitating the interaction between Stata and external clients; they provide additional functionalities than those provided by the Stata-Java API.
SWire can be interrogated on a local network and it accepts AJAX queries. This allows for the development of web applications to provide the user with graphical user interfaces. For example, a web application running on a browser can interact with Stata on a local network; this application could be a data entry form or an automatic report.
By providing a communication protocol, SWire makes it possible to connect Stata with many other applications for data exchange and basic interaction, thereby extending the capabilities of Stata. SWire requires Stata >=13.
The SWire protocol is based on HTTP. In this protocol, the body of the HTTP request/response is a SWire request/response. The HTTP body is a base64 encoding of a MessagePack serialization of a JSON request/response. The SWire request/response syntax can be described by JSON strings.