XML-RPC

XML-RPC is a remote procedure call (RPC) protocol which uses XML to encode its calls and HTTP as a transport mechanism.[1]

History

The XML-RPC protocol was created in 1998 by Dave Winer of UserLand Software and Microsoft,[2] with Microsoft seeing the protocol as an essential part of scaling up its efforts in business-to-business e-commerce.[3] As new functionality was introduced, the standard evolved into what is now SOAP.[4]

UserLand supported XML-RPC from version 5.1 of its Frontier web content management system,[4] released in June 1998.[5]

XML-RPC's idea of a human-readable-and-writable, script-parsable standard for HTTP-based requests and responses has also been implemented in competing specifications such as Allaire's Web Distributed Data Exchange (WDDX) and webMethod's Web Interface Definition Language (WIDL).[6] Prior art wrapping COM, CORBA, and Java RMI objects in XML syntax and transporting them via HTTP also existed in DataChannel's WebBroker technology.[7][8]

The generic use of XML for remote procedure call (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 was assigned to webMethods, located in Fairfax, Virginia. The patent expired on March 23, 2019.[9]

Usage

In XML-RPC, a client performs an RPC by sending an HTTP request to a server that implements XML-RPC and receives the HTTP response. A call can have multiple parameters and one result. The protocol defines a few data types for the parameters and result. Some of these data types are complex, i.e. nested. For example, you can have a parameter that is an array of five integers.

The parameters/result structure and the set of data types are meant to mirror those used in common programming languages.

Identification of clients for authorization purposes can be achieved using popular HTTP security methods. Basic access authentication can be used for identification and authentication.

In comparison to RESTful protocols, where resource representations (documents) are transferred, XML-RPC is designed to call methods. The practical difference is just that XML-RPC is much more structured, which means common library code can be used to implement clients and servers and there is less design and documentation work for a specific application protocol. [citation needed] One salient technical difference between typical RESTful protocols and XML-RPC is that many RESTful protocols use the HTTP URI for parameter information, whereas with XML-RPC, the URI just identifies the server.

JSON-RPC is similar to XML-RPC.

Data types

Common datatypes are converted into their XML equivalents with example values shown below:

Name Tag Example Description
array
<array>
  <data>
    <value><i4>1404</i4></value>
    <value><string>Something here</string></value>
    <value><i4>1</i4></value>
  </data>
</array>
Array of values, storing no keys
base64
<base64>eW91IGNhbid0IHJlYWQgdGhpcyE=</base64>
Base64-encoded binary data
boolean
<boolean>1</boolean>
Boolean logical value (0 or 1)
date/time
<dateTime.iso8601>19980717T14:08:55Z</dateTime.iso8601>
Date and time in ISO 8601 format
double
<double>-12.53</double>
Double precision floating point number
integer
<int>42</int>

or

<i4>42</i4>
Whole number, integer
string
<string>Hello world!</string>

or

Hello world!
String of characters. Must follow XML encoding.
struct
<struct>
  <member>
    <name>foo</name>
    <value><i4>1</i4></value>
  </member>
  <member>
    <name>bar</name>
    <value><i4>2</i4></value>
  </member>
</struct>
Associative array
nil
<nil/>
Discriminated null value; an XML-RPC extension

Examples

An example of a typical XML-RPC request would be:

<?xml version="1.0"?>
<methodCall>
  <methodName>examples.getStateName</methodName>
  <params>
    <param>
        <value><i4>40</i4></value>
    </param>
  </params>
</methodCall>

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

<?xml version="1.0"?>
<methodResponse>
  <params>
    <param>
        <value><string>South Dakota</string></value>
    </param>
  </params>
</methodResponse>

A typical XML-RPC fault would be:

<?xml version="1.0"?>
<methodResponse>
  <fault>
    <value>
      <struct>
        <member>
          <name>faultCode</name>
          <value><int>4</int></value>
        </member>
        <member>
          <name>faultString</name>
          <value><string>Too many parameters.</string></value>
        </member>
      </struct>
    </value>
  </fault>
</methodResponse>

Criticism

Recent critics (from 2010 and onwards) of XML-RPC argue that RPC calls can be made with plain XML, and that XML-RPC does not add any value over XML. Both XML-RPC and XML require an application-level data model, such as which field names are defined in the XML schema or the parameter names in XML-RPC. Furthermore, XML-RPC uses about 4 times the number of bytes compared to plain XML to encode the same objects, which is itself verbose compared to JSON.[10][11][12]

See also

References

  1. ^ Simon St. Laurent, Joe Johnston, Edd Dumbill. (June 2001) Programming Web Services with XML-RPC. O'Reilly. First Edition.
  2. ^ Box, Don (1 April 2001). "A Brief History of SOAP". O'Reilly. Retrieved 27 October 2010.
  3. ^ Rupley, Sebastian (30 June 1999). "XML's Next Step". PC Magazine. Archived from the original on 4 March 2000. Retrieved 17 November 2015.
  4. ^ a b Walsh, Jeff (10 July 1999). "Microsoft spearheads protocol push". Infoworld. Archived from the original on 14 September 1999. Retrieved 17 November 2015.
  5. ^ Walsh, Jeff (29 June 1998). "UserLand releases Frontier 5.1, drops freeware model". InfoWorld. Archived from the original on 15 September 1999. Retrieved 17 November 2015.
  6. ^ Udell, Jon (7 June 1999). "Exploring XML-RPC: DCOM? CORBA? RMI? Why Not Just XML-RPC?". Byte. Archived from the original on 4 March 2000. Retrieved 17 November 2015.
  7. ^ Walsh, Jeff (25 May 1998). "W3C gives a nod to DataChannel's WebBroker". Infoworld. Vol. 20, no. 21. Archived from the original on 10 September 1999. Retrieved 17 November 2015.
  8. ^ Vizard, Michael; Walsh, Jeff (29 June 1998). "DataChannel's Dave Pool talks about shaping the role of XML to suit different needs". Infoworld. Archived from the original on 16 September 1999. Retrieved 8 December 2015.
  9. ^ Merrick; et al. (11 April 2006). "US Patent 7,028,312". Archived from the original on 3 December 2011. Retrieved 18 September 2008.
  10. ^ "What is the benefit of XML-RPC over plain XML?". Stack Overflow. 9 September 2009. Retrieved 7 April 2011.
  11. ^ "An open poll on the merits of XmlRpc versus alternatives". intertwingly.net. 22 November 2006. Retrieved 7 April 2011.
  12. ^ Jon Canady (14 January 2010). "If you have REST, why XML-RPC?". joncanady.com. Archived from the original on 11 May 2013. Retrieved 7 April 2011.

Read other articles:

United States historic placeOleson Park Music PavilionU.S. National Register of Historic Places Show map of IowaShow map of the United StatesLocation1400 Oleson Park Ave.Fort Dodge, IowaCoordinates42°29′20″N 94°10′20″W / 42.48889°N 94.17222°W / 42.48889; -94.17222Area3.4 acres (1.4 ha)Built1938ArchitectHenry KamphoefnerSamuel FultonArchitectural styleModern MovementNRHP reference No.03000357[1]Added to NRHPMay 9, 2003 The Oleson ...

 

Teddy Sheringham Teddy Sheringham nel 2012 Nazionalità  Inghilterra Altezza 185 cm Calcio Ruolo Allenatore (ex attaccante) Termine carriera 1º luglio 2008 - giocatore Carriera Giovanili 19??-19?? Redbridge Forest Squadre di club1 1983-1984 Millwall7 (1)1985→  Aldershot5 (0)1985→  Djurgården21 (13)1985-1991 Millwall213 (92)1991-1992 Nottingham Forest42 (14)1992-1997 Tottenham166 (76)1997-2001 Manchester Utd104 (31)2001-2003 Tottenham70 (22)2...

 

Questa voce sull'argomento cestisti spagnoli è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Segui i suggerimenti del progetto di riferimento. Álex Barrera Nazionalità  Spagna Altezza 196 cm Peso 82 kg Pallacanestro Ruolo Ala piccola Squadra  S.P. Burgos Carriera Giovanili A.B. Esplugues2007-2010 Joventut Badalona Squadre di club 2010-2015 Joventut Badalona86 (235)2010-2013→  Prat47 (498)2015-2016 Manresa20 (43)2016-2...

Highly toxic chemical with the formula HCN Cyanane redirects here. For a class of synthetic dyes, see Cyanine. Cyanide gas redirects here. For other gaseous cyanides, see Cyanogen chloride, Cyanogen fluoride, and Cyanogen. Hydrogen cyanide Ball and stick model of hydrogen cyanide Spacefill model of hydrogen cyanide Names IUPAC name Formonitrile[2][3] Systematic IUPAC name Methanenitrile[3] Other names Formic anammonideHydridonitridocarbon[1]Hydrocyanic acid (aq...

 

Malaysian motorcycle racer This biography of a living person needs additional citations for verification. Please help by adding reliable sources. Contentious material about living persons that is unsourced or poorly sourced must be removed immediately from the article and its talk page, especially if potentially libelous.Find sources: Khairul Idham Pawi – news · newspapers · books · scholar · JSTOR (December 2020) (Learn how and when to remove this mes...

 

جائحة فيروس كورونا في ملاوي 2020 المرض مرض فيروس كورونا 2019 السلالة فيروس كورونا المرتبط بالمتلازمة التنفسية الحادة الشديدة النوع 2 التواريخ 2 أبريل 2020(4 سنوات، و1 شهر، و2 أسابيع، و5 أيام) المنشأ الصين المكان  مالاوي الوفيات 2,686 (9 مارس 2023)  الحالات المؤكدة 88,707 (9 م�...

Rectangular pattern of image capture and reconstruction This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Raster scan – news · newspapers · books · scholar · JSTOR (May 2010) (Learn how and when to remove this message) Raster-scan display sample; visible gaps between the horizontal scan lines divide each chara...

 

Mackenzie FoyMackenzie Foy di San Diego Comic-Con International pada Juli 2012 di atas panel The Twilight SagaLahirMackenzie Christine Foy10 November 2000 (umur 23)Los Angeles, California, A.S.PekerjaanPeragawati, aktrisTahun aktif2009–sekarangTinggi5'3 Mackenzie Christine Foy atau akrab disapa Mackenzie Foy (lahir 10 November 2000) adalah seorang aktris dan peragawati cilik Amerika. Ia paling dikenal karena perannya sebagai Renesmee Cullen, putri dari Bella Swan dan Edward Culle...

 

منتخب إيطاليا لاتحاد الرغبي اللقب Azzurri بلد الرياضة إيطاليا  تاريخ التأسيس 20 مايو 1929  أكثر ظهور سيرجيو باريس (134) الملعب الرئيسي ملعب أولمبيكو الموقع الرسمي الموقع الرسمي  الألوان الرئيسية الألوان الثانوية تصنيف الرغبي العالمي [الإنجليزية] الحالي 15 (في 25 فبراير 2019) أ�...

2022 novella by Becky Chambers A Prayer for the Crown-Shy AuthorBecky ChambersSeriesMonk & RobotGenreScience fictionPublisherTor.comPublication dateJuly 12, 2022ISBN978-1-250-23623-4Preceded byA Psalm for the Wild-Built  A Prayer for the Crown-Shy is a 2022 solarpunk novella written by Becky Chambers and published by Tor.com on July 12 2022.[1] It is the second book in the Monk & Robot series, preceded by A Psalm for the Wild-Built, which was released on July 13, 202...

 

Lukisan dari tahun 1728 yang menggambarkan Tabut Perjanjian, beserta perkakas-perkakas lain, pada waktu pendirian Kemah Suci pertama kalinya, sebagaimana dicatat dalam Keluaran 40:17-19 Tabut Perjanjian (Ibrani: אָרוֹן הָבְרִית Ārōn Hāb’rīt [pelafalan modern Aron Habrit]; bahasa Arab: تابوت العهد Tābūt Al-ʿahd; bahasa Inggris: Ark of the Covenant atau Ark of Testimony; juga disebut Tabut Hukum Allah[1] atau Tabut Allah (Ark of God)[2 ...

 

  此條目介紹的是位于山东青岛的中国石油大学。关于位于北京的同名学校,请见「中国石油大学(北京)」。 中国石油大学(华东)China University of Petroleum校训惟真惟实创办时间1953年学校标识码4137010425学校类型公立普通高等学校党委书记王勇校长郝芳教师人數1500余人学生人數20000余人校址 中国山东省 主校區:青岛市黄岛区长江西路66号 科教園區:东营市东营�...

يفتقر محتوى هذه المقالة إلى الاستشهاد بمصادر. فضلاً، ساهم في تطوير هذه المقالة من خلال إضافة مصادر موثوق بها. أي معلومات غير موثقة يمكن التشكيك بها وإزالتها. (ديسمبر 2018) 1941 في الولايات المتحدةمعلومات عامةالسنة 1941 1940 في الولايات المتحدة 1942 في الولايات المتحدة تعديل - تعديل م�...

 

Bilateral relationsMali–Russia relations Mali Russia Mali–Russia relations are the bilateral relations between Mali and Russia. History Soviet-era relations (1960–1991) Ambassador Bréhima Coulibaly presenting his letter of credence to President Dmitry Medvedev, 16 January 2009 The Soviet Union recognised the independence of Mali on 7 July 1960, and diplomatic relations between the two states were established on 14 October 1960.[1] Following the collapse of the Mali Federation,...

 

Japanese political party Not to be confused with Democratic Liberal Party (Japan); Democratic Party (Japan, 2016); Liberal Party (Japan, 1998); or Liberal Party (Japan, 2016). Liberal Democratic Party自由民主党 Jiyū-MinshutōAbbreviationLDPJimintōPresidentShigeru IshibaVice PresidentYoshihide SugaSecretary-GeneralHiroshi MoriyamaFoundersIchiro HatoyamaTaketora OgataFounded15 November 1955; 68 years ago (1955-11-15)Merger ofLiberal PartyJapan Democratic PartyHeadq...

Railway in New Zealand Shunting yard in Dunedin on the Main South Line portion of the SIMT. Locomotives visible are of the DC, DFT, and DSG classes. The Main North Line between Picton and Christchurch and the Main South Line between Lyttelton and Invercargill, running down the east coast of the South Island of New Zealand, are sometimes together referred to collectively as the South Island Main Trunk Railway (SIMT).[1] Construction of a line running the length of the east coast began ...

 

Hospital in Tanzania This article is about the historical hospital building. For the modern medical centre, see Ocean Road Cancer Institute. Ocean Road Hospital buildings, 2017 The Ocean Road Hospital (Swahili: Hospitali ya Ocean Road) is a historical building of a hospital in Dar es Salaam, Tanzania. It was opened on October 1, 1897, as the Imperial Governorate Hospital for the former colony of German East Africa. Today, it is part of the Muhimbili University of Health and Allied Sciences an...

 

SÉCULOS: Século XVIII — Século XIX — Século XX DÉCADAS: 1780 • 1790 • 1800 • 1810 • 1820 • 1830 • 1840 • 1850 • 1860 • 1870 • 1880 ANOS: 1825 • 1826 • 1827 • 1828 • 1829 • 1830 • 1831 • 1832 • 1833 • 1834 • 1835 Outros projetos Wikimedia também contêm material sobre este tema: Textos originais no Wikisource Wikisource 1830 em outros calendários Calendário gregoriano 1830 MDCCCXXX Ab urbe condita 2583 Calendário arménio 12...

English noblewoman and politician (1443–1509) For other people named Margaret Beaufort, see Margaret Beaufort (disambiguation). Lady Margaret BeaufortThe King's MotherCountess of Richmond and DerbyPortrait by Meynnart Wewyck, c. 1510.Born31 May 1443Bletsoe Castle, Bedfordshire, EnglandDied29 June 1509 (aged 66)Westminster Abbey, London, EnglandBuriedHenry VII Lady Chapel, Westminster AbbeyNoble familyBeaufortSpouse(s) John de la Pole, 2nd Duke of Suffolk ​ ​(m. 1450...

 

Pour les articles homonymes, voir Vergoz. Michel Vergoz Fonctions Conseiller régional de La Réunion En fonction depuis le 2 juillet 2021(3 ans, 3 mois et 10 jours) Élection 27 juin 2021 Président Huguette Bello 15 mars 1998 – 26 octobre 2011(13 ans, 7 mois et 11 jours) Élection 15 mars 1998 Réélection 28 mars 200421 mars 2010 Successeur Gérard Perrault Maire de Sainte-Rose En fonction depuis le 5 juillet 2015(9 ans, 3 mois et 7 jours) É...