====== std.validate.issn ====== ISSN (International Standard Serial Number, ISO 3297) identifiziert periodische Veröffentlichungen (Zeitschriften, Zeitungen, Schriftenreihen) weltweit eindeutig. Format: 4 Ziffern + Bindestrich + 3 Ziffern + 1 Prüfzeichen (0–9 oder X). Die Prüfziffer wird über ein gewichtetes Mod-11-Verfahren berechnet. → [[lyx_-_programmiersprache:units:validate|std.validate]] · [[lyx_-_programmiersprache:units:validate:isbn|std.validate.isbn]] ---- ===== Konstanten ===== ^ Name ^ Wert ^ Bedeutung ^ | ''ISSN_OK'' | ''0'' | Gültig | | ''ISSN_ERR_INVALID_LENGTH'' | ''1'' | Länge ≠ 8 (ohne Bindestrich) | | ''ISSN_ERR_INVALID_CHAR'' | ''2'' | Ungültiges Zeichen | | ''ISSN_ERR_INVALID_CHECK'' | ''3'' | Falsche Prüfziffer | ---- ===== Verwendung ===== import std.validate.issn; // Mit oder ohne Bindestrich var issn: pchar := "0317-8471"; var result: int64 := ISSNValidate(issn); if (result = ISSN_OK) { log_info(ISSNFormat(ISSNNormalize(issn))); // "0317-8471" } // Prüfziffer berechnen var check: pchar := ISSNCheckDigit("031784"); // gibt "1" zurück // (X bei Wert 10) // ISSN → EAN-13 (Präfix 977 + ISSN-ohne-Check + 2 + EAN-Check) var ean: pchar := ISSNToEAN13(issn); ---- ===== Funktionen ===== ^ Signatur ^ Sichtbarkeit ^ Beschreibung ^ | ''ISSNValidate(issn: pchar): int64'' | pub | ISSN validieren (mit oder ohne Bindestrich) | | ''ISSNNormalize(issn: pchar): pchar'' | pub | Bindestrich und Leerzeichen entfernen | | ''ISSNFormat(issn: pchar): pchar'' | pub | ISSN mit Bindestrich formatieren ("XXXX-XXXX") | | ''ISSNCheckDigit(issn: pchar): pchar'' | pub | Prüfzeichen für 7-stelligen Stamm berechnen ("0"–"9" oder "X") | | ''ISSNToEAN13(issn: pchar): pchar'' | pub | ISSN in EAN-13 (Präfix 977) konvertieren | Letzte Aktualisierung: 2026-05-23