Vorlage:Eigenschaft: Unterschied zwischen den Versionen

Aus Open Source Ecology - Germany
Zur Navigation springen Zur Suche springen
(refactoring: Wertedefinition von Attribut)
(#set_internal → #subobject)
 
(15 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 6: Zeile 6:
 
-->}}<!--  
 
-->}}<!--  
 
  vardefine end
 
  vardefine end
 +
 +
-->{{#set: Seitenname={{FULLPAGENAME}}}}<!-- für #ask Unterattribut
  
 
-->{{#if: {{{Importiert aus|}}}<!--
 
-->{{#if: {{{Importiert aus|}}}<!--
Zeile 37: Zeile 39:
 
   └─ ''{{PAGENAME}}''
 
   └─ ''{{PAGENAME}}''
 
</div>
 
</div>
{{#ifexpr: 1 < {{#ask: [[Unterattribut von::{{{Unterattribut von|}}}]] |format=count}}|<small>(Siehe auch weitere Unterattribute von [[Attribut:{{{Unterattribut von|}}}]]: <!-- eigenen Seitenlink aus #ask Liste entfernen -->{{#if: trim-always|{{#replace: {{#replace: {{#ask: [[Unterattribut von::{{{Unterattribut von|}}}]] }}|[[:{{VOLLER_SEITENNAME}}{{!}}{{PAGENAME}}]],|}}|, [[:{{VOLLER_SEITENNAME}}{{!}}{{PAGENAME}}]]|}}}})</small>
+
{{#ifexpr: 1 < {{#ask: [[Unterattribut von::{{{Unterattribut von|}}}]] |format=count}}|<small>(Siehe auch weitere Unterattribute von [[Attribut:{{{Unterattribut von|}}}]]: <!-- eigenen Seitenlink aus #ask Liste entfernen -->{{#ask: [[Unterattribut von::{{{Unterattribut von|}}}]] [[Seitenname::!~{{FULLPAGENAME}}]]}})</small>
  
 
<nowiki></nowiki>}}<!--  
 
<nowiki></nowiki>}}<!--  
Zeile 43: Zeile 45:
 
}} {{#switch: {{{Datentyp|Text}}}
 
}} {{#switch: {{{Datentyp|Text}}}
 
   | Einsprachiger Text = Text beliebiger Länge, jedoch nur in einer Sprache, Beispiel: <code>deutscher Text@de</code>, <code>english text@en</code> usw.
 
   | Einsprachiger Text = Text beliebiger Länge, jedoch nur in einer Sprache, Beispiel: <code>deutscher Text@de</code>, <code>english text@en</code> usw.
 +
  | Stichwort = Es kann bis etwa 85 Zeichen enthalten; bei Suchanfragen werden Sonderzeichen und verschiedene SchREibVarIANten automatisch gefunden.
 
   | Text = Text beliebiger Länge. [https://www.semantic-mediawiki.org/wiki/Help:Datentyp_Text Datentyp Text]
 
   | Text = Text beliebiger Länge. [https://www.semantic-mediawiki.org/wiki/Help:Datentyp_Text Datentyp Text]
 
   | Zeichenkette = '''Veralteter Datentyp Zeichenkette''' bitte auf „Datentyp=Text“ ändern.
 
   | Zeichenkette = '''Veralteter Datentyp Zeichenkette''' bitte auf „Datentyp=Text“ ändern.
Zeile 79: Zeile 82:
  
  
-->{{#if: {{{Erläuterungen|}}}|<nowiki></nowiki>
+
-->{{#if: {{{Erläuterungen|}}}|<div>
 
 
 
{{{Erläuterungen|}}}
 
{{{Erläuterungen|}}}
 +
</div>
 
}}<!--
 
}}<!--
  
Zeile 92: Zeile 95:
  
 
'''Erlaubte Werte sind:'''
 
'''Erlaubte Werte sind:'''
 +
{{#if: {{#pos: {{{Erlaubte Werte|}}}|=}}<!--
 +
dann Erlaubte Werte hat „=“
 +
-->|
 
<div class="definition-inline">
 
<div class="definition-inline">
 
<dl>
 
<dl>
 
{{#arraymap: {{{Erlaubte Werte|}}}<!-- values
 
{{#arraymap: {{{Erlaubte Werte|}}}<!-- values
   Möglich: 1 = Bezeichner !! Beschreibung; 2 = Bezeichner; 3; 4; 5
+
   Möglich:  
-->|;<!-- split on ;
+
  1 = Bezeichner :: Beschreibung
 +
  2 = Bezeichner
 +
  3
 +
  4
 +
  5
 +
-->|\n<!-- split on line break
 
-->|§<!-- assign temporary variable
 
-->|§<!-- assign temporary variable
-->|<nowiki></nowiki>
+
-->|<!--
<dt> [[Erlaubt Wert::{{#explode: §|=|0}}]] <dd> <!-- zugehöriger Bezeichner/label -->{{#if: {{#explode: §|=|1}} | {{#explode: {{#sub:§|{{#expr: {{#pos:§|=|0}} + 1}} }}|!!|0}} | &nbsp; }}<!-- zugehörige Definition -->{{#if: {{#explode:{{#sub:§|{{#pos:§|=|0}}}}|!!|1}}|&#32;– {{#explode:{{#sub:§|{{#pos:§|=|0}}}}|!!|1}} }}<!-- output
+
  -->{{#vardefine: erlaubter_wert|{{#if: {{#pos: {{#explode: §|=|0}}|(sortvalue:}}<!--
  #subobject: kombiniere Erlaubt Wert mit label (Zukunftsmusik: füge Beschreibungs-Trenner "!!" hinzu als skos:definition)
+
    then -->|{{#explode: {{#explode: §|=|0}}|(sortvalue:|0 }}<!--
-->{{#subobject: Wertedefinition von Attribut
+
    else -->|{{#explode: §|=|0}}<!--
  |Erlaubt Wert={{#explode: §|=|0}}
+
    -->}}<!--
  |skos:prefLabel={{#if: {{#explode: §|=|1}}|{{#explode: {{#sub:§|{{#expr: {{#pos:§|=|0}} + 1}} }}|!!|0}} }}  
+
  -->}}<!--
   |skos:definition={{#explode:{{#sub:§|{{#pos:§|=|0}}}}|!!|1}}<!--  
+
  -->{{#vardefine: sortvalue|{{#if: {{#pos: {{#explode: §|=|0}}|(sortvalue:}}<!--
-->}}<!-- #subobject; output
+
    then -->|{{#replace:{{#explode: {{#explode: §|=|0}}|(sortvalue:|1 }}|)|}}<!--
 +
    else -->|{{#var: erlaubter_wert}}<!--
 +
    -->}}<!--
 +
  -->}}<!--
 +
  -->{{#vardefine: skos_preflabel| {{#if: {{#explode: §|=|1}}<!--
 +
    -->|{{#explode: {{#sub:§|{{#expr: {{#pos:§|=|0}} + {{#len:=}} }} }}|::|0}} <!--
 +
    -->|{{#var: erlaubter_wert}}<!---->}}<!--
 +
  -->}}<!--
 +
  -->{{#vardefine: definition| {{#if:trim|{{#explode:{{#sub:§|{{#pos:§|=|0}}}}|::|1}}}}<!---->}}<!--
 +
  -->{{#vardefine: hat_definition| {{#if:{{#var:definition}}|1|0<!---->}}<!---->}}<!--
 +
    #subobject: kombiniere Erlaubt Wert mit label (Zukunftsmusik: füge Beschreibungs-Trenner "::" hinzu als skos:definition)
 +
  -->{{#subobject:  
 +
      |Wertedefinition von Attribut={{FULLPAGENAME}}
 +
      |Erlaubt Wert={{#var: erlaubter_wert}}
 +
      |skos:prefLabel={{#var: skos_preflabel}}
 +
      |skos:definition={{#var: definition}}
 +
      |Sortierschlüssel={{#var: sortvalue}}<!--
 +
  -->}}<!-- #subobject;
 +
output
 +
  --><nowiki></nowiki>
 +
<dt>[[Erlaubt Wert::{{#var: erlaubter_wert}}]] <dd> <!-- zugehöriger Bezeichner/label
 +
-->{{#ifexpr: {{#var: hat_definition}}|<i>}}<!--
 +
  -->{{#if: {{#explode: §|=|1}} | {{#var: skos_preflabel}} | &nbsp; }}<!--
 +
-->{{#ifexpr: {{#var: hat_definition}}|</i>}}<!--
 +
zugehörige Definition
 +
   -->{{#ifexpr: {{#var: hat_definition}}|&#32;– {{#var:definition}}<!---->}}<!-- output
 
-->|<!-- new output separator
 
-->|<!-- new output separator
 
-->}}
 
-->}}
 
</dl>
 
</dl>
</div>
+
</div><!--
 +
sonst Erlaubte Werte hat kein „=“
 +
-->|
 +
<ul>{{#arraymap: {{{Erlaubte Werte|}}}<!-- values
 +
  Möglich: 1 = Bezeichner :: Beschreibung; 2 = Bezeichner; 3; 4; 5
 +
-->|\n<!-- split on line break
 +
-->|§<!-- assign temporary variable
 +
-->|<!--
 +
  -->{{#vardefine: erlaubter_wert|{{#if: {{#pos: §|(sortvalue:}}<!--
 +
    then -->|{{#explode: §|(sortvalue:|0 }}<!--
 +
    else -->|§<!--
 +
    -->}}<!--
 +
  -->}}<!--
 +
  -->{{#vardefine: sortvalue|{{#if: {{#pos: §|(sortvalue:}}<!--
 +
    then -->|{{#replace:{{#explode: §|(sortvalue:|1 }}|)|}}<!--
 +
    else -->|{{#var: erlaubter_wert}}<!--
 +
    -->}}<!--
 +
  -->}}<!--
 +
  -->{{#vardefine: skos_preflabel|{{#var: erlaubter_wert}}}}<!--
 +
  -->{{#subobject:
 +
      |Wertedefinition von Attribut={{FULLPAGENAME}}
 +
      |Erlaubt Wert={{#var: erlaubter_wert}}
 +
      |skos:prefLabel={{#var: skos_preflabel}}
 +
      |skos:definition=
 +
      |Sortierschlüssel={{#var: sortvalue}}<!--
 +
  -->}}<!-- #subobject; output
 +
  --><li>[[Erlaubt Wert::{{#var: erlaubter_wert}}]]</li><!--
 +
-->|<!-- new output separator
 +
-->}}</ul><!-- arraymap end
 +
-->}}<!-- if end -->
 +
 
 
<div class="mw-collapsible mw-collapsed force-toggle-float-left"  data-expandtext="Zeige" data-collapsetext="Verberge">Abfrage/Formularfeld für Wertedefinitionen der erlaubten Werte …  
 
<div class="mw-collapsible mw-collapsed force-toggle-float-left"  data-expandtext="Zeige" data-collapsetext="Verberge">Abfrage/Formularfeld für Wertedefinitionen der erlaubten Werte …  
<div class="mw-collapsible-content" style="padding-left:1.5em;">
+
<div class="mw-collapsible-content" style="padding-left:1.5em; border-left: 1px dashed #cccccc;">
  <nowiki>{{</nowiki>#ask: <nowiki>[[</nowiki>Hat Unterobjekt:''{{FULLPAGENAME}}#Wertedefinition von Attribut'']]
+
  <nowiki>{{</nowiki>#ask: <nowiki>[[</nowiki>Wertedefinition von Attribut::''{{FULLPAGENAME}}'']]
 
  <nowiki>|</nowiki>mainlabel=-
 
  <nowiki>|</nowiki>mainlabel=-
 
  <nowiki>|</nowiki>?Erlaubt Wert=Erlaubter Wert
 
  <nowiki>|</nowiki>?Erlaubt Wert=Erlaubter Wert
 
  <nowiki>|</nowiki>?skos:prefLabel=Bezeichner
 
  <nowiki>|</nowiki>?skos:prefLabel=Bezeichner
 
  <nowiki>|</nowiki>?skos:definition=Definition
 
  <nowiki>|</nowiki>?skos:definition=Definition
 +
<nowiki>|</nowiki>sort=Sortierschlüssel
 
  <nowiki>}}</nowiki>
 
  <nowiki>}}</nowiki>
  
{{#ask: [[Hat Unterobjekt:{{FULLPAGENAME}}#Wertedefinition von Attribut]]
+
{{#ask: [[Wertedefinition von Attribut::{{FULLPAGENAME}}]]
 
|intro=Als Abfrage:
 
|intro=Als Abfrage:
 
|mainlabel=-
 
|mainlabel=-
Zeile 125: Zeile 192:
 
|?skos:prefLabel=Bezeichner
 
|?skos:prefLabel=Bezeichner
 
|?skos:definition=Definition
 
|?skos:definition=Definition
|limit=4
+
|sort=Sortierschlüssel
 +
|limit=5
 
}}
 
}}
  
Zeile 131: Zeile 199:
 
{{#if: {{#pos:{{{Erlaubte Werte|}}}|=}}<!-- hat "=" und damit auch Bezeichner
 
{{#if: {{#pos:{{{Erlaubte Werte|}}}|=}}<!-- hat "=" und damit auch Bezeichner
 
dann -->|{{tlx|Formularfeld aus Wertedefinition von Attribut|''{{PAGENAME}}''<br/>|field&#61;Formularfeldname falls Attribut anders benannt als Feld<br/>|zeige Hilfe für&#61;Erlaubter Wert, Bezeichner<br/>}}<!--  
 
dann -->|{{tlx|Formularfeld aus Wertedefinition von Attribut|''{{PAGENAME}}''<br/>|field&#61;Formularfeldname falls Attribut anders benannt als Feld<br/>|zeige Hilfe für&#61;Erlaubter Wert, Bezeichner<br/>}}<!--  
sonst-->|{{#if: {{#pos:{{{Erlaubte Werte|}}}|!!}}<!-- hat "!!" und damit auch Bezeichner + Definition
+
sonst-->|{{#if: {{#pos:{{{Erlaubte Werte|}}}|::}}<!-- hat "::" und damit auch Bezeichner + Definition
 
   dann -->|{{tlx|Formularfeld aus Wertedefinition von Attribut|''{{PAGENAME}}''<br/>|field&#61;Formularfeldname falls Attribut anders benannt als Feld<br/>|zeige Hilfe für&#61;Erlaubter Wert, Bezeichner, Definition<br/>}}<!-- hat nur Erlaubter Wert
 
   dann -->|{{tlx|Formularfeld aus Wertedefinition von Attribut|''{{PAGENAME}}''<br/>|field&#61;Formularfeldname falls Attribut anders benannt als Feld<br/>|zeige Hilfe für&#61;Erlaubter Wert, Bezeichner, Definition<br/>}}<!-- hat nur Erlaubter Wert
 
   sonst-->|{{tlx|Formularfeld aus Wertedefinition von Attribut|''{{PAGENAME}}''<br/>|field&#61;Formularfeldname falls Attribut anders benannt als Feld<br/>}}
 
   sonst-->|{{tlx|Formularfeld aus Wertedefinition von Attribut|''{{PAGENAME}}''<br/>|field&#61;Formularfeldname falls Attribut anders benannt als Feld<br/>}}
Zeile 144: Zeile 212:
  
 
  -->{{#switch: {{lc:{{{Zeige Werte Rangliste|}}}}}
 
  -->{{#switch: {{lc:{{{Zeige Werte Rangliste|}}}}}
|ja|yes|1|true=<div>{{#ask: [[{{PAGENAME}}::+]] |?{{PAGENAME}} | format=valuerank|intro=Bisher eingetragene Werte sind:}}</div>
+
|ja|yes|1|true={{#if: {{{Erläuterungen|}}}|<hr/>}}<div>{{#ask: [[{{PAGENAME}}::+]]  
 +
  |?{{PAGENAME}}  
 +
  | format=valuerank
 +
  |intro=Bisher eingetragene Werte sind:
 +
  |template=Valuerank.table
 +
  |introtemplate=Valuerank.table.intro
 +
  |outrotemplate=Valuerank.table.outro
 +
}}</div>
 
}}<!--
 
}}<!--
  

Aktuelle Version vom 10. Juli 2022, 17:29 Uhr

[Aktualisieren][Bearbeiten]Dokumentation der Vorlage




Diese Vorlage definiert die Eigenschaften eines Attributs. Die Parameter sind (noch unvollständig!):

Parameter Verwendetes
Attribut
Erläuterungen
Datentyp Datentyp ein Datentyp, wie unter Spezial:Datentypen aufgelistet oder der Wert „Datentyp=Spezialattribut
Erläuterungen - Allgemeine Erläuterungen, "siehe auch"-Verweise (freier Text)
Erlaubte Werte Erlaubt Wert Werte immer in Zeilen eingeben, Möglichkeiten (einfach):
Zustand1 
Zustand2
Zustand3

oder Möglichkeiten als umfangreich bezeichnete Stufen mit Definitionen einzelner Stufen:

 1 = ausgeschriebener Bezeichner1 :: mögliche lange Beschreibung
 2 = ausgeschriebener Bezeichner2
 3 = ausgeschriebener Bezeichner3
 usw.
Anzeigeeinheiten Einheiten standardmäßig anzuzeigender Einheiten, z.B.: „mm, cm, m“. Die erste ist diejenige, welche Anzeige-Vorang hat z.B. im SMW-Browser (Komma-separierte Liste)
Umrechnungen Entspricht Semikolon-separiert Liste: zusätzliche Umrechnungen, z.B.
„1 cm; 0,01 m; 0,032808399 ft“ mit "1 cm" als Ausgangs-Umrechnung, weil als „1 cm“ angegeben
Unterattribut von Unterattribut von ein Haupt- oder „Über“-Attribut, d.h. die Beziehung „{{SEITENNAME}}“ ist „Unterattribut von“ „Hauptattribut“ wird damit festgelegt
Importiert aus Importiert aus Verweis auf ein importiertes (Konzept)Vokabular, das extern definiert wurde (für RDF-Export), z.B.:
"skos:prefLabel" (für dieses Beispiel sollte die Seite MediaWiki:Smw import skos erstellt sein, die auf das externe Vokanular verweist. Siehe Help on import vocabulary)
Nutze stattdessen Eigenschaft - Statt die Seite zu löschen, kann ein Verweis auf eine zu benutzende Eigenschaft gemacht werden. Bsp.:
|Nutze stattdessen Eigenschaft= dc:creator
oder
|Nutze stattdessen Eigenschaft= dc:creator, Erklärung als Kurztext)
Zeige Werte Rangliste - ja/nein. Zeigt gespeicherte Werte an geordnet nach Häufigkeit.

Technische Abhängigkeiten

Attribute

Globale Einstellung

CSS

/* for toggle position */
div.mw-collapsible.force-toggle-float-left span.mw-collapsible-toggle {
  clear:left; float:left;margin-right:0.2em;
}