A system for hand-drawing diagrams including text and non-text elements on a computing device, the computing device comprising a processor and at least one non-transitory computer readable medium for detecting and recognizing hand-drawing diagram element input under control of the processor, the at least one non-transitory computer readable medium configured to: a. cause display of a plurality of input diagram elements in interactive digital ink on a display device associated with the computing device; b. classify the input diagram elements of the interactive digital ink into different classes, said classes being shape, text and junk, based on probability scores indicating likelihoods of classification, wherein the class of each diagram element is identified by: i. grouping strokes of the input diagram elements and assigning probability scores to each group of strokes using spatial and temporal information, wherein three probability scores are assigned, one for each class - text, shape and junk, ii. discarding groups of strokes that have low or very low probability scores, iii. building hypotheses for the groups of strokes using spatial and temporal information, iv. extracting features for each group of strokes of the built hypotheses, v. testing the built hypotheses based on the extracted features and on the spatial and temporal information to provide three probability scores for each group of strokes, one for each class - text, shape and junk; c. parse the classified input diagram elements to a recognizer for suitable recognition processing depending on the classification, wherein junk is not parsed to the recognizer, and recognize a type of the classified input diagram elements using a shape-based lexicon or a text-based lexicon; d. associate one or more of the input diagram elements with one or more other of the input diagram elements in accordance with the class and type of each input diagram element and based on their relative spatial position; e. receive one or more interactions with the digital ink of one of the associated input diagram elements, said one or more interactions causing a movement or a re-sizing of said associated input diagram element; and f. cause re-display of the associated input diagram elements based on the one or more interactions with the digital ink received and in accordance with the one or more associations, wherein at least some of the geometrical features of the associated input diagram elements are retained during said re-display. a. cause display of a plurality of input diagram elements in interactive digital ink on a display device associated with the computing device; b. classify the input diagram elements of the interactive digital ink into different classes, said classes being shape, text and junk, based on probability scores indicating likelihoods of classification, wherein the class of each diagram element is identified by: i. grouping strokes of the input diagram elements and assigning probability scores to each group of strokes using spatial and temporal information, wherein three probability scores are assigned, one for each class - text, shape and junk, ii. discarding groups of strokes that have low or very low probability scores, iii. building hypotheses for the groups of strokes using spatial and temporal information, iv. extracting features for each group of strokes of the built hypotheses, v. testing the built hypotheses based on the extracted features and on the spatial and temporal information to provide three probability scores for each group of strokes, one for each class - text, shape and junk; i. grouping strokes of the input diagram elements and assigning probability scores to each group of strokes using spatial and temporal information, wherein three probability scores are assigned, one for each class - text, shape and junk, ii. discarding groups of strokes that have low or very low probability scores, iii. building hypotheses for the groups of strokes using spatial and temporal information, iv. extracting features for each group of strokes of the built hypotheses, v. testing the built hypotheses based on the extracted features and on the spatial and temporal information to provide three probability scores for each group of strokes, one for each class - text, shape and junk; c. parse the classified input diagram elements to a recognizer for suitable recognition processing depending on the classification, wherein junk is not parsed to the recognizer, and recognize a type of the classified input diagram elements using a shape-based lexicon or a text-based lexicon; d. associate one or more of the input diagram elements with one or more other of the input diagram elements in accordance with the class and type of each input diagram element and based on their relative spatial position; e. receive one or more interactions with the digital ink of one of the associated input diagram elements, said one or more interactions causing a movement or a re-sizing of said associated input diagram element; and f. cause re-display of the associated input diagram elements based on the one or more interactions with the digital ink received and in accordance with the one or more associations, wherein at least some of the geometrical features of the associated input diagram elements are retained during said re-display.