1. A computer-implemented method, comprising: providing an application programming interface (API) for managing annotations within content, the API comprising a DynamicSelectionProcessor.GenerateLocatorPart which converts a content selection to an annotation framework locator part, a DynamicSelectionProcessor.ResolveLocatorPart which converts the annotation framework locator part to a corresponding content selection; loading content from persistent storage to create a runtime content, the content including a portion thereof that is associated with an annotation identifier; processing the annotation identifier and determining a start of the portion and an end of the portion; upon loading the content, inserting one or more anchor markers into the runtime content, wherein each anchor marker is a simple class, AnchorMarker, which has properties for setting and getting an AnchorMarkerID, which is an identifier corresponding to the annotation framework locator part, and an AnchorMarkerTagType, the AnchorMarkerID and AnchorMarkerTagType properties being kept in a corresponding DependencyProperties of the each anchor marker to enable the properties to be serialized and deserialized; upon loading the content, each of the anchor markers registering itself with a DynamicAnchorManager by overriding an OnParentChanged method; converting at least one of the one or more anchor markers into content locators; maintaining anchor information in a dynamic anchor table, the anchor information corresponding to the portion within the runtime content; loading annotation information from a persistent store which is separate from the content, the annotation information comprising an annotation corresponding to the annotation identifier; and associating the annotation with the portion using the anchor information within the dynamic anchor table, the annotation corresponding to the start and end of the portion.