[BioC] arrayQualityMetrics NULL XML-node Error; Anyone still getting this?

Wolfgang Huber whuber at embl.de
Sat Oct 8 15:44:06 CEST 2011

Dear Eric

thank you for sending a reproducible example. I have run the same code 
as you, and this produced a report without error messages and with all 
elements that are supposed to be interactive (Figs. 3, 6, 12 and the 
table) behaving as expected. The code and the report are here:

I have the following system parameters and session info as below, so my 
recommendation is for you to update to more recent versions. More 
comments see below.

$ pkg-config --version cairo
$ xml2-config --version
# arrayQualityMetrics version: 3.9.5.
# Firefox 8.0

 > sessionInfo()
R Under development (unstable) (2011-10-07 r57184)
Platform: x86_64-apple-darwin10.8.0/x86_64 (64-bit)

[1] C

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

other attached packages:
[1] hgu133acdf_2.8.0          ALLMLL_1.2.8
[3] affy_1.31.6               Biobase_2.13.10
[5] arrayQualityMetrics_3.9.5 fortunes_1.4-2

loaded via a namespace (and not attached):
  [1] AnnotationDbi_1.15.29 BiocInstaller_1.1.28  Biostrings_2.21.11
  [4] Cairo_1.5-0           DBI_0.2-5             Hmisc_3.8-3
  [7] IRanges_1.11.27       KernSmooth_2.23-6     RColorBrewer_1.0-5
[10] RSQLite_0.10.0        SVGAnnotation_0.9-0   XML_3.4-3
[13] affyPLM_1.29.3        affyio_1.21.2         annotate_1.31.1
[16] beadarray_2.3.10      cluster_1.14.0        genefilter_1.35.0
[19] grid_2.15.0           hwriter_1.3           lattice_0.19-33
[22] latticeExtra_0.6-18   limma_3.9.21          preprocessCore_1.15.0
[25] reshape_0.8.4         setRNG_2009.11-1      splines_2.15.0
[28] survival_2.36-10      tools_2.15.0          vsn_3.21.2
[31] xtable_1.5-6          zlibbioc_0.1.8

The fact that for you Figs. 6 and 12 'work' -these are line plots- and 
that Fig. 3 does not -this is a scatter plot- suggests that what you are 
encountering is an aspect of the brittleness in the way that 
arrayQualityMetrics (via SVGAnnotation) interacts with SVG files 
produced by a third party (cairo). Essentially, that interaction is not 
based on a defined protocol, but on unilateral reverse engineering.

SVGAnnotation is a fantastic piece of 'proof of concept' software, but 
the situation is, of course, not satisfatory for applications that are 
supposed to be used by many different people and on different platforms. 
As soon as I can find the time, I will see how it can improved ( e.g. 
gridSVG, where we have more control over the SVG ).
	Best wishes

Oct/7/11 8:59 PM, Paniagua, Eric scripsit::
> Hi Bioconductors (hopefully still including Wolfgang),
> I have updated my packages, as per this list's posting guide, but to no avail.  I have also searched the archives, and I discovered this thread where someone had a very similar problem (http://thread.gmane.org/gmane.science.biology.informatics.conductor/31622/focus=31666).  I do not see there any solution.  It's been about a year since that thread circulated, so I was wondering if anyone else has encountered this XML problem when running arrayQualityMetrics.
> It is not clear that my error is exactly the same as what James (from the above thread) encountered, but I'm thinking it's likely related.  Maybe there is a parallel code block to the one throwing an error for James that wasn't fixed and is only now being observed.  The differences from James's report follow:
> 1) I do get sections 4 and 5 in the index.html report file.
> 2) I have a notice beneath the caption for Figure 3 which reads: "Note: the figure is static - enhancement with interactive effects failed. This is either due to a version incompatibility of the 'SVGAnnotation' R package and your version of 'Cairo' or 'libcairo', or due to plot misformating. Please consult the Bioconductor mailing list, or contact the maintainer of 'arrayQualityMetrics' with a reproducible example in order to fix this problem."
> $ pkg-config --version cairo
> 0.21
> $ xml2-config --version
> 2.6.26
> The binary libcairo file installed is at /usr/lib64/libcairo.so.2.9.2
> Figures 6 and 12 *are* interactive, which leads me to think it could be either a version mismatch issue between libcairo and SVGAnnotation or a code issue in the arrayQualityMetrics package itself.
> I also have another case with the same error manifesting slightly differently, but I figure it's best to have everything working correctly for sample code from the vignette first (http://www.bioconductor.org/packages/2.8/bioc/vignettes/arrayQualityMetrics/inst/doc/arrayQualityMetrics.pdf and below).  I notice that some of my versions are slightly newer than those from the vignette.
> Details:
> * R was run as: R --vanilla
> * R and all packages are installed on a 48-core server, 64-bit, running CentOS 5.5 (final)
> * For viewing, I copied the output to my local machine (dual-core laptop running Ubuntu 10.10)
> * I viewed index.html in Google Chrome 14.0.835.186
> My example R session demonstrating the error follows.
> I would greatly appreciate any feedback, suggestions, questions, and/or answers you may be able to provide.
> Thanks,
> Eric Paniagua
> PS: I apologize for the lack of monospace font in what follows; I can't find how to set it in the OWA client.
> R version 2.13.1 (2011-07-08)
> Copyright (C) 2011 The R Foundation for Statistical Computing
> ISBN 3-900051-07-0
> Platform: x86_64-unknown-linux-gnu (64-bit)
> R is free software and comes with ABSOLUTELY NO WARRANTY.
> You are welcome to redistribute it under certain conditions.
> Type 'license()' or 'licence()' for distribution details.
> R is a collaborative project with many contributors.
> Type 'contributors()' for more information and
> 'citation()' on how to cite R or R packages in publications.
> Type 'demo()' for some demos, 'help()' for on-line help, or
> 'help.start()' for an HTML browser interface to help.
> Type 'q()' to quit R.
>> library("ALLMLL")
> Loading required package: affy
> Loading required package: Biobase
> Welcome to Bioconductor
>    Vignettes contain introductory material. To view, type
>    'browseVignettes()'. To cite Bioconductor, see
>    'citation("Biobase")' and for packages 'citation("pkgname")'.
>> data("MLL.A")
>> library("arrayQualityMetrics")
>> arrayQualityMetrics(expressionset = MLL.A[, 1:5],
> +                     outdir = "Report_for_MLL_A",
> +                     force = TRUE,
> +                     do.logtransform = TRUE)
> The directory 'Report_for_MLL_A' has been created.
> Error in UseMethod("xmlAttrs", node) :
>    no applicable method for 'xmlAttrs' applied to an object of class "NULL"
> KernSmooth 2.23 loaded
> Copyright M. P. Wand 1997-2009
>> traceback()
> No traceback available
>> warnings()
>> sessionInfo()
> R version 2.13.1 (2011-07-08)
> Platform: x86_64-unknown-linux-gnu (64-bit)
> locale:
> [1] C
> attached base packages:
> [1] stats     graphics  grDevices utils     datasets  methods   base
> other attached packages:
> [1] hgu133acdf_2.8.0          arrayQualityMetrics_3.8.0
> [3] ALLMLL_1.2.8              affy_1.30.0
> [5] Biobase_2.12.2
> loaded via a namespace (and not attached):
>   [1] AnnotationDbi_1.14.1  Biostrings_2.20.4     Cairo_1.5-0
>   [4] DBI_0.2-5             Hmisc_3.8-3           IRanges_1.10.6
>   [7] KernSmooth_2.23-6     RColorBrewer_1.0-5    RSQLite_0.10.0
> [10] SVGAnnotation_0.9-0   XML_3.4-3             affyPLM_1.28.5
> [13] affyio_1.20.0         annotate_1.30.1       beadarray_2.2.0
> [16] cluster_1.14.0        genefilter_1.34.0     grid_2.13.1
> [19] hwriter_1.3           lattice_0.19-33       latticeExtra_0.6-18
> [22] limma_3.8.3           preprocessCore_1.14.0 setRNG_2009.11-1
> [25] splines_2.13.1        survival_2.36-10      tools_2.13.1
> [28] vsn_3.20.0            xtable_1.5-6
> _______________________________________________
> Bioconductor mailing list
> Bioconductor at r-project.org
> https://stat.ethz.ch/mailman/listinfo/bioconductor
> Search the archives: http://news.gmane.org/gmane.science.biology.informatics.conductor


Wolfgang Huber

More information about the Bioconductor mailing list