Jörg Schaible wrote:

Again I am quite sure, that a lot of SVG documents are not recognized.

Main problem is that the format specification cannot deal with variable length. See "man 
magic" for the format definition. You cannot express, that a file with an XML declaration 
followed by a non-empty line with a DOCTYPE declaration for SVG is "image/svg+xml".

Bottom line: I am no longer sure, if a mime detection based on the definitions 
of file magic is really a good idea :-/
Hi everybody!

I see two mixed problems in the post by Joerg:

1. the magic file which is not accurate
2. the magic file format which is not good enough for XML stylesheets

2. facilitates 1.

I think we should not throw away the great deal of information present in the magic file, so we should keep magic.xml, but adding the possibility of custom matches.

I propose adding a new test, like
   <match>
       <mimetype>image/svg+xml</mimetype>
       <extension>svg</extension>
       <description>XML SVG</description>
<test type="custom" offset="0" length="1024" class="com.foo.MyXMLSVGChecher" />
   </match>

where com.foo.MyXMLSVGChecker implements the interface:

public interface net.sf.jmimemagic.CustomMatcher {
   public boolean match( byte [] sample );
}

the function match is passed, according to the above example, at most 1024 bytes from the file starting at byte 0.

If the byte sample matches, the function must return true. Of course, users of jmimemagic Next Generation must include in their classpaths the class MyXMLSVGChecker.

Just my two cents
  Andrea


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to