Boa tarde! Gostaria de tirar uma dúvida sobre a busca avançada. Eu cadastrei o metadado autor, é que estou utilizando o Tainacan para desenvolvimento de uma Biblioteca Digital. Cadastramos os itens do metadados de autor conforme o AACR2, “sobrenome, nome”. Os campos de busca são: AUTOR e a opção de “contém” e “não contém”. Se eu busco, por exemplo, com contém: Cabral netto, a pesquisa retorna resultados, se eu busco Cabral netto, Joaquim, a pesquisa retorna resultados, mas se eu busco Joaquim Cabral Netto, mesmo colocando aspas, a pesquisa não retorna resultados, mas não deveria retornar? O “contém” não deveria buscar os três nomes, independente de ordem etc.
Na verdade não, o “contém” verifica se o termo de busca está dentro do valor. Ele entende o termo digitado como uma coisa única (incluindo os espaços), não quebra ele baseado em espaço ou vírgula em palavras.
Por padrão a busca simples também procura pelo termo inteiro, incluindo o espaço. Mas quando você digita o espaço ele te oferece este checkbox que permite marcar para que as palavras sejam pesquisadas separadamente. Neste caso você acharia os itens que está buscando (considerando que sua busca já esteja configurada para buscar em todos os metadados para além de título e descrição, que é o comportamento padrão)
Eu acho que temos bastantes melhorias que poderiam vir ali pro formulário de Busca Avançada.
Este caminho que você montou (com as três consultas separadas) é algo que deveria ser mais intuitivo e instintivo de se fazer usando operadores de combinação lógica (OU e E) ou até agrupamentos. Temos uma issue aberta para olharmos isso no futuro:
Aqui não entendi bem, o que você quis dizer com o controle de vocabulário? Não são o que as Taxonomias fazem hoje?