Select the search type
  • Site
  • Web
Search
You are here:  Support/Forums
Support

Bring2mind Forums

Ranked searching
Last Post 12/07/2007 12:16 AM by Peter Donker. 2 Replies.
Sort:
PrevPrev NextNext
You are not authorized to post a reply.
Author Messages
nicholas smeaton
New Member
New Member
Posts:16


--
12/06/2007 1:54 AM

Hi, just wondering if the ranked searching feature of Lucene has been implemented in DMX4.

 

Thanks,

Nick

nicholas smeaton
New Member
New Member
Posts:16


--
12/06/2007 8:02 AM

not sure where else to put this, but following on from the above - I'm interested in creating an add-on that will allow for drool-proof searching.

ie - a user enters a phrase, the module searches first on the entire phrase, then on smaller and smaller groupings of words in the phrase, then on individual words, then spits out a nice ranked search result.

Is this possible using your add-on engine?

Is there any documentation for creating add-ons for DMX or do you have any pointers? (I'm experienced in coding DNN modules)

 

Peter Donker
Veteran Member
Veteran Member
Posts:4536


--
12/07/2007 12:16 AM

Hi Nicholas,

The architecture of the module is capable of handling this scenario. I'd have to help you as this is not documented. Basically the search is split off into a provider model. There are a number of methods to implement:


  Public MustOverride Sub AddDocument(ByVal Entry As Bring2mind.DNN.Modules.DMX.Business.EntryInfo, ByVal filePath As String)
  Public MustOverride Sub AddDocument(ByVal Entry As Bring2mind.DNN.Modules.DMX.Business.EntryInfo)
  Public MustOverride Sub ModifyDocument(ByVal Entry As Bring2mind.DNN.Modules.DMX.Business.EntryInfo)
  Public MustOverride Sub RemoveDocument(ByVal Entry As Bring2mind.DNN.Modules.DMX.Business.EntryInfo)
  Public MustOverride Function Maintenance() As String
  Public MustOverride Function Search(ByVal PortalId As Integer, ByVal User As DotNetNuke.Entities.Users.UserInfo, ByVal PermissionKey As String, ByVal SearchTerms As List(Of SearchTerm), ByVal IncludeAllVersions As Boolean, ByVal MaxResults As Integer) As List(Of SearchResult)
  Public MustOverride Function Search(ByVal PortalId As Integer, ByVal User As DotNetNuke.Entities.Users.UserInfo, ByVal PermissionKey As String, ByVal RawSearch As String, ByVal IncludeAllVersions As Boolean, ByVal MaxResults As Integer) As List(Of SearchResult)
  Public MustOverride Function SupportsRanking() As Boolean
  Public MustOverride Function SupportsRawSearch() As Boolean

The provider should also have a settings screen and it should be next to the other providers. That way it'll be picked up for selection by the admin. You'll probably need more details to do this, so we'll handle this as you go along.

Peter

PS, yes the Lucene provider returns Rank. I've not yet decided how to incorporate this in the UI though.

You are not authorized to post a reply.