A computing device for providing user interaction with digital ink, the computing device comprising a processor, a memory and at least one non-transitory computer readable medium for recognizing handwriting input under control of the processor, the at least one non-transitory computer readable medium configured to: a. cause display of, on a display interface of the computing device, first digital ink in accordance with first handwriting input; b. allocate references to digital ink elements of the first digital ink, wherein the digital ink elements of the first digital ink are strokes, wherein: each stroke is characterized by a stroke initiation location, a stroke termination location, and a path connecting the stroke initiation and termination locations; the references provide a first indexation to the digital ink elements of the first digital ink by indexing the strokes in time order and/or in spatial order; the references further provide a second indexation to the digital ink elements of the first digital ink by segmenting each stroke indexed by the first indexation into a number of stroke segments and indexing each stroke segment; c. cause recognition of the first digital ink by segmenting the strokes into recognized elements, wherein said recognized elements comprise characters and words; d. provide ink objects by mapping the recognized elements of the first handwriting input onto the corresponding references of the digital ink elements of the first digital ink; and e. store, in the memory of the computing device, the ink objects including the references and mapped recognized elements. a. cause display of, on a display interface of the computing device, first digital ink in accordance with first handwriting input; b. allocate references to digital ink elements of the first digital ink, wherein the digital ink elements of the first digital ink are strokes, wherein: each stroke is characterized by a stroke initiation location, a stroke termination location, and a path connecting the stroke initiation and termination locations; the references provide a first indexation to the digital ink elements of the first digital ink by indexing the strokes in time order and/or in spatial order; the references further provide a second indexation to the digital ink elements of the first digital ink by segmenting each stroke indexed by the first indexation into a number of stroke segments and indexing each stroke segment; each stroke is characterized by a stroke initiation location, a stroke termination location, and a path connecting the stroke initiation and termination locations; the references provide a first indexation to the digital ink elements of the first digital ink by indexing the strokes in time order and/or in spatial order; the references further provide a second indexation to the digital ink elements of the first digital ink by segmenting each stroke indexed by the first indexation into a number of stroke segments and indexing each stroke segment; c. cause recognition of the first digital ink by segmenting the strokes into recognized elements, wherein said recognized elements comprise characters and words; d. provide ink objects by mapping the recognized elements of the first handwriting input onto the corresponding references of the digital ink elements of the first digital ink; and e. store, in the memory of the computing device, the ink objects including the references and mapped recognized elements.