/**
* look for XML formats (XHTML and SVG)
*/
+ Wikimedia\suppressWarnings();
$xml = new XmlTypeCheck( $file );
+ Wikimedia\restoreWarnings();
if ( $xml->wellFormed ) {
$xmlTypes = $this->xmlTypes;
return $xmlTypes[$xml->getRootElement()] ?? 'application/xml';
$callback = $this->guessCallback;
if ( $callback ) {
$callback( $this, $head, $tail, $file, $mime /* by reference */ );
- };
+ }
return $mime;
}
$mime = 'application/zip';
$opendocTypes = [
+ # In OASIS Open Document Format v1.2, Database front end document
+ # has a recommended MIME type of:
+ # application/vnd.oasis.opendocument.base
+ # Despite the type registered at the IANA being 'database' which is
+ # supposed to be normative.
+ # T35515
+ 'base',
+
'chart-template',
'chart',
'formula-template',
'text-web',
'text' ];
- // https://lists.oasis-open.org/archives/office/200505/msg00006.html
+ // The list of document types is available in OASIS Open Document
+ // Format version 1.2 under Appendix C. It is not normative though,
+ // supposedly types registered at the IANA should be.
+ // http://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os-part1.html
$types = '(?:' . implode( '|', $opendocTypes ) . ')';
$opendocRegex = "/^mimetype(application\/vnd\.oasis\.opendocument\.$types)/";