You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tika.apache.org by ni...@apache.org on 2011/11/21 02:24:59 UTC

svn commit: r1204311 - in /tika/trunk: tika-core/src/main/resources/org/apache/tika/mime/tika-mimetypes.xml tika-parsers/src/test/java/org/apache/tika/mime/TestMimeTypes.java

Author: nick
Date: Mon Nov 21 01:24:58 2011
New Revision: 1204311

URL: http://svn.apache.org/viewvc?rev=1204311&view=rev
Log:
TIKA-784 Switch the DITA types to be format specialisations, rather than their own dedicated mimetypes, to match the OASIS recommendation

Modified:
    tika/trunk/tika-core/src/main/resources/org/apache/tika/mime/tika-mimetypes.xml
    tika/trunk/tika-parsers/src/test/java/org/apache/tika/mime/TestMimeTypes.java

Modified: tika/trunk/tika-core/src/main/resources/org/apache/tika/mime/tika-mimetypes.xml
URL: http://svn.apache.org/viewvc/tika/trunk/tika-core/src/main/resources/org/apache/tika/mime/tika-mimetypes.xml?rev=1204311&r1=1204310&r2=1204311&view=diff
==============================================================================
--- tika/trunk/tika-core/src/main/resources/org/apache/tika/mime/tika-mimetypes.xml (original)
+++ tika/trunk/tika-core/src/main/resources/org/apache/tika/mime/tika-mimetypes.xml Mon Nov 21 01:24:58 2011
@@ -75,25 +75,34 @@
     <_comment>Darwin Information Typing Architecture</_comment>
   </mime-type>
 
-  <mime-type type="application/dita+map+xml">
+  <mime-type type="application/dita+xml;format=map">
     <sub-class-of type="application/dita+xml"/>
     <_comment>DITA Map</_comment>
     <root-XML localName="map"/>
     <root-XML localName="map" namespaceURI="http://docs.oasis-open.org/namespace"/>
     <glob pattern="*.ditamap"/>
   </mime-type>
-  <mime-type type="application/dita+topic+xml">
+  <mime-type type="application/dita+xml;format=topic">
     <sub-class-of type="application/dita+xml"/>
     <_comment>DITA Topic</_comment>
     <root-XML localName="topic"/>
     <root-XML localName="topic" namespaceURI="http://docs.oasis-open.org/namespace"/>
+    <!-- Topic is the default, Task and Concept are specialisations -->
+    <glob pattern="*.dita"/>
+  </mime-type>
+  <mime-type type="application/dita+xml;format=task">
+    <sub-class-of type="application/dita+xml;format=task"/>
+    <_comment>DITA Task Topic</_comment>
     <root-XML localName="task"/>
     <root-XML localName="task" namespaceURI="http://docs.oasis-open.org/namespace"/>
+  </mime-type>
+  <mime-type type="application/dita+xml;format=concept">
+    <sub-class-of type="application/dita+xml;format=topic"/>
+    <_comment>DITA Concept Topic</_comment>
     <root-XML localName="concept"/>
     <root-XML localName="concept" namespaceURI="http://docs.oasis-open.org/namespace"/>
-    <glob pattern="*.dita"/>
   </mime-type>
-  <mime-type type="application/dita+val+xml">
+  <mime-type type="application/dita+xml;format=val">
     <sub-class-of type="application/dita+xml"/>
     <_comment>DITA Conditional Processing Profile</_comment>
     <root-XML localName="val"/>

Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/mime/TestMimeTypes.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/mime/TestMimeTypes.java?rev=1204311&r1=1204310&r2=1204311&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/mime/TestMimeTypes.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/mime/TestMimeTypes.java Mon Nov 21 01:24:58 2011
@@ -348,25 +348,25 @@ public class TestMimeTypes extends TestC
      *  but we specialise them 
      */
     public void testDITADetection() throws Exception {
-       assertTypeByName("application/dita+topic+xml", "test.dita");
-       assertTypeByName("application/dita+map+xml", "test.ditamap");
-       assertTypeByName("application/dita+val+xml", "test.ditaval");
-       
-       assertTypeByData("application/dita+topic+xml", "testDITA.dita");
-       assertTypeByData("application/dita+topic+xml", "testDITA2.dita");
-       assertTypeByData("application/dita+map+xml", "testDITA.ditamap");
-       
-       assertTypeByNameAndData("application/dita+topic+xml", "testDITA.dita");
-       assertTypeByNameAndData("application/dita+topic+xml", "testDITA2.dita");
-       assertTypeByNameAndData("application/dita+map+xml", "testDITA.ditamap");
+       assertTypeByName("application/dita+xml; format=topic", "test.dita");
+       assertTypeByName("application/dita+xml; format=map", "test.ditamap");
+       assertTypeByName("application/dita+xml; format=val", "test.ditaval");
+       
+       assertTypeByData("application/dita+xml; format=task", "testDITA.dita");
+       assertTypeByData("application/dita+xml; format=concept", "testDITA2.dita");
+       assertTypeByData("application/dita+xml; format=map", "testDITA.ditamap");
+       
+       assertTypeByNameAndData("application/dita+xml; format=task", "testDITA.dita");
+       assertTypeByNameAndData("application/dita+xml; format=concept", "testDITA2.dita");
+       assertTypeByNameAndData("application/dita+xml; format=map", "testDITA.ditamap");
        
        // These are all children of the official type
        assertEquals("application/dita+xml", 
+             repo.getMediaTypeRegistry().getSupertype(getTypeByNameAndData("testDITA.ditamap")).toString());
+       assertEquals("application/dita+xml", 
              repo.getMediaTypeRegistry().getSupertype(getTypeByNameAndData("testDITA.dita")).toString());
        assertEquals("application/dita+xml", 
              repo.getMediaTypeRegistry().getSupertype(getTypeByNameAndData("testDITA2.dita")).toString());
-       assertEquals("application/dita+xml", 
-             repo.getMediaTypeRegistry().getSupertype(getTypeByNameAndData("testDITA.ditamap")).toString());
     }
 
     /**