Inhaltsverzeichnis

std.validate.ismn

ISMN (International Standard Music Number, ISO 10957) identifiziert gedruckte Musiknoten weltweit eindeutig. Das Format folgt dem EAN-13-Profil mit dem festem Präfix 979-0 (früher M bei 10-stelliger ISMN). Die Prüfziffer wird wie bei EAN-13 berechnet.

std.validate · std.validate.ean · std.validate.isbn


Konstanten

Name Wert Bedeutung
ISMN_OK 0 Gültig
ISMN_ERR_INVALID_LENGTH 1 Falsche Länge
ISMN_ERR_INVALID_CHAR 2 Ungültige Zeichen
ISMN_ERR_INVALID_PREFIX 3 Kein gültiges ISMN-Präfix (979-0)
ISMN_ERR_INVALID_CHECK 4 Falsche Prüfziffer

Verwendung

import std.validate.ismn;

// Moderne 13-stellige ISMN (EAN-13-Format)
var ismn13: pchar := "9790006144002";
if (ISMN13Validate(ismn13) = ISMN_OK) {
    log_info(ISMNFormat(ismn13));  // "979-0-006144-00-2"
}

// Alte 10-stellige ISMN (Präfix M)
var ismn10: pchar := "M006144001";
if (ISMN10Validate(ismn10) = ISMN_OK) {
    log_info(ISMN10To13(ismn10));  // "9790006144002"
}


Funktionen

Signatur Sichtbarkeit Beschreibung
ISMN13Validate(ismn: pchar): int64 pub 13-stellige ISMN (EAN-13, Präfix 9790) validieren
ISMN10Validate(ismn: pchar): int64 pub 10-stellige ISMN (Präfix M) validieren
ISMN10To13(ismn10: pchar): pchar pub Alte ISMN-10 in moderne ISMN-13 konvertieren
ISMNNormalize(ismn: pchar): pchar pub Trennzeichen entfernen
ISMNFormat(ismn: pchar): pchar pub ISMN mit Bindestrichen formatieren
ISMNCheckDigit(ismn: pchar): int64 pub EAN-13-Prüfziffer für 12-stelligen Stamm berechnen

Letzte Aktualisierung: 2026-05-23