Difference between revisions of "Predefinição:Data field"

From Wikincat
Jump to navigation Jump to search
Line 21: Line 21:
 
| style="text-align: center; font-weight: bold;" | <!-- faz a exibição do Ind1 --> {{{First indicator|}}}  
 
| style="text-align: center; font-weight: bold;" | <!-- faz a exibição do Ind1 --> {{{First indicator|}}}  
 
| style="text-align: center; font-weight: bold;" | <!-- faz a exibição do Ind2 --> {{{Second indicator|}}}
 
| style="text-align: center; font-weight: bold;" | <!-- faz a exibição do Ind2 --> {{{Second indicator|}}}
| <!-- 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 coloração vermelha. --> {{#if:{{#regex:{{{Field content|Field content - Authority index 100|Field content - Authority index 110|Field content - Authority index 111|Field content - Authority index 130|Field content - Authority index 150|Field content - Authority index 151|}}}|/(\$[a-z0-8])\s*/}}|{{#regex:{{#regex:{{#regex:{{#regex:{{#regex:{{{Field content|Field content - Authority index 100|Field content - Authority index 110|Field content - Authority index 111|Field content - Authority index 130|Field content - Authority index 150|Field content - Authority index 151|}}}|/(\$[a-z0-8])\s*/|<b style="color:blue;">$1</b>}}|/(<b\s.*?\$[a-z0-8].*?<\/b>)/|<br />$1}}|/^<br\s\/>/|}}|/\n/|}}|/(\$[A-Z])(.*)/|<b style="color:red;">$1</b>$2}}|<b style="color:red;">{{{Field content|Field content - Authority index 100|Field content - Authority index 110|Field content - Authority index 111|Field content - Authority index 130|Field content - Authority index 150|Field content - Authority index 151|}}}</b>}} <!-- código antigo: fazia o teste para saber se havia algum subcampo válido, se houvesse, distribuía na arraymap e armazenava os subcampos como propriedades do subobjeto do campo (subobjeto:245|Ind1=...|Ind2=...|a=...|b=...c=...): {{#if:{{#regex:{{{Field content|}}}|/^\$[a-z0-8]{1}/}}|{{#arraymap:{{{Field content|}}}|$|§|{{#subobject:{{#sub:{{{Tag|}}}|0|3}}|{{#regex:§|/^(.{1})/|$1=}}|Ind1={{{First indicator|}}}|Ind2={{{Second indicator|}}}|@sortkey={{#sub:{{{Tag|}}}|0|3}}}}|<nowiki>|</nowiki>}}|}} -->
+
| <!-- 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 coloração vermelha. --> {{#if:{{#regex:{{{Field content|}}}{{{Field content - Authority index 100|}}}{{{Field content - Authority index 110|}}}{{{Field content - Authority index 111|}}}{{{Field content - Authority index 130|}}}{{{Field content - Authority index 150|}}}{{{Field content - Authority index 151|}}}|/(\$[a-z0-8])\s*/}}|{{#regex:{{#regex:{{#regex:{{#regex:{{#regex:{{{Field content|}}}{{{Field content - Authority index 100|}}}{{{Field content - Authority index 110|}}}{{{Field content - Authority index 111|}}}{{{Field content - Authority index 130|}}}{{{Field content - Authority index 150|}}}{{{Field content - Authority index 151|}}}|/(\$[a-z0-8])\s*/|<b style="color:blue;">$1</b>}}|/(<b\s.*?\$[a-z0-8].*?<\/b>)/|<br />$1}}|/^<br\s\/>/|}}|/\n/|}}|/(\$[A-Z])(.*)/|<b style="color:red;">$1</b>$2}}|<b style="color:red;">{{{Field content|}}}{{{Field content - Authority index 100|}}}{{{Field content - Authority index 110|}}}{{{Field content - Authority index 111|}}}{{{Field content - Authority index 130|}}}{{{Field content - Authority index 150|}}}{{{Field content - Authority index 151|}}}</b>}} <!-- código antigo: fazia o teste para saber se havia algum subcampo válido, se houvesse, distribuía na arraymap e armazenava os subcampos como propriedades do subobjeto do campo (subobjeto:245|Ind1=...|Ind2=...|a=...|b=...c=...): {{#if:{{#regex:{{{Field content|}}}|/^\$[a-z0-8]{1}/}}|{{#arraymap:{{{Field content|}}}|$|§|{{#subobject:{{#sub:{{{Tag|}}}|0|3}}|{{#regex:§|/^(.{1})/|$1=}}|Ind1={{{First indicator|}}}|Ind2={{{Second indicator|}}}|@sortkey={{#sub:{{{Tag|}}}|0|3}}}}|<nowiki>|</nowiki>}}|}} -->
|-<nowiki/> <!-- cria a Propriedade Datafield com o conteúdo completo do subcampo, armazenando no subobjeto do campo; faz o cálculo do Field length e armazena no subobjeto do campo. --> <!-- armazenamento semântico --> {{#subobject:{{#sub:{{{Tag|}}}|0|3}}|Datafield={{{First indicator| }}}{{{Second indicator| }}}{{#regex:{{#regex:{{{Field content|Field content - Authority index 100|Field content - Authority index 110|Field content - Authority index 111|Field content - Authority index 130|Field content - Authority index 150|Field content - Authority index 151|}}}|/\$([a-z0-8])\s*/|␟$1}}|/\n(\$[a-z0-8])/|$1}}␞|Field length={{#sub:{{{Tag|}}}|0|3}}{{padleft:{{#invoke:String|strlen|ii{{#regex:{{#regex:{{{Field content|Field content - Authority index 100|Field content - Authority index 110|Field content - Authority index 111|Field content - Authority index 130|Field content - Authority index 150|Field content - Authority index 151|}}}|/(\$[a-z0-8])\s*/|$1}}|/\n(\$[a-z0-8])/|$1}}s}}|4}}|@sortkey={{#sub:{{{Tag|}}}|0|3}}}}</includeonly>
+
|-<nowiki/> <!-- cria a Propriedade Datafield com o conteúdo completo do subcampo, armazenando no subobjeto do campo; faz o cálculo do Field length e armazena no subobjeto do campo. --> <!-- armazenamento semântico --> {{#subobject:{{#sub:{{{Tag|}}}|0|3}}|Datafield={{{First indicator| }}}{{{Second indicator| }}}{{#regex:{{#regex:{{{Field content|}}}{{{Field content - Authority index 100|}}}{{{Field content - Authority index 110|}}}{{{Field content - Authority index 111|}}}{{{Field content - Authority index 130|}}}{{{Field content - Authority index 150|}}}{{{Field content - Authority index 151|}}}|/\$([a-z0-8])\s*/|␟$1}}|/\n(\$[a-z0-8])/|$1}}␞|Field length={{#sub:{{{Tag|}}}|0|3}}{{padleft:{{#invoke:String|strlen|ii{{#regex:{{#regex:{{{Field content|}}}{{{Field content - Authority index 100|}}}{{{Field content - Authority index 110|}}}{{{Field content - Authority index 111|}}}{{{Field content - Authority index 130|}}}{{{Field content - Authority index 150|}}}{{{Field content - Authority index 151|}}}|/(\$[a-z0-8])\s*/|$1}}|/\n(\$[a-z0-8])/|$1}}s}}|4}}|@sortkey={{#sub:{{{Tag|}}}|0|3}}}}</includeonly>

Revision as of 16:35, 4 November 2019

Esta é a predefinição 'Data field'. Ela deve ser chamada no seguinte formato:

{{Data field
|Tag=
|First indicator=
|Second indicator=
|Field content=
|Field content - Authority index 100=
|Field content - Authority index 110=
|Field content - Authority index 111=
|Field content - Authority index 130=
|Field content - Authority index 150=
|Field content - Authority index 151=
}}

Edite a página para ver o texto da predefinição.