Ejemplos de alta complejidad
De Wiki REDDES
1. IAH - formato de apresentação de citação bd LILACS:
lilchtm.pft [1]
/* nivel monografico */
,if v6*0.1='m' or v6*0.2='am' then
/* autor pessoal nivel monografico */
,if p(v16) then
,(|; |+v16^*,| (|v16^r|)|,if nocc(v16)>3 and iocc=3 then ,' et al. ',break, fi,if iocc=nocc(v16) then ,'.', fi),
,fi,
/* autor institucional nivel monografico */
,if p(v17) then
,(|; |+v17^*,if nocc(v17)>3 and iocc=3 then ,' et al. ',break, fi,if iocc=nocc(v17) then ,'.', fi),
,fi,
/* titulo nivel monografico */
,if p(v18) then
," "d18,(v18^*+| / |),"."d18,
,fi,
/* indic. volume nivel monografico */
,if p(v21) then
,| |v21|.|,
,fi,
/* localizacao - cidade, pais */
,if p(v66) and v66<>'s.l' then
,if p(v67) then
,| |v66,|, |v67|:|,
,else
,| |v66|:|,
,fi,
,fi,
/* editora */
,if p(v62) and v62<>'s.n' then
,if v9<>'i' and v9<>'j' then
,' ',(v62+|; |),
,else
,' ',(v62^f+|; |),
,fi,
,if p(v64) then ,',', else ,'.', fi,
,fi,
/* data de publicacao */
,if a(v64) then
,' s.d.',
,else
,| |v64,'.',
,fi,
/* informacao descritiva */
/* se for no formato novo */
,(if s(v38^a,v38^b,v38^c)<> then
,| |v38^a,
,if p(v38^b) and p(v38^a) then ,',', fi,
,| |v38^b,
,if p(v38^c) and s(v38^a,v38^b)<> then ,',', fi,
,| |v38^c,
,'.',
,fi),
/* se for no formato antigo */
,if s(v38^a,v38^b,v38^c)= and s(v38^*)<> then
,' ',(v38+|, |),'.',
,fi,
/* nota de conteudo formatada - somente partitura e registro sonoro */
,if p(v505) then
,' ',(v505+|. |),
,fi,
/* info sobre reproducao e original reproduzido - somente partitura e registro sonoro */
,if p(v533) then
,' ',(v533+|. |),
,fi,
/* tipo de registro musical */
,if p(v117) then
,' ',v117|. |,
,fi,
,fi,
2. criar um formato a partir de outro formato. ex:
,`,if v12:'malaria' then`/, ,' ,(v10+|; |),|. |v12^*,". "d12,v65*0.4,", "d65,"sem ano, "n65,if p(v30) then v30,|(|v35|).| fi,'/, ,',fi,'/,
3. IAH - formato de apresentação conforme norma ISO bd SciELO:
fbiso.pft [2]
,if p(v7000) then
,if size(v7000) > 9 then
,proc('d8030d8031d8032d8035d8131d8132',
,ref(['DATABASE']l(['author']'01=',v7000*1.9),
,@PROC.PFT,
,|a8030{|v30|{|,
,|a8031{|v31|{|,
,|a8131{|v131|{|,
,|a8032{|v32|{|,
,|a8132{|v132|{|,
,|a8035{|v35|{|,
,),
,),
,else
,proc('d8030d8031d8032d8035',
,ref(['DATABASE']l(['author']'01=',v7000),
,@PROC.PFT,
,|a8030{|v30|{|,
,|a8031{|v31|{|,
,|a8131{|v131|{|,
,|a8032{|v32|{|,
,|a8132{|v132|{|,
,|a8035{|v35|{|,
,),
,),
,fi,
,else
,proc('d8030d8031d8032d8035',
,ref(['DATABASE']l(['author']'01=',v35),
,@PROC.PFT,
,|a8030{|v30|{|,
,|a8031{|v31|{|,
,|a8131{|v131|{|,
,|a8032{|v32|{|,
,|a8132{|v132|{|,
,|a8035{|v35|{|,
,),
,),
,fi,
....
,if nocc(v8010) > 3 then
,(if iocc = 4 then
,' et al.',
,else
,if iocc > 4 then ,
,else
,if iocc > 1 then
,', ',
,fi,
,v8010,
,fi,
,fi),
,else
,if nocc(v8010) = 3 then
,(if iocc = 1 then
,v8010,', ',
,else
,if iocc = 2 then
,v8010,' and ',
,else
,v8010,
,fi,
,fi),
,else
,if nocc(v8010) = 2 then
,(if iocc = 1 then
,v8010,' and ',
,else
,v8010,
,fi),
,else
,v8010,
,fi,
,fi,
,fi,
,(if iocc=nocc(v8010) then
,if right(v8010,1)<>'.' then
,'.',
,fi,
,fi),
Agrego un formato, cuya complejidad consiste en el uso de quotes invertidos ´ y la inclusión de javascripts, en campos tipo MARC con indicadores y subcampos.
(if a(v86^p) and a(v86^a) then
if s(mhu,v86^b):'LEY' then
if val(replace(replace(replace(v86^b,'Decreto Ley ',),'Ley ',),'.',)) >9500 then
mpl,
`<a href="javascript:onMouseDown=openWindow('http://www.parlamento.gub.uy/Leyes/Ley`,
if val(replace(replace(replace(v86^b,'Decreto Ley ',),'Ley ',),'.',)) < 10000 then '0' fi,
replace( replace( replace(v86^b,'Decreto Ley ',),'Ley ',),'.',),'.htm',|#art|v86^c,`');">`,v86^b,|, art.|v86^c,'</a>',
else
mpl, v86^p|. |, v86^a|. |, v86^b,|, art.|v86^c,
fi,
else
mpl,v86^p|. |, v86^a|. |, v86^b,|, art.|v86^c,
fi,
else
mpl,v86^p|. |, v86^a|. |, v86^b,|, art.|v86^c,
fi)
El siguiente formato se usa para convertir campo LILACS de conferencia a MARC
( if p(v53) then
'<711>2 $a',
if v53:', ' then
left(v53,size(v53)-(11-instr(right(v53,10),',')) ),
'$n(', right(v53,(9-instr(right(v53,10),','))),
if right(v53,(9-instr(right(v53,10),','))) > then ' :' fi,
else v53| (| fi,
|$d|v54[1],
| :$c|v56[1],|, |v57[1], ')',
|$e|v9000[1],
'</711>',
,fi )
Ernesto Spinak
