Open Data Protocol

In computing, Open Data Protocol (OData) is an open protocol that allows the creation and consumption of queryable and interoperable Web service APIs in a standard way. Microsoft initiated OData in 2007.[1] Versions 1.0, 2.0, and 3.0 are released under the Microsoft Open Specification Promise. Version 4.0 was standardized at OASIS,[2] with a release in March 2014.[3] In April 2015 OASIS submitted OData v4 and OData JSON Format v4 to ISO/IEC JTC 1 for approval as an international standard.[4] In December 2016, ISO/IEC published OData 4.0 Core as ISO/IEC 20802-1:2016[5][6] and the OData JSON Format as ISO/IEC 20802-2:2016.[7]

The protocol enables the creation and consumption of HTTP-based Web APIs, which allow Web clients to publish and edit resources, identified using URLs and defined in a data model, using simple HTTP messages. OData shares some similarities with JDBC and with ODBC; like ODBC, OData is not limited to relational databases.

Standardization

After initial development by Microsoft, OData became a standardized protocol of the OASIS OData Technical Committee (TC).

OASIS OData Technical Committee

"The OASIS OData TC works to simplify the querying and sharing of data across disparate applications and multiple stakeholders for re-use in the enterprise, Cloud, and mobile devices. A REST-based protocol, OData builds on HTTP, AtomPub, and JSON using URIs to address and access data feed resources. It enables information to be accessed from a variety of sources including (but not limited to) relational databases, file systems, content management systems, and traditional Web sites. OData provides a way to break down data silos and increase the shared value of data by creating an ecosystem in which data consumers can interoperate with data producers in a way that is far more powerful than currently possible, enabling more applications to make sense of a broader set of data. Every producer and consumer of data that participates in this ecosystem increases its overall value."[8]

TC participants include CA Technologies, Citrix Systems, IBM, Microsoft, Progress Software, Red Hat, SAP SE and SDL.

Architecture

OData is a protocol for the creation and consumption of Web APIs. OData thus builds on HTTP, AtomPub, and JSON using URIs to address and access data feed resources.

Resource identification

OData uses URIs to identify resources. For every OData service whose service root is abbreviated as http://host/service/, the following fixed resources can be found:

The service document

The service document lists entity sets, functions, and singletons that can be retrieved. Clients can use the service document to navigate the model in a hypermedia-driven fashion.

The service document is available at http://host/service/

The metadata document

The metadata document describes the types, sets, functions and actions understood by the OData service. Clients can use the metadata document to understand how to query and interact with entities in the service.

The metadata document is available at http://host/service/$metadata.

Dynamic resources

The URIs for the dynamic resources may be computed from the hypermedia information in the service document and metadata document.

Resource operation

OData uses the HTTP verbs to indicate the operations on the resources.

  • GET: Get the resource (a collection of entities, a single entity, a structural property, a navigation property, a stream, etc.).
  • POST: Create a new resource.
  • PUT: Update an existing resource by replacing it with a complete instance.
  • PATCH: Update an existing resource by replacing part of its properties with a partial instance.
  • DELETE: Remove the resource.

Querying

URLs requested from an OData endpoint may include query options. The OData protocol specifies various 'system query options' endpoints should accept, these can be used to filter, order, map or paginate data.

Query options can be appended to a URL after a ? character and are separated by & characters; each option consists of a $-sign prefixed name and its value, separated by a = sign, for example: OData/Products?$top=2&$orderby=Name. A number of logical operators and functions are defined for use when filtering data, for example: OData/Products?$filter=Price lt 10.00 and startswith(Name,'M') requests products with a price smaller than 10 and a name starting with the letter 'M'.

Resource representation

OData uses different formats for representing data and the data model. In OData protocol version 4.0, JSON format is the standard for representing data, with the Atom format still being in committee specification stage. For representing the data model, the Common Schema Definition Language (CSDL) is used, which defines an XML representation of the entity data model exposed by OData services.

A sample OData JSON data payload

A collection of products:

{
  "@odata.context": "http://services.odata.org/V4/OData/OData.svc/$metadata#Products",
  "value": [
    {
      "ID": 0,
      "Name": "Meat",
      "Description": "Red Meat",
      "ReleaseDate": "1992-01-01T00:00:00Z",
      "DiscontinuedDate": null,
      "Rating": 14,
      "Price": 2.5
    },
    {
      "ID": 1,
      "Name": "Milk",
      "Description": "Low fat milk",
      "ReleaseDate": "1995-10-01T00:00:00Z",
      "DiscontinuedDate": null,
      "Rating": 3,
      "Price": 3.5
    },
    ...
  ]
}

A sample OData Atom data payload

A collection of products:

<feed xml:base="http://services.odata.org/V4/OData/OData.svc/" m:context="http://services.odata.org/V4/OData/OData.svc/$metadata#Products" xmlns="http://www.w3.org/2005/Atom" xmlns:d="http://docs.oasis-open.org/odata/ns/data" xmlns:m="http://docs.oasis-open.org/odata/ns/metadata" xmlns:georss="http://www.georss.org/georss" xmlns:gml="http://www.opengis.net/gml">
  <id>http://services.odata.org/v4/odata/odata.svc/Products</id>
  <title type="text">Products</title>
  <updated>2015-05-19T03:38:50Z</updated>
  <link rel="self" title="Products" href="Products"/>
  <entry>
    <id>http://services.odata.org/V4/OData/OData.svc/Products(0)</id>
    <category term="#ODataDemo.Product" scheme="http://docs.oasis-open.org/odata/ns/scheme"/>
    <link rel="edit" title="Product" href="Products(0)"/>
    <link rel="http://docs.oasis-open.org/odata/ns/relatedlinks/Categories" type="application/xml" title="Categories" href="Products(0)/Categories/$ref"/>
    <link rel="http://docs.oasis-open.org/odata/ns/related/Categories" type="application/atom+xml;type=feed" title="Categories" href="Products(0)/Categories"/>
    <link rel="http://docs.oasis-open.org/odata/ns/relatedlinks/Supplier" type="application/xml" title="Supplier" href="Products(0)/Supplier/$ref"/>
    <link rel="http://docs.oasis-open.org/odata/ns/related/Supplier" type="application/atom+xml;type=entry" title="Supplier" href="Products(0)/Supplier"/>
    <link rel="http://docs.oasis-open.org/odata/ns/relatedlinks/ProductDetail" type="application/xml" title="ProductDetail" href="Products(0)/ProductDetail/$ref"/>
    <link rel="http://docs.oasis-open.org/odata/ns/related/ProductDetail" type="application/atom+xml;type=entry" title="ProductDetail" href="Products(0)/ProductDetail"/>
    <title/>
    <updated>2015-05-19T03:38:50Z</updated>
    <author>
      <name/>
    </author>
    <content type="application/xml">
      <m:properties>
        <d:ID m:type="Int32">0</d:ID>
        <d:Name>Bread</d:Name>
        <d:Description>Whole grain bread</d:Description>
        <d:ReleaseDate m:type="DateTimeOffset">1992-01-01T00:00:00Z</d:ReleaseDate>
        <d:DiscontinuedDate m:null="true"/>
        <d:Rating m:type="Int16">4</d:Rating>
        <d:Price m:type="Double">2.5</d:Price>
      </m:properties>
    </content>
  </entry>
  <entry>
    <id>http://services.odata.org/V4/OData/OData.svc/Products(1)</id>
    <category term="#ODataDemo.Product" scheme="http://docs.oasis-open.org/odata/ns/scheme"/>
    <link rel="edit" title="Product" href="Products(1)"/>
    <link rel="http://docs.oasis-open.org/odata/ns/relatedlinks/Categories" type="application/xml" title="Categories" href="Products(1)/Categories/$ref"/>
    <link rel="http://docs.oasis-open.org/odata/ns/related/Categories" type="application/atom+xml;type=feed" title="Categories" href="Products(1)/Categories"/>
    <link rel="http://docs.oasis-open.org/odata/ns/relatedlinks/Supplier" type="application/xml" title="Supplier" href="Products(1)/Supplier/$ref"/>
    <link rel="http://docs.oasis-open.org/odata/ns/related/Supplier" type="application/atom+xml;type=entry" title="Supplier" href="Products(1)/Supplier"/>
    <link rel="http://docs.oasis-open.org/odata/ns/relatedlinks/ProductDetail" type="application/xml" title="ProductDetail" href="Products(1)/ProductDetail/$ref"/>
    <link rel="http://docs.oasis-open.org/odata/ns/related/ProductDetail" type="application/atom+xml;type=entry" title="ProductDetail" href="Products(1)/ProductDetail"/>
    <title/>
    <updated>2015-05-19T03:38:50Z</updated>
    <author>
      <name/>
    </author>
    <content type="application/xml">
      <m:properties>
        <d:ID m:type="Int32">1</d:ID>
        <d:Name>Milk</d:Name>
        <d:Description>Low fat milk</d:Description>
        <d:ReleaseDate m:type="DateTimeOffset">1995-10-01T00:00:00Z</d:ReleaseDate>
        <d:DiscontinuedDate m:null="true"/>
        <d:Rating m:type="Int16">3</d:Rating>
        <d:Price m:type="Double">3.5</d:Price>
      </m:properties>
    </content>
  </entry>
  ...
</feed>

A sample OData metadata document

<edmx:Edmx Version="4.0" xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx">
  <edmx:DataServices>
    <Schema Namespace="ODataDemo" xmlns="http://docs.oasis-open.org/odata/ns/edm">
      <EntityType Name="Product">
        <Key>
          <PropertyRef Name="ID"/>
        </Key>
        <Property Name="ID" Type="Edm.Int32" Nullable="false"/>
        <Property Name="Name" Type="Edm.String"/>
        <Property Name="Description" Type="Edm.String"/>
        <Property Name="ReleaseDate" Type="Edm.DateTimeOffset" Nullable="false"/>
        <Property Name="DiscontinuedDate" Type="Edm.DateTimeOffset"/>
        <Property Name="Rating" Type="Edm.Int16" Nullable="false"/>
        <Property Name="Price" Type="Edm.Double" Nullable="false"/>
      </EntityType>

      <ComplexType Name="Address">
        <Property Name="Street" Type="Edm.String"/>
        <Property Name="City" Type="Edm.String"/>
        <Property Name="State" Type="Edm.String"/>
        <Property Name="ZipCode" Type="Edm.String"/>
        <Property Name="Country" Type="Edm.String"/>
      </ComplexType>
      
      <EntityContainer Name="DemoService">
        <EntitySet Name="Products" EntityType="ODataDemo.Product"></EntitySet>
      </EntityContainer>
    </Schema>
  </edmx:DataServices>
</edmx:Edmx>

Ecosystem

The ecosystem of OData consists of the client/server libraries that implement the protocol, and applications that are based on the protocol.

Libraries

There are a number of OData libraries available to access/produce OData APIs:

.NET

  • Server and client: Microsoft's OData .NET libraries[9]
  • Client: Simple.OData.Client[10]

Java

JavaScript

  • Client: Apache Olingo[14] (featured by OASIS[15])
  • Client: data.js[16]
  • Client: JayData[17] for higher level of abstraction (LINQ-like syntax, support for OData geo features, IndexedDB, WebSQL, integration for DevExtreme, Kendo UI, Angular.js, Knockout.js and Sencha).
  • Client: OpenUI5 library maintained by SAP
  • Client (Node.js): JayData for node[18]
  • Client: Breeze[19]
  • Client: OData4 and Invantive Bridge Online[20]
  • Client: odata-fluent-query:[21] a JavaScript OData query language parser
  • Server: node-odata[22]

PHP

Python

  • Client: PyOData[25]
  • Server and client: Pyslet[26]

Ruby

  • Client: ruby_odata library[27]
  • Client: Free OData V4.0 Library for Ruby[28]
  • Server: Safrano[29]

Others

Other languages implemented include:[30]

  • AJAX: ASP.NET Ajax Library[31] for getting to OData.
  • C++: odatacpp_client[32] is a client-side-only implementation of the OData protocol.
  • Windward Studios[33] supports OData in their Reporting & Document Generation Solutions.
  • Reporting tool List & Label has a specialized data provider for OData.
  • Blackberry (C++): OData-BB10[34] Open Data Protocol (OData) library for BlackBerry 10 (BB10) Cascades apps

Applications

Applications include:[35]

Tools

  • Nucleon Database Master [50]

See also

References

  1. ^ Flasko, Mike (18 July 2007). "Welcome!". MSDN Blogs. OData Team. Archived from the original on May 5, 2014.
  2. ^ "OASIS Open Data Protocol (OData) Technical Committee". Retrieved 2013-08-05.
  3. ^ "OASIS Approves OData 4.0 Standards for an Open, Programmable Web". oasis-open.org. 17 March 2014.
  4. ^ "OASIS has Submitted OData v4 and OData JSON Format v4 to ISO/IEC JTC 1 for approval as an International Standard". MS Open Tech. Archived from the original on 2015-05-20. Retrieved 2015-05-18.
  5. ^ "OData Published as an ISO Standard · OData - the Best Way to REST". www.odata.org. Retrieved 2021-05-11.
  6. ^ "ISO/IEC 20802-1:2016". ISO. Retrieved 2021-05-11.
  7. ^ "ISO/IEC 20802-2:2016". ISO. Retrieved 2021-05-11.
  8. ^ "OASIS Open Data Protocol (OData) TC | OASIS". www.oasis-open.org. Retrieved September 24, 2019.
  9. ^ Microsoft's OData .NET libraries
  10. ^ Simple.OData.Client
  11. ^ Apache Olingo
  12. ^ Jello-Framework
  13. ^ odata-client
  14. ^ Apache Olingo
  15. ^ "Libraries · OData - the Best Way to REST". www.odata.org. Retrieved 2019-02-19.
  16. ^ "data.js". CodePlex Archive.
  17. ^ JayData
  18. ^ JayData for node
  19. ^ Breeze
  20. ^ OData4 and Invantive Bridge Online
  21. ^ odata-fluent-query
  22. ^ node-odata
  23. ^ odataphp
  24. ^ POData
  25. ^ PyOData
  26. ^ Pyslet
  27. ^ ruby_odata library
  28. ^ Free OData V4.0 Library for Ruby
  29. ^ Safrano
  30. ^ "Libraries". odata.org.
  31. ^ ASP.NET Ajax Library
  32. ^ odatacpp_client
  33. ^ Windward Studios
  34. ^ OData-BB10
  35. ^ "Ecosystem". odata.org.
  36. ^ Progress DataDirect Hybrid Data Pipeline
  37. ^ "SAP NetWeaver Gateway". Retrieved 2012-11-22.
  38. ^ IBM developerWorks eXtreme Scale REST data service (OData)
  39. ^ "Welcome to Office 365 APIs". docs.microsoft.com. 28 August 2018. Retrieved September 24, 2019.
  40. ^ "Set Up Salesforce Connect to Access External Data with the OData 2.0 or 4.0 Adapter".
  41. ^ Skyvia Connect
  42. ^ "OData - Tableau". help.tableau.com. Retrieved September 24, 2019.
  43. ^ "OData and Spotfire". The TIBCO Blog. Retrieved 2016-03-30.
  44. ^ Mulesoft
  45. ^ "Anypoint Exchange". www.mulesoft.com. Retrieved September 24, 2019.
  46. ^ SuccessFactors
  47. ^ Ceridian HCM's Dayforce
  48. ^ "HR Reporting Software - Dayforce | Ceridian". www.ceridian.com. Retrieved September 24, 2019.
  49. ^ "What You Need to Know About Redfish API". Exxact. 2017-12-01. Retrieved 2019-08-31.
  50. ^ "Nucleon Database Master". Retrieved 16 November 2017.

OData OASIS Standards

Committee Specifications

Committee Notes

Read other articles:

Danish national socialist politician (1893-1947) This article is about the Danish Politician leader. For the U.S. baseball player, see Fritz Clausen. Frits ClausenFrits ClausenLeader of the National Socialist Workers' Party of DenmarkIn office1933–1944Preceded byCay LembckeSucceeded byCommittee Personal detailsBorn(1893-11-12)12 November 1893Aabenraa, German Empire (Now Denmark)Died5 December 1947(1947-12-05) (aged 54)Vestre Prison, Copenhagen, DenmarkPolitical partyDNSAPOther politicalaf…

Lake and State Natural Area in Oneida County, Wisconsin Wind Pudding Lake State Natural AreaWind Pudding LakeLocation of Wind Pudding Lake State Natural Area in WisconsinShow map of WisconsinWind Pudding Lake State Natural Area (the United States)Show map of the United StatesLocationOneida, Wisconsin, United StatesCoordinates45°45′39″N 89°37′57″W / 45.76083°N 89.63250°W / 45.76083; -89.63250Area340 acres (140 ha)Established1983 Wind Pudding Lake State Nat…

海尔·塞拉西一世埃塞俄比亚皇帝統治1930年11月2日-1974年9月12日(43年314天)加冕1930年11月2日前任佐迪图繼任阿姆哈·塞拉西一世(流亡)埃塞俄比亞攝政王統治1916年9月27日-1930年11月2日(14年36天)出生(1892-07-23)1892年7月23日 埃塞俄比亚帝国哈勒爾州逝世1975年8月27日(1975歲—08—27)(83歲) 衣索比亞亚的斯亚贝巴安葬2000年11月5日圣三一大教堂配偶梅南·阿斯福(1889年-1962年…

2016年美國總統選舉 ← 2012 2016年11月8日 2020 → 538個選舉人團席位獲勝需270票民意調查投票率55.7%[1][2] ▲ 0.8 %   获提名人 唐納·川普 希拉莉·克林頓 政党 共和黨 民主党 家鄉州 紐約州 紐約州 竞选搭档 迈克·彭斯 蒂姆·凱恩 选举人票 304[3][4][註 1] 227[5] 胜出州/省 30 + 緬-2 20 + DC 民選得票 62,984,828[6] 65,853,514[6] 得…

List of events ← 1821 1820 1819 1822 in the United States → 1823 1824 1825 Decades: 1800s 1810s 1820s 1830s 1840s See also: History of the United States (1789–1849) Timeline of United States history (1820–1859) List of years in the United States 1822 in the United States1822 in U.S. states States Alabama Connecticut Delaware Georgia Illinois Indiana Kentucky Louisiana Maine Maryland Massachusetts Mississippi Missouri New Hampshire New Jersey New York North Carolina Ohio Pennsylva…

SMK Negeri 2 WonogiriInformasiNama latinSkandaDidirikanTahun 2002JenisNegeri, KejuruanAkreditasiNomor 301 Tanggal 3 Juli 2002Kepala SekolahDrs. SUYONO, M.SiJurusan atau peminatanTeknik Kendaraan Ringan, Teknik Sepeda Motor, Teknik Pemesinan , Teknik Gambar Bangunan, Teknik MekatronikaKurikulum2013Jumlah siswa+- 1700AlamatLokasiJl. Raya Wonogiri - Ngadirojo KM. 3 Bulusulur, Wonogiri - 57651, Jawa Tengah, IndonesiaTel./Faks.(0273) 323837Situs webwww.smkn2wonogiri.comMoto SMKN 2…

豪栄道 豪太郎 場所入りする豪栄道基礎情報四股名 澤井 豪太郎→豪栄道 豪太郎本名 澤井 豪太郎愛称 ゴウタロウ、豪ちゃん、GAD[1][2]生年月日 (1986-04-06) 1986年4月6日(38歳)出身 大阪府寝屋川市身長 183cm体重 160kgBMI 47.26所属部屋 境川部屋得意技 右四つ・出し投げ・切り返し・外掛け・首投げ・右下手投げ成績現在の番付 引退最高位 東大関生涯戦歴 696勝493敗66…

1985 video gameTransBotDeveloper(s)SegaPublisher(s)SegaPlatform(s)Master SystemReleaseJP: December 22, 1985NA: October 1986[1]EU: August 1987Genre(s)Shoot 'em upMode(s)Single-player TransBot, known in Japan as Astro Flash (アストロフラッシュ), is a video game for the Master System originally released in 1985. It is a sci-fi-themed shoot 'em up inspired by Transformers.[2][3] Plot Back in the solar year 2000 there was a nuclear war, and people are finally now emer…

إيا   معلومات شخصية عائلة الأسرة المصرية الثالثة عشر  الحياة العملية المهنة سياسية  تعديل مصدري - تعديل   إيا في الهيروغليفية إيا / إييالمعنى غير واضح إيا أو إيي ، هي ملكة مصر قديمة غير حاكمة أو زوجة ملك ، عاشت في عهد الأسرة الثالثة عشرة.[1] حياتها إيا معروفة من …

Hill in Germany Not to be confused with Drachenfels Castle (Wasgau). Drachenfels, view from Mehlem The Drachenfels (Dragon's Rock, German pronunciation: [ˈdʁaxənˌfɛls]) is a hill (321 metres (1,053 ft)) in the Siebengebirge uplands between Königswinter and Bad Honnef in Germany. The hill was formed by rising magma that could not break through to the surface, and then cooled and became solid underneath. It is the subject of much tourism and romanticism in the North Rhine-Westph…

1972 Summer Olympics murder of Israeli athletes This article is about the 1972 massacre. For other uses, see Munich attack. Munich massacrePart of the Israeli–Palestinian conflictFront view of Connollystraße 31 in 2007. The window of Apartment 1 is to the left of and below the balcony.LocationMunich, West GermanyCoordinates48°10′47″N 11°32′57″E / 48.17972°N 11.54917°E / 48.17972; 11.54917Date5–6 September 1972 4:31 am – 12:04 am (UTC+1)TargetIsraeli Oly…

Orang BugisTo Ugiᨈᨚ ᨕᨘᨁᨗPasangan Bugis dalam kostum tradisionalDaerah dengan populasi signifikan Indonesia (sensus 2010)6.359.000[1]Sulawesi Selatan3.605.639Sulawesi Tenggara496.410Sulawesi Tengah409.741Sulawesi Barat144.533Kalimantan Timur735.819Kalimantan Barat137.282Kalimantan Selatan101.727Riau144.349Jambi96.146Sumatera Selatan42.977Bangka Belitung33.582Kepulauan Riau37.124Jakarta68.227 Malaysia728.465 Singapura (sensus 1990)15.374BahasaAsli: BugisJuga: Ind…

Tributary of the Wallkill River in the U.S. state of New York Shawangunk KillThe Shawangunk Kill where it divides Orange and Ulster countiesLocationCountryUnited StatesStateNew YorkRegionHudson ValleyCountiesOrange, Sullivan, UlsterTownsGreenville, Mamakating, Wawayanda, Wallkill,Crawford, Shawangunk, GardinerPhysical characteristicsSourceUnnamed pond • locationGreenville, New York • coordinates41°23′35″N 74°36′10″W / 41.3931°N 74.6…

This article includes a list of general references, but it lacks sufficient corresponding inline citations. Please help to improve this article by introducing more precise citations. (April 2018) (Learn how and when to remove this message) Heavy howitzer BL 8-inch howitzer Mk VI, VII, VIII US-built version of Vickers BL 8-inch howitzer Mk 6 outside the War Museum in Helsinki, FinlandTypeHeavy howitzerPlace of originUnited KingdomService historyIn service1916–1943Used byUnit…

Research and development of biological weapons in Iraq A UN weapons inspector in Iraq in 2002. Weapons of mass destruction By type Biological Chemical Nuclear Radiological By country Albania Algeria Argentina Australia Brazil Bulgaria Canada China Egypt France Germany India Iran Iraq Israel Italy Japan Libya Mexico Myanmar Netherlands North Korea Pakistan Philippines Poland Rhodesia Romania Russia (Soviet Union) Saudi Arabia South Africa South Korea Spain Sweden Switzerland Syria Taiwan Ukraine …

III Commissione permanente della Camera dei deputati (Affari esteri e comunitari)Stato Italia TipoOrgano della Camera dei deputati Istituito4 giugno 1948 Operativo dal11 giugno 1948 PresidenteGiulio Tremonti (FdI) VicepresidentiPaolo Formentini (Lega)Lia Quartapelle (PD-IDP) Sito webIII Commissione permanente della Camera dei deputati Modifica dati su Wikidata · Manuale La Commissione permanente III Affari esteri e comunitari è un organo della Camera dei deputati della Repubblica ita…

English actor and stand-up comedian (born 1973) For the footballer, see Peter Kaye (footballer). For the philanthropist, see Peter Kay (philanthropist). For the rugby player, see Peter Kay (rugby union). Peter KayKay giving a comedy master class at the University of Salford in 2012Birth namePeter John KayBorn (1973-07-02) 2 July 1973 (age 50)Farnworth, Lancashire, EnglandMediumFilm, stand-up, televisionAlma materUniversity of SalfordYears active1996–presentGenresMusical comedy, …

Gulf between the Horn of Africa and Yemen in the Arabian Peninsula Gulf of AdenThe Gulf of Aden, as viewed from space (top) and on a map (bottom)LocationEast Africa and West AsiaCoordinates12°N 48°E / 12°N 48°E / 12; 48TypeGulfBasin countries List  Djibouti  Somalia  Yemen 1 de facto[1]  Somaliland Surface area410,000 km2 (160,000 sq mi)[dubious – discuss]Average depth500 m (1,600 ft)Max. dept…

Palazzo SansedoniFondazione Monte dei Paschi di SienaPalazzo SansedoniLocalizzazioneStato Italia RegioneToscana LocalitàSiena Indirizzopiazza del Campo Coordinate43°19′08.4″N 11°19′54.48″E43°19′08.4″N, 11°19′54.48″E Informazioni generaliCondizioniIn uso CostruzioneXIII secolo RealizzazioneArchitettoAgostino di GiovanniFerdinando Ruggieri Modifica dati su Wikidata · Manuale Palazzo Sansedoni è un edificio storico di Siena, situato in piazza del Campo. Indice 1 Sto…

The military ranks of Botswana are those of the Botswana Defence Force. As a landlocked country, Botswana has no navy. Commissioned officer ranks The rank insignia of commissioned officers. Rank group General / flag officers Senior officers Junior officers Officer cadet  Botswana Ground Force[1]vte Lieutenant general Major general Brigadier Colonel Lieutenant colonel Major Captain First lieutenant Second lieutenant  Botswana Defence Force Air Wing[1]vte Major general Br…