XML Interface for Network Services

Last updated
XINS
Developer(s) Online Breedband B.V.
Initial release11/16/2004
Stable release 3.1 (February 22, 2013;12 years ago (2013-02-22)) [±]
Preview release 3.0 beta 2 (June 9, 2012;12 years ago (2012-06-09)) [±]
Repository
Written in Java
Operating system Cross-platform
Available in English
Type Web services
License BSD
Website xins.org

XML Interface for Network Services (XINS) is an open-source technology for definition and implementation of internet applications, which enforces a specification-oriented approach. [1]

Contents

Specification-oriented approach

The specification-oriented approach is at the heart of XINS:

From specifications, XINS is able to generate:

Components of the XINS technology

Technically, XINS is composed of the following:

An introductory tutorial called the XINS Primer takes the reader by the hand with easy-to-follow steps to perform, with screenshots.

Since version 1.3.0, the XINS/Java Server Framework supports not only POX-style calls, but also SOAP and XML-RPC. And it supports conversion using XSLT. As of version 2.0, it also supports JSON and JSON-RPC.

XINS is open-source and is distributed under the liberal BSD license. [2]

Specifications

All XINS specification files are Plain Old XML. Compared to SOAP/WSDL/UDDI/etc. the format is extremely simple. There are specifications for projects, environment lists, APIs, functions, types and error codes.

Below is an example of a XINS project definition.

<projectname="MyProject"domain="com.mycompany"><apiname="MyAPI"><impl/><environments/></api></project>

Here is an example of a specification of an environment list:

<environments><environmentid="netarray"url="http://xins.users.mcs2.netarray.com/myproject/xins/"/></environments>

An example of an API specification file:

<apiname="MyAPI"><description>MyfirstXINSAPI</description><functionname="Hello"/></api>

An example of a function definition:

<functionname="Hello"><description>Greetstheindicatedperson.</description><input><paramname="name"required="true"><description>Thenameofthepersontobegreeted.</description></param></input><output><paramname="greeting"required="true"><description>Theconstructedgreeting.</description></param></output></function>

RPC protocol

The XINS Standard Calling Convention is a simple HTTP-based RPC protocol. Input consists of HTTP parameters, while output is an XML document. This approach makes it compatible with plain Web browsers.

Example of a request:

 http://somehost/someapi/?_convention=_xins-std&_function=SayHello&firstName=John&lastName=Doe%5B‍%5D 

Example of a successful response:

<result><paramname="greeting">HelloJohnDoe!</param></result>

Competition

There are no known products that provide an integrated approach to specification-oriented development, similar to XINS. However, there are several frameworks and libraries that provide functionality similar to individual parts of XINS, including:

References

  1. "XINS (XML Interface for Network Services)". Digital Hobbit. November 15, 2005. Retrieved 2025-04-11.
  2. "XML API". Nokia Documentation Centre.
  3. "XINS : XML Interface for Network Services". Bact' is a name. November 6, 2004.