Improve your content discovery: "similar" predicate and "linked" documents

Written by Sébastien Renault in API on June 17,2014

One of today's known trends in media for engaging audience is content discovery. Whether you're publishing in a website or an application, improving your content discovery will have a boosting effect on user engagement.

For example, one of the things that everyone experiences on Wikipedia, is once you start you just can't stop. Wikipedia is great at content discovery and especially at suggesting more similar and related content.

Do you want to deploy a "once you start, you just can't stop" feature in your website or application?

Today we're pushing a new predicate to our API allowing you to retrieve similar content to a given document. The predicate is simply:

[:d = similar(id, max)]

Pretty straightforward. The nice thing is that, as any other predicate in, it can be combined. This means that we can look for blog posts similar to a given article, products similar to a given blog post, blog posts similar to a given product, or FAQ questions similar to a given product. You get it, your imagination is the limit! Here is an example:

[:d = similar(id, max)]
[:d = at(document.type,"product")]
[:d = fulltext("chocolate")]

Basically, these predicates search for "chocolate" in products that are similar to the document with the given id. The additional max parameter allows you to narrow the search in order to get more accurate results. It is especially interesting when you have a lot of documents talking about the same broad subject.

And there is more!

We've just pushed another enhancement to our API to improve content discovery. Now, with every returned document, we group all linked documents and feature them into the document's meta data. This allows you, by calling one method, to list all linked, or cited, documents and, say, summarize them at the end or on the side of the article.

var linkedDocuments = doc.getLinkedDocument();

Both features are being deployed progressively to repositories, we will be updating the development kits accordingly.

Oh, and since we're our first users, enjoy the added related and similar sections at the end of this post!

Sébastien Renault

Core developer and architect.