MIT SketchML Format
Useful facts about the MIT SketchML format:
- The ids in the MIT SketchML format are UUIDs in Java and GUIDs in c#, which are equivalent.
- All times should be in milliseconds since 1/1/1970 UTC.
- Time stamps for strokes are when strokes are finished (a change from earlier versions)
- XML was chosen so that the format would be flexible. It currently accommodates both sketching and speech.
- Points are separate from the Strokes to give a nice structure.
- Additional parameters for points (e.g., tilt) can be added when the are available from the tablet.
- We have an .xsd file which can be used to validate the MIT SketchML files.
- Erase and Deletion are similar, but have different types of triggers.
- Erase edits are caused by the user using the eraser.
- Deletions are caused by the user drawing something that is interpreted by the system as a gesture that means delete something.
- When you erase something using an erase or delete edit, the arg(s) are erased, but the trigger is not. The trigger should be erased/deleted using a separate action in which the trigger and arg are the same. This is a more flexible approach and allows the erasing and removal of the trigger to happen at separate times. See the examples here and here.
- When a substroke is created/displayed its parent stroke is deleted/hidden.