UNPKG

bitmark-grammar

Version:
1,085 lines (1,079 loc) 875 kB
<<<<./tests/jsfiddle.bit [ { "bitmark": "[.vendor-jsfiddle&image]\n[@id:119768]\n[&image:https://cdn.bitmark.cloud/books/com.firstpub.book98789/cat3_1024x1024.jpg][@src1x:https://cdn.bitmark.cloud/books/com.firstpub.book98789/cat3_64x64.jpg][@src2x:https://cdn.bitmark.cloud/books/com.firstpub.book98789/cat3_64x64@2x.jpg][@width:640][@height:640]\nBitmarkListener.prototype.get_result = function () {\n while (0 < this.curr_bit_stk.size)\n delete this.curr_bit_stk.pop();\n return this.stk.bucket;\n};", "bit": { "type": "vendor-jsfiddle", "format": "bitmark--", "body": "BitmarkListener.prototype.get_result = function () {\n while (0 < this.curr_bit_stk.size)\n delete this.curr_bit_stk.pop();\n return this.stk.bucket;\n};", "item": "", "hint": "", "isExample": false, "example": "", "id": [ "119768" ], "resource": { "type": "image", "image": { "src": "https://cdn.bitmark.cloud/books/com.firstpub.book98789/cat3_1024x1024.jpg", "showInIndex": false, "format": "jpg", "width": "640", "height": "640", "alt": "", "caption": "", "license": "", "copyright": "", "src1x": "https://cdn.bitmark.cloud/books/com.firstpub.book98789/cat3_64x64.jpg", "src2x": "https://cdn.bitmark.cloud/books/com.firstpub.book98789/cat3_64x64@2x.jpg" } } } }, { "bitmark": "[.vendor-jsfiddle-embed&image]\n[@id:119768]\n\nBitmarkListener.prototype.set_value_based_on_curr_bit_stk = function (val1, sub1, val2, sub2, tmpl = null) {\n let subscript = this.curr_bit_stk.top();\n let key_obj = null;\n\n if (subscript.startsWith('{'))\n key_obj = subscript.split('$'); // like \"{Diaz:0}:marks\"\n if (key_obj.length === 2) {\n if (tmpl && !(key_obj[0] in this.stk.top().bit[key_obj[1]]))\n (this.stk.top()).bit[key_obj[1]][key_obj[0]] = R.clone(tmpl);\n if (key_obj[0] in this.stk.top().bit[key_obj[1]]) {\n // e.g. bit.gaps['{0}'].example = true;\n (this.stk.top()).bit[key_obj[1]][key_obj[0]][sub1] = val1;\n if (sub2 != null)\n (this.stk.top()).bit[key_obj[1]][key_obj[0]][sub2] = val2;\n }\n }\n}\n\nbody { font-family: Helvetica, Tahoma; }\nh2 { font-size: 1.5em; margin-bottom: 10px; display: block;}\np { margin-bottom: 15px; display: block; font-size: 0.8em; }\nlabel { font-weight: bold; }\ntextarea, input[type=text] {\n padding: 3px 5px;\n width: 80%;\n display: block;\n border: 1px solid #ddd;\n margin-bottom: 5px;\n}\ntextarea { height: 70px; }\n\n<h2>Load a fiddle based on the POST variables</h2>\n<form method='post' action='http://jsfiddle.net/api/post/mootools/1.3/dependencies/more/' target='check'>\n <p><input type='submit'/> - fiddle will be loaded in different browser window/tab.</p>\n <select name=\"panel_html\">\n <option value=\"0\">HTML</option>\n </select>\n <textarea name='html'><p class=\"red\">It's magic!</p>\n<p><a href=\"http://doc.jsfiddle.net/api/post.html\">Documentation</a></p></textarea>\n <select name=\"panel_js\">\n <option value=\"0\">JavaScript</option>\n <option value=\"1\">CoffeeScript</option>\n <option value=\"2\">JavaScript 1.7</option>\n </select>\n <textarea name='js'>window.addEvent('domready', function() {\n $$('p.red').each(function(el) {\n el.setStyle('color', '#00ff00');\n });\n});</textarea>\n <select name=\"panel_css\">\n <option value=\"0\">CSS</option>\n <option value=\"1\">SCSS</option>\n </select>\n <textarea name='css'>p {font-family: Helvetica, Arial; }</textarea>\n <label>Title:</label>\n <input type='text' name='title' value='some title'/>\n <label>Description:</label>\n <textarea name='description'>descr</textarea>\n <label>Resources (comma separated, no spaces):</label>\n <textarea name='resources'>http://abc.it/xyz.js</textarea>\n <label>DTD:</label>\n <input type='text' name='dtd' value='html 4'/>\n <label>Wrap (l/d/h/b)</label>\n <input type='text' name='wrap' value='l'/>\n</form>", "bit": { "type": "vendor-jsfiddle-embed", "format": "bitmark--", "body": "BitmarkListener.prototype.set_value_based_on_curr_bit_stk = function (val1, sub1, val2, sub2, tmpl = null) {\n let subscript = this.curr_bit_stk.top();\n let key_obj = null;\n\n if (subscript.startsWith('{'))\n key_obj = subscript.split('$'); // like \"{Diaz:0}:marks\"\n if (key_obj.length === 2) {\n if (tmpl && !(key_obj[0] in this.stk.top().bit[key_obj[1]]))\n (this.stk.top()).bit[key_obj[1]][key_obj[0]] = R.clone(tmpl);\n if (key_obj[0] in this.stk.top().bit[key_obj[1]]) {\n // e.g. bit.gaps['{0}'].example = true;\n (this.stk.top()).bit[key_obj[1]][key_obj[0]][sub1] = val1;\n if (sub2 != null)\n (this.stk.top()).bit[key_obj[1]][key_obj[0]][sub2] = val2;\n }\n }\n}\n\nbody { font-family: Helvetica, Tahoma; }\nh2 { font-size: 1.5em; margin-bottom: 10px; display: block;}\np { margin-bottom: 15px; display: block; font-size: 0.8em; }\nlabel { font-weight: bold; }\ntextarea, input[type=text] {\n padding: 3px 5px;\n width: 80%;\n display: block;\n border: 1px solid #ddd;\n margin-bottom: 5px;\n}\ntextarea { height: 70px; }\n\n<h2>Load a fiddle based on the POST variables</h2>\n<form method='post' action='http://jsfiddle.net/api/post/mootools/1.3/dependencies/more/' target='check'>\n <p><input type='submit'/> - fiddle will be loaded in different browser window/tab.</p>\n <select name=\"panel_html\">\n <option value=\"0\">HTML</option>\n </select>\n <textarea name='html'><p class=\"red\">It's magic!</p>\n<p><a href=\"http://doc.jsfiddle.net/api/post.html\">Documentation</a></p></textarea>\n <select name=\"panel_js\">\n <option value=\"0\">JavaScript</option>\n <option value=\"1\">CoffeeScript</option>\n <option value=\"2\">JavaScript 1.7</option>\n </select>\n <textarea name='js'>window.addEvent('domready', function() {\n $$('p.red').each(function(el) {\n el.setStyle('color', '#00ff00');\n });\n});</textarea>\n <select name=\"panel_css\">\n <option value=\"0\">CSS</option>\n <option value=\"1\">SCSS</option>\n </select>\n <textarea name='css'>p {font-family: Helvetica, Arial; }</textarea>\n <label>Title:</label>\n <input type='text' name='title' value='some title'/>\n <label>Description:</label>\n <textarea name='description'>descr</textarea>\n <label>Resources (comma separated, no spaces):</label>\n <textarea name='resources'>http://abc.it/xyz.js</textarea>\n <label>DTD:</label>\n <input type='text' name='dtd' value='html 4'/>\n <label>Wrap (l/d/h/b)</label>\n <input type='text' name='wrap' value='l'/>\n</form>", "item": "", "hint": "", "isExample": false, "example": "", "id": [ "119768" ] } }, { "bitmark": "[.image-render-svg]\n[@id:119768]\n<?xml version=\"1.0\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<svg version=\"1.0\" xmlns=\"http://www.w3.org/2000/svg\"\n width=\"100%\" height=\"100%\" viewBox=\"0 0 1288.000000 728.000000\"\n preserveAspectRatio=\"xMidYMid meet\">\n<g transform=\"translate(0.000000,728.000000) scale(0.100000,-0.100000)\"\nfill=\"#000000\" stroke=\"none\">\n<path d=\"M0 3640 l0 -3640 6440 0 6440 0 0 3640 0 3640 -6440 0 -6440 0 0 -3640z\n m12800 0 l0 -3560 -6360 0 -6360 0 0 3560 0 3560 6360 0 6360 0 0 -3560z\"/>\n</g>\n</svg>", "bit": { "type": "image-render-svg", "format": "bitmark--", "body": "<?xml version=\"1.0\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<svg version=\"1.0\" xmlns=\"http://www.w3.org/2000/svg\"\n width=\"100%\" height=\"100%\" viewBox=\"0 0 1288.000000 728.000000\"\n preserveAspectRatio=\"xMidYMid meet\">\n<g transform=\"translate(0.000000,728.000000) scale(0.100000,-0.100000)\"\nfill=\"#000000\" stroke=\"none\">\n<path d=\"M0 3640 l0 -3640 6440 0 6440 0 0 3640 0 3640 -6440 0 -6440 0 0 -3640z\n m12800 0 l0 -3560 -6360 0 -6360 0 0 3560 0 3560 6360 0 6360 0 0 -3560z\"/>\n</g>\n</svg>", "item": "", "hint": "", "isExample": false, "example": "", "id": [ "119768" ] } } ] <<<<./tests/learning-path1.bit [ { "bitmark": "[.learning-path-lti&image]\n[&image:https://our.s3/book_cover.jpg]\n[!Nullserie]\n[@action:Übungsprüfung]\n[@deeplink:https://other.platform/path/to/quiz]\n[@duration:3600s]\nOf course, it exists without the image resource like any other bit.\nIt works like a .article (instruction, body, resources, …)\nIt just adds action, duration and deepLink\nThree strings", "bit": { "type": "learning-path-lti", "format": "bitmark--", "body": "Of course, it exists without the image resource like any other bit.\nIt works like a .article (instruction, body, resources, …)\nIt just adds action, duration and deepLink\nThree strings", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "resource": { "type": "image", "image": { "src": "https://our.s3/book_cover.jpg", "showInIndex": false, "format": "jpg", "width": null, "height": null, "alt": "", "caption": "", "license": "", "copyright": "" } }, "instruction": "Nullserie", "action": "Übungsprüfung", "deeplink": [ "https://other.platform/path/to/quiz" ], "duration": "3600s" } }, { "bitmark": "[.learning-path-step]\n[!Nullserie]\n[@action:Päsenz-Seminar]\n[@duration:3600s]\n\nCan also contain resources like all bits", "bit": { "type": "learning-path-step", "format": "bitmark--", "body": "Can also contain resources like all bits", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "instruction": "Nullserie", "action": "Päsenz-Seminar", "duration": "3600s" } }, { "bitmark": "[.learning-path-sign]\n[!Nullserie]\n[@action:Päsenz-Seminar]\n[@duration:3600s]\n\nCan also contain resources like all bits", "bit": { "type": "learning-path-sign", "format": "bitmark--", "body": "Can also contain resources like all bits", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "instruction": "Nullserie", "action": "Päsenz-Seminar", "duration": "3600s" } }, { "bitmark": "[.learning-path-video-call]\n[@videoCallLink:https://yasminboland.com/video/call.php]", "bit": { "type": "learning-path-video-call", "format": "bitmark--", "body": "", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "videoCallLink": "https://yasminboland.com/video/call.php" } }, { "bitmark": "[.learning-path-learning-goal]\n[!Nullserie]\n[@action:Päsenz-Seminar]\n[@duration:3600s]\nCan also contain resources like all bits", "bit": { "type": "learning-path-learning-goal", "format": "bitmark--", "body": "Can also contain resources like all bits", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "instruction": "Nullserie", "action": "Päsenz-Seminar", "duration": "3600s" } }, { "bitmark": "[.learning-path-closing]\n[!Nullserie]\n[@action:Päsenz-Seminar]\n[@duration:3600s]\nCan also contain resources like all bits", "bit": { "type": "learning-path-closing", "format": "bitmark--", "body": "Can also contain resources like all bits", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "instruction": "Nullserie", "action": "Päsenz-Seminar", "duration": "3600s" } }, { "bitmark": "[.learning-path-feedback]\n[!Nullserie]\n[@action:Päsenz-Seminar]\n[@duration:3600s]\nCan also contain resources like all bits", "bit": { "type": "learning-path-feedback", "format": "bitmark--", "body": "Can also contain resources like all bits", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "instruction": "Nullserie", "action": "Päsenz-Seminar", "duration": "3600s" } }, { "bitmark": "[.learning-path-bot-training]\n[@bot:b-87687aszd87wed78]", "bit": { "type": "learning-path-bot-training", "format": "bitmark--", "body": "", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "bot": [ "b-87687aszd87wed78" ] } } ] <<<<./tests/learning-path3.bit [ { "bitmark": "[.learning-path-book&website-link]\n[!Skript «Grundausbildung Altersvorsorge»]\n[@action:Selbststudium]\n[@duration:3600s]\n[@book:e-876z78z87og87g8zg][►Ref4.2.34][►Ref4.3.1]\n\nFirst one is the normal reference.\nSecond is the optional property called “referenceEnd”\nAll these bits support all resources (like &website-link, …\nAll of these bits (starting with .learning-path support the following optional properties:\n[@date:2015-03-25T12:00:00Z]\n[@location:Zug]", "bit": { "type": "learning-path-book", "format": "bitmark--", "body": "First one is the normal reference.\nSecond is the optional property called “referenceEnd”\nAll these bits support all resources (like &website-link, …\nAll of these bits (starting with .learning-path support the following optional properties:", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "instruction": "Skript «Grundausbildung Altersvorsorge»", "action": "Selbststudium", "duration": "3600s", "book": "e-876z78z87og87g8zg", "reference": "Ref4.2.34", "referenceEnd": "Ref4.3.1", "date": "2015-03-25T12:00:00Z", "location": "Zug" } } ] <<<<./tests/resource-all.bit [ { "bitmark": "[.article:bitmark--&image-link]\n[@id:119760]\n[&image-link:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4][@src2x:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/poster.png]", "bit": { "type": "article", "format": "bitmark--", "body": "", "id": [ "119760" ], "resource": { "type": "image-link", "imageLink": { "provider": "", "url": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4", "format": "mp4", "src2x": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/poster.png" } } } }, { "bitmark": "[.article:bitmark--&website-link]\n[@id:119760]\n[&website-link:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4]", "bit": { "type": "article", "format": "bitmark--", "body": "", "id": [ "119760" ], "resource": { "type": "website-link", "websiteLink": { "siteName": "", "url": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4" } } } }, { "bitmark": "[.article:bitmark--&article-link]\n[@id:119760]\n[&article-link:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4]", "bit": { "type": "article", "format": "bitmark--", "body": "", "id": [ "119760" ], "resource": { "type": "article-link", "articleLink": { "url": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4" } } } }, { "bitmark": "[.article:bitmark--&video]\n[@id:119760]\n[&video:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4][@posterImage:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/poster.png][@width:740][@height:540]", "bit": { "type": "article", "format": "bitmark--", "body": "", "id": [ "119760" ], "resource": { "type": "video", "video": { "format": "mp4", "src": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4", "width": "740", "height": "540", "duration": "", "mute": false, "autoplay": false, "allowSubtitles": false, "showSubtitles": false, "alt": "", "license": "", "copyright": "", "posterImage": { "src": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/poster.png", "format": "png", "width": null, "height": null } } } } }, { "bitmark": "[.article:bitmark--&image]\n[@id:119760]\n[&image:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4][@src2x:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/poster.png][@width:1040][@height:140]", "bit": { "type": "article", "format": "bitmark--", "body": "", "id": [ "119760" ], "resource": { "type": "image", "image": { "src": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4", "showInIndex": false, "format": "mp4", "width": "1040", "height": "140", "alt": "", "caption": "", "license": "", "copyright": "", "src2x": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/poster.png" } } } }, { "bitmark": "[.article:bitmark--&website-link]\n[@id:119760]\n[&website-link:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4]", "bit": { "type": "article", "format": "bitmark--", "body": "", "id": [ "119760" ], "resource": { "type": "website-link", "websiteLink": { "siteName": "", "url": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4" } } } }, { "bitmark": "[.article:bitmark--&article-link]\n[@id:119760]\n[&article-link:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4]", "bit": { "type": "article", "format": "bitmark--", "body": "", "id": [ "119760" ], "resource": { "type": "article-link", "articleLink": { "url": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4" } } } }, { "bitmark": "[.article:bitmark--&app-link]\n[@id:119760]\n[&app-link:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4]", "bit": { "type": "article", "format": "bitmark--", "body": "", "id": [ "119760" ], "resource": { "type": "app-link", "appLink": { "url": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4" } } } }, { "bitmark": "[.article:bitmark--&video]\n[@id:119760]\n[&video:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4][@posterImage:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/poster.png][@width:740][@height:540][@duration:PT12M31S]", "bit": { "type": "article", "format": "bitmark--", "body": "", "id": [ "119760" ], "resource": { "type": "video", "video": { "format": "mp4", "src": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4", "width": "740", "height": "540", "duration": "PT12M31S", "mute": false, "autoplay": false, "allowSubtitles": false, "showSubtitles": false, "alt": "", "license": "", "copyright": "", "posterImage": { "src": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/poster.png", "format": "png", "width": null, "height": null } } } } }, { "bitmark": "[.article:bitmark--&video-link]\n[@id:119760]\n[&video-link:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4][@src1x:https://www.youtube.com/tumb_201809210816.png][@src2x:https://www.youtube.com/tumb_201809210816.png][@width:740][@height:540][@duration:PT12M31S]", "bit": { "type": "article", "format": "bitmark--", "body": "", "id": [ "119760" ], "resource": { "type": "video-link", "videoLink": { "provider": "docs.bitmark.cloud", "url": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4", "width": "740", "height": "540", "duration": "PT12M31S", "thumbnails": [ { "format": "png", "width": null, "height": null, "src1x": "https://www.youtube.com/tumb_201809210816.png" }, { "format": "png", "width": null, "height": null, "src2x": "https://www.youtube.com/tumb_201809210816.png" } ] } } } }, { "bitmark": "[.article:bitmark--&still-image-film]\n[@id:119760]\n[&still-image-film:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4][@duration:PT12M31S]", "bit": { "type": "article", "format": "bitmark--", "body": "", "id": [ "119760" ], "resource": { "type": "still-image-film", "image": { "provider": "", "url": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4", "format": "mp4", "duration": "PT12M31S" } } } }, { "bitmark": "[.article:bitmark--&still-image-film-link]\n[@id:119760]\n[&still-image-film-link:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4][@duration:PT12M31S]", "bit": { "type": "article", "format": "bitmark--", "body": "", "id": [ "119760" ], "resource": { "type": "still-image-film-link", "videoLink": { "provider": "", "url": "https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4", "format": "mp4", "duration": "PT12M31S" } } } } ] <<<<./tests/utfgpun.bit [ { "bitmark": "[.cloze-solution-grouped:bitmark++&image]\n[%A32a]\n[&image:https://docs.bitbook.education/bit-books/schubert/schubert_erkundungen_b2/web-resources/images/065-1b.png][@caption: Willy Brandt: Bundeskanzler der Bundesrepublik Deutschland von 1969 bis 1974][@search: Icons can be tinted by the color in the tint property.\t ‐‑‒–—―‖‗†‡•…‰‱※⁞⁝]", "bit": { "type": "cloze-solution-grouped", "format": "bitmark++", "body": "", "item": "A32a", "hint": "", "isExample": false, "example": "", "resource": { "type": "image", "image": { "src": "https://docs.bitbook.education/bit-books/schubert/schubert_erkundungen_b2/web-resources/images/065-1b.png", "showInIndex": false, "format": "png", "width": null, "height": null, "alt": "", "caption": "Willy Brandt: Bundeskanzler der Bundesrepublik Deutschland von 1969 bis 1974", "license": "", "copyright": "", "search": "Icons can be tinted by the color in the tint property.\t ‐‑‒–—―‖‗†‡•…‰‱※⁞⁝" } } } } ] <<<<./tests/learning-path4.bit [ { "bitmark": "[.learning-path-book&website-link]\n[!Skript «Grundausbildung Altersvorsorge»]\n[@action:Selbststudium]\n[@duration:3600s]\n[@book:e-876z78z87og87g8zg][►Ref4.2.34][►Ref4.3.1]\n\nFirst one is the normal reference.\nSecond is the optional property called “referenceEnd”\nAll these bits support all resources (like &website-link, …\nAll of these bits (starting with .learning-path support the following optional properties:\n[@date:2015-03-25T12:00:00Z]\n[@location:Zug]\n[@list:One]\n[@list:Two]\n[@list:Three]\n[@list:Four]\n[@id:119760]\n||[&website-link:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4]||", "bit": { "type": "learning-path-book", "format": "bitmark--", "body": "First one is the normal reference.\nSecond is the optional property called “referenceEnd”\nAll these bits support all resources (like &website-link, …\nAll of these bits (starting with .learning-path support the following optional properties:", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "instruction": "Skript «Grundausbildung Altersvorsorge»", "action": "Selbststudium", "duration": "3600s", "book": "e-876z78z87og87g8zg", "reference": "Ref4.2.34", "referenceEnd": "Ref4.3.1", "date": "2015-03-25T12:00:00Z", "location": "Zug", "list": [ "One", "Two", "Three", "Four" ], "id": [ "119760" ] } } ] <<<<./tests/learning-path5.bit [ { "bitmark": "[.learning-path-external-link]\n[!Skript «Grundausbildung Altersvorsorge»]\n[@action:Selbststudium]\n[@duration:3600s]\n[@book:e-876z78z87og87g8zg][►Ref4.2.34][►Ref4.3.1]\n\nFirst one is the normal reference.\nSecond is the optional property called “referenceEnd”\nAll these bits support all resources (like &website-link, …\nAll of these bits (starting with .learning-path support the following optional properties:\n[@date:2015-03-25T12:00:00Z][@date:2022-04-19T00:00:00]\n[@location:Zug]\n[@list:One]\n[@list:Two]\n[@list:Three]\n[@list:Four]\n[@id:119760]\n[@botAnnounceAt: Allein zu Haus]\n[@botSaveAt:Tagesspiegel]\n[@botSendAt:Tagesspiegel]\n[@botRemindAt: Welche Aussage entspricht]\n[@externalLink: optional property ]\n[@videoCallLink:https://zoom.us/j/96545131108?pwd=RXdvTTVhW1aG1GcWFJeEEvQT09]", "bit": { "type": "learning-path-external-link", "format": "bitmark--", "body": "First one is the normal reference.\nSecond is the optional property called “referenceEnd”\nAll these bits support all resources (like &website-link, …\nAll of these bits (starting with .learning-path support the following optional properties:\n[@date:2015-03-25T12:00:00Z]", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "instruction": "Skript «Grundausbildung Altersvorsorge»", "action": "Selbststudium", "duration": "3600s", "book": "e-876z78z87og87g8zg", "reference": "Ref4.2.34", "referenceEnd": "Ref4.3.1", "dateEnd": "2022-04-19T00:00:00", "date": "2015-03-25T12:00:00Z", "location": "Zug", "list": [ "One", "Two", "Three", "Four" ], "id": [ "119760" ], "botAnnounceAt": "Allein zu Haus", "botSaveAt": "Tagesspiegel", "botSendAt": "Tagesspiegel", "botRemindAt": "Welche Aussage entspricht", "externalLink": "optional property", "videoCallLink": "https://zoom.us/j/96545131108?pwd=RXdvTTVhW1aG1GcWFJeEEvQT09" } } ] <<<<./tests/learning-path6.bit [ { "bitmark": "[.learning-path-classroom-training]\n[!Skript «Grundausbildung Altersvorsorge»]\n[@action:Selbststudium]\n[@duration:3600s]\n[@book:e-876z78z87og87g8zg][►Ref4.2.34][►Ref4.3.1]\n\nFirst one is the normal reference.\nSecond is the optional property called “referenceEnd”\nAll these bits support all resources (like &website-link, …\nAll of these bits (starting with .learning-path support the following optional properties:\n[@date:2015-03-25T12:00:00Z]\n[@location:Zug]\n[@list:One]\n[@list:Two]\n[@list:Three]\n[@list:Four]\n[@id:119760]\n||[&website-link:https://docs.bitmark.cloud/bit-books/rav/web-resources/video/rav_video.mp4]||", "bit": { "type": "learning-path-classroom-training", "format": "bitmark--", "body": "First one is the normal reference.\nSecond is the optional property called “referenceEnd”\nAll these bits support all resources (like &website-link, …\nAll of these bits (starting with .learning-path support the following optional properties:", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "instruction": "Skript «Grundausbildung Altersvorsorge»", "action": "Selbststudium", "duration": "3600s", "book": "e-876z78z87og87g8zg", "reference": "Ref4.2.34", "referenceEnd": "Ref4.3.1", "date": "2015-03-25T12:00:00Z", "location": "Zug", "list": [ "One", "Two", "Three", "Four" ], "id": [ "119760" ] } }, { "bitmark": "[.learning-path-external-link]\n[!Grundlagen 1 – Externe Konserve]\n[@action:Selbststudium]\n[@duration: 3600s]\n[@externalLinkText:www.apple.com]\n[@externalLink:https://www.apple.com]\n[@progressPoints:12345]\n[@textReference: foo\nbar baz yoshi@foo.com]", "bit": { "type": "learning-path-external-link", "format": "bitmark--", "body": "", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "instruction": "Grundlagen 1 – Externe Konserve", "action": "Selbststudium", "duration": "3600s", "externalLinkText": "www.apple.com", "externalLink": "https://www.apple.com", "progressPoints": 12345, "textReference": "foo\nbar baz yoshi@foo.com" } }, { "bitmark": "[.learning-path-classroom-event]\n[!Grundlagen 1]\n[@action:Päsenz-Seminar]\n[@date:2022-10-01T08:00:00CET]\n[@duration:28800s]\n[@location:Zug]\n[@isTracked:true]\n[@isInfoOnly:false]\n[@textReference: foo\nbar\nbaz]", "bit": { "type": "learning-path-classroom-event", "format": "bitmark--", "body": "", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "instruction": "Grundlagen 1", "action": "Päsenz-Seminar", "date": "2022-10-01T08:00:00CET", "duration": "28800s", "location": "Zug", "textReference": "foo\nbar\nbaz" } } ] <<<<./tests/learning-path7.bit [ { "bitmark": "[.learning-path-external-link]\n[!Grundlagen 1 – Externe Konserve]\n[@action:Selbststudium]\n[@duration: 3600s]\n[@externalLinkText:www.apple.com]\n[@externalLink:https://www.apple.com]\n[@progressPoints:not12345]", "bit": { "type": "learning-path-external-link", "format": "bitmark--", "body": "[@progressPoints:not12345]", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "instruction": "Grundlagen 1 – Externe Konserve", "action": "Selbststudium", "duration": "3600s", "externalLinkText": "www.apple.com", "externalLink": "https://www.apple.com" }, "errors": [ { "message": "progressPoints property has to be positive integer value", "line": 8, "column": 0, "errorLine": "[@progressPoints:not12345]" } ] }, { "bitmark": "[.learning-path-classroom-event]\n[!Grundlagen 1]\n[@action:Päsenz-Seminar]\n[@date:2022-10-01T08:00:00CET]\n[@duration:28800s]\n[@location:Zug]\n[@isTracked:trua]\n[@isInfoOnly:felse]", "bit": { "type": "learning-path-classroom-event", "format": "bitmark--", "body": "[@isTracked:trua]\n[@isInfoOnly:felse]", "item": "", "hint": "", "isExample": false, "example": "", "isTracked": true, "isInfoOnly": false, "instruction": "Grundlagen 1", "action": "Päsenz-Seminar", "date": "2022-10-01T08:00:00CET", "duration": "28800s", "location": "Zug" }, "errors": [ { "message": "isTracked property has to be true or false", "line": 8, "column": 0, "errorLine": "[@isTracked:trua]" }, { "message": "isInfoOnly property has to be true or false", "line": 9, "column": 0, "errorLine": "[@isInfoOnly:felse]" } ] } ] <<<<./tests/book1.bit [ { "bitmark": "[.book:text]\n[! this is my book]\n[# Erkundungen]\n[## Deutsch als Fremdsprache]\n[%][%k testing L&D R&D]\n[@subject: Integriertes Kurs- und Arbeitsbuch Sprachniveau B2]\n[@ language:en]\n[@ copyright: © 2012 by A Publisher International Ltd., Zurich, Switzerland]\n[@ skills: reading]\n[@ ageRange: 18, 969]\n[@ complexity: intermediate]\n[@seriesTitle: German as a Foreign Language]\n[@seriesId: com.firstpub.e0111]\n[@numberInSeries: 1]\n[@format: Integrated course and work book]\n[@type: book]\n[@isLiveBook: false]\n[@isSmartBook: false]\n[@isHighQuality: true]", "bit": { "type": "book", "format": "text", "body": "", "item": "", "hint": "", "isExample": false, "example": "", "instruction": "this is my book", "title": "Erkundungen", "subtitle": "Deutsch als Fremdsprache", "lead": "k testing L&D R&D", "subject": [ "Integriertes Kurs- und Arbeitsbuch Sprachniveau B2" ], "language": [ "en" ], "copyright": [ "© 2012 by A Publisher International Ltd., Zurich, Switzerland" ], "skills": [ "reading" ], "ageRange": [ "18, 969" ], "complexity": [ "intermediate" ], "seriesTitle": [ "German as a Foreign Language" ], "seriesId": [ "com.firstpub.e0111" ], "numberInSeries": [ "1" ], "_format": [ "Integrated course and work book" ], "_type": [ "book" ], "isLiveBook": [ "false" ], "isSmartBook": [ "false" ], "isHighQuality": [ "true" ] } } ] <<<<./tests/book2.bit [ { "bitmark": "[. book \t]\n[%bk2]\n[@authors.name:Anne Buschas]\n[@authors.name:Susanne Raven]\n[@authors.name:Szilvia Szita]\n\n[#Erkundungen B2]\n[##Deutsch als Fremdsprache]\n[@subject: Integriertes Kurs- und Arbeitsbuch]\n\n[@ leave.levelCEFR:B2]\n\n[@ publications:3., veränderte Auflage]\n\n[@ publisher.name:SCHUBERT-Verlag, Leipzig]\n\n[@ISBN:978-3-941323-43-8]", "bit": { "type": "book", "format": "bitmark--", "body": "", "item": "bk2", "hint": "", "isExample": false, "example": "", "authors.name": [ "Anne Buschas", "Susanne Raven", "Szilvia Szita" ], "title": "Erkundungen B2", "subtitle": "Deutsch als Fremdsprache", "subject": [ "Integriertes Kurs- und Arbeitsbuch" ], "leave.levelCEFR": [ "B2" ], "publications": [ "3., veränderte Auflage" ], "publisher.name": [ "SCHUBERT-Verlag, Leipzig" ], "ISBN": [ "978-3-941323-43-8" ] } } ] <<<<./tests/book3.bit [ { "bitmark": "[.book&image]\n[! this is my book]\n[# Erkundungen]\n[## Deutsch als Fremdsprache]\n[@ subject: Integriertes Kurs- und Arbeitsbuch Sprachniveau B2]\n[@ language:en]\n[@ copyright: © 2012 by A Publisher International Ltd., Zurich, Switzerland]\n[@ skills: reading]\n[@ ageRange: 18, 969]\n[@ complexity: intermediate]\n[@seriesTitle: German as a Foreign Language]\n[@seriesId: com.firstpub.e0111]\n[@numberInSeries: 1]\n[@format: Integrated course and work book]\n[@type: book]\n[@isLiveBook: false]\n[@isSmartBook: false]\n[@isHighQuality: true]\n\n[&image:https://docs.bitbook.education/bit-books/schubert/schubert_erkundungen_b2/web-resources/images/chapter_images/schubert_b2_images-007-010_1.png]", "bit": { "type": "book", "format": "bitmark--", "body": "", "item": "", "hint": "", "isExample": false, "example": "", "instruction": "this is my book", "title": "Erkundungen", "subtitle": "Deutsch als Fremdsprache", "subject": [ "Integriertes Kurs- und Arbeitsbuch Sprachniveau B2" ], "language": [ "en" ], "copyright": [ "© 2012 by A Publisher International Ltd., Zurich, Switzerland" ], "skills": [ "reading" ], "ageRange": [ "18, 969" ], "complexity": [ "intermediate" ], "seriesTitle": [ "German as a Foreign Language" ], "seriesId": [ "com.firstpub.e0111" ], "numberInSeries": [ "1" ], "_format": [ "Integrated course and work book" ], "_type": [ "book" ], "isLiveBook": [ "false" ], "isSmartBook": [ "false" ], "isHighQuality": [ "true" ], "resource": { "type": "image", "image": { "src": "https://docs.bitbook.education/bit-books/schubert/schubert_erkundungen_b2/web-resources/images/chapter_images/schubert_b2_images-007-010_1.png", "showInIndex": false, "format": "png", "width": null, "height": null, "alt": "", "caption": "", "license": "", "copyright": "" } } } } ] <<<<./tests/book4.bit [ { "bitmark": "[.book]\n[^.book]\n[^Kompatibilitätsmodus ]\n[#Microsoft PowerPoint - CFP - Folien [^Kompatibilitätsmodus ]]\n[@authors.name:ami]\nIch habe die __(deutsche)__ Staatsbürgerschaft. Ich bin __(Deutsche[r]). __", "bit": { "type": "book", "format": "bitmark--", "body": "[^.book]\n[^Kompatibilitätsmodus ]\n\n\nIch habe die __(deutsche)__ Staatsbürgerschaft. Ich bin __(Deutsche[r]). __", "item": "", "hint": "", "isExample": false, "example": "", "title": "Microsoft PowerPoint - CFP - Folien [^Kompatibilitätsmodus ]", "authors.name": [ "ami" ] } } ] <<<<./tests/page1.bit [ { "bitmark": "[.page:bitmark++]\n[@ageRange:18][@ageRange:120]\n[@language:en]\n[@language:jp]\n[@language:cn]\n\n**Some bold text,**\nfollowed by some plain text. cloze open close cloze1 book.\n[&image:https://cdn.bitbook.education/cat.jpg]\n\nSome more text.\n::remark::\n::", "bit": { "type": "page", "format": "bitmark++", "body": "**Some bold text,**\nfollowed by some plain text. cloze open close cloze1 book.\n\n\nSome more text.\n::remark::\n::", "ageRange": [ "18", "120" ], "language": [ "en", "jp", "cn" ] }, "parser": { "excessResources": [ { "type": "image", "format": "jpg", "src": "https://cdn.bitbook.education/cat.jpg" } ] } } ] <<<<./tests/page2.bit [ { "bitmark": "[.page:bitmark++]\n**Erfolg um jeden Preis**\n\nImmer, wenn ein Dopingfall durch die Medien geht, melden sich auch die Moralisten zu Wort.\n\n[&image:http://cdn.bitbook.education/publishers/3/books/26363/erfolg.jpg]\n\nWas sind dagegen ein paar anabole Steroide ==anabole Steroide==(*synthetisch hergestellte Mittel zur Leistungssteigerung)==", "bit": { "type": "page", "format": "bitmark++", "body": "**Erfolg um jeden Preis**\n\nImmer, wenn ein Dopingfall durch die Medien geht, melden sich auch die Moralisten zu Wort.\n\n\n\nWas sind dagegen ein paar anabole Steroide ==anabole Steroide==(*synthetisch hergestellte Mittel zur Leistungssteigerung)==" }, "parser": { "excessResources": [ { "type": "image", "format": "jpg", "src": "http://cdn.bitbook.education/publishers/3/books/26363/erfolg.jpg" } ] } } ] <<<<./tests/article1.bit [ { "bitmark": "[.article:bitmark++]\n[@ageRange:18][@ageRange:120]\n[@language:en]\n[@language:jp]\n[@language:cn]\n\n**Some bold text,**\nfollowed by some plain text. cloze open close cloze1 book.\n[&image:https://cdn.bitbook.education/cat.jpg]\n\nSome more text.\n::remark::\n::", "bit": { "type": "article", "format": "bitmark++", "body": "**Some bold text,**\nfollowed by some plain text. cloze open close cloze1 book.\n\n\nSome more text.\n::remark::\n::", "ageRange": [ "18", "120" ], "language": [ "en", "jp", "cn" ] }, "parser": { "excessResources": [ { "type": "image", "format": "jpg", "src": "https://cdn.bitbook.education/cat.jpg" } ] } } ] <<<<./tests/article2.bit [ { "bitmark": "[.essay&article]\n[!Fassen Sie den Text kurz mit eigenen Worten zusammen.]", "bit": { "type": "essay", "format": "bitmark--", "instruction": "Fassen Sie den Text kurz mit eigenen Worten zusammen.", "partialAnswer": "", "body": "", "item": "", "hint": "", "isExample": false, "example": "" } }, { "bitmark": "[.article:bitmark++]\n**Erfolg um jeden Preis**\n\nImmer, wenn ein Dopingfall durch die Medien geht, melden sich auch die Moralisten zu Wort.\n\n[&image:http://cdn.bitbook.education/publishers/3/books/26363/erfolg.jpg]\n\nWas sind dagegen ein paar anabole Steroide ==anabole Steroide==(*synthetisch hergestellte Mittel zur Leistungssteigerung)==", "bit": { "type": "article", "format": "bitmark++", "body": "**Erfolg um jeden Preis**\n\nImmer, wenn ein Dopingfall durch die Medien geht, melden sich auch die Moralisten zu Wort.\n\n\n\nWas sind dagegen ein paar anabole Steroide ==anabole Steroide==(*synthetisch hergestellte Mittel zur Leistungssteigerung)==" }, "parser": { "excessResources": [ { "type": "image", "format": "jpg", "src": "http://cdn.bitbook.education/publishers/3/books/26363/erfolg.jpg" } ] } } ] <<<<./tests/article6.bit [ { "bitmark": "[.newspaper-article]\n[@ageRange:18][@ageRange:120]\n[@language:jp]\n\n「和歌山発電所は今回の事件とは別に、和歌山県日高川町で計画された出力47メガワット(MW)のメガソーラーです。’17年にトライベイと東京のJ社が別会社をつくって開発していた。別会社の登記簿によると代表社員はトライベイ、職務執行者は清志氏です」(全国紙記者)", "bit": { "type": "newspaper-article", "format": "bitmark--", "body": "「和歌山発電所は今回の事件とは別に、和歌山県日高川町で計画された出力47メガワット(MW)のメガソーラーです。’17年にトライベイと東京のJ社が別会社をつくって開発していた。別会社の登記簿によると代表社員はトライベイ、職務執行者は清志氏です」(全国紙記者)", "item": "", "hint": "", "isExample": false,