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
