The basics
conceptWhat is bitmark?
Bitmark is a standard designed to enhance the rendering of text. It is a system that uses specific prefixes to denote different types of content. These prefixes, known as bits, are placed on a separate line before the content they are associated with.
Bitmark is an uncompromisingly content- and mobile-first standard for digital, interactive textbooks. More technically speaking, bitmark is an umbrella term for the bitmark JSON data model and the bitmark markup language.
bitmark is strictly content-first: you have one common data base of all digital assets for mobile, tablet and web apps — produce once, publish everywhere.
The graphical representation of learning content is very individual. Therefore bitmark does not contain any visual information. It strictly follows the well-established MVC (Model-View-Controller) paradigm, where model (data model), view (visual representation) and logic (control logic) are strictly separated.
More information: https://docs.bitmark.cloud/
Using bitmark
Every piece of content is preceded by its bit. The bit type is placed on a
separate line before the content it is associated with, enclosed in square
brackets and beginning with a period — for instance [.article].
Simply begin each piece of content with the appropriate bit: an article
with [.article], a note with [.note], a chapter heading with
[.chapter], and so on.
The basic structure of a bit:
[.bitType]
[@id:123]
[%item][%lead]
[!instruction]
Body
Bit design
The design of a bit is given by the definition of its corresponding theme — it cannot be changed in bitmark:
- The design of a bit is defined by its theme, not by the markup.
- This provides consistency through all contents and bits.
- A theme can be applied to a whole book or to a single bit.
Bit structure
Tags
All bitmark tags start with [ and end with ]:
[&image:https://example.org/images/background.png]
The first character after the opening square bracket is a reserved
character that defines the role and the format of the tag (. bit
type, @ property, % item/lead, ! instruction, ? hint, & resource,
# title, _ gap, …).
Every bit carries a unique ID (the [@id:…] property), assigned by the
platform. It identifies the bit and is crucial for referencing and rights
management — never change it.
Footer
Nearly all bit types can have a footer. The content of the footer is always
shown at the bottom of the bit. To add a footer, insert ~~~~ (or a
==== footer ==== divider) after the body of the bit:
[.multiple-choice]
[!Tick the correct answer!]
====
[+A]
[-B]
[-C]
~~~~
Source: my imagination
Chains
Chains are a fundamental concept of bitmark. All bitmark tags that are "glued" together (not separated by a space character) belong to the same object.
One gap with two accepted solutions — the two tags are chained:
[.cloze]
The students completed the [_cloze][_gap text] with the correct verb forms.
Two separate gaps — the tags are not chained, because they are separated by a space character:
[.cloze]
The students completed the [_cloze] [_with] the correct verb forms.
Property (@) tags are fully supported in chains: a chained @ tag
relates to the tag it is chained to, not to the whole bit. The same holds
for hints:
[.cloze]
[_gap][?This is a hint to solve this gap and not a hint for the whole quiz][@example]