Foldering History: "read" vs. "archived"

For the PL+ project, they are asking for the ability to mark documents in a WebContent feed as "read", thus causing them to no longer appear on their feed. (This is something that we don't do now, but I'm assuming that we could add. It seems like something that would be appropriate to store in History. Correct me if I'm wrong.) However, PL+ is also asking for a second feature; the ability to mark documents as "archived". Which is similar to "read" in that such a document would no longer appear in their feed, but they would want an easy way to be able to go back to it. Is something like this possible, the way History is built now? I was thinking that there might be an existing column in the history database that we could use to denote something as "archived" instead of "read", but looking at it I'm not sure such a column exists. (Perhaps EVENT_SUB_TYPE or SUB_CONTENT_TYPE, but obviously we can't break any existing use for those columns.) If not, is it feasible to add one? Or does anyone think that this is an inappropriate use of history and we'd need to create a separate database somewhere for this purpose?

Answers

  • I'm not sure the notion of archived as described here really fits in to History's domain. The idea is that there's a torrent of events coming from the user's session (searches, document views, etc), and History captures the interesting ones and renders them chronologically or however. Basically, it's just a record of "what happened and what you did." User action to mark documents as having some particular status doesn't really fit in to the intended use, in my opinion. At the very least, History is ideally completely asynchronous, and doesn't really have any synchronous "write" sort of APIs that you'd need for user interaction here. That said, this certainly does sound like a Research Organizer type of thing (of which History is part). There might be a way to reuse something we already have, I'll poke a little bit in RO space to see what's there.
  • Cool. I thought it kind of fit with History, but I also see why it kind of doesn't, which is why I asked the question. Supposing that there was only a "read" requirement and no "archived", do you think it fits better with History?
  • If it's only "read", that's very much a History sort of thing, as it refers to things that happened in the (mostly) immutable past. That functionality is already in History, though not exactly as you describe it. The user doesn't explictly mark an item as "read"; they just view the document, and the display updates accordingly. You can't un-read once you've read, and you can't view the document without reading it. Basically, it's a "is there a document view event for this document and user?" query. This feature is the little glasses icon you'll see in WLN.
  • GRC is also using history for this functionality for the Accelus RI (ARI) product - just the "document read" part. There is a new [Document Events][1] endpoint for the platform History module to support retrieving History events for a list of doc guids on the retrieve side. [1]:
    http://centraltechtools.ci.int.thomsonreuters.com/APIExplorer/CoreHistory/CI/CoreHistory/CoreHistory.DocumentEvents
  • @hamilton.perry testing the at mention.