diff a/packages/shex-webapp/doc/shex-simple.js b/packages/shex-webapp/doc/shex-simple.js	(rejected hunks)
@@ -200,14 +200,17 @@ function makeSchemaCache (selection) {
   ret.language = null;
   ret.parse = function (text, base) {
     const isJSON = text.match(/^\s*\{/);
+    const isDCTAP = text.match(/\s*shapeID/)
     graph = isJSON ? null : tryN3(text);
     this.language =
       isJSON ? "ShExJ" :
+      isDCTAP ? "DCTAP":
       graph ? "ShExR" :
       "ShExC";
     $("#results .status").text("parsing "+this.language+" schema...").show();
     const schema =
           isJSON ? ShEx.Util.ShExJtoAS(JSON.parse(text)) :
+          isDCTAP ? (await new DcTapModule.DcTap().parse(text, base)).toShExJ :
           graph ? parseShExR() :
           parseShEx(text, ret.meta, base);
     $("#results .status").hide();
