Index: tika-parsers/src/main/java/org/apache/tika/parser/html/HtmlParser.java
===================================================================
--- tika-parsers/src/main/java/org/apache/tika/parser/html/HtmlParser.java	(revision 1390943)
+++ tika-parsers/src/main/java/org/apache/tika/parser/html/HtmlParser.java	(working copy)
@@ -62,6 +62,24 @@
      */
     private static final Schema HTML_SCHEMA = new HTMLSchema();
 
+    public HtmlParser() {
+        super();
+
+        // Have meta reported everywhere
+        HTML_SCHEMA.elementType("meta", HTMLSchema.M_EMPTY, 65535, 0);
+
+        // https://issues.apache.org/jira/browse/TIKA-985
+        String html5Elements[] = { "article", "aside", "audio", "bdi",
+          "command", "datalist", "details", "embed", "summary", "figure",
+          "figcaption", "footer", "header", "hgroup", "keygen", "mark",
+          "meter", "nav", "output", "progress", "section", "source", "time",
+          "track", "video" };
+
+        for (String html5Element : html5Elements) {
+          HTML_SCHEMA.elementType(html5Element, HTMLSchema.M_ANY, 255, 0);
+        }
+    }
+
     public Set<MediaType> getSupportedTypes(ParseContext context) {
         return SUPPORTED_TYPES;
     }
@@ -122,7 +140,7 @@
      * @since Apache Tika 0.5
      * @param name HTML element name (upper case)
      * @return XHTML element name (lower case), or
-     *         <code>null</code> if the element is unsafe 
+     *         <code>null</code> if the element is unsafe
      */
     protected String mapSafeElement(String name) {
         return DefaultHtmlMapper.INSTANCE.mapSafeElement(name);
@@ -150,8 +168,8 @@
     **/
     public String mapSafeAttribute(String elementName, String attributeName) {
         return DefaultHtmlMapper.INSTANCE.mapSafeAttribute(elementName,attributeName) ;
-    }    
-    
+    }
+
     /**
      * Adapter class that maintains backwards compatibility with the
      * protected HtmlParser methods. Making HtmlParser implement HtmlMapper
