Predefinição:Field: mudanças entre as edições
Sem resumo de edição |
Sem resumo de edição |
||
Linha 17: | Linha 17: | ||
</pre> |
</pre> |
||
Edite a página para ver o texto da predefinição. |
Edite a página para ver o texto da predefinição. |
||
</noinclude>< |
</noinclude><templatedata> |
||
| <!-- faz a exibição do campo colocando negrito nos 3 primeiros números --> {{#switch: {{NAMESPACE}} |
|||
| Autoridade = {{#regex:{{AutRecord/tags|{{{tag|}}}}}|/(\d{3})/|<b>$1</b>}} |
|||
| {{#regex:{{BibRecord/tags|{{{tag|}}}}}|/(\d{3})/|<b>$1</b>}} |
|||
}} |
|||
| style="text-align: center; font-weight: bold;" | <!-- faz a exibição do ind1 --> {{{ind1|}}} |
|||
| style="text-align: center; font-weight: bold;" | <!-- faz a exibição do ind2 --> {{{ind2|}}} |
|||
| <!-- faz a exibição dos subcampos: a primeira regex após o #if, testa se há um subcampo válido; se não houver, exibe o conteúdo em vermelho; se houver, segue para uma série de outras regex: a primeira regex, a mais interior, colore os subcampos em azul e retira o espaço entre o símbolo "$" e o designador do subcampo "[a-z0-8]" para melhorar exibição ("$ a" > "$a" azul); a segunda regex adiciona uma quebra de linha antes dos subcampos, também para melhorar a exibição; a terceira regex retira a quebra de linha inicial que foi adicionada pela regex anterior (a segunda regex); a quarta regex remove a quebra de linha informada pelo usuário; a quinta regex verifica se há maiúsculas como designadores de subcampo e aplica a cor vermelha. --> {{#if:{{#regex:{{{data|}}}{{{authorityData100|}}}{{{authorityData110|}}}{{{authorityData111|}}}{{{authorityData130|}}}{{{authorityData150|}}}{{{authorityData151|}}}|/(\$[a-z0-8])\s*/}}|{{#regex:{{#regex:{{#regex:{{#regex:{{#regex:{{{data|}}}{{{authorityData100|}}}{{{authorityData110|}}}{{{authorityData111|}}}{{{authorityData130|}}}{{{authorityData150|}}}{{{authorityData151|}}}|/(\$[a-z0-8])\s*/|<b style="color:blue;">$1</b>}}|/(<b\s.*?\$[a-z0-8].*?<\/b>)/|<br>$1}}|/^<br>/|}}|/\n/| }}|/(\$[A-Z])(.*)/|<b style="color:red;">$1</b>$2}}|<b style="color:red;">{{{data|}}}{{{authorityData100|}}}{{{authorityData110|}}}{{{authorityData111|}}}{{{authorityData130|}}}{{{authorityData150|}}}{{{authorityData151|}}}</b>}} |
|||
|-<nowiki/> |
|||
<div style="display: none"> |
|||
<!-- |
|||
==== Beautify ==== |
|||
A primeira regex, a mais interior, retira os espaços entre os designadores de subcampo e seus conteúdos: |
|||
"$a Bar $b Foo" > "$aBar $bFoo" |
|||
A segunda regex retira quebras de linha antes de designadores de subcampo: |
|||
"$aBar |
|||
$bFoo" > "$aBar$bFoo" |
|||
A terceira regex retira espaços antes de designadores de subcampo: |
|||
"$aBar $bFoo" > "$aBar$bFoo" |
|||
Depois de normalizar a string com a regexes anteriores, a quarta regex adiciona um espaço antes e depois dos designadores de subcampo: |
|||
"$aBar$bFoo" > " $a Bar $b Foo" |
|||
#sub remove o primeiro espaço adicionado pela regex anterior: |
|||
" $a Bar $b Foo" > "$a Bar $b Foo" |
|||
A quinta regex substitui quebras de linha por espaços no conteúdo dos subcampos: |
|||
"$aBar |
|||
Baz$bFoo" > " $a Bar Baz$b Foo" |
|||
A sexta regex remove espaços duplos no conteúdo: |
|||
" $a Bar Baz" > "$a Bar Baz" |
|||
== Exemplo completo: |
|||
$aFerreira, Jaider A.$q (Jaider Andrade), |
|||
$d1990- |
|||
> |
|||
$a Ferreira, Jaider A. $q (Jaider Andrade), $d 1990- |
|||
==== UnBeautify ==== |
|||
Torna a string apta para exportação (ISO 2709, MARCXML, etc.) |
|||
{{#regex:|/\s?(\$.)\s/|$1}} |
|||
Exemplo: |
|||
$a Ferreira, Jaider A. $q (Jaider Andrade), $d 1990- |
|||
> |
|||
$aFerreira, Jaider A.$q(Jaider Andrade),$d1990- |
|||
--> |
|||
<!-- armazenamento semântico --> |
|||
<!-- cria a Propriedade Field data com o conteúdo completo do campo (indicadores e subcampos), armazenando no subobjeto do campo; faz o cálculo do Field length e armazena no subobjeto do campo --> |
|||
{{#vardefine:unBeautifiedInput|{{#regex:{{{data|}}}{{{authorityData100|}}}{{{authorityData110|}}}{{{authorityData111|}}}{{{authorityData130|}}}{{{authorityData150|}}}{{{authorityData151|}}}|/\s?(\$.)\s/|$1}}}} |
|||
{{#subobject:{{{tag|}}} |
|||
|Field data={{#regex:{{{ind1|#}}}{{{ind2|#}}}{{{data|}}}{{{authorityData100|}}}{{{authorityData110|}}}{{{authorityData111|}}}{{{authorityData130|}}}{{{authorityData150|}}}{{{authorityData151|}}}|/\s?\$0 A\d*/|}} |
|||
|@sortkey={{{tag|}}} |
|||
<!-- Desnecessário por enquanto: |Field length={{{tag|}}}{{padleft:{{#invoke:String|strlen|ii{{#var:unBeautifiedInput}}s}}|4}} --> |
|||
}}</div></includeonly><templatedata> |
|||
{ |
{ |
||
"description": "Adicionar ou editar campo MARC.", |
"description": "Adicionar ou editar campo MARC.", |
||
Linha 134: | Linha 84: | ||
} |
} |
||
], |
], |
||
"format": "block" |
"format": "block", |
||
"paramOrder": ["tag", "authorityType", "ind1", "ind2", "data", "authorityData100", "authorityData110", "authorityData111", "authorityData130", "authorityData150", "authorityData151"] |
|||
} |
} |
||
</templatedata> |
</templatedata><includeonly> |
||
| <!-- faz a exibição do campo colocando negrito nos 3 primeiros números --> {{#switch: {{NAMESPACE}} |
|||
| Autoridade = {{#regex:{{AutRecord/tags|{{{tag|}}}}}|/(\d{3})/|<b>$1</b>}} |
|||
| {{#regex:{{BibRecord/tags|{{{tag|}}}}}|/(\d{3})/|<b>$1</b>}} |
|||
}} |
|||
| style="text-align: center; font-weight: bold;" | <!-- faz a exibição do ind1 --> {{{ind1|}}} |
|||
| style="text-align: center; font-weight: bold;" | <!-- faz a exibição do ind2 --> {{{ind2|}}} |
|||
| <!-- faz a exibição dos subcampos: a primeira regex após o #if, testa se há um subcampo válido; se não houver, exibe o conteúdo em vermelho; se houver, segue para uma série de outras regex: a primeira regex, a mais interior, colore os subcampos em azul e retira o espaço entre o símbolo "$" e o designador do subcampo "[a-z0-8]" para melhorar exibição ("$ a" > "$a" azul); a segunda regex adiciona uma quebra de linha antes dos subcampos, também para melhorar a exibição; a terceira regex retira a quebra de linha inicial que foi adicionada pela regex anterior (a segunda regex); a quarta regex remove a quebra de linha informada pelo usuário; a quinta regex verifica se há maiúsculas como designadores de subcampo e aplica a cor vermelha. --> {{#if:{{#regex:{{{data|}}}{{{authorityData100|}}}{{{authorityData110|}}}{{{authorityData111|}}}{{{authorityData130|}}}{{{authorityData150|}}}{{{authorityData151|}}}|/(\$[a-z0-8])\s*/}}|{{#regex:{{#regex:{{#regex:{{#regex:{{#regex:{{{data|}}}{{{authorityData100|}}}{{{authorityData110|}}}{{{authorityData111|}}}{{{authorityData130|}}}{{{authorityData150|}}}{{{authorityData151|}}}|/(\$[a-z0-8])\s*/|<b style="color:blue;">$1</b>}}|/(<b\s.*?\$[a-z0-8].*?<\/b>)/|<br>$1}}|/^<br>/|}}|/\n/| }}|/(\$[A-Z])(.*)/|<b style="color:red;">$1</b>$2}}|<b style="color:red;">{{{data|}}}{{{authorityData100|}}}{{{authorityData110|}}}{{{authorityData111|}}}{{{authorityData130|}}}{{{authorityData150|}}}{{{authorityData151|}}}</b>}} |
|||
|-<nowiki/> |
|||
<div style="display: none"> |
|||
<!-- |
|||
==== Beautify ==== |
|||
A primeira regex, a mais interior, retira os espaços entre os designadores de subcampo e seus conteúdos: |
|||
"$a Bar $b Foo" > "$aBar $bFoo" |
|||
A segunda regex retira quebras de linha antes de designadores de subcampo: |
|||
"$aBar |
|||
$bFoo" > "$aBar$bFoo" |
|||
A terceira regex retira espaços antes de designadores de subcampo: |
|||
"$aBar $bFoo" > "$aBar$bFoo" |
|||
Depois de normalizar a string com a regexes anteriores, a quarta regex adiciona um espaço antes e depois dos designadores de subcampo: |
|||
"$aBar$bFoo" > " $a Bar $b Foo" |
|||
#sub remove o primeiro espaço adicionado pela regex anterior: |
|||
" $a Bar $b Foo" > "$a Bar $b Foo" |
|||
A quinta regex substitui quebras de linha por espaços no conteúdo dos subcampos: |
|||
"$aBar |
|||
Baz$bFoo" > " $a Bar Baz$b Foo" |
|||
A sexta regex remove espaços duplos no conteúdo: |
|||
" $a Bar Baz" > "$a Bar Baz" |
|||
== Exemplo completo: |
|||
$aFerreira, Jaider A.$q (Jaider Andrade), |
|||
$d1990- |
|||
> |
|||
$a Ferreira, Jaider A. $q (Jaider Andrade), $d 1990- |
|||
==== UnBeautify ==== |
|||
Torna a string apta para exportação (ISO 2709, MARCXML, etc.) |
|||
{{#regex:|/\s?(\$.)\s/|$1}} |
|||
Exemplo: |
|||
$a Ferreira, Jaider A. $q (Jaider Andrade), $d 1990- |
|||
> |
|||
$aFerreira, Jaider A.$q(Jaider Andrade),$d1990- |
|||
--> |
|||
<!-- armazenamento semântico --> |
|||
<!-- cria a Propriedade Field data com o conteúdo completo do campo (indicadores e subcampos), armazenando no subobjeto do campo; faz o cálculo do Field length e armazena no subobjeto do campo --> |
|||
{{#vardefine:unBeautifiedInput|{{#regex:{{{data|}}}{{{authorityData100|}}}{{{authorityData110|}}}{{{authorityData111|}}}{{{authorityData130|}}}{{{authorityData150|}}}{{{authorityData151|}}}|/\s?(\$.)\s/|$1}}}} |
|||
{{#subobject:{{{tag|}}} |
|||
|Field data={{#regex:{{{ind1|#}}}{{{ind2|#}}}{{{data|}}}{{{authorityData100|}}}{{{authorityData110|}}}{{{authorityData111|}}}{{{authorityData130|}}}{{{authorityData150|}}}{{{authorityData151|}}}|/\s?\$0 A\d*/|}} |
|||
|@sortkey={{{tag|}}} |
|||
<!-- Desnecessário por enquanto: |Field length={{{tag|}}}{{padleft:{{#invoke:String|strlen|ii{{#var:unBeautifiedInput}}s}}|4}} --> |
|||
}}</div></includeonly> |
Edição das 14h26min de 16 de janeiro de 2021
Esta é a predefinição 'Field'. Ela deve ser chamada no seguinte formato:
{{Field |tag= |ind1= |ind2= |data= |authorityData100= |authorityData110= |authorityData111= |authorityData130= |authorityData150= |authorityData151= }}
Edite a página para ver o texto da predefinição.
Adicionar ou editar campo MARC.
Parâmetro | Descrição | Tipo | Estado | |
---|---|---|---|---|
Campo MARC | tag | Campo no formato XXX (apenas três números). | Número | obrigatório |
Tipo de autoridade | authorityType | Se o campo é ou não controlado por um tipo de autoridade. Opções: Nenhuma, Pessoa, Entidade coletiva, Evento, Título uniforme, Tópico, Local
| Desconhecida | recomendado |
Primeiro indicador | ind1 | 0 a 9 ou #, dependendo do campo
| Linha | opcional |
Segundo indicador | ind2 | 0 a 9 ou #, dependendo do campo
| Linha | opcional |
Subcampos livres (sem controle de autoridade) | data | Subcampos no formato $a ... $b ... $c ...
| String | recomendado |
Subcampos controlados (autoridade do tipo 100) | authorityData100 | Subcampos no formato $a ... $b ... $c ...
| String | recomendado |
Subcampos controlados (autoridade do tipo 110) | authorityData110 | Subcampos no formato $a ... $b ... $c ...
| String | recomendado |
Subcampos controlados (autoridade do tipo 111) | authorityData111 | Subcampos no formato $a ... $b ... $c ...
| String | recomendado |
Subcampos controlados (autoridade do tipo 130) | authorityData130 | Subcampos no formato $a ... $b ... $c ...
| String | recomendado |
Subcampos controlados (autoridade do tipo 150) | authorityData150 | Subcampos no formato $a ... $b ... $c ...
| String | recomendado |
Subcampos controlados (autoridade do tipo 151) | authorityData151 | Subcampos no formato $a ... $b ... $c ...
| String | recomendado |