XML-RPC

XML-RPC

XML-RPC is a remote procedure call protocol which uses XML to encode its calls and HTTP as a transport mechanism. Simon St. Laurent, Joe Johnston, Edd Dumbill. (June 2001) "Programming Web Services with XML-RPC." O'Reilly. First Edition. ]

Overview

XML-RPC is a very simple protocol, defining only a handful of data types and commandsDave Winer. (June 15, 1999) " [http://www.xmlrpc.com/spec XML-RPC Specification] " UserLand Software, Inc.] , and the entire description can be printed on two pages of paper. This is in stark contrast to most RPC systems, where the standards documents often run into the hundreds of pages and require considerable software support in order to be used.

History

XML-RPC was created in 1998 by Dave Winer of UserLand Software and Microsoft [cite web
last = Box
first = Don
title = A Brief History of SOAP
publisher = O'Reilly
date = 2001-04-01
url = http://webservices.xml.com/pub/a/ws/2001/04/04/soap.html
accessdate = 2008-10-09
] . As new functionality was introduced, the standard evolved into what is now SOAP.

XML-RPC was patented by Phillip Merrick, Stewart Allen, and Joseph Lapp in April 2006, claiming benefit to a provisional application filed in March 1998. The patent is assigned to webMethods, located in Fairfax, VA. cite web |url=http://www.google.com/patents?id=WFV4AAAAEBAJ |title=US Patent 7,028,312 |accessdate=2008-09-18 |author=Merrick et al. |date=2006-04-11]

Usage

Some people prefer XML-RPC to SOAP because of its simplicity, minimalism, and ease of use.

JSON-RPC is similar to XML-RPC.

Data types

Examples

An example of a typical XML-RPC request would be: examples.getStateName 40

An example of a typical XML-RPC response would be: South Dakota

A typical XML-RPC fault would be: faultCode 4 faultString Too many parameters.

Implementations

C++

* [http://libiqxmlrpc.sourceforge.net/ Libiqxmlrpc]
* [http://ulxmlrpcpp.sourceforge.net/ Ultra lightweight XML-RPC library for C++]
* [http://xmlrpc-c.sourceforge.net/ XML-RPC for C and C++]
* [http://xmlrpcpp.sourceforge.net/ XmlRpc++]

Objective-C / GNUstep / Cocoa

* [http://www.mulle-kybernetik.com/software/XMLRPC/ XMLRPC Framework]
* [http://divisiblebyzero.com/ Cocoa XML-RPC Framework] : Open Source XML-RPC framework written for use in Mac OS X Cocoa applications.

Java

* [http://ws.apache.org/xmlrpc/ Apache XML-RPC] : Open source library for Java
* [http://delight.opendfki.de/ XML-RPC Delight] : Convenient serialisation/deserialisation for Apache XML-RPC using Java Annotations and Beans
* [http://members.fortunecity.com/neptune42/xmlrpc/index.htm] : Secure Apache XML-RPC
* [http://xmlrpc.sourceforge.net/ Redstone XML-RPC Library] : Redstone's Open Source Library - XML-RPC implementation in Java
* [http://kxmlrpc.sourceforge.net/ XML-RPC Library for Java ME] : Open source client-side library for Java ME

Jabber

* [http://gdr.geekhood.net/gdrwpl/jxmlrpc.php pyJabberXMLRPC] : Python classes for Jabber
* [http://www.xmpp.org/extensions/xep-0009.html Jabber-RPC] : Over the Jabber protocol

Other

* [http://code.google.com/p/json-xml-rpc/ JSON/XML-RPC Client and Server] : Abstract away the differences between JSON-RPC and XML-RPC
* [http://www.remobjects.com/ro RemObjects SDK] For XML-RPC, in addition to SOAP and others
* [http://www.realthinclient.com RealThinClient SDK] : For Delphi/C++
* [http://search.cpan.org/~daan/XML-RPC-0.5/lib/XML/RPC.pm XML::RPC] : Perl module implementation
* [http://www.python.org/doc/lib/module-xmlrpclib.html xmlrpclib] : Included in Python's standard library since 2.2
* [http://xmlrpcflash.mattism.com XML-RPC for ActionScript] : For Flash ActionScript 2.0
* [http://www.xml-rpc.net XML-RPC.NET] : Open source library for .NET clients and servers
* [http://code.google.com/p/xmlrpc-light/ XmlRpc-Light] : Client and server library for OCaml
* [http://common-lisp.net/project/s-xml-rpc/ S-XML-RPC] : Client and server library for Common Lisp
* [http://phpxmlrpc.sourceforge.net/ PHP-XML-RPC] : For PHP
* [http://www.haskell.org/haxr/ HaXR] : Client and server library for Haskell

ee also

*Ajax (programming)
*Component technologies
*List of Web service markup languages
*OPML
*Web service

References

External links

* [http://www.xmlrpc.com/ XML-RPC Homepage]
* [http://groups.yahoo.com/group/xml-rpc/ Forum]
* [http://www.xml.com/pub/rg/XML_RPC_Tutorials Tutorials]
* [http://xml.coverpages.org/xml-rpc.html Technology Reports]
* [http://citeseer.org/cs?q=XML+and+RPC Citations from CiteSeer]


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • XML-RPC — (сокр. от англ. Extensible Markup Language Remote Procedure Call  XML вызов удалённых процедур)  стандарт/протокол вызова удалённых процедур, использующий XML для кодирования своих сообщений и HTTP в качестве транспортного… …   Википедия

  • XML RPC — (сокр. от англ. Extensible Markup Language Remote Procedure Call XML вызов удалённых процедур) стандарт/протокол вызова удалённых процедур, основанный на SOAP, отличается исключительной простотой применения. XML RPC, как и любой другой интерфейс… …   Википедия

  • XML-RPC — es un protocolo de llamada a procedimiento remoto que usa XML para codificar los datos y HTTP como protocolo de transmisión de mensajes.[1] Es un protocolo muy simple ya que solo define unos cuantos tipos de datos y comandos útiles, además de una …   Wikipedia Español

  • XML-RPC — (Extensible Markup Language Remote Procedure Call) ist eine Definition zum Methodenaufruf (oder auch Funktionsaufruf) durch verteilte Systeme. Bei der Spezifikation wurde darauf Wert gelegt, dass eine Implementierung von XML RPC ohne großen… …   Deutsch Wikipedia

  • Xml-rpc — est un protocole RPC (Remote procedure call), une spécification simple et un ensemble de codes qui permettent à des processus s exécutant dans des environnements différents de faire des appels de méthodes à travers un réseau. XML RPC permet d… …   Wikipédia en Français

  • XML-RPC — est un protocole RPC (Remote procedure call), une spécification simple et un ensemble de codes qui permettent à des processus s exécutant dans des environnements différents de faire des appels de méthodes à travers un réseau. XML RPC permet d… …   Wikipédia en Français

  • RPC — can refer to:Organizations* Revolutionary Policy Committee, a faction within UK Independent Labour Party during the 1930s. * Rail Passengers Council, a network established by the Parliament of the United Kingdom to protect and promote the… …   Wikipedia

  • XML Interface for Network Services — Infobox Software name = XINS caption = developer = Orange Nederland Breedband B.V. released = ? frequently updated = yes programming language = ? operating system = Cross platform language = ? genre = Web services license = BSD website =… …   Wikipedia

  • RPC — Para el Estado socialista de China continental, véase República Popular China. El RPC (del inglés Remote Procedure Call, Llamada a Procedimiento Remoto) es un protocolo que permite a un programa de ordenador ejecutar código en otra máquina remota …   Wikipedia Español

  • .xml — Vorlage:Infobox Dateiformat/Wartung/magic fehltVorlage:Infobox Dateiformat/Wartung/website fehlt Extensible Markup Language Dateiendung .xml …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”