The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
library(ODataQuery)
Here I’ll show some examples to use this package
ODataQuery$new("https://services.odata.org/V4/TripPinServiceRW")
service <-$all()
service#> name kind
#> 1 Photos EntitySet
#> 2 People EntitySet
#> 3 Airlines EntitySet
#> 4 Airports EntitySet
#> 5 Me Singleton
#> 6 GetNearestAirport FunctionImport
#> url
#> 1 http://services.odata.org/V4/(S(tbiq44cis1sraps0oabu0vat))/TripPinServiceRW/Photos
#> 2 http://services.odata.org/V4/(S(tbiq44cis1sraps0oabu0vat))/TripPinServiceRW/People
#> 3 http://services.odata.org/V4/(S(tbiq44cis1sraps0oabu0vat))/TripPinServiceRW/Airlines
#> 4 http://services.odata.org/V4/(S(tbiq44cis1sraps0oabu0vat))/TripPinServiceRW/Airports
#> 5 http://services.odata.org/V4/(S(tbiq44cis1sraps0oabu0vat))/TripPinServiceRW/Me
#> 6 http://services.odata.org/V4/(S(tbiq44cis1sraps0oabu0vat))/TripPinServiceRW/GetNearestAirport
service$path("People")
people_entity <-
# Get first page
$retrieve(count=TRUE)
people_entity#> $`@odata.count`
#> [1] 20
#>
#> $`@odata.nextLink`
#> [1] "https://services.odata.org/V4/(S(bdudzig0mg0k43vo4f4uxfoa))/TripPinServiceRW/People?%24count=true&%24skiptoken=8"
#>
#> $value
#> UserName FirstName LastName Emails
#> 1 russellwhyte Russell Whyte Russell@example.com, Russell@contoso.com
#> 2 scottketchum Scott Ketchum Scott@example.com
#> 3 ronaldmundy Ronald Mundy Ronald@example.com, Ronald@contoso.com
#> 4 javieralfred Javier Alfred Javier@example.com, Javier@contoso.com
#> 5 willieashmore Willie Ashmore Willie@example.com, Willie@contoso.com
#> 6 vincentcalabrese Vincent Calabrese Vincent@example.com, Vincent@contoso.com
#> 7 clydeguess Clyde Guess Clyde@example.com
#> 8 keithpinckney Keith Pinckney Keith@example.com, Keith@contoso.com
#> AddressInfo Gender Concurrency
#> 1 187 Suffolk Ln., United States, Boise, ID Male 6.376092e+17
#> 2 2817 Milton Dr., United States, Albuquerque, NM Male 6.376092e+17
#> 3 NULL Male 6.376092e+17
#> 4 89 Jefferson Way Suite 2, United States, Portland, WA Male 6.376092e+17
#> 5 NULL Male 6.376092e+17
#> 6 55 Grizzly Peak Rd., United States, Butte, MT Male 6.376092e+17
#> 7 NULL Male 6.376092e+17
#> 8 NULL Male 6.376092e+17
# Get all pages
$select("UserName", "FirstName", "LastName")$all()
people_entity#> UserName FirstName LastName
#> 1 russellwhyte Russell Whyte
#> 2 scottketchum Scott Ketchum
#> 3 ronaldmundy Ronald Mundy
#> 4 javieralfred Javier Alfred
#> 5 willieashmore Willie Ashmore
#> 6 vincentcalabrese Vincent Calabrese
#> 7 clydeguess Clyde Guess
#> 8 keithpinckney Keith Pinckney
#> 9 marshallgaray Marshall Garay
#> 10 ryantheriault Ryan Theriault
#> 11 elainestewart Elaine Stewart
#> 12 salliesampson Sallie Sampson
#> 13 jonirosales Joni Rosales
#> 14 georginabarlow Georgina Barlow
#> 15 angelhuffman Angel Huffman
#> 16 laurelosborn Laurel Osborn
#> 17 sandyosborn Sandy Osborn
#> 18 ursulabright Ursula Bright
#> 19 genevievereeves Genevieve Reeves
#> 20 kristakemp Krista Kemp
people_entity$get("russellwhyte")
russellwhyte <- people_entity$top(1)$one()
first_person <-head(first_person)
#> $UserName
#> [1] "russellwhyte"
#>
#> $FirstName
#> [1] "Russell"
#>
#> $LastName
#> [1] "Whyte"
#>
#> $Emails
#> [1] "Russell@example.com" "Russell@contoso.com"
#>
#> $AddressInfo
#> Address City.CountryRegion City.Name City.Region
#> 1 187 Suffolk Ln. United States Boise ID
#>
#> $Gender
#> [1] "Male"
russellwhyte$path("Friends")
russellwhyte_friends <-$all()
russellwhyte_friends#> UserName FirstName LastName Emails
#> 1 scottketchum Scott Ketchum Scott@example.com
#> 2 ronaldmundy Ronald Mundy Ronald@example.com, Ronald@contoso.com
#> 3 javieralfred Javier Alfred Javier@example.com, Javier@contoso.com
#> 4 angelhuffman Angel Huffman Angel@example.com
#> AddressInfo Gender Concurrency
#> 1 2817 Milton Dr., United States, Albuquerque, NM Male 6.376092e+17
#> 2 NULL Male 6.376092e+17
#> 3 89 Jefferson Way Suite 2, United States, Portland, WA Male 6.376092e+17
#> 4 NULL Female 6.376092e+17
service$func('GetNearestAirport')
get_nearest_airport <-get_nearest_airport(lat = 33, lon = -118)
#> $IcaoCode
#> [1] "KLAX"
#>
#> $Name
#> [1] "Los Angeles International Airport"
#>
#> $IataCode
#> [1] "LAX"
#>
#> $Location
#> $Location$Address
#> [1] "1 World Way, Los Angeles, CA, 90045"
#>
#> $Location$City
#> $Location$City$CountryRegion
#> [1] "United States"
#>
#> $Location$City$Name
#> [1] "Los Angeles"
#>
#> $Location$City$Region
#> [1] "California"
#>
#>
#> $Location$Loc
#> $Location$Loc$type
#> [1] "Point"
#>
#> $Location$Loc$coordinates
#> [1] -118.4081 33.9425
#>
#> $Location$Loc$crs
#> $Location$Loc$crs$type
#> [1] "name"
#>
#> $Location$Loc$crs$properties
#> $Location$Loc$crs$properties$name
#> [1] "EPSG:4326"
people_entity$
people_query <- top(5)$
select('FirstName', 'LastName')$
filter(Concurrency.gt = 500)$
expand('Friends($count=true)')$
orderby('LastName')
$all()
people_query#> FirstName LastName Friends@odata.count
#> 1 Javier Alfred 3
#> 2 Willie Ashmore 2
#> 3 Georgina Barlow 1
#> 4 Ursula Bright 1
#> 5 Vincent Calabrese 2
#> Friends
#> 1 willieashmore, vincentcalabrese, georginabarlow, Willie, Vincent, Georgina, Ashmore, Calabrese, Barlow, Willie@example.com, Willie@contoso.com, Vincent@example.com, Vincent@contoso.com, Georgina@example.com, Georgina@contoso.com, 55 Grizzly Peak Rd., United States, Butte, MT, Male, Male, Female, 637609246868923904, 637609246868923904, 637609246868923904
#> 2 javieralfred, vincentcalabrese, Javier, Vincent, Alfred, Calabrese, Javier@example.com, Javier@contoso.com, Vincent@example.com, Vincent@contoso.com, 89 Jefferson Way Suite 2, United States, Portland, WA, 55 Grizzly Peak Rd., United States, Butte, MT, Male, Male, 637609246868923904, 637609246868923904
#> 3 javieralfred, Javier, Alfred, Javier@example.com, Javier@contoso.com, 89 Jefferson Way Suite 2, United States, Portland, WA, Male, 637609246868923904
#> 4 keithpinckney, Keith, Pinckney, Keith@example.com, Keith@contoso.com, Male, 637609246868923904
#> 5 javieralfred, willieashmore, Javier, Willie, Alfred, Ashmore, Javier@example.com, Javier@contoso.com, Willie@example.com, Willie@contoso.com, 89 Jefferson Way Suite 2, United States, Portland, WA, Male, Male, 637609246868923904, 637609246868923904
ODataQuery$new("http://beta-odata4.cbs.nl/")
opendata_service <- opendata_service$path("CBS", "81589NED", Observations")
entity_81589NED <-dataset_81589NED <- entity_81589NED$all()
Connecting with older OData v2 works, but some features have been changed.
ODataQuery$new("https://services.odata.org/V2/Northwind/Northwind.svc/")
northwind_service <- northwind_service$path("Customers")
customer_entity <-$
customer_entity select("CompanyName", "Address", "Phone")$
filter(Country.eq = "Germany", City.eq = "Berlin")
So far, I haven’t been able to figure out how their data model works, but at least we can connect to it.
ODataQuery$new("https://denhaag.incijfers.nl/jiveservices/odata/")
denhaag_service <-$path('DataSources') denhaag_service
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.