This project is read-only.

Annotations

Oct 11, 2008 at 12:57 PM
I am starting to look at annotations for the SQL entry provider.
On the Annotate call, is the "IEnumerable<AtomEntry> parents" a hierarchy of replies, with each entry in reply to the previous one, and the new entry in reply to the last one?

GetAnnotations specifies an Id, so the EntryCriteria will have to have this field as well in order to subsume this functionality.

Oct 11, 2008 at 9:59 PM
yea, I don't think the parents hiearchy is actually needed.  I previously thought it was needed because I thought a link should be created on the parent.  Really, the only thing that gets updated on the parent is the "Total" property and this property should be auto calculated based on the number of child annotations.  We should be able to remove the parents parameter.$0$0$0$0I've added Id to the criteria.$0$0$0$0$0$0$0$0$0
Oct 13, 2008 at 4:22 PM
Annotations are close to working (just have to work out how best to do get deep annotations from the SQL database)
What will be the method of telling the entry repository that Entry B is an annotation of entry A?
Oct 13, 2008 at 5:16 PM
Edited Oct 13, 2008 at 9:48 PM
Over the weekend I fixed up the FileRepository to support retrieving entrys/annotations at the workspace, collection, and entry level.

One exciting feature of this is you can now a create a comment feed for an entire collection... or workspace (i guess even across entire application too).

EntryB is a annotation of EntryA if EntryB.Id.GetParentId() == EntryA.Id

Of course, if it is deep, then you'd need recursion to get all decendant annotations of an entry.
Oct 14, 2008 at 3:20 PM
So that means that you can  now ask for all entries that are annotations, regardless of which entry they annotate, using the Annotations flag on the criteria.

Oct 14, 2008 at 3:34 PM
that's correct

All annotations in the blog collection:
Workspace = www
Collection = blog
Annotations = true
Deep = true

All annotations in the workspace:
Workspace = www
Annotations = true
Deep = true

All annotations for an entry
EntryId = tag:example.com,2008-10-14:blog,Post
Annotations = true
Deep = true
Oct 14, 2008 at 5:02 PM
I'm trying to construct Ids so that this holds. This worked on in Domain object tests, but in a Repository test called GetEntryAnnotationsOneAnnotationsTest it is failing - the generated id is not a valid Uri.

Can you take a look at this?