Index: src/main/java/org/apache/tika/parser/asm/XHTMLClassVisitor.java
===================================================================
--- src/main/java/org/apache/tika/parser/asm/XHTMLClassVisitor.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/asm/XHTMLClassVisitor.java	(working copy)
@@ -78,7 +78,7 @@
             className = className.substring(dot + 1);
         }
 
-        metadata.set(Metadata.TITLE, className);
+        metadata.set(Metadata.DC_TITLE, className);
         metadata.set(Metadata.RESOURCE_NAME_KEY, className + ".class");
 
         try {
Index: src/main/java/org/apache/tika/parser/audio/AudioParser.java
===================================================================
--- src/main/java/org/apache/tika/parser/audio/AudioParser.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/audio/AudioParser.java	(working copy)
@@ -130,10 +130,17 @@
             for (Entry<String, Object> entry : properties.entrySet()) {
                 Object value = entry.getValue();
                 if (value != null) {
-                    metadata.set(entry.getKey(), value.toString());
+                    metadata.set(resolveMetadataKey(entry.getKey()), value.toString());
                 }
             }
         }
     }
+    
+    private String resolveMetadataKey(String propertyKey) {
+        if ("title".equals(propertyKey)) {
+        	return Metadata.DC_TITLE.getName();
+        }
+        return propertyKey;
+    }
 
 }
Index: src/main/java/org/apache/tika/parser/dwg/DWGParser.java
===================================================================
--- src/main/java/org/apache/tika/parser/dwg/DWGParser.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/dwg/DWGParser.java	(working copy)
@@ -52,22 +52,22 @@
 
     /** The order of the fields in the header */
     private static final String[] HEADER_PROPERTIES_ENTRIES = {
-        Metadata.TITLE, 
-        Metadata.SUBJECT,
+        Metadata.DC_TITLE.getName(), 
+        Metadata.DC_SUBJECT.getName(),
         Metadata.AUTHOR,
         Metadata.KEYWORDS,
         Metadata.COMMENTS,
         Metadata.LAST_AUTHOR,
         null, // Unknown?
-        Metadata.RELATION, // Hyperlink
+        Metadata.DC_RELATION.getName(), // Hyperlink
     };
 
     /** For the 2000 file, they're indexed */
     private static final String[] HEADER_2000_PROPERTIES_ENTRIES = {
        null, 
-       Metadata.RELATION, // 0x01
-       Metadata.TITLE,    // 0x02
-       Metadata.SUBJECT,  // 0x03
+       Metadata.DC_RELATION.getName(), // 0x01
+       Metadata.DC_TITLE.getName(),    // 0x02
+       Metadata.DC_SUBJECT.getName(),  // 0x03
        Metadata.AUTHOR,   // 0x04
        null,
        Metadata.COMMENTS, // 0x06 
Index: src/main/java/org/apache/tika/parser/feed/FeedParser.java
===================================================================
--- src/main/java/org/apache/tika/parser/feed/FeedParser.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/feed/FeedParser.java	(working copy)
@@ -72,8 +72,8 @@
             String title = stripTags(feed.getTitleEx());
             String description = stripTags(feed.getDescriptionEx());
 
-            metadata.set(Metadata.TITLE, title);
-            metadata.set(Metadata.DESCRIPTION, description);
+            metadata.set(Metadata.DC_TITLE, title);
+            metadata.set(Metadata.DC_DESCRIPTION, description);
             // store the other fields in the metadata
 
             XHTMLContentHandler xhtml =
Index: src/main/java/org/apache/tika/parser/font/AdobeFontMetricParser.java
===================================================================
--- src/main/java/org/apache/tika/parser/font/AdobeFontMetricParser.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/font/AdobeFontMetricParser.java	(working copy)
@@ -67,7 +67,7 @@
        extractCreationDate( metadata, comments );
 
        metadata.set( Metadata.CONTENT_TYPE, AFM_TYPE.toString() );
-       metadata.set( Metadata.TITLE, fontMetrics.getFullName() );
+       metadata.set( Metadata.DC_TITLE, fontMetrics.getFullName() );
 
        // Add metadata associated with the font type
        addMetadataByString( metadata, "AvgCharacterWidth", Float.toString( fontMetrics.getAverageCharacterWidth() ) );
Index: src/main/java/org/apache/tika/parser/font/TrueTypeParser.java
===================================================================
--- src/main/java/org/apache/tika/parser/font/TrueTypeParser.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/font/TrueTypeParser.java	(working copy)
@@ -67,9 +67,9 @@
         }
 
         metadata.set(Metadata.CONTENT_TYPE, TYPE.toString());
-        metadata.set(DublinCore.DATE, font.getHeader().getCreated().getTime());
+        metadata.set(DublinCore.DC_DATE, font.getHeader().getCreated().getTime());
         metadata.set(
-                Property.internalDate(DublinCore.MODIFIED),
+                DublinCore.DC_MODIFIED,
                 font.getHeader().getModified().getTime());
 
         XHTMLContentHandler xhtml = new XHTMLContentHandler(handler, metadata);
Index: src/main/java/org/apache/tika/parser/html/HtmlHandler.java
===================================================================
--- src/main/java/org/apache/tika/parser/html/HtmlHandler.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/html/HtmlHandler.java	(working copy)
@@ -233,7 +233,7 @@
         if (titleLevel > 0) {
             titleLevel--;
             if (titleLevel == 0) {
-                metadata.set(Metadata.TITLE, title.toString().trim());
+                metadata.set(Metadata.DC_TITLE, title.toString().trim());
             }
         }
         if (bodyLevel > 0) {
Index: src/main/java/org/apache/tika/parser/html/HtmlParser.java
===================================================================
--- src/main/java/org/apache/tika/parser/html/HtmlParser.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/html/HtmlParser.java	(working copy)
@@ -148,7 +148,7 @@
                 String language = match.getLanguage();
                 if (language != null) {
                     metadata.set(Metadata.CONTENT_LANGUAGE, match.getLanguage());
-                    metadata.set(Metadata.LANGUAGE, match.getLanguage());
+                    metadata.set(Metadata.DC_LANGUAGE, match.getLanguage());
                 }
                 */
                 
Index: src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java
===================================================================
--- src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java	(working copy)
@@ -300,9 +300,9 @@
          * Use IPTC for other annotation fields, and XMP for unicode support.
          */
         public void handleCommentTags(Directory directory, Metadata metadata) {
-            if (metadata.get(Metadata.DESCRIPTION) == null &&
+            if (metadata.get(Metadata.DC_DESCRIPTION) == null &&
                     directory.containsTag(ExifDirectory.TAG_IMAGE_DESCRIPTION)) {
-                metadata.set(Metadata.DESCRIPTION, directory.getString(ExifDirectory.TAG_IMAGE_DESCRIPTION));
+                metadata.set(Metadata.DC_DESCRIPTION, directory.getString(ExifDirectory.TAG_IMAGE_DESCRIPTION));
             }
         }
         /**
@@ -415,7 +415,7 @@
                 // Unless we have GPS time we don't know the time zone so date must be set
                 // as ISO 8601 datetime without timezone suffix (no Z or +/-)
                 String datetimeNoTimeZone = DATE_UNSPECIFIED_TZ.format(original); // Same time zone as Metadata Extractor uses
-                metadata.set(Metadata.DATE, datetimeNoTimeZone);
+                metadata.set(Metadata.DC_DATE, datetimeNoTimeZone);
                 metadata.set(Metadata.ORIGINAL_DATE, datetimeNoTimeZone);
             }
             if (directory.containsTag(ExifDirectory.TAG_DATETIME)) {
@@ -424,7 +424,7 @@
                 metadata.set(Metadata.LAST_MODIFIED, datetimeNoTimeZone);
                 // If Date/Time Original does not exist this might be creation date
                 if (original == null) {
-                    metadata.set(Metadata.DATE, datetimeNoTimeZone);
+                    metadata.set(Metadata.DC_DATE, datetimeNoTimeZone);
                 }
             }
         }
@@ -447,15 +447,15 @@
                 }
             }
             if (directory.containsTag(IptcDirectory.TAG_HEADLINE)) {
-                metadata.set(Metadata.TITLE, directory.getString(IptcDirectory.TAG_HEADLINE));
+                metadata.set(Metadata.DC_TITLE, directory.getString(IptcDirectory.TAG_HEADLINE));
             } else if (directory.containsTag(IptcDirectory.TAG_OBJECT_NAME)) {
-                metadata.set(Metadata.TITLE, directory.getString(IptcDirectory.TAG_OBJECT_NAME));
+                metadata.set(Metadata.DC_TITLE, directory.getString(IptcDirectory.TAG_OBJECT_NAME));
             }
             if (directory.containsTag(IptcDirectory.TAG_BY_LINE)) {
                 metadata.set(Metadata.AUTHOR, directory.getString(IptcDirectory.TAG_BY_LINE));
             }
             if (directory.containsTag(IptcDirectory.TAG_CAPTION)) {
-                metadata.set(Metadata.DESCRIPTION,
+                metadata.set(Metadata.DC_DESCRIPTION,
                         // Looks like metadata extractor returns IPTC newlines as a single carriage return,
                         // but the exiv2 command does not so we change to line feed here because that is less surprising to users                        
                         directory.getString(IptcDirectory.TAG_CAPTION).replaceAll("\r\n?", "\n"));
Index: src/main/java/org/apache/tika/parser/image/PSDParser.java
===================================================================
--- src/main/java/org/apache/tika/parser/image/PSDParser.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/image/PSDParser.java	(working copy)
@@ -114,7 +114,7 @@
            
            // Is it one we can do something useful with?
            if(rb.id == ResourceBlock.ID_CAPTION) {
-              metadata.add(Metadata.DESCRIPTION, rb.getDataAsString()); 
+              metadata.add(Metadata.DC_DESCRIPTION, rb.getDataAsString()); 
            } else if(rb.id == ResourceBlock.ID_EXIF_1) {
               // TODO Parse the EXIF info
            } else if(rb.id == ResourceBlock.ID_EXIF_3) {
Index: src/main/java/org/apache/tika/parser/image/xmp/JempboxExtractor.java
===================================================================
--- src/main/java/org/apache/tika/parser/image/xmp/JempboxExtractor.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/image/xmp/JempboxExtractor.java	(working copy)
@@ -59,18 +59,18 @@
             XMPSchemaDublinCore dc = xmp.getDublinCoreSchema();
             if (dc != null) {
                 if (dc.getTitle() != null) {
-                    metadata.set(DublinCore.TITLE, dc.getTitle());
+                    metadata.set(DublinCore.DC_TITLE, dc.getTitle());
                 }
                 if (dc.getDescription() != null) {
-                    metadata.set(DublinCore.DESCRIPTION, dc.getDescription());
+                    metadata.set(DublinCore.DC_DESCRIPTION, dc.getDescription());
                 }
                 if (dc.getCreators() != null && dc.getCreators().size() > 0) {
-                    metadata.set(DublinCore.CREATOR, joinCreators(dc.getCreators()));
+                    metadata.set(DublinCore.DC_CREATOR, joinCreators(dc.getCreators()));
                 }
                 if (dc.getSubjects() != null && dc.getSubjects().size() > 0) {
                     Iterator<String> keywords = dc.getSubjects().iterator();
                     while (keywords.hasNext()) {
-                        metadata.add(DublinCore.SUBJECT, keywords.next());
+                        metadata.add(DublinCore.DC_SUBJECT, keywords.next());
                     }
                     // TODO should we set KEYWORDS too?
                     // All tested photo managers set the same in Iptc.Application2.Keywords and Xmp.dc.subject
Index: src/main/java/org/apache/tika/parser/iwork/KeynoteContentHandler.java
===================================================================
--- src/main/java/org/apache/tika/parser/iwork/KeynoteContentHandler.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/iwork/KeynoteContentHandler.java	(working copy)
@@ -90,7 +90,7 @@
         } else if (inMetadata && "key:authors".equals(qName)) {
             inMetaDataAuthors = true;
         } else if (inMetaDataTitle && "key:string".equals(qName)) {
-            metadata.set(Metadata.TITLE, attributes.getValue("sfa:string"));
+            metadata.set(Metadata.DC_TITLE, attributes.getValue("sfa:string"));
         } else if (inMetaDataAuthors && "key:string".equals(qName)) {
             metadata.add(Metadata.AUTHOR, attributes.getValue("sfa:string"));
         } else if (inSlide && "sf:tabular-model".equals(qName)) {
Index: src/main/java/org/apache/tika/parser/iwork/NumbersContentHandler.java
===================================================================
--- src/main/java/org/apache/tika/parser/iwork/NumbersContentHandler.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/iwork/NumbersContentHandler.java	(working copy)
@@ -205,8 +205,9 @@
     private String resolveMetadataKey(String localName) {
         if ("authors".equals(localName)) {
             return Metadata.AUTHOR;
+        } else if ("title".equals(localName)) {
+        	return Metadata.DC_TITLE.getName();
         }
-
         return localName;
     }
 }
\ No newline at end of file
Index: src/main/java/org/apache/tika/parser/iwork/PagesContentHandler.java
===================================================================
--- src/main/java/org/apache/tika/parser/iwork/PagesContentHandler.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/iwork/PagesContentHandler.java	(working copy)
@@ -180,13 +180,13 @@
         if ("sf:authors".equals(metaDataQName)) {
             metaDataKey = Metadata.AUTHOR;
         } else if ("sf:title".equals(metaDataQName)) {
-            metaDataKey = Metadata.TITLE;
+            metaDataKey = Metadata.DC_TITLE;
         } else if ("sl:SLCreationDateProperty".equals(metaDataQName)) {
             metaDataKey = Metadata.CREATION_DATE;
         } else if ("sl:SLLastModifiedDateProperty".equals(metaDataQName)) {
             metaDataKey = Metadata.LAST_MODIFIED;
         } else if ("sl:language".equals(metaDataQName)) {
-            metaDataKey = Metadata.LANGUAGE;
+            metaDataKey = Metadata.DC_LANGUAGE;
         }
         return metaDataKey;
     }
Index: src/main/java/org/apache/tika/parser/mail/MailContentHandler.java
===================================================================
--- src/main/java/org/apache/tika/parser/mail/MailContentHandler.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/mail/MailContentHandler.java	(working copy)
@@ -161,7 +161,7 @@
                     metadata.add(Metadata.AUTHOR, from);
                 }
             } else if (fieldname.equalsIgnoreCase("Subject")) {
-                metadata.add(Metadata.SUBJECT,
+                metadata.add(Metadata.DC_SUBJECT,
                         ((UnstructuredField) parsedField).getValue());
             } else if (fieldname.equalsIgnoreCase("To")) {
                 processAddressList(parsedField, "To:", Metadata.MESSAGE_TO);
@@ -171,7 +171,7 @@
                 processAddressList(parsedField, "Bcc:", Metadata.MESSAGE_BCC);
             } else if (fieldname.equalsIgnoreCase("Date")) {
                 DateTimeField dateField = (DateTimeField) parsedField;
-                metadata.set(Metadata.DATE, dateField.getDate());
+                metadata.set(Metadata.DC_DATE, dateField.getDate());
                 metadata.set(Metadata.CREATION_DATE, dateField.getDate());
             }
         } catch (RuntimeException me) {
Index: src/main/java/org/apache/tika/parser/mbox/MboxParser.java
===================================================================
--- src/main/java/org/apache/tika/parser/mbox/MboxParser.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/mbox/MboxParser.java	(working copy)
@@ -198,7 +198,7 @@
 
         if (headerTag.equalsIgnoreCase("From")) {
             metadata.add(Metadata.AUTHOR, headerContent);
-            metadata.add(Metadata.CREATOR, headerContent);
+            metadata.add(Metadata.DC_CREATOR, headerContent);
         } else if (headerTag.equalsIgnoreCase("To") ||
         	headerTag.equalsIgnoreCase("Cc") ||
         	headerTag.equalsIgnoreCase("Bcc")) {
@@ -217,26 +217,26 @@
             }
             metadata.add(property, headerContent);
         } else if (headerTag.equalsIgnoreCase("Subject")) {
-            metadata.add(Metadata.SUBJECT, headerContent);
-            metadata.add(Metadata.TITLE, headerContent);
+            metadata.add(Metadata.DC_SUBJECT, headerContent);
+            metadata.add(Metadata.DC_TITLE, headerContent);
         } else if (headerTag.equalsIgnoreCase("Date")) {
             try {
                 Date date = parseDate(headerContent);
-                metadata.set(Metadata.DATE, date);
+                metadata.set(Metadata.DC_DATE, date);
                 metadata.set(Metadata.CREATION_DATE, date);
             } catch (ParseException e) {
                 // ignoring date because format was not understood
             }
         } else if (headerTag.equalsIgnoreCase("Message-Id")) {
-            metadata.add(Metadata.IDENTIFIER, headerContent);
+            metadata.add(Metadata.DC_IDENTIFIER, headerContent);
         } else if (headerTag.equalsIgnoreCase("In-Reply-To")) {
-            metadata.add(Metadata.RELATION, headerContent);
+            metadata.add(Metadata.DC_RELATION, headerContent);
         } else if (headerTag.equalsIgnoreCase("Content-Type")) {
             // TODO - key off content-type in headers to
             // set mapping to use for content and convert if necessary.
 
             metadata.add(Metadata.CONTENT_TYPE, headerContent);
-            metadata.add(Metadata.FORMAT, headerContent);
+            metadata.add(Metadata.DC_FORMAT, headerContent);
         } else {
             metadata.add(EMAIL_HEADER_METADATA_PREFIX + headerTag, headerContent);
         }
Index: src/main/java/org/apache/tika/parser/microsoft/OutlookExtractor.java
===================================================================
--- src/main/java/org/apache/tika/parser/microsoft/OutlookExtractor.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/microsoft/OutlookExtractor.java	(working copy)
@@ -102,8 +102,8 @@
            metadata.set(Metadata.MESSAGE_CC, msg.getDisplayCC());
            metadata.set(Metadata.MESSAGE_BCC, msg.getDisplayBCC());
            
-           metadata.set(Metadata.TITLE, subject);
-           metadata.set(Metadata.SUBJECT, msg.getConversationTopic());
+           metadata.set(Metadata.DC_TITLE, subject);
+           metadata.set(Metadata.DC_SUBJECT, msg.getConversationTopic());
            
            try {
            for(String recipientAddress : msg.getRecipientEmailAddressList()) {
@@ -115,7 +115,7 @@
            // Date - try two ways to find it
            // First try via the proper chunk
            if(msg.getMessageDate() != null) {
-              metadata.set(Metadata.DATE, msg.getMessageDate().getTime());
+              metadata.set(Metadata.DC_DATE, msg.getMessageDate().getTime());
               metadata.set(Metadata.CREATION_DATE, msg.getMessageDate().getTime());
               metadata.set(Metadata.LAST_SAVED, msg.getMessageDate().getTime());
            } else {
@@ -130,12 +130,12 @@
                             // See if we can parse it as a normal mail date
                             try {
                                Date d = MboxParser.parseDate(date);
-                               metadata.set(Metadata.DATE, d);
+                               metadata.set(Metadata.DC_DATE, d);
                                metadata.set(Metadata.CREATION_DATE, d);
                                metadata.set(Metadata.LAST_SAVED, d);
                             } catch(ParseException e) {
                                // Store it as-is, and hope for the best...
-                               metadata.set(Metadata.DATE, date);
+                               metadata.set(Metadata.DC_DATE, date);
                                metadata.set(Metadata.CREATION_DATE, date);
                                metadata.set(Metadata.LAST_SAVED, date);
                             }
Index: src/main/java/org/apache/tika/parser/microsoft/SummaryExtractor.java
===================================================================
--- src/main/java/org/apache/tika/parser/microsoft/SummaryExtractor.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/microsoft/SummaryExtractor.java	(working copy)
@@ -90,10 +90,10 @@
     }
 
     private void parse(SummaryInformation summary) {
-        set(Metadata.TITLE, summary.getTitle());
+        set(Metadata.DC_TITLE.getName(), summary.getTitle());
         set(Metadata.AUTHOR, summary.getAuthor());
         set(Metadata.KEYWORDS, summary.getKeywords());
-        set(Metadata.SUBJECT, summary.getSubject());
+        set(Metadata.DC_SUBJECT.getName(), summary.getSubject());
         set(Metadata.LAST_AUTHOR, summary.getLastAuthor());
         set(Metadata.COMMENTS, summary.getComments());
         set(Metadata.TEMPLATE, summary.getTemplate());
@@ -115,7 +115,7 @@
     private void parse(DocumentSummaryInformation summary) {
         set(Metadata.COMPANY, summary.getCompany());
         set(Metadata.MANAGER, summary.getManager());
-        set(Metadata.LANGUAGE, getLanguage(summary));
+        set(Metadata.DC_LANGUAGE.getName(), getLanguage(summary));
         set(Metadata.CATEGORY, summary.getCategory());
         set(Metadata.SLIDE_COUNT, summary.getSlideCount());
         if (summary.getSlideCount() > 0) {
Index: src/main/java/org/apache/tika/parser/microsoft/TNEFParser.java
===================================================================
--- src/main/java/org/apache/tika/parser/microsoft/TNEFParser.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/microsoft/TNEFParser.java	(working copy)
@@ -81,7 +81,7 @@
        // Set the message subject if known
        String subject = msg.getSubject();
        if(subject != null && subject.length() > 0) {
-          metadata.set(Metadata.SUBJECT, subject);
+          metadata.set(Metadata.DC_SUBJECT, subject);
        }
        
        // Recurse into the message body RTF
Index: src/main/java/org/apache/tika/parser/microsoft/ooxml/MetadataExtractor.java
===================================================================
--- src/main/java/org/apache/tika/parser/microsoft/ooxml/MetadataExtractor.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/microsoft/ooxml/MetadataExtractor.java	(working copy)
@@ -65,21 +65,21 @@
         addProperty(metadata, Metadata.CATEGORY, propsHolder.getCategoryProperty());
         addProperty(metadata, Metadata.CONTENT_STATUS, propsHolder
                 .getContentStatusProperty());
-        addProperty(metadata, Metadata.DATE, propsHolder
+        addProperty(metadata, Metadata.DC_DATE, propsHolder
                 .getCreatedProperty());
         addProperty(metadata, Metadata.CREATION_DATE, propsHolder
                 .getCreatedProperty());
-        addProperty(metadata, Metadata.CREATOR, propsHolder
+        addProperty(metadata, Metadata.DC_CREATOR.getName(), propsHolder
                 .getCreatorProperty());
         addProperty(metadata, Metadata.AUTHOR, propsHolder
                 .getCreatorProperty());
-        addProperty(metadata, Metadata.DESCRIPTION, propsHolder
+        addProperty(metadata, Metadata.DC_DESCRIPTION.getName(), propsHolder
                 .getDescriptionProperty());
-        addProperty(metadata, Metadata.IDENTIFIER, propsHolder
+        addProperty(metadata, Metadata.DC_IDENTIFIER.getName(), propsHolder
                 .getIdentifierProperty());
         addProperty(metadata, Metadata.KEYWORDS, propsHolder
                 .getKeywordsProperty());
-        addProperty(metadata, Metadata.LANGUAGE, propsHolder
+        addProperty(metadata, Metadata.DC_LANGUAGE.getName(), propsHolder
                 .getLanguageProperty());
         addProperty(metadata, Metadata.LAST_AUTHOR, propsHolder
                 .getLastModifiedByProperty());
@@ -89,9 +89,9 @@
                 .getModifiedProperty());
         addProperty(metadata, Metadata.REVISION_NUMBER, propsHolder
                 .getRevisionProperty());
-        addProperty(metadata, Metadata.SUBJECT, propsHolder
+        addProperty(metadata, Metadata.DC_SUBJECT.getName(), propsHolder
                 .getSubjectProperty());
-        addProperty(metadata, Metadata.TITLE, propsHolder.getTitleProperty());
+        addProperty(metadata, Metadata.DC_TITLE.getName(), propsHolder.getTitleProperty());
         addProperty(metadata, Metadata.VERSION, propsHolder.getVersionProperty());
     }
 
@@ -107,7 +107,7 @@
                 .getCharacters());
         addProperty(metadata, Metadata.CHARACTER_COUNT_WITH_SPACES, propsHolder
                 .getCharactersWithSpaces());
-        addProperty(metadata, Metadata.PUBLISHER, propsHolder.getCompany());
+        addProperty(metadata, Metadata.DC_PUBLISHER.getName(), propsHolder.getCompany());
         addProperty(metadata, Metadata.LINE_COUNT, propsHolder.getLines());
         addProperty(metadata, Metadata.MANAGER, propsHolder.getManager());
         addProperty(metadata, Metadata.NOTES, propsHolder.getNotes());
Index: src/main/java/org/apache/tika/parser/mp3/Mp3Parser.java
===================================================================
--- src/main/java/org/apache/tika/parser/mp3/Mp3Parser.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/mp3/Mp3Parser.java	(working copy)
@@ -71,7 +71,7 @@
         if (audioAndTags.tags.length > 0) {
            CompositeTagHandler tag = new CompositeTagHandler(audioAndTags.tags);
 
-           metadata.set(Metadata.TITLE, tag.getTitle());
+           metadata.set(Metadata.DC_TITLE, tag.getTitle());
            metadata.set(Metadata.AUTHOR, tag.getArtist());
            metadata.set(XMPDM.ARTIST, tag.getArtist());
            metadata.set(XMPDM.COMPOSER, tag.getComposer());
Index: src/main/java/org/apache/tika/parser/mp4/MP4Parser.java
===================================================================
--- src/main/java/org/apache/tika/parser/mp4/MP4Parser.java	(revision 1245059)
+++ src/main/java/org/apache/tika/parser/mp4/MP4Parser.java	(working copy)
@@ -167,7 +167,7 @@
                  MP4TimeToDate(mHeader.getCreationTime())
            );
            metadata.set(
-                 Property.externalDate(Metadata.MODIFIED), // TODO Should be a real property
+                 Metadata.DC_MODIFIED,
                  MP4TimeToDate(mHeader.getModificationTime())
            );
            
@@ -193,7 +193,7 @@
                  MP4TimeToDate(header.getCreationTime())
            );
            metadata.set(
-                 Property.externalDate(Metadata.MODIFIED), // TODO Should be a real property
+                 Metadata.DC_MODIFIED,
                  MP4TimeToDate(header.getModificationTime())
            );
            
@@ -229,7 +229,7 @@
            if (apple != null) {
               // Title
               AppleTrackTitleBox title = getOrNull(apple, AppleTrackTitleBox.class);
-              addMetadata(Metadata.TITLE, metadata, title);
+              addMetadata(Metadata.DC_TITLE, metadata, title);
 
               // Artist
               AppleArtistBox artist = getOrNull(apple, AppleArtistBox.class);
Index: src/main/java/org/apache/tika/parser/netcdf/NetCDFParser.java
===================================================================
--- src/main/java/org/apache/tika/parser/netcdf/NetCDFParser.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/netcdf/NetCDFParser.java	(working copy)
@@ -86,7 +86,7 @@
 
             // first parse out the set of global attributes
             for (Attribute attr : ncFile.getGlobalAttributes()) {
-                String attrName = attr.getName();
+                String attrName = resolveMetadataKey(attr.getName());
                 if (attr.getDataType().isString()) {
                     metadata.add(attrName, attr.getStringValue());
                 } else if (attr.getDataType().isNumeric()) {
@@ -102,5 +102,12 @@
         xhtml.startDocument();
         xhtml.endDocument();
     }
+    
+    private String resolveMetadataKey(String attrName) {
+        if ("title".equals(attrName)) {
+        	return Metadata.DC_TITLE.getName();
+        }
+        return attrName;
+    }
 
 }
Index: src/main/java/org/apache/tika/parser/pdf/PDFParser.java
===================================================================
--- src/main/java/org/apache/tika/parser/pdf/PDFParser.java	(revision 1245059)
+++ src/main/java/org/apache/tika/parser/pdf/PDFParser.java	(working copy)
@@ -152,12 +152,12 @@
             throws TikaException {
         PDDocumentInformation info = document.getDocumentInformation();
         metadata.set(PagedText.N_PAGES, document.getNumberOfPages());
-        addMetadata(metadata, Metadata.TITLE, info.getTitle());
+        addMetadata(metadata, Metadata.DC_TITLE.getName(), info.getTitle());
         addMetadata(metadata, Metadata.AUTHOR, info.getAuthor());
-        addMetadata(metadata, Metadata.CREATOR, info.getCreator());
+        addMetadata(metadata, Metadata.DC_CREATOR.getName(), info.getCreator());
         addMetadata(metadata, Metadata.KEYWORDS, info.getKeywords());
         addMetadata(metadata, "producer", info.getProducer());
-        addMetadata(metadata, Metadata.SUBJECT, info.getSubject());
+        addMetadata(metadata, Metadata.DC_SUBJECT.getName(), info.getSubject());
         addMetadata(metadata, "trapped", info.getTrapped());
         try {
             addMetadata(metadata, "created", info.getCreationDate());
Index: src/main/java/org/apache/tika/parser/prt/PRTParser.java
===================================================================
--- src/main/java/org/apache/tika/parser/prt/PRTParser.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/prt/PRTParser.java	(working copy)
@@ -85,7 +85,7 @@
              "-" + dateStr.substring(6,8) + "T" + dateStr.substring(8,10) + ":" +
              dateStr.substring(10, 12) + ":00";
           metadata.set(Metadata.CREATION_DATE, formattedDate);
-          metadata.set(Metadata.DATE, formattedDate);
+          metadata.set(Metadata.DC_DATE, formattedDate);
        }
        metadata.set(Metadata.CONTENT_TYPE, PRT_MIME_TYPE);
        
@@ -94,7 +94,7 @@
        IOUtils.readFully(stream, desc);
        String description = extractText(desc, true);
        if(description.length() > 0) {
-          metadata.set(Metadata.DESCRIPTION, description);
+          metadata.set(Metadata.DC_DESCRIPTION, description);
        }
        
        // Now look for text
Index: src/main/java/org/apache/tika/parser/rtf/TextExtractor.java
===================================================================
--- src/main/java/org/apache/tika/parser/rtf/TextExtractor.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/rtf/TextExtractor.java	(working copy)
@@ -827,9 +827,9 @@
                 if (equals("author")) {
                     nextMetaData = Metadata.AUTHOR;
                 } else if (equals("title")) {
-                    nextMetaData = Metadata.TITLE;
+                    nextMetaData = Metadata.DC_TITLE.getName();
                 } else if (equals("subject")) {
-                    nextMetaData = Metadata.SUBJECT;
+                    nextMetaData = Metadata.DC_SUBJECT.getName();
                 } else if (equals("keywords")) {
                     nextMetaData = Metadata.KEYWORDS;
                 } else if (equals("category")) {
Index: src/main/java/org/apache/tika/parser/xml/DcXMLParser.java
===================================================================
--- src/main/java/org/apache/tika/parser/xml/DcXMLParser.java	(revision 1237614)
+++ src/main/java/org/apache/tika/parser/xml/DcXMLParser.java	(working copy)
@@ -18,6 +18,7 @@
 
 import org.apache.tika.metadata.DublinCore;
 import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.Property;
 import org.apache.tika.parser.ParseContext;
 import org.apache.tika.sax.TeeContentHandler;
 import org.xml.sax.ContentHandler;
@@ -31,28 +32,28 @@
     private static final long serialVersionUID = 4905318835463880819L;
 
     private static ContentHandler getDublinCoreHandler(
-            Metadata metadata, String name, String element) {
+            Metadata metadata, Property property, String element) {
         return new ElementMetadataHandler(
                 "http://purl.org/dc/elements/1.1/", element,
-                metadata, name);
+                metadata, property);
     }
 
     protected ContentHandler getContentHandler(
             ContentHandler handler, Metadata metadata, ParseContext context) {
         return new TeeContentHandler(
                 super.getContentHandler(handler, metadata, context),
-                getDublinCoreHandler(metadata, DublinCore.TITLE, "title"),
-                getDublinCoreHandler(metadata, DublinCore.SUBJECT, "subject"),
-                getDublinCoreHandler(metadata, DublinCore.CREATOR, "creator"),
-                getDublinCoreHandler(metadata, DublinCore.DESCRIPTION, "description"),
-                getDublinCoreHandler(metadata, DublinCore.PUBLISHER, "publisher"),
-                getDublinCoreHandler(metadata, DublinCore.CONTRIBUTOR, "contributor"),
-                getDublinCoreHandler(metadata, DublinCore.DATE.getName(), "date"),
-                getDublinCoreHandler(metadata, DublinCore.TYPE, "type"),
-                getDublinCoreHandler(metadata, DublinCore.FORMAT, "format"),
-                getDublinCoreHandler(metadata, DublinCore.IDENTIFIER, "identifier"),
-                getDublinCoreHandler(metadata, DublinCore.LANGUAGE, "language"),
-                getDublinCoreHandler(metadata, DublinCore.RIGHTS, "rights"));
+                getDublinCoreHandler(metadata, DublinCore.DC_TITLE, "title"),
+                getDublinCoreHandler(metadata, DublinCore.DC_SUBJECT, "subject"),
+                getDublinCoreHandler(metadata, DublinCore.DC_CREATOR, "creator"),
+                getDublinCoreHandler(metadata, DublinCore.DC_DESCRIPTION, "description"),
+                getDublinCoreHandler(metadata, DublinCore.DC_PUBLISHER, "publisher"),
+                getDublinCoreHandler(metadata, DublinCore.DC_CONTRIBUTOR, "contributor"),
+                getDublinCoreHandler(metadata, DublinCore.DC_DATE, "date"),
+                getDublinCoreHandler(metadata, DublinCore.DC_TYPE, "type"),
+                getDublinCoreHandler(metadata, DublinCore.DC_FORMAT, "format"),
+                getDublinCoreHandler(metadata, DublinCore.DC_IDENTIFIER, "identifier"),
+                getDublinCoreHandler(metadata, DublinCore.DC_LANGUAGE, "language"),
+                getDublinCoreHandler(metadata, DublinCore.DC_RIGHTS, "rights"));
     }
 
 }
Index: src/test/java/org/apache/tika/TestParsers.java
===================================================================
--- src/test/java/org/apache/tika/TestParsers.java	(revision 1197289)
+++ src/test/java/org/apache/tika/TestParsers.java	(working copy)
@@ -51,7 +51,7 @@
         } finally {
             stream.close();
         }
-        assertEquals("Sample Word Document", metadata.get(Metadata.TITLE));
+        assertEquals("Sample Word Document", metadata.get(Metadata.DC_TITLE));
     }
 
     public void testEXCELExtraction() throws Exception {
@@ -69,7 +69,7 @@
         } finally {
             stream.close();
         }
-        assertEquals("Simple Excel document", metadata.get(Metadata.TITLE));
+        assertEquals("Simple Excel document", metadata.get(Metadata.DC_TITLE));
     }
 
     public void testOptionalHyphen() throws Exception {
Index: src/test/java/org/apache/tika/parser/ParsingReaderTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/ParsingReaderTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/ParsingReaderTest.java	(working copy)
@@ -83,7 +83,7 @@
                 new AutoDetectParser(), stream, metadata, new ParseContext());
         try {
             // Metadata should already be available
-            assertEquals("Simple Excel document", metadata.get(Metadata.TITLE));
+            assertEquals("Simple Excel document", metadata.get(Metadata.DC_TITLE));
             // Check that the internal buffering isn't broken
             assertEquals('F', (char) reader.read());
             assertEquals('e', (char) reader.read());
Index: src/test/java/org/apache/tika/parser/asm/ClassParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/asm/ClassParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/asm/ClassParserTest.java	(working copy)
@@ -32,7 +32,7 @@
         String content = new Tika().parseToString(
                 ClassParserTest.class.getResourceAsStream(path), metadata);
 
-        assertEquals("AutoDetectParser", metadata.get(Metadata.TITLE));
+        assertEquals("AutoDetectParser", metadata.get(Metadata.DC_TITLE));
         assertEquals(
                 "AutoDetectParser.class",
                 metadata.get(Metadata.RESOURCE_NAME_KEY));
Index: src/test/java/org/apache/tika/parser/dwg/DWGParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/dwg/DWGParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/dwg/DWGParserTest.java	(working copy)
@@ -76,9 +76,9 @@
             assertEquals("image/vnd.dwg", metadata.get(Metadata.CONTENT_TYPE));
 
             assertEquals("The quick brown fox jumps over the lazy dog", 
-                    metadata.get(Metadata.TITLE));
+                    metadata.get(Metadata.DC_TITLE));
             assertEquals("Gym class featuring a brown fox and lazy dog",
-                    metadata.get(Metadata.SUBJECT));
+                    metadata.get(Metadata.DC_SUBJECT));
             assertEquals("Nevin Nollop",
                     metadata.get(Metadata.AUTHOR));
             assertEquals("Pangram, fox, dog",
@@ -86,7 +86,7 @@
             assertEquals("Lorem ipsum",
                     metadata.get(Metadata.COMMENTS).substring(0,11));
             assertEquals("http://www.alfresco.com",
-                    metadata.get(Metadata.RELATION));
+                    metadata.get(Metadata.DC_RELATION));
 
             String content = handler.toString();
             assertTrue(content.contains("The quick brown fox jumps over the lazy dog"));
@@ -105,12 +105,12 @@
 
             assertEquals("image/vnd.dwg", metadata.get(Metadata.CONTENT_TYPE));
             
-            assertNull(metadata.get(Metadata.TITLE));
-            assertNull(metadata.get(Metadata.SUBJECT));
+            assertNull(metadata.get(Metadata.DC_TITLE));
+            assertNull(metadata.get(Metadata.DC_SUBJECT));
             assertNull(metadata.get(Metadata.AUTHOR));
             assertNull(metadata.get(Metadata.KEYWORDS));
             assertNull(metadata.get(Metadata.COMMENTS));
-            assertNull(metadata.get(Metadata.RELATION));
+            assertNull(metadata.get(Metadata.DC_RELATION));
 
             String content = handler.toString();
             assertTrue(content.contains(""));
@@ -128,9 +128,9 @@
             assertEquals("image/vnd.dwg", metadata.get(Metadata.CONTENT_TYPE));
 
             assertEquals("Test Title", 
-                    metadata.get(Metadata.TITLE));
+                    metadata.get(Metadata.DC_TITLE));
             assertEquals("Test Subject",
-                    metadata.get(Metadata.SUBJECT));
+                    metadata.get(Metadata.DC_SUBJECT));
             assertEquals("My Author",
                     metadata.get(Metadata.AUTHOR));
             assertEquals("My keyword1, MyKeyword2",
@@ -140,7 +140,7 @@
             assertEquals("bejanpol",
                     metadata.get(Metadata.LAST_AUTHOR));
             assertEquals("http://mycompany/drawings",
-                    metadata.get(Metadata.RELATION));
+                    metadata.get(Metadata.DC_RELATION));
             assertEquals("MyCustomPropertyValue",
                   metadata.get("MyCustomProperty"));
 
Index: src/test/java/org/apache/tika/parser/epub/EpubParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/epub/EpubParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/epub/EpubParserTest.java	(working copy)
@@ -38,11 +38,11 @@
             assertEquals("application/epub+zip",
                     metadata.get(Metadata.CONTENT_TYPE));
             assertEquals("en",
-                    metadata.get(Metadata.LANGUAGE));
+                    metadata.get(Metadata.DC_LANGUAGE));
             assertEquals("This is an ePub test publication for Tika.",
-                    metadata.get(Metadata.DESCRIPTION));
+                    metadata.get(Metadata.DC_DESCRIPTION));
             assertEquals("Apache",
-                    metadata.get(Metadata.PUBLISHER));
+                    metadata.get(Metadata.DC_PUBLISHER));
 
             String content = handler.toString();
             assertTrue(content.contains("Plus a simple div"));
Index: src/test/java/org/apache/tika/parser/feed/FeedParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/feed/FeedParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/feed/FeedParserTest.java	(working copy)
@@ -41,8 +41,8 @@
             assertFalse(content == null);
 
             assertEquals("Sample RSS File for Junit test",
-                    metadata.get(Metadata.DESCRIPTION));
-            assertEquals("TestChannel", metadata.get(Metadata.TITLE));
+                    metadata.get(Metadata.DC_DESCRIPTION));
+            assertEquals("TestChannel", metadata.get(Metadata.DC_TITLE));
 
             // TODO find a way of testing the paragraphs and anchors
 
Index: src/test/java/org/apache/tika/parser/font/AdobeFontMetricParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/font/AdobeFontMetricParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/font/AdobeFontMetricParserTest.java	(working copy)
@@ -46,7 +46,7 @@
         }
 
         assertEquals("application/x-font-adobe-metric", metadata.get(Metadata.CONTENT_TYPE));
-        assertEquals("TestFullName", metadata.get(Metadata.TITLE));
+        assertEquals("TestFullName", metadata.get(Metadata.DC_TITLE));
         assertEquals("Fri Jul 15 17:50:51 2011", metadata.get(Metadata.CREATION_DATE));
         
         assertEquals("TestFontName", metadata.get("FontName"));
Index: src/test/java/org/apache/tika/parser/html/HtmlParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/html/HtmlParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/html/HtmlParserTest.java	(working copy)
@@ -76,7 +76,7 @@
         }
 
         assertEquals(
-                "Title : Test Indexation Html", metadata.get(Metadata.TITLE));
+                "Title : Test Indexation Html", metadata.get(Metadata.DC_TITLE));
         assertEquals("Tika Developers", metadata.get("Author"));
         assertEquals("5", metadata.get("refresh"));
         
@@ -120,7 +120,7 @@
                 HtmlParserTest.class.getResourceAsStream(path), metadata);
 
         assertEquals("application/xhtml+xml", metadata.get(Metadata.CONTENT_TYPE));
-        assertEquals("XHTML test document", metadata.get(Metadata.TITLE));
+        assertEquals("XHTML test document", metadata.get(Metadata.DC_TITLE));
 
         assertEquals("Tika Developers", metadata.get("Author"));
         assertEquals("5", metadata.get("refresh"));
@@ -258,7 +258,7 @@
         new HtmlParser().parse (
                 new ByteArrayInputStream(test.getBytes("UTF-8")),
                 new BodyContentHandler(),  metadata, new ParseContext());
-        assertEquals("\u017d", metadata.get(Metadata.TITLE));
+        assertEquals("\u017d", metadata.get(Metadata.DC_TITLE));
     }
 
     /**
Index: src/test/java/org/apache/tika/parser/ibooks/iBooksParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/ibooks/iBooksParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/ibooks/iBooksParserTest.java	(working copy)
@@ -39,11 +39,11 @@
             assertEquals("application/x-ibooks+zip",
                     metadata.get(Metadata.CONTENT_TYPE));
             assertEquals("en-GB",
-                    metadata.get(Metadata.LANGUAGE));
+                    metadata.get(Metadata.DC_LANGUAGE));
             assertEquals("iBooks Author v1.0",
-                    metadata.get(Metadata.CONTRIBUTOR));
+                    metadata.get(Metadata.DC_CONTRIBUTOR));
             assertEquals("Apache",
-                    metadata.get(Metadata.CREATOR));
+                    metadata.get(Metadata.DC_CREATOR));
 
             /* TODO For some reason, the xhtml files in iBooks-style ePub are not parsed properly, and the content comes back empty.git che
             String content = handler.toString();
Index: src/test/java/org/apache/tika/parser/image/ImageMetadataExtractorTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/image/ImageMetadataExtractorTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/image/ImageMetadataExtractorTest.java	(working copy)
@@ -66,7 +66,7 @@
         Metadata metadata = new Metadata();
         
         new ImageMetadataExtractor.ExifHandler().handle(exif, metadata);
-        assertEquals("Should be ISO date without time zone", "2000-01-01T00:00:00", metadata.get(DublinCore.DATE));
+        assertEquals("Should be ISO date without time zone", "2000-01-01T00:00:00", metadata.get(DublinCore.DC_DATE));
     }
 
     public void testExifHandlerParseDateFallback() throws MetadataException {
@@ -77,7 +77,7 @@
         Metadata metadata = new Metadata();
         
         new ImageMetadataExtractor.ExifHandler().handle(exif, metadata);
-        assertEquals("Should try EXIF Date/Time if Original is not set", "1999-01-01T00:00:00", metadata.get(DublinCore.DATE));
+        assertEquals("Should try EXIF Date/Time if Original is not set", "1999-01-01T00:00:00", metadata.get(DublinCore.DC_DATE));
     }
     
     public void testExifHandlerParseDateError() throws MetadataException {
@@ -88,7 +88,7 @@
         Metadata metadata = new Metadata();
         
         new ImageMetadataExtractor.ExifHandler().handle(exif, metadata);
-        assertEquals("Parsing should proceed without date", null, metadata.get(DublinCore.DATE));
+        assertEquals("Parsing should proceed without date", null, metadata.get(DublinCore.DC_DATE));
     }
     
     public void testCopyUnknownFieldsHandler() throws MetadataException {
@@ -100,7 +100,7 @@
         when(t2.getTagName()).thenReturn(Metadata.KEYWORDS);
         when(t2.getDescription()).thenReturn("known");
         Tag t3 = mock(Tag.class);
-        when(t3.getTagName()).thenReturn(Metadata.DESCRIPTION);
+        when(t3.getTagName()).thenReturn(Metadata.DC_DESCRIPTION.getName());
         when(t3.getDescription()).thenReturn("known");
         Iterator<Tag> tags = Arrays.asList(t1, t2, t3).iterator();
         when(d.getTagIterator()).thenReturn(tags);
@@ -109,7 +109,7 @@
         assertEquals("t1", metadata.get("Image Description"));
         assertNull("keywords should be excluded from bulk copy because it is a defined field",
                 metadata.get(Metadata.KEYWORDS));
-        assertNull(metadata.get(Metadata.DESCRIPTION));
+        assertNull(metadata.get(Metadata.DC_DESCRIPTION));
     }
     
 }
Index: src/test/java/org/apache/tika/parser/image/MetadataFieldsTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/image/MetadataFieldsTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/image/MetadataFieldsTest.java	(working copy)
@@ -26,7 +26,7 @@
     public void testIsMetadataField() {
         assertFalse(MetadataFields.isMetadataField("random string that is not a field"));
         assertFalse(MetadataFields.isMetadataField("xyz"));
-        assertTrue(MetadataFields.isMetadataField(DublinCore.SUBJECT));
+        assertTrue(MetadataFields.isMetadataField(DublinCore.DC_SUBJECT.getName()));
         assertTrue(MetadataFields.isMetadataField(TIFF.F_NUMBER.getName()));
     }
 
Index: src/test/java/org/apache/tika/parser/image/TiffParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/image/TiffParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/image/TiffParserTest.java	(working copy)
@@ -41,7 +41,7 @@
         assertEquals("Licensed to the Apache Software Foundation (ASF) under one or " +
         		"more contributor license agreements.  See the NOTICE file " +
         		"distributed with this work for additional information regarding " +
-        		"copyright ownership.", metadata.get(Metadata.DESCRIPTION));
+        		"copyright ownership.", metadata.get(Metadata.DC_DESCRIPTION));
         
         // All EXIF/TIFF tags
         assertEquals("Inch", metadata.get(Metadata.RESOLUTION_UNIT));
@@ -53,7 +53,7 @@
         assertEquals("3", metadata.get(Metadata.SAMPLES_PER_PIXEL));
         
         // Embedded XMP
-        List<String> subject = Arrays.asList(metadata.getValues(Metadata.SUBJECT));
+        List<String> subject = Arrays.asList(metadata.getValues(Metadata.DC_SUBJECT));
         assertTrue("got " + subject, subject.contains("cat"));
         assertTrue("got " + subject, subject.contains("garden"));
     }
Index: src/test/java/org/apache/tika/parser/image/xmp/JempboxExtractorTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/image/xmp/JempboxExtractorTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/image/xmp/JempboxExtractorTest.java	(working copy)
@@ -33,20 +33,20 @@
         Metadata metadata = new Metadata();
         InputStream stream = getClass().getResourceAsStream("/test-documents/testJPEG_commented.jpg");
         // set some values before extraction to see that they are overridden
-        metadata.set(Metadata.TITLE, "old title");
-        metadata.set(Metadata.DESCRIPTION, "old description");
-        metadata.set(Metadata.CREATOR, "previous author");
+        metadata.set(Metadata.DC_TITLE, "old title");
+        metadata.set(Metadata.DC_DESCRIPTION, "old description");
+        metadata.set(Metadata.DC_CREATOR, "previous author");
         // ... or kept in case the field is multi-value
-        metadata.add(Metadata.SUBJECT, "oldkeyword");
+        metadata.add(Metadata.DC_SUBJECT, "oldkeyword");
         
         JempboxExtractor extractor = new JempboxExtractor(metadata);
         extractor.parse(stream);
         
         // DublinCore fields
-        assertEquals("Tosteberga \u00C4ngar", metadata.get(Metadata.TITLE));
-        assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(Metadata.DESCRIPTION));
-        assertEquals("Some Tourist", metadata.get(Metadata.CREATOR));
-        Collection<String> keywords = Arrays.asList(metadata.getValues(Metadata.SUBJECT));  
+        assertEquals("Tosteberga \u00C4ngar", metadata.get(Metadata.DC_TITLE));
+        assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(Metadata.DC_DESCRIPTION));
+        assertEquals("Some Tourist", metadata.get(Metadata.DC_CREATOR));
+        Collection<String> keywords = Arrays.asList(metadata.getValues(Metadata.DC_SUBJECT));  
         assertTrue(keywords.contains("oldkeyword"));
         assertTrue(keywords.contains("grazelands"));
         assertTrue(keywords.contains("nature reserve"));
@@ -62,10 +62,10 @@
         extractor.parse(stream);
         
         // DublinCore fields
-        assertEquals("Tosteberga \u00C4ngar", metadata.get(Metadata.TITLE));
-        assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(Metadata.DESCRIPTION));
-        assertEquals("Some Tourist", metadata.get(Metadata.CREATOR));
-        Collection<String> keywords = Arrays.asList(metadata.getValues(Metadata.SUBJECT));  
+        assertEquals("Tosteberga \u00C4ngar", metadata.get(Metadata.DC_TITLE));
+        assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(Metadata.DC_DESCRIPTION));
+        assertEquals("Some Tourist", metadata.get(Metadata.DC_CREATOR));
+        Collection<String> keywords = Arrays.asList(metadata.getValues(Metadata.DC_SUBJECT));  
         assertTrue(keywords.contains("bird watching"));
         assertTrue(keywords.contains("coast"));
     }
@@ -78,8 +78,8 @@
         extractor.parse(stream);
         
         // XnViewMp fields not understood by Jempbox
-        assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(Metadata.DESCRIPTION));
-        Collection<String> keywords = Arrays.asList(metadata.getValues(Metadata.SUBJECT));
+        assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(Metadata.DC_DESCRIPTION));
+        Collection<String> keywords = Arrays.asList(metadata.getValues(Metadata.DC_SUBJECT));
         assertTrue(keywords.contains("coast"));
         assertTrue(keywords.contains("nature reserve"));
     }
Index: src/test/java/org/apache/tika/parser/iwork/IWorkParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/iwork/IWorkParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/iwork/IWorkParserTest.java	(working copy)
@@ -54,7 +54,7 @@
         assertEquals("1024", metadata.get(KeynoteContentHandler.PRESENTATION_WIDTH));
         assertEquals("768", metadata.get(KeynoteContentHandler.PRESENTATION_HEIGHT));
         assertEquals("Tika user", metadata.get(Metadata.AUTHOR));
-        assertEquals("Apache tika", metadata.get(Metadata.TITLE));
+        assertEquals("Apache tika", metadata.get(Metadata.DC_TITLE));
 
         String content = handler.toString();
         assertTrue(content.contains("A sample presentation"));
@@ -85,10 +85,10 @@
         assertEquals(51, metadata.size());
         assertEquals("application/vnd.apple.pages", metadata.get(Metadata.CONTENT_TYPE));
         assertEquals("Tika user", metadata.get(Metadata.AUTHOR));
-        assertEquals("Apache tika", metadata.get(Metadata.TITLE));
+        assertEquals("Apache tika", metadata.get(Metadata.DC_TITLE));
         assertEquals("2010-05-09T21:34:38+0200", metadata.get(Metadata.CREATION_DATE));
         assertEquals("2010-05-09T23:50:36+0200", metadata.get(Metadata.LAST_MODIFIED));
-        assertEquals("en", metadata.get(Metadata.LANGUAGE));
+        assertEquals("en", metadata.get(Metadata.DC_LANGUAGE));
         assertEquals("2", metadata.get(Metadata.PAGE_COUNT));
 
         String content = handler.toString();
@@ -123,7 +123,7 @@
         assertEquals(9, metadata.size());
         assertEquals("2", metadata.get(Metadata.PAGE_COUNT));
         assertEquals("Tika User", metadata.get(Metadata.AUTHOR));
-        assertEquals("Account checking", metadata.get(Metadata.TITLE));
+        assertEquals("Account checking", metadata.get(Metadata.DC_TITLE));
         assertEquals("a comment", metadata.get(Metadata.COMMENT));
 
         assertTrue(content.contains("Category"));
Index: src/test/java/org/apache/tika/parser/jpeg/JpegParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/jpeg/JpegParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/jpeg/JpegParserTest.java	(working copy)
@@ -65,8 +65,8 @@
         // Common tags
         //assertEquals("2009-10-02T23:02:49", metadata.get(Metadata.LAST_MODIFIED));
         assertEquals("Date/Time Original for when the photo was taken, unspecified time zone",
-                "2009-08-11T09:09:45", metadata.get(Metadata.DATE));
-        List<String> keywords = Arrays.asList(metadata.getValues(Metadata.SUBJECT));
+                "2009-08-11T09:09:45", metadata.get(Metadata.DC_DATE));
+        List<String> keywords = Arrays.asList(metadata.getValues(Metadata.DC_SUBJECT));
         assertTrue("'canon-55-250' expected in " + keywords, keywords.contains("canon-55-250"));
         assertTrue("'moscow-birds' expected in " + keywords, keywords.contains("moscow-birds")); 
         assertTrue("'serbor' expected in " + keywords, keywords.contains("serbor"));
@@ -105,7 +105,7 @@
         
         // Common tags
         assertEquals("Date/Time Original for when the photo was taken, unspecified time zone",
-                "2009-08-11T09:09:45", metadata.get(Metadata.DATE));
+                "2009-08-11T09:09:45", metadata.get(Metadata.DC_DATE));
         assertEquals("This image has different Date/Time than Date/Time Original, so it is probably modification date",
                 "2009-10-02T23:02:49", metadata.get(Metadata.LAST_MODIFIED));
         assertEquals("Date/Time Original should be stored in EXIF field too",
@@ -121,17 +121,17 @@
         parser.parse(stream, new DefaultHandler(), metadata, new ParseContext());
           
         // embedded comments with non-ascii characters
-        assertEquals("Tosteberga \u00C4ngar", metadata.get(Metadata.TITLE));
-        assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(Metadata.DESCRIPTION));
+        assertEquals("Tosteberga \u00C4ngar", metadata.get(Metadata.DC_TITLE));
+        assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(Metadata.DC_DESCRIPTION));
         assertEquals("Some Tourist", metadata.get(Metadata.AUTHOR));
-        assertEquals("Some Tourist", metadata.get(Metadata.CREATOR)); // Dublin Core
+        assertEquals("Some Tourist", metadata.get(Metadata.DC_CREATOR)); // Dublin Core
         // xmp handles spaces in keywords, returns "bird watching, nature reserve, coast, grazelands"
         // but we have to replace them with underscore
         
         List<String> keywords = Arrays.asList(metadata.getValues(Metadata.KEYWORDS));
         assertTrue(keywords.contains("coast"));
         assertTrue(keywords.contains("bird watching"));
-        assertEquals(keywords, Arrays.asList(metadata.getValues(Metadata.SUBJECT)));
+        assertEquals(keywords, Arrays.asList(metadata.getValues(Metadata.DC_SUBJECT)));
         
         // Core EXIF/TIFF tags
         assertEquals("103", metadata.get(Metadata.IMAGE_WIDTH));
@@ -160,10 +160,10 @@
         parser.parse(stream, new DefaultHandler(), metadata, new ParseContext());
           
         // embedded comments with non-ascii characters
-        assertEquals("Tosteberga \u00C4ngar", metadata.get(Metadata.TITLE));
-        assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(Metadata.DESCRIPTION));
-        assertEquals("Some Tourist", metadata.get(Metadata.CREATOR));
-        List<String> subject = Arrays.asList(metadata.getValues(Metadata.SUBJECT));
+        assertEquals("Tosteberga \u00C4ngar", metadata.get(Metadata.DC_TITLE));
+        assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(Metadata.DC_DESCRIPTION));
+        assertEquals("Some Tourist", metadata.get(Metadata.DC_CREATOR));
+        List<String> subject = Arrays.asList(metadata.getValues(Metadata.DC_SUBJECT));
         assertTrue("got " + subject, subject.contains("bird watching")); 
     }
     
@@ -176,10 +176,10 @@
           
         // XnViewMp's default comment dialog has only comment, not headline.
         // Comment is embedded only if "Write comments in XMP" is enabled in settings
-        assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(Metadata.DESCRIPTION));
+        assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(Metadata.DC_DESCRIPTION));
         // xmp handles spaces in keywords, returns "bird watching, nature reserve, coast, grazelands"
         // but we have to replace them with underscore
-        String[] subject = metadata.getValues(Metadata.SUBJECT);
+        String[] subject = metadata.getValues(Metadata.DC_SUBJECT);
         List<String> keywords = Arrays.asList(subject);
         assertTrue("'coast'" + " not in " + keywords, keywords.contains("coast"));
         assertTrue("'nature reserve'" + " not in " + keywords, keywords.contains("nature reserve"));     
@@ -192,8 +192,8 @@
            getClass().getResourceAsStream("/test-documents/testJPEG_oddTagComponent.jpg");
        parser.parse(stream, new DefaultHandler(), metadata, new ParseContext());
        
-       assertEquals(null, metadata.get(Metadata.TITLE));
-       assertEquals(null, metadata.get(Metadata.DESCRIPTION));
+       assertEquals(null, metadata.get(Metadata.DC_TITLE));
+       assertEquals(null, metadata.get(Metadata.DC_DESCRIPTION));
        assertEquals("251", metadata.get(Metadata.IMAGE_WIDTH));
        assertEquals("384", metadata.get(Metadata.IMAGE_LENGTH));
     }
Index: src/test/java/org/apache/tika/parser/mail/RFC822ParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/mail/RFC822ParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/mail/RFC822ParserTest.java	(working copy)
@@ -59,7 +59,7 @@
             verify(handler).endDocument();
             //note no leading spaces, and no quotes
             assertEquals("Julien Nioche (JIRA) <jira@apache.org>", metadata.get(Metadata.AUTHOR));
-            assertEquals("[jira] Commented: (TIKA-461) RFC822 messages not parsed", metadata.get(Metadata.SUBJECT));
+            assertEquals("[jira] Commented: (TIKA-461) RFC822 messages not parsed", metadata.get(Metadata.DC_SUBJECT));
         } catch (Exception e) {
             fail("Exception thrown: " + e.getMessage());
         }
@@ -147,7 +147,7 @@
             //tests correct decoding of internationalized headers, both
             //quoted-printable (Q) and Base64 (B).
             assertEquals("Keld J\u00F8rn Simonsen <keld@dkuug.dk>", metadata.get(Metadata.AUTHOR));
-            assertEquals("If you can read this you understand the example.", metadata.get(Metadata.SUBJECT));
+            assertEquals("If you can read this you understand the example.", metadata.get(Metadata.DC_SUBJECT));
         } catch (Exception e) {
             fail("Exception thrown: " + e.getMessage());
         }
@@ -165,7 +165,7 @@
 
        parser.parse(stream, handler, metadata, new ParseContext());
        assertEquals("Saved by Windows Internet Explorer 7", metadata.get(Metadata.AUTHOR));
-       assertEquals("Air Permit Programs | Air & Radiation | US EPA", metadata.get(Metadata.SUBJECT));
+       assertEquals("Air Permit Programs | Air & Radiation | US EPA", metadata.get(Metadata.DC_SUBJECT));
     }
 
     /**
@@ -220,7 +220,7 @@
        assertEquals(true, metadata.isMultiValued(Metadata.MESSAGE_TO));
        assertEquals("abc", metadata.getValues(Metadata.MESSAGE_TO)[0]);
        assertEquals("def", metadata.getValues(Metadata.MESSAGE_TO)[1]);
-       assertEquals("abcd", metadata.get(Metadata.SUBJECT));
+       assertEquals("abcd", metadata.get(Metadata.DC_SUBJECT));
        assertTrue(handler.toString().contains("bar biz bat"));
     }
 
Index: src/test/java/org/apache/tika/parser/mbox/MboxParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/mbox/MboxParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/mbox/MboxParserTest.java	(working copy)
@@ -69,14 +69,14 @@
             verify(handler).characters(new String("Test content").toCharArray(), 0, 12);
             verify(handler).endDocument();
 
-            assertEquals("subject", metadata.get(Metadata.TITLE));
-            assertEquals("subject", metadata.get(Metadata.SUBJECT));
+            assertEquals("subject", metadata.get(Metadata.DC_TITLE));
+            assertEquals("subject", metadata.get(Metadata.DC_SUBJECT));
             assertEquals("<author@domain.com>", metadata.get(Metadata.AUTHOR));
-            assertEquals("<author@domain.com>", metadata.get(Metadata.CREATOR));
+            assertEquals("<author@domain.com>", metadata.get(Metadata.DC_CREATOR));
             assertEquals(null, metadata.get(Metadata.MESSAGE_RECIPIENT_ADDRESS));
             assertEquals("<name@domain.com>", metadata.get("MboxParser-return-path"));
             assertEquals("Should be ISO date in UTC, converted from 'Tue, 9 Jun 2009 23:58:45 -0400'", 
-                    "2009-06-10T03:58:45Z", metadata.get(Metadata.DATE));
+                    "2009-06-10T03:58:45Z", metadata.get(Metadata.DC_DATE));
         } catch (Exception e) {
             fail("Exception thrown: " + e.getMessage());
         }
@@ -133,10 +133,10 @@
         try {
             parser.parse(stream, handler, metadata, new ParseContext());
 
-            assertEquals("Re: question about when shuffle/sort start working", metadata.get(Metadata.TITLE));
-            assertEquals("Re: question about when shuffle/sort start working", metadata.get(Metadata.SUBJECT));
+            assertEquals("Re: question about when shuffle/sort start working", metadata.get(Metadata.DC_TITLE));
+            assertEquals("Re: question about when shuffle/sort start working", metadata.get(Metadata.DC_SUBJECT));
             assertEquals("Jothi Padmanabhan <jothipn@yahoo-inc.com>", metadata.get(Metadata.AUTHOR));
-            assertEquals("Jothi Padmanabhan <jothipn@yahoo-inc.com>", metadata.get(Metadata.CREATOR));
+            assertEquals("Jothi Padmanabhan <jothipn@yahoo-inc.com>", metadata.get(Metadata.DC_CREATOR));
             assertEquals("core-user@hadoop.apache.org", metadata.get(Metadata.MESSAGE_RECIPIENT_ADDRESS));
             
             verify(handler).startDocument();
Index: src/test/java/org/apache/tika/parser/microsoft/ExcelParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/microsoft/ExcelParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/microsoft/ExcelParserTest.java	(working copy)
@@ -45,7 +45,7 @@
             assertEquals(
                     "application/vnd.ms-excel",
                     metadata.get(Metadata.CONTENT_TYPE));
-            assertEquals("Simple Excel document", metadata.get(Metadata.TITLE));
+            assertEquals("Simple Excel document", metadata.get(Metadata.DC_TITLE));
             assertEquals("Keith Bennett", metadata.get(Metadata.AUTHOR));
             
             // Mon Oct 01 17:13:56 BST 2007
Index: src/test/java/org/apache/tika/parser/microsoft/OutlookParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/microsoft/OutlookParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/microsoft/OutlookParserTest.java	(working copy)
@@ -58,7 +58,7 @@
                 metadata.get(Metadata.CONTENT_TYPE));
         assertEquals(
                 "Microsoft Outlook Express 6",
-                metadata.get(Metadata.TITLE));
+                metadata.get(Metadata.DC_TITLE));
         assertEquals(
                 "Nouvel utilisateur de Outlook Express",
                 metadata.get(Metadata.MESSAGE_RECIPIENT_ADDRESS));
@@ -69,7 +69,7 @@
         // Stored as Thu, 5 Apr 2007 09:26:06 -0700
         assertEquals(
                 "2007-04-05T16:26:06Z",
-                metadata.get(Metadata.DATE));
+                metadata.get(Metadata.DC_DATE));
 
         String content = handler.toString();
         assertTrue(content.contains(""));
@@ -131,7 +131,7 @@
                 metadata.get(Metadata.CONTENT_TYPE));
         assertEquals(
                 "Welcome to Microsoft Office Outlook 2003",
-                metadata.get(Metadata.TITLE));
+                metadata.get(Metadata.DC_TITLE));
 
         String content = handler.toString();
         assertTrue(content.contains("Outlook 2003"));
Index: src/test/java/org/apache/tika/parser/microsoft/PowerPointParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/microsoft/PowerPointParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/microsoft/PowerPointParserTest.java	(working copy)
@@ -38,7 +38,7 @@
             assertEquals(
                     "application/vnd.ms-powerpoint",
                     metadata.get(Metadata.CONTENT_TYPE));
-            assertEquals("Sample Powerpoint Slide", metadata.get(Metadata.TITLE));
+            assertEquals("Sample Powerpoint Slide", metadata.get(Metadata.DC_TITLE));
             assertEquals("Keith Bennett", metadata.get(Metadata.AUTHOR));
             String content = handler.toString();
             assertTrue(content.contains("Sample Powerpoint Slide"));
@@ -104,7 +104,7 @@
 
         assertContains("Subject is here", content);
         assertEquals("Subject is here",
-                     metadata.get(Metadata.SUBJECT));
+                     metadata.get(Metadata.DC_SUBJECT));
 
         assertContains("Suddenly some Japanese text:", content);
         // Special version of (GHQ)
@@ -203,7 +203,7 @@
        assertEquals("2011-08-22T13:30:53Z", metadata.get(Metadata.CREATION_DATE));
        assertEquals("1",                    metadata.get(Metadata.SLIDE_COUNT));
        assertEquals("3",                    metadata.get(Metadata.WORD_COUNT));
-       assertEquals("Test extraction properties pptx", metadata.get(Metadata.TITLE));
+       assertEquals("Test extraction properties pptx", metadata.get(Metadata.DC_TITLE));
        assertEquals("true",                 metadata.get("custom:myCustomBoolean"));
        assertEquals("3",                    metadata.get("custom:myCustomNumber"));
        assertEquals("MyStringValue",        metadata.get("custom:MyCustomString"));
Index: src/test/java/org/apache/tika/parser/microsoft/ProjectParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/microsoft/ProjectParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/microsoft/ProjectParserTest.java	(working copy)
@@ -61,8 +61,8 @@
                "application/vnd.ms-project",
                metadata.get(Metadata.CONTENT_TYPE));
        
-       assertEquals("The quick brown fox jumps over the lazy dog", metadata.get(Metadata.TITLE));
-       assertEquals("Gym class featuring a brown fox and lazy dog", metadata.get(Metadata.SUBJECT));
+       assertEquals("The quick brown fox jumps over the lazy dog", metadata.get(Metadata.DC_TITLE));
+       assertEquals("Gym class featuring a brown fox and lazy dog", metadata.get(Metadata.DC_SUBJECT));
        assertEquals("Nevin Nollop", metadata.get(Metadata.AUTHOR));
        assertEquals("", metadata.get(Metadata.LAST_AUTHOR));
        assertEquals("Pangram, fox, dog", metadata.get(Metadata.KEYWORDS));
Index: src/test/java/org/apache/tika/parser/microsoft/PublisherParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/microsoft/PublisherParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/microsoft/PublisherParserTest.java	(working copy)
@@ -38,7 +38,7 @@
             assertEquals(
                     "application/x-mspublisher",
                     metadata.get(Metadata.CONTENT_TYPE));
-            assertEquals(null, metadata.get(Metadata.TITLE));
+            assertEquals(null, metadata.get(Metadata.DC_TITLE));
             assertEquals("Nick Burch", metadata.get(Metadata.AUTHOR));
             String content = handler.toString();
             assertTrue(content.contains("0123456789"));
Index: src/test/java/org/apache/tika/parser/microsoft/TNEFParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/microsoft/TNEFParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/microsoft/TNEFParserTest.java	(working copy)
@@ -54,7 +54,7 @@
       TNEFParser tnef = new TNEFParser();
       tnef.parse(stream, handler, metadata, new ParseContext());
       
-      assertEquals("This is a test message", metadata.get(Metadata.SUBJECT));
+      assertEquals("This is a test message", metadata.get(Metadata.DC_SUBJECT));
    }
    
     /**
Index: src/test/java/org/apache/tika/parser/microsoft/VisioParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/microsoft/VisioParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/microsoft/VisioParserTest.java	(working copy)
@@ -38,7 +38,7 @@
             assertEquals(
                     "application/vnd.visio",
                     metadata.get(Metadata.CONTENT_TYPE));
-            assertEquals("", metadata.get(Metadata.TITLE));
+            assertEquals("", metadata.get(Metadata.DC_TITLE));
             assertEquals("Hogwarts", metadata.get(Metadata.AUTHOR));
             String content = handler.toString();
             assertTrue(content.contains("Some random text, on a page"));
Index: src/test/java/org/apache/tika/parser/microsoft/WordParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/microsoft/WordParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/microsoft/WordParserTest.java	(working copy)
@@ -45,7 +45,7 @@
             assertEquals(
                     "application/msword",
                     metadata.get(Metadata.CONTENT_TYPE));
-            assertEquals("Sample Word Document", metadata.get(Metadata.TITLE));
+            assertEquals("Sample Word Document", metadata.get(Metadata.DC_TITLE));
             assertEquals("Keith Bennett", metadata.get(Metadata.AUTHOR));
             assertTrue(handler.toString().contains("Sample Word Document"));
         } finally {
@@ -114,7 +114,7 @@
         assertEquals(
                      "application/msword",
                      metadata.get(Metadata.CONTENT_TYPE));
-        assertEquals("Sample Word Document", metadata.get(Metadata.TITLE));
+        assertEquals("Sample Word Document", metadata.get(Metadata.DC_TITLE));
         assertEquals("Keith Bennett", metadata.get(Metadata.AUTHOR));
         assertTrue(xml.contains("Sample Word Document"));
 
@@ -176,8 +176,8 @@
             assertEquals(
                     "application/msword",
                     metadata.get(Metadata.CONTENT_TYPE));
-            assertEquals("The quick brown fox jumps over the lazy dog", metadata.get(Metadata.TITLE));
-            assertEquals("Gym class featuring a brown fox and lazy dog", metadata.get(Metadata.SUBJECT));
+            assertEquals("The quick brown fox jumps over the lazy dog", metadata.get(Metadata.DC_TITLE));
+            assertEquals("Gym class featuring a brown fox and lazy dog", metadata.get(Metadata.DC_SUBJECT));
             assertEquals("Nevin Nollop", metadata.get(Metadata.AUTHOR));
             assertTrue(handler.toString().contains("The quick brown fox jumps over the lazy dog"));
         } finally {
@@ -241,7 +241,7 @@
 
         assertContains("Subject is here", content);
         assertEquals("Subject is here",
-                     metadata.get(Metadata.SUBJECT));
+                     metadata.get(Metadata.DC_SUBJECT));
 
         assertContains("Suddenly some Japanese text:", content);
         // Special version of (GHQ)
@@ -278,11 +278,11 @@
        assertEquals("Microsoft Office Word",metadata.get(Metadata.APPLICATION_NAME));
        assertEquals("1",                    metadata.get(Metadata.PAGE_COUNT));
        assertEquals("2",                    metadata.get(Metadata.WORD_COUNT));
-       assertEquals("My Title",             metadata.get(Metadata.TITLE));
+       assertEquals("My Title",             metadata.get(Metadata.DC_TITLE));
        assertEquals("My Keyword",           metadata.get(Metadata.KEYWORDS));
        assertEquals("Normal.dotm",          metadata.get(Metadata.TEMPLATE));
        assertEquals("My Comments",          metadata.get(Metadata.COMMENTS));
-       assertEquals("My subject",           metadata.get(Metadata.SUBJECT));
+       assertEquals("My subject",           metadata.get(Metadata.DC_SUBJECT));
        assertEquals("EDF-DIT",              metadata.get(Metadata.COMPANY));
        assertEquals("MyStringValue",        metadata.get("custom:MyCustomString"));
        assertEquals("2010-12-30T23:00:00Z", metadata.get("custom:MyCustomDate"));
Index: src/test/java/org/apache/tika/parser/microsoft/ooxml/OOXMLParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/microsoft/ooxml/OOXMLParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/microsoft/ooxml/OOXMLParserTest.java	(working copy)
@@ -57,7 +57,7 @@
             assertEquals(
                     "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
                     metadata.get(Metadata.CONTENT_TYPE));
-            assertEquals("Simple Excel document", metadata.get(Metadata.TITLE));
+            assertEquals("Simple Excel document", metadata.get(Metadata.DC_TITLE));
             assertEquals("Keith Bennett", metadata.get(Metadata.AUTHOR));
             String content = handler.toString();
             assertTrue(content.contains("Sample Excel Worksheet"));
@@ -184,7 +184,7 @@
                         "Mime-type checking for " + filename,
                         mimeTypes[i],
                         metadata.get(Metadata.CONTENT_TYPE));
-                assertEquals("Attachment Test", metadata.get(Metadata.TITLE));
+                assertEquals("Attachment Test", metadata.get(Metadata.DC_TITLE));
                 assertEquals("Rajiv", metadata.get(Metadata.AUTHOR));
                 
                 String content = handler.toString();
@@ -234,7 +234,7 @@
             assertEquals(
                     "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
                     metadata.get(Metadata.CONTENT_TYPE));
-            assertEquals("Sample Word Document", metadata.get(Metadata.TITLE));
+            assertEquals("Sample Word Document", metadata.get(Metadata.DC_TITLE));
             assertEquals("Keith Bennett", metadata.get(Metadata.AUTHOR));
             assertTrue(handler.toString().contains("Sample Word Document"));
         } finally {
@@ -305,7 +305,7 @@
       assertEquals(
                    "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
                    metadata.get(Metadata.CONTENT_TYPE));
-      assertEquals("Sample Word Document", metadata.get(Metadata.TITLE));
+      assertEquals("Sample Word Document", metadata.get(Metadata.DC_TITLE));
       assertEquals("Keith Bennett", metadata.get(Metadata.AUTHOR));
       assertTrue(xml.contains("Sample Word Document"));
             
@@ -518,7 +518,7 @@
 
         assertContains("Subject is here", content);
         assertEquals("Subject is here",
-                     metadata.get(Metadata.SUBJECT));
+                     metadata.get(Metadata.DC_SUBJECT));
 
         assertContains("Suddenly some Japanese text:", content);
         // Special version of (GHQ)
@@ -586,7 +586,7 @@
 
         assertContains("Subject is here", content);
         assertEquals("Subject is here",
-                     metadata.get(Metadata.SUBJECT));
+                     metadata.get(Metadata.DC_SUBJECT));
 
         assertContains("Suddenly some Japanese text:", content);
         // Special version of (GHQ)
@@ -690,7 +690,7 @@
              metadata.get(Metadata.CONTENT_TYPE));
        assertEquals(null,                   metadata.get(Metadata.AUTHOR));
        assertEquals(null,                   metadata.get(Metadata.LAST_AUTHOR));
-       assertEquals("2006-09-12T15:06:44Z", metadata.get(Metadata.DATE));
+       assertEquals("2006-09-12T15:06:44Z", metadata.get(Metadata.DC_DATE));
        assertEquals("2006-09-12T15:06:44Z", metadata.get(Metadata.CREATION_DATE));
        assertEquals("2011-08-22T14:24:38Z", metadata.get(Metadata.LAST_MODIFIED));
        assertEquals("Microsoft Excel",      metadata.get(Metadata.APPLICATION_NAME));
@@ -719,17 +719,17 @@
              metadata.get(Metadata.CONTENT_TYPE));
        assertEquals("EJ04325S",             metadata.get(Metadata.AUTHOR));
        assertEquals("Etienne Jouvin",       metadata.get(Metadata.LAST_AUTHOR));
-       assertEquals("2011-07-29T16:52:00Z", metadata.get(Metadata.DATE));
+       assertEquals("2011-07-29T16:52:00Z", metadata.get(Metadata.DC_DATE));
        assertEquals("2011-07-29T16:52:00Z", metadata.get(Metadata.CREATION_DATE));
        assertEquals("2012-01-03T22:14:00Z", metadata.get(Metadata.LAST_MODIFIED));
        assertEquals("Microsoft Office Word",metadata.get(Metadata.APPLICATION_NAME));
        assertEquals("1",                    metadata.get(Metadata.PAGE_COUNT));
        assertEquals("2",                    metadata.get(Metadata.WORD_COUNT));
-       assertEquals("My Title",             metadata.get(Metadata.TITLE));
+       assertEquals("My Title",             metadata.get(Metadata.DC_TITLE));
        assertEquals("My Keyword",           metadata.get(Metadata.KEYWORDS));
        assertEquals("Normal.dotm",          metadata.get(Metadata.TEMPLATE));
-       assertEquals("My subject",           metadata.get(Metadata.SUBJECT));
-       assertEquals("EDF-DIT",              metadata.get(Metadata.PUBLISHER));
+       assertEquals("My subject",           metadata.get(Metadata.DC_SUBJECT));
+       assertEquals("EDF-DIT",              metadata.get(Metadata.DC_PUBLISHER));
        assertEquals("true",                 metadata.get("custom:myCustomBoolean"));
        assertEquals("3",                    metadata.get("custom:myCustomNumber"));
        assertEquals("MyStringValue",        metadata.get("custom:MyCustomString"));
@@ -755,12 +755,12 @@
              metadata.get(Metadata.CONTENT_TYPE));
        assertEquals("JOUVIN ETIENNE",       metadata.get(Metadata.AUTHOR));
        assertEquals("EJ04325S",             metadata.get(Metadata.LAST_AUTHOR));
-       assertEquals("2011-08-22T13:30:53Z", metadata.get(Metadata.DATE));
+       assertEquals("2011-08-22T13:30:53Z", metadata.get(Metadata.DC_DATE));
        assertEquals("2011-08-22T13:30:53Z", metadata.get(Metadata.CREATION_DATE));
        assertEquals("2011-08-22T13:32:49Z", metadata.get(Metadata.LAST_MODIFIED));
        assertEquals("1",                    metadata.get(Metadata.SLIDE_COUNT));
        assertEquals("3",                    metadata.get(Metadata.WORD_COUNT));
-       assertEquals("Test extraction properties pptx", metadata.get(Metadata.TITLE));
+       assertEquals("Test extraction properties pptx", metadata.get(Metadata.DC_TITLE));
        assertEquals("true",                 metadata.get("custom:myCustomBoolean"));
        assertEquals("3",                    metadata.get("custom:myCustomNumber"));
        assertEquals("MyStringValue",        metadata.get("custom:MyCustomString"));
Index: src/test/java/org/apache/tika/parser/mp3/Mp3ParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/mp3/Mp3ParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/mp3/Mp3ParserTest.java	(working copy)
@@ -51,7 +51,7 @@
         }
 
         assertEquals("audio/mpeg", metadata.get(Metadata.CONTENT_TYPE));
-        assertEquals("Test Title", metadata.get(Metadata.TITLE));
+        assertEquals("Test Title", metadata.get(Metadata.DC_TITLE));
         assertEquals("Test Artist", metadata.get(Metadata.AUTHOR));
 
         String content = handler.toString();
@@ -86,7 +86,7 @@
 
         // Check core properties
         assertEquals("audio/mpeg", metadata.get(Metadata.CONTENT_TYPE));
-        assertEquals("Test Title", metadata.get(Metadata.TITLE));
+        assertEquals("Test Title", metadata.get(Metadata.DC_TITLE));
         assertEquals("Test Artist", metadata.get(Metadata.AUTHOR));
 
         // Check the textual contents
@@ -135,7 +135,7 @@
         }
 
         assertEquals("audio/mpeg", metadata.get(Metadata.CONTENT_TYPE));
-        assertEquals("Test Title", metadata.get(Metadata.TITLE));
+        assertEquals("Test Title", metadata.get(Metadata.DC_TITLE));
         assertEquals("Test Artist", metadata.get(Metadata.AUTHOR));
 
         String content = handler.toString();
@@ -169,7 +169,7 @@
         }
 
         assertEquals("audio/mpeg", metadata.get(Metadata.CONTENT_TYPE));
-        assertEquals("Test Title", metadata.get(Metadata.TITLE));
+        assertEquals("Test Title", metadata.get(Metadata.DC_TITLE));
         assertEquals("Test Artist", metadata.get(Metadata.AUTHOR));
 
         String content = handler.toString();
@@ -203,7 +203,7 @@
        }
 
        assertEquals("audio/mpeg", metadata.get(Metadata.CONTENT_TYPE));
-       assertEquals("Une chason en Fran\u00e7ais", metadata.get(Metadata.TITLE));
+       assertEquals("Une chason en Fran\u00e7ais", metadata.get(Metadata.DC_TITLE));
        assertEquals("Test Artist \u2468\u2460", metadata.get(Metadata.AUTHOR));
        assertEquals("Test Artist \u2468\u2460", metadata.get(XMPDM.ARTIST));
        assertEquals("Test Album \u2460\u2468", metadata.get(XMPDM.ALBUM));
@@ -241,7 +241,7 @@
         }
 
         assertEquals("audio/mpeg", metadata.get(Metadata.CONTENT_TYPE));
-        assertEquals("Test Title", metadata.get(Metadata.TITLE));
+        assertEquals("Test Title", metadata.get(Metadata.DC_TITLE));
         assertEquals("Test Artist", metadata.get(Metadata.AUTHOR));
 
         String content = handler.toString();
@@ -306,7 +306,7 @@
        }
 
        assertEquals("audio/mpeg", metadata.get(Metadata.CONTENT_TYPE));
-       assertEquals("Plus loin vers l'ouest", metadata.get(Metadata.TITLE));
+       assertEquals("Plus loin vers l'ouest", metadata.get(Metadata.DC_TITLE));
        assertEquals("Merzhin", metadata.get(Metadata.AUTHOR));
 
        String content = handler.toString();
@@ -341,7 +341,7 @@
 
        // Check we coud get the headers from the start
        assertEquals("audio/mpeg", metadata.get(Metadata.CONTENT_TYPE));
-       assertEquals("Girl you have no faith in medicine", metadata.get(Metadata.TITLE));
+       assertEquals("Girl you have no faith in medicine", metadata.get(Metadata.DC_TITLE));
        assertEquals("The White Stripes", metadata.get(Metadata.AUTHOR));
 
        String content = handler.toString();
Index: src/test/java/org/apache/tika/parser/mp4/MP4ParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/mp4/MP4ParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/mp4/MP4ParserTest.java	(working copy)
@@ -54,10 +54,10 @@
 
         // Check core properties
         assertEquals("audio/mp4", metadata.get(Metadata.CONTENT_TYPE));
-        assertEquals("Test Title", metadata.get(Metadata.TITLE));
+        assertEquals("Test Title", metadata.get(Metadata.DC_TITLE));
         assertEquals("Test Artist", metadata.get(Metadata.AUTHOR));
         assertEquals("2012-01-28T18:39:18Z", metadata.get(Metadata.CREATION_DATE));
-        assertEquals("2012-01-28T18:40:25Z", metadata.get(Metadata.MODIFIED));
+        assertEquals("2012-01-28T18:40:25Z", metadata.get(Metadata.DC_MODIFIED));
 
         // Check the textual contents
         String content = handler.toString();
Index: src/test/java/org/apache/tika/parser/netcdf/NetCDFParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/netcdf/NetCDFParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/netcdf/NetCDFParserTest.java	(working copy)
@@ -52,7 +52,7 @@
             stream.close();
         }
 
-        assertEquals(metadata.get(Metadata.TITLE),
+        assertEquals(metadata.get(Metadata.DC_TITLE),
                 "model output prepared for IPCC AR4");
         assertEquals(metadata.get(Metadata.CONTACT), "ccsm@ucar.edu");
         assertEquals(metadata.get(Metadata.PROJECT_ID),
Index: src/test/java/org/apache/tika/parser/odf/ODFParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/odf/ODFParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/odf/ODFParserTest.java	(working copy)
@@ -76,9 +76,9 @@
              assertEquals(
                    "application/vnd.oasis.opendocument.text",
                    metadata.get(Metadata.CONTENT_TYPE));
-             assertEquals("2007-09-14T11:07:10", metadata.get(Metadata.DATE));
+             assertEquals("2007-09-14T11:07:10", metadata.get(Metadata.DC_DATE));
              assertEquals("2007-09-14T11:06:08", metadata.get(Metadata.CREATION_DATE));
-             assertEquals("en-US", metadata.get(Metadata.LANGUAGE));
+             assertEquals("en-US", metadata.get(Metadata.DC_LANGUAGE));
              assertEquals("PT1M7S", metadata.get(Metadata.EDIT_TIME));
              assertEquals(
                    "NeoOffice/2.2$Unix OpenOffice.org_project/680m18$Build-9161",
@@ -133,10 +133,10 @@
            assertEquals(
                    "application/vnd.oasis.opendocument.formula",
                    metadata.get(Metadata.CONTENT_TYPE));
-           assertEquals(null, metadata.get(Metadata.DATE));
+           assertEquals(null, metadata.get(Metadata.DC_DATE));
            assertEquals("2006-01-27T11:55:22", metadata.get(Metadata.CREATION_DATE));
-           assertEquals("The quick brown fox jumps over the lazy dog", metadata.get(Metadata.TITLE));
-           assertEquals("Gym class featuring a brown fox and lazy dog", metadata.get(Metadata.SUBJECT));
+           assertEquals("The quick brown fox jumps over the lazy dog", metadata.get(Metadata.DC_TITLE));
+           assertEquals("Gym class featuring a brown fox and lazy dog", metadata.get(Metadata.DC_SUBJECT));
            assertEquals("PT0S", metadata.get(Metadata.EDIT_TIME));
            assertEquals("1", metadata.get("editing-cycles"));
            assertEquals(
@@ -188,12 +188,12 @@
            assertEquals(
                    "application/vnd.oasis.opendocument.text",
                    metadata.get(Metadata.CONTENT_TYPE));
-           assertEquals("2009-10-05T21:22:38", metadata.get(Metadata.DATE));
+           assertEquals("2009-10-05T21:22:38", metadata.get(Metadata.DC_DATE));
            assertEquals("2009-10-05T19:04:01", metadata.get(Metadata.CREATION_DATE));
-           assertEquals("Apache Tika", metadata.get(Metadata.TITLE));
-           assertEquals("Test document", metadata.get(Metadata.SUBJECT));
-           assertEquals("A rather complex document", metadata.get(Metadata.DESCRIPTION));
-           assertEquals("Bart Hanssens", metadata.get(Metadata.CREATOR));
+           assertEquals("Apache Tika", metadata.get(Metadata.DC_TITLE));
+           assertEquals("Test document", metadata.get(Metadata.DC_SUBJECT));
+           assertEquals("A rather complex document", metadata.get(Metadata.DC_DESCRIPTION));
+           assertEquals("Bart Hanssens", metadata.get(Metadata.DC_CREATOR));
            assertEquals("Bart Hanssens", metadata.get("initial-creator"));
            assertEquals("2", metadata.get("editing-cycles"));
            assertEquals("PT02H03M24S", metadata.get(Metadata.EDIT_TIME));
Index: src/test/java/org/apache/tika/parser/pdf/PDFParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/pdf/PDFParserTest.java	(revision 1245059)
+++ src/test/java/org/apache/tika/parser/pdf/PDFParserTest.java	(working copy)
@@ -53,7 +53,7 @@
 
         assertEquals("application/pdf", metadata.get(Metadata.CONTENT_TYPE));
         assertEquals("Bertrand Delacr\u00e9taz", metadata.get(Metadata.AUTHOR));
-        assertEquals("Apache Tika - Apache Tika", metadata.get(Metadata.TITLE));
+        assertEquals("Apache Tika - Apache Tika", metadata.get(Metadata.DC_TITLE));
         
         // Can't reliably test dates yet - see TIKA-451 
 //        assertEquals("Sat Sep 15 10:02:31 BST 2007", metadata.get(Metadata.CREATION_DATE));
@@ -87,7 +87,7 @@
 
         assertEquals("application/pdf", metadata.get(Metadata.CONTENT_TYPE));
         assertEquals("Document author", metadata.get(Metadata.AUTHOR));
-        assertEquals("Document title", metadata.get(Metadata.TITLE));
+        assertEquals("Document title", metadata.get(Metadata.DC_TITLE));
         
         assertEquals("Custom Value", metadata.get("Custom Property"));
         assertEquals("Array Entry 1", metadata.get("Custom Array"));
@@ -120,8 +120,8 @@
 
        assertEquals("application/pdf", metadata.get(Metadata.CONTENT_TYPE));
        assertEquals("The Bank of England", metadata.get(Metadata.AUTHOR));
-       assertEquals("Speeches by Andrew G Haldane", metadata.get(Metadata.SUBJECT));
-       assertEquals("Rethinking the Financial Network, Speech by Andrew G Haldane, Executive Director, Financial Stability delivered at the Financial Student Association, Amsterdam on 28 April 2009", metadata.get(Metadata.TITLE));
+       assertEquals("Speeches by Andrew G Haldane", metadata.get(Metadata.DC_SUBJECT));
+       assertEquals("Rethinking the Financial Network, Speech by Andrew G Haldane, Executive Director, Financial Stability delivered at the Financial Student Association, Amsterdam on 28 April 2009", metadata.get(Metadata.DC_TITLE));
 
        String content = handler.toString();
        assertTrue(content.contains("RETHINKING THE FINANCIAL NETWORK"));
@@ -150,8 +150,8 @@
 
        assertEquals("application/pdf", metadata.get(Metadata.CONTENT_TYPE));
        assertEquals("The Bank of England", metadata.get(Metadata.AUTHOR));
-       assertEquals("Speeches by Andrew G Haldane", metadata.get(Metadata.SUBJECT));
-       assertEquals("Rethinking the Financial Network, Speech by Andrew G Haldane, Executive Director, Financial Stability delivered at the Financial Student Association, Amsterdam on 28 April 2009", metadata.get(Metadata.TITLE));
+       assertEquals("Speeches by Andrew G Haldane", metadata.get(Metadata.DC_SUBJECT));
+       assertEquals("Rethinking the Financial Network, Speech by Andrew G Haldane, Executive Director, Financial Stability delivered at the Financial Student Association, Amsterdam on 28 April 2009", metadata.get(Metadata.DC_TITLE));
 
        assertTrue(content.contains("RETHINKING THE FINANCIAL NETWORK"));
        assertTrue(content.contains("On 16 November 2002"));
@@ -233,7 +233,7 @@
 
         assertContains("Subject is here", content);
         assertEquals("Subject is here",
-                     metadata.get(Metadata.SUBJECT));
+                     metadata.get(Metadata.DC_SUBJECT));
 
         assertContains("Suddenly some Japanese text:", content);
         // Special version of (GHQ)
Index: src/test/java/org/apache/tika/parser/prt/PRTParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/prt/PRTParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/prt/PRTParserTest.java	(working copy)
@@ -38,11 +38,11 @@
 
           // This file has a date
           assertEquals("2011-06-20T16:54:00",
-                metadata.get(Metadata.DATE));
+                metadata.get(Metadata.DC_DATE));
           assertEquals("2011-06-20T16:54:00",
                 metadata.get(Metadata.CREATION_DATE));
           // But no description
-          assertEquals(null, metadata.get(Metadata.DESCRIPTION));
+          assertEquals(null, metadata.get(Metadata.DC_DESCRIPTION));
 
           String contents = handler.toString();
           
@@ -76,11 +76,11 @@
 
           // File has both a date and a description
           assertEquals("1997-04-01T08:59:00",
-                metadata.get(Metadata.DATE));
+                metadata.get(Metadata.DC_DATE));
           assertEquals("1997-04-01T08:59:00",
                 metadata.get(Metadata.CREATION_DATE));
           assertEquals("TIKA TEST PART DESCRIPTION INFORMATION\r\n",
-                metadata.get(Metadata.DESCRIPTION));
+                metadata.get(Metadata.DC_DESCRIPTION));
 
           String contents = handler.toString();
           
Index: src/test/java/org/apache/tika/parser/rtf/RTFParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/rtf/RTFParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/rtf/RTFParserTest.java	(working copy)
@@ -131,7 +131,7 @@
 
         // Verify title, since it was also encoded with MS932:
         Result r = getResult("testRTF-ms932.rtf");
-        assertEquals("\u30bf\u30a4\u30c8\u30eb", r.metadata.get(Metadata.TITLE));
+        assertEquals("\u30bf\u30a4\u30c8\u30eb", r.metadata.get(Metadata.DC_TITLE));
     }
 
     public void testUmlautSpacesExtraction() throws Exception {
@@ -152,7 +152,7 @@
         // Verify title -- this title uses upr escape inside
         // title info field:
         assertEquals("\u30be\u30eb\u30b2\u3068\u5c3e\u5d0e\u3001\u6de1\u3005\u3068\u6700\u671f\u3000",
-                     r.metadata.get(Metadata.TITLE));
+                     r.metadata.get(Metadata.DC_TITLE));
         assertEquals("VMazel", r.metadata.get(Metadata.AUTHOR));
         assertEquals("StarWriter", r.metadata.get(Metadata.COMMENT));
         assertContains("1.", content);
@@ -237,7 +237,7 @@
 
         assertContains("Subject is here", content);
         assertEquals("Subject is here",
-                     r.metadata.get(Metadata.SUBJECT));
+                     r.metadata.get(Metadata.DC_SUBJECT));
 
         assertContains("Suddenly some Japanese text:", content);
         // Special version of (GHQ)
Index: src/test/java/org/apache/tika/parser/txt/TXTParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/txt/TXTParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/txt/TXTParserTest.java	(working copy)
@@ -51,7 +51,7 @@
         
         // TIKA-501: Remove language detection from TXTParser
         assertNull(metadata.get(Metadata.CONTENT_LANGUAGE));
-        assertNull(metadata.get(Metadata.LANGUAGE));
+        assertNull(metadata.get(Metadata.DC_LANGUAGE));
 
         assertTrue(content.contains("Hello"));
         assertTrue(content.contains("World"));
@@ -169,13 +169,13 @@
         final String test = "Simple Content";
 
         Metadata metadata = new Metadata();
-        metadata.set(Metadata.LANGUAGE, "en");
+        metadata.set(Metadata.DC_LANGUAGE, "en");
 
         parser.parse(
                 new ByteArrayInputStream(test.getBytes("UTF-8")),
                 new BodyContentHandler(),  metadata, new ParseContext());
 
-        assertEquals("en", metadata.get(Metadata.LANGUAGE));
+        assertEquals("en", metadata.get(Metadata.DC_LANGUAGE));
     }
 
     public void testCP866() throws Exception {
Index: src/test/java/org/apache/tika/parser/xml/DcXMLParserTest.java
===================================================================
--- src/test/java/org/apache/tika/parser/xml/DcXMLParserTest.java	(revision 1237614)
+++ src/test/java/org/apache/tika/parser/xml/DcXMLParserTest.java	(working copy)
@@ -38,34 +38,34 @@
             assertEquals(
                     "application/xml",
                     metadata.get(Metadata.CONTENT_TYPE));
-            assertEquals("Tika test document", metadata.get(Metadata.TITLE));
-            assertEquals("Rida Benjelloun", metadata.get(Metadata.CREATOR));
+            assertEquals("Tika test document", metadata.get(Metadata.DC_TITLE));
+            assertEquals("Rida Benjelloun", metadata.get(Metadata.DC_CREATOR));
             
             // The file contains 5 dc:subject tags, which come through as
             //  a multi-valued Tika Metadata entry in file order
-            assertEquals(true, metadata.isMultiValued(Metadata.SUBJECT));
-            assertEquals(5,      metadata.getValues(Metadata.SUBJECT).length);
-            assertEquals("Java", metadata.getValues(Metadata.SUBJECT)[0]);
-            assertEquals("XML",  metadata.getValues(Metadata.SUBJECT)[1]);
-            assertEquals("XSLT", metadata.getValues(Metadata.SUBJECT)[2]);
-            assertEquals("JDOM", metadata.getValues(Metadata.SUBJECT)[3]);
-            assertEquals("Indexation", metadata.getValues(Metadata.SUBJECT)[4]);
+            assertEquals(true, metadata.isMultiValued(Metadata.DC_SUBJECT));
+            assertEquals(5,      metadata.getValues(Metadata.DC_SUBJECT).length);
+            assertEquals("Java", metadata.getValues(Metadata.DC_SUBJECT)[0]);
+            assertEquals("XML",  metadata.getValues(Metadata.DC_SUBJECT)[1]);
+            assertEquals("XSLT", metadata.getValues(Metadata.DC_SUBJECT)[2]);
+            assertEquals("JDOM", metadata.getValues(Metadata.DC_SUBJECT)[3]);
+            assertEquals("Indexation", metadata.getValues(Metadata.DC_SUBJECT)[4]);
 
             assertEquals(
                     "Framework d\'indexation des documents XML, HTML, PDF etc..",
-                    metadata.get(Metadata.DESCRIPTION));
+                    metadata.get(Metadata.DC_DESCRIPTION));
             assertEquals(
                     "http://www.apache.org",
-                    metadata.get(Metadata.IDENTIFIER));
-            assertEquals("test", metadata.get(Metadata.TYPE));
-            assertEquals("application/msword", metadata.get(Metadata.FORMAT));
-            assertEquals("Fr", metadata.get(Metadata.LANGUAGE));
-            assertTrue(metadata.get(Metadata.RIGHTS).contains("testing chars"));
+                    metadata.get(Metadata.DC_IDENTIFIER));
+            assertEquals("test", metadata.get(Metadata.DC_TYPE));
+            assertEquals("application/msword", metadata.get(Metadata.DC_FORMAT));
+            assertEquals("Fr", metadata.get(Metadata.DC_LANGUAGE));
+            assertTrue(metadata.get(Metadata.DC_RIGHTS).contains("testing chars"));
 
             String content = handler.toString();
             assertTrue(content.contains("Tika test document"));
             
-            assertEquals("2000-12-01T00:00:00.000Z", metadata.get(Metadata.DATE));
+            assertEquals("2000-12-01T00:00:00.000Z", metadata.get(Metadata.DC_DATE));
         } finally {
             input.close();
         }
@@ -78,7 +78,7 @@
             new DcXMLParser().parse(input, new DefaultHandler(), metadata);
             
             final String expected = "Archim\u00E8de et Lius \u00E0 Ch\u00E2teauneuf testing chars en \u00E9t\u00E9";
-            assertEquals(expected,metadata.get(Metadata.RIGHTS));
+            assertEquals(expected,metadata.get(Metadata.DC_RIGHTS));
         } finally {
             input.close();
         }
