musicxml2-1.9.0: A representation of the MusicXML format.

Copyright(c) Hans Hoglund 2012
LicenseBSD-style
Maintainerhans@hanshoglund.se
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

Data.Music.MusicXml

Contents

Description

A Haskell representation of MusicXML. You may want to use the Data.Music.MusicXml.Simple module to generate the representation.

For an introduction to MusicXML, see http://www.makemusic.com/musicxml/tutorial.

Synopsis

Score

data Creator Source

Constructors

Creator String String 

data Defaults Source

Constructors

Defaults 

data ScoreAttrs Source

Constructors

ScoreAttrs [Int] 

Instances

Default ScoreAttrs 

data PartAttrs Source

Constructors

PartAttrs String 

Part list

newtype PartList Source

Constructors

PartList 

Instances

Monoid PartList 
Default PartList 
Semigroup PartList 

Music

newtype Music Source

Constructors

Music 

Fields

getMusic :: [MusicElem]
 

Instances

Monoid Music 
Semigroup Music 

Attributes

Notes

Notations

Directions

Lyrics

data Lyric Source

Constructors

Lyric 

Instances

Basic types

Pitch

newtype Semitones Source

Constructors

Semitones

Semitones, i.e 100 cent

Fields

getSemitones :: Double
 

newtype Octaves Source

Constructors

Octaves

Octaves, i.e. 1200 cent

Fields

getOctaves :: Int
 

newtype Fifths Source

Constructors

Fifths

Number of fifths upwards relative to C (i.e. F is -1, G is 1)

Fields

getFifths :: Int
 

Instances

newtype Line Source

Constructors

Line

Line number, from bottom (i.e. 1-5)

Fields

getLine :: Int
 

Instances

Time

newtype Divs Source

Constructors

Divs

Sounding time in ticks

Fields

getDivs :: Int
 

Instances

newtype NoteVal Source

Constructors

NoteVal

Notated time in fractions, in [2^^i | i <- [-10..3]].

Fields

getNoteVal :: Rational
 

newtype Beat Source

Constructors

Beat

Time nominator

Fields

getBeat :: Int
 

Instances

newtype BeatType Source

Constructors

BeatType

Time denominator

Fields

getBeatType :: Int
 

Dynamics

Misc

data LineType Source

Constructors

Solid 
Dashed 
Dotted 
Wavy 

newtype Level Source

Constructors

Level 

Fields

getLevel :: Max8
 

Instances

Import and export functions

toXml :: Score -> Element Source

Render a score as MusicXML.

showXml :: Score -> String Source

Render a score as a MusicXML string.