Slash Chord Bass Validator

Validate literal supported chord/slash-bass syntax and distinguish chord-member inversion bass from valid nonchord pedal bass by sounding class; membership false is not rejected syntax or automatic harmonic illegality.

Description

A slash symbol specifies a bass pitch independently of the chord’s root.

A slash symbol specifies a bass pitch independently of the chord’s root. A nonmember pedal bass can be syntactically valid.1

Enter a supported literal symbol with an explicit slash bass. Parse uppercase root/bass and ASCII accidentals; suffix may be maj7/m7/dim7/m7b5/sus2/sus4/dim/aug/m/7. Return normalized root/bass, quality, membership and tone index.

When to use Slash Chord Bass Validator

Use Slash Chord Bass Validator when you need to evaluate the supplied records under the calculation and evidence rules below. Nonmember bass returns false and −1. No actual lowest note, voicing or harmonic legality is established.

Enter the written notes, explicit grouping, pitch observations or supported chord tokens requested. Keep scientific octaves, accidentals and caller evidence consistent.

How to use Slash Chord Bass Validator and understand its results

  1. Enter the written notes, explicit grouping, pitch observations or supported chord tokens requested. Keep scientific octaves, accidentals and caller evidence consistent.
  2. Enter slashChordSymbol using the field table and calculation rules, then run the tool.
  3. Read parsedRoot, parsedBass, parsedChordQuality, bassMatchesChordPitchClass, bassChordToneIndex. The explanation below defines the units, signs, ordering and any flags or placeholder values.
  4. If the tool reports an input issue, correct the values and run it again. Apply the stated assumptions when interpreting a successfully returned result.
Input fieldMeaningValue type; see rules belowRequirement
slashChordSymbolSlash chord symbolstringRequired

Enter a supported literal symbol with an explicit slash bass. Parse uppercase root/bass and ASCII accidentals; suffix may be maj7/m7/dim7/m7b5/sus2/sus4/dim/aug/m/7. Return normalized root/bass, quality, membership and tone index.

index=position of bass-root modulo12 in quality pattern

Units, indexing, boundary conditions and exceptional cases are defined in the calculation rules above.

Output fieldMeaningValue type
parsedRootParsed rootstring
parsedBassParsed bassstring
parsedChordQualityParsed chord qualitystring
bassMatchesChordPitchClassBass matches chord pitch classboolean
bassChordToneIndexBass chord tone indexnumber
json
{
  "input": {
    "slashChordSymbol": "C/E"
  },
  "output": {
    "parsedRoot": "C",
    "parsedBass": "E",
    "parsedChordQuality": "major",
    "bassMatchesChordPitchClass": true,
    "bassChordToneIndex": 1
  }
}

Limitations and assumptions

Nonmember bass returns false and −1. No actual lowest note, voicing or harmonic legality is established.

Numeric inputs, where present, must be finite. Follow the calculation-specific rules for overflow, underflow and exceptional cases. Extremely large text inputs are rejected. Missing required fields, extra fields, wrong value types and violations of the calculation rules are input errors. A successfully returned false flag is an evaluated outcome; its meaning is explained above.

Alternative or Complementary methods

Use Chord Inversion From Bass Note: Inversion identifies which spelled chord member is the supplied actual bass. A nonchord bass should remain visible rather than forced into an inversion. For a complementary task, use Transpose Chord Progression Tool: A chord progression transposition should preserve quality suffixes and move explicit slash basses with the roots. Literal syntax avoids guessing ambiguous chord labels.

References

  1. Slash Chord Bass Validator — tool.io

Similar or alternative tools

  • Chord Inversion From Bass Note

    Inversion identifies which spelled chord member is the supplied actual bass. A nonchord bass should remain visible rather than forced into an inversion.

  • Transpose Chord Progression Tool

    A chord progression transposition should preserve quality suffixes and move explicit slash basses with the roots. Literal syntax avoids guessing ambiguous chord labels.

Don't forget to set a bookmark for tool.io!
Privacy | Imprint | Cookies