openreferral / ServiceNet

7 stars 6 forks source link

Expand search to look in more fields #437

Closed CloVasco closed 5 years ago

CloVasco commented 5 years ago

Give users the ability to search by key words. Today – only search in agency name and alternate name. Expand this so that keyword search also applies to description of agency and description of services. Questions to be addressed (there may be more):

I am fine with both options. Laura -what do you think? The second one will necessitate to have a visual from you, Laura.

laurabenetech commented 5 years ago

@CloVasco The second one gives them a lot more control to avoid overwhelm, so I recommend this choice. I want to make sure I understand what you mean by "description". Does this mean searching any term that appears in the Description field for the agency in services? So in addition to being able to search agency/alternate name any text in the description field is searchable? If so, I think this is a great first start. In general, I really think we need to enhance other searching features as well, but we can start with this.

CloVasco commented 5 years ago

@laurabenetech Yes, that was my thought - enabling them to search for keywords that appear in 1/agency and alternate name (what we have today), 2/field: description of the agency and 3/field: description of services. Please provide a visual to John to show how we would enable them to search in 1 and/or 2 and/or 3.

and I agree - there's a lot of work to be done on search. but we don't have infinite resources and time as we need to release the discovery+search package by end of June. Please let @johnhbenetech know if you have other ideas to improve search while being quick fixes!

laurabenetech commented 5 years ago

@johnhbenetech Here are visuals for improved Search that include Agency description and Service descriptions. @CloVasco keeping you in the loop but cc:ing John since you are on vacation. Visual 1 shows changes to page with new Search Options button

Search button prompt title
laurabenetech commented 5 years ago

@johnhbenetech Here are visuals for improved Search that include Agency description and Service descriptions. @CloVasco keeping you in the loop but cc:ing John since you are on vacation. Visual 2 shows what happens when the user clicks the Search Options button:

Search options
laurabenetech commented 5 years ago

@johnhbenetech Here are visuals for improved Search that include Agency description and Service descriptions. @CloVasco keeping you in the loop but cc:ing John since you are on vacation. Visual 3 describes Search behavior when user checks a box:

Search w checkbox selected
NeilMBenetech commented 5 years ago

In addition, we should consider the ability to search on the Service name and description, the Location name and description, and the categorization (taxonomy in HSDS).

As well, an Autosuggest would be a huge hit, especially if it only autosuggests items that are being included in the "Search option" filters at the time.

NeilMBenetech commented 5 years ago

Please ignore my previous comment on this one from circa July 2nd. I have refined these into their own separate items.

For this one I propose another filter in a drop-down box containing the list of all searchable fields for the selected record type as described here https://github.com/benetech/ServiceNet/issues/340 .

Once the user selects a target field, the search will apply all other selected filters but for the free-text component of the search it will look only in that targeted field. The default should be to search in "Name and Alternate Name" field, on a boolean OR basis between those two. That is, a match found in either field will cause a record to be included in the search result.

bognasoldev89 commented 5 years ago

Confirmed that search engine works for fields chosen by user:

search expand working search expand working 2

NeilMBenetech commented 5 years ago

@johnhbenetech I like how the auto-suggested list represents fields found in the selected target record type (Org, Serv, Loc).

I targeted Service record types and the field Application Process, and searched for "form". Amongst the search results was this Organization.

http://benetechservicenet.org/#/single-record-view/ade47647-0483-48c8-adee-e5a1f70aed18

I cycled through all five of its Services and did not find the word "form" in that field for any of them. Not sure how it "found" that Organization but seems like a false positive.

Also, "Eligibility" should be another field that could be targeted for Services, missing from the list. For Locations, not seeing any of the physical address fields. Most would be better targeted through our more structured geographic filters, but in particular Address Line 1 should be searchable. Could you review the fields for each record type, methodically, to add in any others that are missing?

johnhbenetech commented 5 years ago

@NeilMBenetech wrt "form" we do partial matching so what happened is that "inFORMation" matched: image

Can you do the field gap analysis? I don't think we actually want an exhaustive list and would rather you find specific fields you feel users would like

NeilMBenetech commented 5 years ago

Sure @johnhbenetech .

Organization : Name, AlternateName, Description, Email, Phone, Contact.Name, Contact.Phone Service: Name, AlternateName, Description, Email, ApplicationProcess, Fees, Eligibility, RequiredDocument, Language, Phone, Contact.Name, Contact.Phone Location : PhysicalAddress.Address1, PostalAddress.Address1 (Geo filters can handle the rest of the address fields), Accessibility, Phone, Contact.Name, Contact.Phone