Inquiry about validating an OME.TIFF using xmlvalid


  • I am trying to validate an image sent by a collaborator. I do not have any information regarding how the OME.TIFF was programmatically built.
  • I am using bftools 6.5.1 on MacOS Catalina.

When I try to validate the image, I get this message

~/bin/bftools/xmlvalid original.ome.tiff
Parsing schema path
No schema path found. Validation cannot continue.

Now if I extract the XML from the image and attempt to validate it, I get this message

~/bin/bftools/showinf -nopix -omexml-only original.ome.tiff > original.xml
~/bin/bftools/xmlvalid original.xml
Parsing schema path
Validating original.xml
cvc-pattern-valid: Value 'f14da8fd-df4d-496a-bc09-84f954ac8cf2' is not facet-valid with respect to pattern '(urn:lsid:([\w\-\.]+\.[\w\-\.]+)+:\S+:\S+)|(\S+:\S+)' for type 'AnnotationID'.
cvc-attribute.3: The value 'f14da8fd-df4d-496a-bc09-84f954ac8cf2' of attribute 'ID' on element 'XMLAnnotation' is not valid with respect to its type, 'AnnotationID'.
The prefix "om" for element "om:OriginalMetadata" is not bound.
Error validating document: 3 errors found

Now, I am not concerned at the moment about the error from validating the XML file, I am interested on why I am getting separate results. Using tiffinfo I can see the ImageDescription has this information

tiffinfo original.ome.tiff | more

ImageDescription: <ome:OME xmlns:ns2="" xmlns:om="" xmlns:ome="" xmlns:sa="" xmlns:xsi="" xsi:schemaLocation="">

but when I look at the XML file I see

cat original.xml | more

<?xml version="1.0" encoding="UTF-8"?>
<OME xmlns="" xmlns:xsi="" xsi:schemaLocation="">

Is this the intended behavior? When I use showinf to extract the XML from ImageDescription is it parsed/interpreted?

Hi @icaoberg! Good to see you on


With this command, you’ve not only extracted the OME-XML but you’ve also applied any updates from the actual version. Basically, Bio-Formats works hard to try to actually read the file.

tiffcomment should extract the same value that you are seeing with tiffinfo.


@joshmoore thanks! I am back and working on several projects that involve OME.

What do you recommend I use for validation? xmlvalid on the image or the extracted OME-XML? Validating the OME-XML was certainly more verbose. I am attempting to build a pipeline to validate OME-TIFFs so the latter returns useful info with respect to the first.

1 Like

“2013-06s” is not a valid OME schema version, which is why it can’t be found. They likely intended to use “2013-06”.

The reporting of “2016-06” by the XML later on is because that’s the version bioformats is built with; it will always “upgrade” the data to this version of the schema. It doesn’t reflect the original schema version within the file.