Accessing a local version of BioMart (v0.9) using biomaRt
Entering edit mode
Alex • 0
Last seen 6.1 years ago
University of Oxford

Hi all,

I downloaded BioMart 0.9 on a local server and I easily managed to compile, build and run it. I tested it and it is working fine. I also tried the REST API (e.g. localhost:9000/martservice/portal) and it is working as well.

However, when I try to connect to it using biomaRt:

> listMarts(host="localhost", port=9000, path="/martservice")

I get the following error:

Attempting web service request:
Error in listMarts(host = "localhost", port = 9000, path = "/martservice",  :
  Unexpected format to the list of available marts.
Please check the following URL manually, and try ?listMarts for advice.



I googled it a bit and I found (e.g. here) that there was a compatibility problem between the biomaRt package and BioMart versions 0.8 and 0.9, but it seems they were working on it. 

Anyone knows if the issue has been solved?



> sessionInfo()
R version 3.4.3 (2017-11-30)
Platform: x86_64-redhat-linux-gnu (64-bit)
Running under: CentOS Linux 7 (Core)

Matrix products: default
BLAS/LAPACK: /usr/lib64/R/lib/

 [1] LC_CTYPE=en_GB.UTF-8       LC_NUMERIC=C
 [3] LC_TIME=en_GB.UTF-8        LC_COLLATE=en_GB.UTF-8
 [7] LC_PAPER=en_GB.UTF-8       LC_NAME=C
 [9] LC_ADDRESS=C               LC_TELEPHONE=C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] biomaRt_2.32.1

loaded via a namespace (and not attached):
 [1] Rcpp_0.12.15         IRanges_2.10.5       XML_3.98-1.9
 [4] digest_0.6.14        bitops_1.0-6         DBI_0.7
 [7] stats4_3.4.3         RSQLite_2.0          pillar_1.1.0
[10] rlang_0.1.6          blob_1.1.0           S4Vectors_0.14.7
[13] tools_3.4.3          bit64_0.9-7          Biobase_2.36.2
[16] RCurl_1.95-4.10      bit_1.1-12           parallel_3.4.3
[19] compiler_3.4.3       BiocGenerics_0.22.1  AnnotationDbi_1.38.2
[22] memoise_1.1.0        tibble_1.4.1


biomart R rest • 1.0k views
Entering edit mode
Mike Smith ★ 6.4k
Last seen 9 hours ago
EMBL Heidelberg

I think the short answer here is 'No, biomaRt (the package) doesn't work with BioMart 0.9'.

Exapnding on that, active development of new features for biomaRt stopped quite a number of years ago, and I can't see any obvious evidence in the code base for trying to make it compatible with BioMart 0.9.  It's still a highly used package, but in my experience 99% of users are trying to query one of the Ensembl marts, which don't run version 0.9, and so most efforts are spent making sure that interface remains working.  AFAIK Ensembl has no plans to ever upgrade BioMart (but rather to move away completely at some point) and so supporting v0.9 has never been on my roadmap.

If you have a compelling use case for running BioMart 0.9 on a data service that will potentially be widely used then I'm happy to take a look at the effort required to update.  It may be as simple as formatting the query differently, but I suspect it's more involved than that.

Entering edit mode

Hi Mike,

Thanks for your reply. I have developed a web-based platform - now under testing by some other postdocs in my department - that potentially could be widely used. The computational core is based on R, and currently I am using biomaRt in my scripts to query one Ensembl mart. However, I was thinking to have a local BioMart on my server for the public release of my tool.

I looked into BioMart 0.9 just because it was the latest version but I guess I can give version 0.7 a try. Thanks.




Login before adding your answer.

Traffic: 741 users visited in the last hour
Help About
Access RSS

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6