Notice: Unexpected clearActionName after getActionName already called in /var/www/html/includes/context/RequestContext.php on line 338
Advanced Boolean Equation Language – Wikipedia (Deutsch) – Lokale Kopie Zum Inhalt springen

Advanced Boolean Equation Language

aus Wikipedia, der freien Enzyklopädie

Die Advanced Boolean Equation Language (ABEL) ist eine heute kaum noch genutzte Hardwarebeschreibungssprache, die in der Digitaltechnik der 1980er und 1990er Jahre eingesetzt wurde, um einfache logische Schaltungen für Bausteine wie CPLDs (Complex Programmable Logic Devices) und für kleinere FPGAs (Field Programmable Gate Array) zu entwerfen. Die Beschreibung erfolgt mit booleschen Gleichungen, Wahrheitstafeln oder bedingten Zuweisungen. Bei Zustandsautomaten können die Zustandsübergänge als STATE_DIAGRAMM beschrieben werden. Während Verilog und VHDL ursprünglich nur für die Schaltungssimulation konzipiert wurden, lag das Augenmerk bei der Konzeption von ABEL auf der automatischen und sehr hardwarenahen Generierung von Programmierfiles für CPLDs.

ABEL wurde in den 1980er Jahren von der „Data I/O Corporation“ in Redmond (Washington) entwickelt. Nach einer Reihe von Verkäufen wird ABEL seit 1999 von Xilinx gepflegt.<ref><templatestyles src="Webarchiv/styles.css" />{{#if:20000423140328

      | {{#ifeq: 20000423140328 | *
    | Vorlage:Webarchiv/Wartung/Stern{{#if: XILINX Completes Purchase Of Software Assets. | {{#invoke:WLink|getEscapedTitle|XILINX Completes Purchase Of Software Assets.}} | {{#invoke:Webarchiv|getdomain|http://www.xilinx.com/prs_rls/assets.htm}} }} (Archivversionen)
    | {{#iferror: {{#time: j. F Y|20000423140328}}
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/DatumDer Wert des Parameters {{#if: wayback | wayback | Datum }} muss ein gültiger Zeitstempel der Form YYYYMMDDHHMMSS sein!
         | {{#if: XILINX Completes Purchase Of Software Assets. | {{#invoke:WLink|getEscapedTitle|XILINX Completes Purchase Of Software Assets.}} | {{#invoke:Webarchiv|getdomain|http://www.xilinx.com/prs_rls/assets.htm}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y|20000423140328}} im Internet Archive{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
      }}
  }}
      | {{#if:
          | {{#iferror: {{#time: j. F Y|{{{webciteID}}}}}
    | {{#switch: {{#invoke:Str|len|{{{webciteID}}}}}
       | 16= {{#if: XILINX Completes Purchase Of Software Assets. | {{#invoke:WLink|getEscapedTitle|XILINX Completes Purchase Of Software Assets.}} | {{#invoke:Webarchiv|getdomain|http://www.xilinx.com/prs_rls/assets.htm}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{{webciteID}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | 9 = {{#if: XILINX Completes Purchase Of Software Assets. | {{#invoke:WLink|getEscapedTitle|XILINX Completes Purchase Of Software Assets.}} | {{#invoke:Webarchiv|getdomain|http://www.xilinx.com/prs_rls/assets.htm}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{#invoke:Expr|base62|{{{webciteID}}}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | #default= Der Wert des Parameters {{#if: webciteID | webciteID | ID }} muss entweder ein Zeitstempel der Form YYYYMMDDHHMMSS oder ein Schüsselwert mit 9 Zeichen oder eine 16-stellige Zahl sein!Vorlage:Webarchiv/Wartung/webcitation{{#if:  || }}
      }}
    | c|{{{webciteID}}}}} {{#if: XILINX Completes Purchase Of Software Assets. | {{#invoke:WLink|getEscapedTitle|XILINX Completes Purchase Of Software Assets.}} | {{#invoke:Webarchiv|getdomain|http://www.xilinx.com/prs_rls/assets.htm}} }} (Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y|{{{webciteID}}}}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
  }}
          | {{#if: 
              | Vorlage:Webarchiv/Today
              | {{#if:
                      | Vorlage:Webarchiv/Generisch
                      | {{#if: XILINX Completes Purchase Of Software Assets. | {{#invoke:WLink|getEscapedTitle|XILINX Completes Purchase Of Software Assets.}} | {{#invoke:Webarchiv|getdomain|http://www.xilinx.com/prs_rls/assets.htm}} }}  
                 }}}}}}}}{{#if:
    | Vorlage:Webarchiv/archiv-bot
  }}{{#invoke:TemplatePar|check
     |all      = url=
     |opt      = text= wayback= webciteID= archive-is= archive-today= archiv-url= archiv-datum= ()= archiv-bot= format= original=
     |cat      = Wikipedia:Vorlagenfehler/Vorlage:Webarchiv
     |errNS    = 0
     |template = Vorlage:Webarchiv
     |format   = *
     |preview  = 1
  }}{{#ifexpr: {{#if:20000423140328|1|0}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}} <> 1
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Genau einer der Parameter 'wayback', 'webciteID', 'archive-today', 'archive-is' oder 'archiv-url' muss angegeben werden.|1}}
  }}{{#if: 
    | {{#switch: {{#invoke:Webarchiv|getdomain|{{{archiv-url}}}}}
        | web.archive.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von Internet Archive erkannt, bitte Parameter 'wayback' benutzen.|1}} 
        | webcitation.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von WebCite erkannt, bitte Parameter 'webciteID' benutzen.|1}} 
        | archive.today |archive.is |archive.ph |archive.fo |archive.li |archive.md |archive.vn = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von archive.today erkannt, bitte Parameter 'archive-today' benutzen.|1}}
      }}{{#if: 
         | {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}
             | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Wert des Parameter 'archiv-datum' ist ungültig oder hat ein ungültiges Format.|1}}
          |  }} 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Pflichtparameter 'archiv-datum' wurde nicht angegeben.|1}}
      }}
    | {{#if: 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Parameter 'archiv-datum' ist nur in Verbindung mit 'archiv-url' angebbar.|1}}
      }}
  }}{{#if:{{#invoke:URLutil|isHostPathResource|http://www.xilinx.com/prs_rls/assets.htm}}
    || {{#if:  || }}
  }}{{#if: XILINX Completes Purchase Of Software Assets.
    | {{#if: {{#invoke:WLink|isBracketedLink|XILINX Completes Purchase Of Software Assets.}}
        | {{#if:  || }}
      }}
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Linktext_fehlt
  }}{{#switch: 
    |addlarchives|addlpages= {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/Parameter}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: enWP-Wert im Parameter 'format'.|1}}
  }}{{#ifeq: {{#invoke:Str|find|http://www.xilinx.com/prs_rls/assets.htm%7Carchiv}} |-1
    || {{#ifeq: {{#invoke:Str|find|{{#invoke:Str|cropleft|http://www.xilinx.com/prs_rls/assets.htm%7C4}}%7Chttp}} |-1
         || {{#switch: {{#invoke:Webarchiv|getdomain|http://www.xilinx.com/prs_rls/assets.htm }}
              | abendblatt.de | daserste.ndr.de | inarchive.com | webcitation.org = 
              | #default = {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/URL}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Archiv-URL im Parameter 'url' anstatt URL der Originalquelle. Entferne den vor der Original-URL stehenden Mementobestandteil und setze den Archivierungszeitstempel in den Parameter 'wayback', 'webciteID', 'archive.today' oder 'archive-is' ein, sofern nicht bereits befüllt.|1}}
            }} 
       }}
  }} Presseerklärung</ref> Heute wird ABEL nur noch wenig genutzt, da durch das Aufkommen leistungsfähiger Synthesetools abstraktere Beschreibungen wie zum Beispiel in VHDL automatisch in Gatterlisten umgesetzt werden können. Für Schaltungen, die aus mehreren Hunderttausenden Logikgattern bestehen, ist die manuelle Beschreibung mit logischen Gleichungen wie in ABEL nicht praktikabel. Aber auch bei kleineren Schaltungen findet ABEL kaum noch Anwendung, da die komplette Funktionalität mit heute üblichen Hardwaresprachen wie VHDL oder Verilog abgedeckt werden kann.

ABEL-Syntax

Programmaufbau

Ein Abelprogramm besteht aus verschiedenen Abschnitten, die durch entsprechende Schlüsselwörter (u. a. module, declarations, equations, truth_table, state_diagramm, test_vectors) eingeleitet werden. Pro Zeile sind maximal 150 Zeichen erlaubt. Alle Zeilen enden mit einem Semikolon.

Reservierte Schlüsselworte

Es gibt ca. 30 Schlüsselworte, die nicht frei verwendet werden dürfen (z. B. if, else, istype, buffer, com, when, then, truth_table, equations, u. a. m.)

Identifier (selbstdefinierte Signalbezeichner)

Identifier müssen mit einem Buchstaben oder Unterstrich beginnen und dürfen maximal 31 Zeichen lang sein. Identifier dürfen keine Sonderzeichen (außer ~ und _), Umlaute (ä, ö, ü) oder Leerzeichen enthalten. Identifier sind case-sensitiv!

Kommentare

Zur Auszeichnung von Kommentaren gibt es zwei Möglichkeiten.

  • Beginn und Ende mit " kennzeichnen
  • Beginn mit // - gilt bis Zeilenende, sinnvoll wenn Kommentar selbst " enthält

Konstanten (Auswahl)

  • .X. don't care Bedingung (z. B. im Abschnitt truth_table)
  • .C. vollständiger Takt: low-high-low (z. B. in test_vectors)
  • .K. vollständiger Takt high-low-high
  • .D. absteigende Taktflanke
  • .U. ansteigende Taktflanke

Operatoren

In ABEL gibt es 4 Gruppen von Operatoren: logische Operatoren, arithmetische Operatoren, Vergleichsoperatoren und Zuweisungsoperatoren.

  • Logische Operatoren sind: ! (NOT), & (AND), # (OR), $ (XOR), !$ (XNOR), << (Shift left) und >> (Shift right)
  • Arithmetische Operatoren sind + (Addition), (Subtraktion oder Zweierkomplement), * (Multiplikation) und / (Division)
  • Die Vergleichsoperationen entsprechen der Syntax vieler Hochsprachen. Möglich sind ==, !=, <, <=, >, <=

Bei Zuweisungen werden kombinatorische Zuweisungen und Zuweisungen mit Speicher unterschieden:

  • = bei Ausgängen ohne Flipflop (und bei Ausgängen mit FF unter Verwendung von Dot-Extensions)
  • := bei Ausgängen mit Flipflop
Dot-Extensions
Dot-Extensions eines D-Flipflops in einem CPLD

Dot-Extensions

DOT-Extensions in ABEL sind ein wichtiges Hilfsmittel, um auf internen Signale der im CLPD enthaltenen D-Flipflops zuzugreifen. Die Abbildung zeigt die am häufigsten genutzten Dot-Extensions:

  • .OE schaltet den Tristate-Buffer
  • .D ist der Daten-Eingang des Flipflops
  • .CLK bezeichnet den Takt-Eingang des Flipflops
  • .AR bezeichnet den asynchronen Rücksetzeingang des Flipflops
  • .Q ist der Ausgang des Flipflops. Bei internen Flipflops (NODE) kann nur .Q genutzt werden.
  • .Pin ist das Signal am Ausgangspin. Durch Verwendung von .OE sind auch bidirektionale Busse möglich.

Weitere Dot-Extensions werden bausteinspezifisch direkt umgesetzt oder emuliert. So kann in einem CPLD, welches nur D-Flipflops enthält, mittels .J und .K oder .R und .S das Verhalten eines JK- oder RS-Flipflops nachgebildet werden. Wenn die internen Flipflops des CPLD kein asynchrones Setz-Signal (.AS) aufweisen, wird bei der Verwendung von .AS die Logik des Flipflops invertiert und stattdessen der asynchrone Rücksetzeingang .AR genutzt. Dabei kann .AR und .AS nicht gleichzeitig genutzt werden.

Beispiel Ampelschaltung in ABEL-HDL

Der folgende Quelltext stellt ein Programm zur einfachen Ampelschaltung dar, welches die Ampelphasen rot – rot/gelb – grün – gelb – rot – usw. durchläuft, solange ein High-Signal am Enable-Eingang anliegt.

<syntaxhighlight lang="c"> MODULE trafficlight TITLE 'trafficlight' DECLARATIONS // inputs

   clk    pin 11; // clock signal
   en     pin  9; // enable signal to start the traffic light

// nodes

   q0     node   istype 'reg';
   q1     node   istype 'reg';

// output

   red    pin 36 istype 'com'; // the red light
   yellow pin 42 istype 'com'; // the yellow light
   green  pin 39 istype 'com'; // the green light

EQUATIONS

   q0 := !q0 & !en;
   q1 := (q1 $ q0) & !en;
   q0.clk = clk;
   q1.clk = clk;
   red = q1;
   yellow = !q0;
   green = !(q1 & !q0);

TEST_VECTORS

          ([clk, en] -> [ red, yellow, green]);

@repeat 1 {[.C., 1] -> [.X., .X., .X.];} @repeat 7 {[.C., 0] -> [.X., .X., .X.];} @repeat 3 {[.C., 1] -> [.X., .X., .X.];} @repeat 40 {[.C., 0] -> [.X., .X., .X.];} END </syntaxhighlight>

Weblinks

  • University of Pennsylvania’s <templatestyles src="Webarchiv/styles.css" />{{#if:20050207015851
      | {{#ifeq: 20050207015851 | *
    | Vorlage:Webarchiv/Wartung/Stern{{#if: ABEL primer | {{#invoke:WLink|getEscapedTitle|ABEL primer}} | {{#invoke:Webarchiv|getdomain|http://ez-ware.com/abel.primer.htm}} }} (Archivversionen)
    | {{#iferror: {{#time: j. F Y|20050207015851}}
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/DatumDer Wert des Parameters {{#if: wayback | wayback | Datum }} muss ein gültiger Zeitstempel der Form YYYYMMDDHHMMSS sein!
         | {{#if: ABEL primer | {{#invoke:WLink|getEscapedTitle|ABEL primer}} | {{#invoke:Webarchiv|getdomain|http://ez-ware.com/abel.primer.htm}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y|20050207015851}} im Internet Archive{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
      }}
  }}
      | {{#if:
          | {{#iferror: {{#time: j. F Y|{{{webciteID}}}}}
    | {{#switch: {{#invoke:Str|len|{{{webciteID}}}}}
       | 16= {{#if: ABEL primer | {{#invoke:WLink|getEscapedTitle|ABEL primer}} | {{#invoke:Webarchiv|getdomain|http://ez-ware.com/abel.primer.htm}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{{webciteID}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | 9 = {{#if: ABEL primer | {{#invoke:WLink|getEscapedTitle|ABEL primer}} | {{#invoke:Webarchiv|getdomain|http://ez-ware.com/abel.primer.htm}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{#invoke:Expr|base62|{{{webciteID}}}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | #default= Der Wert des Parameters {{#if: webciteID | webciteID | ID }} muss entweder ein Zeitstempel der Form YYYYMMDDHHMMSS oder ein Schüsselwert mit 9 Zeichen oder eine 16-stellige Zahl sein!Vorlage:Webarchiv/Wartung/webcitation{{#if:  || }}
      }}
    | c|{{{webciteID}}}}} {{#if: ABEL primer | {{#invoke:WLink|getEscapedTitle|ABEL primer}} | {{#invoke:Webarchiv|getdomain|http://ez-ware.com/abel.primer.htm}} }} (Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y|{{{webciteID}}}}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
  }}
          | {{#if: 
              | Vorlage:Webarchiv/Today
              | {{#if:
                      | Vorlage:Webarchiv/Generisch
                      | {{#if: ABEL primer | {{#invoke:WLink|getEscapedTitle|ABEL primer}} | {{#invoke:Webarchiv|getdomain|http://ez-ware.com/abel.primer.htm}} }}  
                 }}}}}}}}{{#if:
    | Vorlage:Webarchiv/archiv-bot
  }}{{#invoke:TemplatePar|check
     |all      = url=
     |opt      = text= wayback= webciteID= archive-is= archive-today= archiv-url= archiv-datum= ()= archiv-bot= format= original=
     |cat      = Wikipedia:Vorlagenfehler/Vorlage:Webarchiv
     |errNS    = 0
     |template = Vorlage:Webarchiv
     |format   = *
     |preview  = 1
  }}{{#ifexpr: {{#if:20050207015851|1|0}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}} <> 1
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Genau einer der Parameter 'wayback', 'webciteID', 'archive-today', 'archive-is' oder 'archiv-url' muss angegeben werden.|1}}
  }}{{#if: 
    | {{#switch: {{#invoke:Webarchiv|getdomain|{{{archiv-url}}}}}
        | web.archive.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von Internet Archive erkannt, bitte Parameter 'wayback' benutzen.|1}} 
        | webcitation.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von WebCite erkannt, bitte Parameter 'webciteID' benutzen.|1}} 
        | archive.today |archive.is |archive.ph |archive.fo |archive.li |archive.md |archive.vn = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von archive.today erkannt, bitte Parameter 'archive-today' benutzen.|1}}
      }}{{#if: 
         | {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}
             | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Wert des Parameter 'archiv-datum' ist ungültig oder hat ein ungültiges Format.|1}}
          |  }} 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Pflichtparameter 'archiv-datum' wurde nicht angegeben.|1}}
      }}
    | {{#if: 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Parameter 'archiv-datum' ist nur in Verbindung mit 'archiv-url' angebbar.|1}}
      }}
  }}{{#if:{{#invoke:URLutil|isHostPathResource|http://ez-ware.com/abel.primer.htm}}
    || {{#if:  || }}
  }}{{#if: ABEL primer
    | {{#if: {{#invoke:WLink|isBracketedLink|ABEL primer}}
        | {{#if:  || }}
      }}
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Linktext_fehlt
  }}{{#switch: 
    |addlarchives|addlpages= {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/Parameter}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: enWP-Wert im Parameter 'format'.|1}}
  }}{{#ifeq: {{#invoke:Str|find|http://ez-ware.com/abel.primer.htm%7Carchiv}} |-1
    || {{#ifeq: {{#invoke:Str|find|{{#invoke:Str|cropleft|http://ez-ware.com/abel.primer.htm%7C4}}%7Chttp}} |-1
         || {{#switch: {{#invoke:Webarchiv|getdomain|http://ez-ware.com/abel.primer.htm }}
              | abendblatt.de | daserste.ndr.de | inarchive.com | webcitation.org = 
              | #default = {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/URL}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Archiv-URL im Parameter 'url' anstatt URL der Originalquelle. Entferne den vor der Original-URL stehenden Mementobestandteil und setze den Archivierungszeitstempel in den Parameter 'wayback', 'webciteID', 'archive.today' oder 'archive-is' ein, sofern nicht bereits befüllt.|1}}
            }} 
       }}
  }} (englisch)

Einzelnachweise

<references />

{{#ifeq: s | p | | {{#if: 4383423-1 | |

}} }}{{#ifeq:||{{#if: | [[Kategorie:Wikipedia:GND fehlt {{#invoke:Str|left|{{{GNDCheck}}}|7}}]] }}{{#if: | {{#if: | | }} }} }}{{#if: | {{#ifeq: 0 | 2 | | }} }}{{#if: | {{#ifeq: 0 | 2 | | }} }}{{#ifeq: s | p | {{#if: 4383423-1 | | {{#if: {{#statements:P227}} | | }} }} }}{{#ifeq: s | p | {{#if: 4383423-1 | {{#if: {{#invoke:Wikidata|pageId}} | {{#if: {{#statements:P227}} | | }} }} }} }}{{#ifeq: s | p | {{#if: | | {{#if: {{#statements:P244}} | | }} }} }}{{#ifeq: s | p | {{#if: | {{#if: {{#invoke:Wikidata|pageId}} | {{#if: {{#statements:P244}} | | }} }} }} }}{{#ifeq: s | p | {{#if: | | {{#if: {{#statements:P214}} | | }} }} }}{{#ifeq: s | p | {{#if: | {{#if: {{#invoke:Wikidata|pageId}} | {{#if: {{#statements:P214}} | | }} }} }} }}Vorlage:Wikidata-Registrierung

Vorlage:Navigationsleiste programmierbare Logik