Parâmetros que selecionam o conjunto de registros a serem processados

Especificação da expressão de busca na linha de comando

bool=<bool_expr_spec>
O parâmetro bool permite realizar buscas em bases de dados. MX provê todas as
operações booleanas da linguagem de busca do CDS/ISIS. O resultado de uma busca é um conjunto de registros que atendem à especificação da expressão de busca. A palavra bool é opcional, já que MX considera expressão de busca tudo aquilo que não é um parâmetro. Os dois exemplos seguintes produzem o mesmo resultado:

mx cds bool=water
mx cds water

A saída da execução da busca é:

mx cds culture pft=mfn/
2 2 CULTURE
2 2 Set #000001
Hits=2
000050
..
000064
->

Primeiro é apresentada a resolução da busca e é atribuído um número de seqüência ao resultado (Set #000001). Em seguida são mostrados os registros de acordo com o formato preestabelecido.
Dica:
Enquanto os registros do resultado da consulta são mostrados, é usado o prompt .. e quando termina de processar os registros o prompt muda para ->.
É possível continuar fazendo consultas a partir do prompt de forma interativa, mas não é possível, com este parâmetro, fazer referência aos resultados anteriores em consultas do tipo #1 + #2, etc. Para isto é necessário o uso do parâmetro tmpx (será apresentado mais adiante neste capítulo).
Dica:
Lembre que na linha de comandos do MS-DOS os espaços em brancos separa em parâmetros, portanto, se a expressão de busca contém espaços em branco ou caracteres especiais reservados, toda a expressão, junto com o parâmetro de comando, deverá estar entre aspas duplas.

mx cds "bool=water + soil"
mx cds "water + soil"

O programa MX aceita os operadores booleanos +, *, ^ que CDS/ISIS usa, assim como suas
expressões literais OR, AND, NOT.

mx cds "bool=water or soil"
mx cds "agricult$ and plants"

Carregar a expressão de busca a partir de um arquivo
bool=@<file>

bool=@<file> pega a expressão de busca a partir de um arquivo ASCII externo.
Neste caso a expressão não precisa estar entre aspas. Supondo que o arquivo consulta.001 contenha a expressão: agricult$ and plants, então o último exemplo é traduzido para qualquer das duas formas seguintes:

mx cds bool=@consulta.001
mx cds @consulta.001

O parâmetro bool é opcional, mas seu uso poderá ser necessário quando a expressão de busca começa com uma palavra reservada do MX.

Dica:
O parâmetro bool= exclui o uso do parâmetro text[/show]=<text>.

Querendo-se recuperar registros que contêm a palavra now:

mx cds now Não fará o esperado, visto que interpreta now como
parâmetro, não como expressão de busca.
mx cds “now” Não fará o esperado, porque interpreta now como parâmetro e
não como expressão de busca.
mx cds bool=now Está correcto.
mx cds “bool=now” Está correcto.

Utilização dos resultados intermediários de uma busca

mpx=<tmpx_query_dbn>
Parâmetro obsoleto:
b70=<b70_query_dbn>

O parâmetro tmpx armazena os resultados intermediários de uma sessão de busca, permitindo referenciar resultados anteriores em formulações do tipo #1 + #2. O nome atribuído à direita do sinal de igual é uma base de dados ISIS que MX cria e reinicializa automaticamente, e não é apagada ao final da execução.
Dica: O parâmetro tmpx deve ser usado antes da expressão de busca.

mx cds tmpx=x70 plants water #1*#2 pft=mfn/ now
8 PLANTS
8 Set #000000001
Hits=8
14 WATER
14 Set #000000002
Hits=14
3 Operation *
3 Set #000000003
Hits=3
000004
000011
000013

 
Note-se que, se for informado o parâmetro tmpx, é possível realizar consultas interativas a partir do prompt do MX. fazendo referências a resultados anteriores.
Dica:
Por compatibilidade, o MX aceita tanto o parâmetro b70 como o b40.
No seguinte exemplo os termos que são introduzidos um a um pelo operador, como resposta ao prompt, são mostrados destacados em negrito. O resultado do processo é armazenado na base X70.

mx cds tmpx=x70 plants pft=mfn/
8 PLANTS
8 Set #000000004
Hits=8
000001
..water
14 WATER
14 Set #000000005
Hits=14
000004
..#1 and #2
3 Operation *
3 Set #000000006
Hits=3
000004
..
000011
..
000013
->x

É possível realizar consultas complexas, lendo a expressão de busca a partir de um arquivo externo. Supondo que o arquivo PERFIL.001 tenha a seguinte formulação de busca:

Water
Plants
#1 and #2
Transpiration
#3 or #4

A seguinte linha de comando produz uma saída para arquivo texto com os registros recuperados de acordo com o perfil atribuído. Observe-se que cada consulta individual deve ser entrada como linha independente no arquivo

PERFIL.001.
mx CDS tmpx=x70 in=perfil.001 pft=@cds.pft now > out_001.txt

Eliminação da estatística da busca
btell=0
É possível suprimir a saída na tela que registra o processamento dos passos intermediários e final da busca. Neste caso o parâmetro btell=0 deve vir antes da formulação da busca. Exemplo:

Sem parâmetro btell= • Com parâmetro btell=0
mx cds “water * plants” pft=mfn/ now mx cds btell=0 “water * plants”
pft=mfn/ now
  14 WATER
8 PLANTS
3 Operation *
3 Set #000000001
Hits=3
000004
000011
000013
000004
000011
000013

btell=2
Lista os termos do dicionário, quando executa o $ de truncamento.
Busca em vários arquivos invertidos
invx=M/F
O invx contém registros com o campo v101 repetitivo, com o seguinte formato:

^pPrefijo o asterisco^yArquivo[^uUseprefix][^mMessage]

Exemplo:
Cria-se um master cdsinvx, com os seguintes campos

^p*^ycds^mText words
^pAU ^ycdsaut^mAuthor
^pTI ^ycdstit^mTitle words
^pKW ^ycdkw^mKeywords

Cria-se os invertidos associados a CDS

mx cds "fst=1 0 (v70/)" fullinv=cdsaut
mx cds "fst=1 4 v24" fullinv=cdstit
mx cds "fst=1 2 v69" fullinv=cdskw

Consultas

mx cds invx=cdsinvx "KW plants " pft=mfn,x1,v24,x1,v69
  2 PLANTS
  2 Set #000000001
Hits=2
000054 Vegetation as a geological agent in tropical deltas Paper on:
<vegetation><geology><deltas><tropical
zones><sedimentation><plants><organic
matter><wetlands>..
000069 Some important animal pests and parasites of East Pakistan Paper on:
<pests><parasites><biology><ecology><plants><agriculture><public
health><food><Bangladesh>
->x
mx cds invx=cdsinvx "KW plants * east"
  2 PLANTS
  9 EAST
  1 Operation *
  1 Set #000000001
Hits=1
mfn= 69
24 «Some important animal pests and parasites of East Pakistan»
26 «^c1966»
30 «^ap. 285-291^billus.»
44 «Scientific problems of the humid tropical zone deltas and their
implicatio
ns: proceedings of the Dacca Symposium»
50 «Incl. bibl.»
69 «Paper on:
<pests><parasites><biology><ecology><plants><agriculture><public
health><food><Bangladesh>»
70
100
«Yosufzai, H.K.»
«1001»
->x

Se o prefixo for indicado entre [ ], então se aplica a todos os termos da formulação
booleana:

mx cds invx=cdsinvx "[KW] plants * east"
  2 PLANTS
  EAST
  Operation *
  Set #000000001
Hits=0
->x

Buscas em texto livre
text[/show]=<text>
Esta função permite realizar buscas em texto livre (não indexado). Busca a cadeia de caracteres indicada em <text> em todos os campos da base de dados de entrada e seleciona os registros que atendem à busca.
Dica:
É preciso levar em conta que a comparação que se realiza em texto livre pelo parâmetro text= distingue maiúsculas de minúsculas, portanto Water não é o mesmo que water. Exemplo:

mx cds text=water iso=Saída.iso now -all

O exemplo realiza uma busca e exporta os registros encontrados para um arquivo ISO-2709.
Parâmetro text/show
text/show
O parâmetro text/show somente exibe a informação do registro e campo do qual a recuperação foi feita. Mostra duas linhas, uma que contem o número de registro, etiqueta, ocorrência onde aparece o texto buscado; a segunda linha apresenta a ocorrência completa onde se encontra o texto buscado.
Exemplo:

mx cds text/show=water now
Saída em tela:
mfn 56|tag 69|occ 1|water
69 «Paper on: <regime of waters><sediment transport><deltas>»

Indica que o registro mfn=56 contem a cadeia de caracteres water na primeira
ocorrência do campo com tag 69.
 

Deixe um comentário