.. _moduleExpressions:

music21.expressions
===================

.. WARNING: DO NOT EDIT THIS FILE: AUTOMATICALLY GENERATED.  Edit the .py file directly

.. module:: music21.expressions

This module provides object representations of expressions, that is notational symbols such as Fermatas, Mordents, Trills, Turns, etc. which are stored under a Music21Object's .expressions attribute 


.. function:: realizeOrnaments(srcObject)

    given a Music21Object with Ornament expressions, convert them into a list of objects that represents the performed version of the object: 

    >>> from music21 import *
    >>> n1 = note.Note("D5")
    >>> n1.quarterLength = 1
    >>> n1.expressions.append(expressions.WholeStepMordent())
    >>> expList = expressions.realizeOrnaments(n1)
    >>> st1 = stream.Stream()
    >>> st1.append(expList)
    >>> st1.show()


    .. image:: images/expressionsMordentRealize.*
        :width: 218


    

    

Expression
----------

Inherits from: :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`

.. class:: Expression()

    This base class is inherited by many diverse expressions. 


Fermata
-------

Inherits from: :class:`~music21.expressions.Expression`, :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`

.. class:: Fermata()

    Fermatas by default get appended to the last note if a note is split because of measures. To override this (for Fermatas or for any expression) set .tieAttach to 'all' or 'first' instead of 'last'. 

    >>> from music21 import *
    >>> p1 = stream.Part()
    >>> p1.append(meter.TimeSignature('6/8'))
    >>> n1 = note.Note("D-2")
    >>> n1.quarterLength = 6
    >>> n1.expressions.append(expressions.Fermata())
    >>> p1.append(n1)
    >>> p1.show()


    .. image:: images/expressionsFermata.*
        :width: 193


    **Fermata** **attributes**

        Attributes without Documentation: `lily`, `shape`, `tieAttach`, `type`

        Attributes inherited from :class:`~music21.base.Music21Object`: :attr:`~music21.base.Music21Object.classSortOrder`, :attr:`~music21.base.Music21Object.hideObjectOnPrint`, :attr:`~music21.base.Music21Object.id`, :attr:`~music21.base.Music21Object.groups`

    **Fermata** **properties**

        .. attribute:: mx

            Advanced feature: As a getter gives the music21.musicxml object for the Fermata or as a setter changes the current fermata to have the characteristics of the musicxml object to fit this type: 

            >>> from music21 import *
            >>> a = Fermata()
            >>> mxFermata = a.mx
            >>> mxFermata.get('type')
            'upright' 

            
            >>> mxFermata2 = musicxml.Fermata()
            >>> mxFermata2.set('type', 'upright-inverted')
            >>> a.mx = mxFermata2
            >>> a.type
            'upright-inverted' 

            

        Properties inherited from :class:`~music21.base.Music21Object`: :attr:`~music21.base.Music21Object.activeSite`, :attr:`~music21.base.Music21Object.beat`, :attr:`~music21.base.Music21Object.beatDuration`, :attr:`~music21.base.Music21Object.beatStr`, :attr:`~music21.base.Music21Object.beatStrength`, :attr:`~music21.base.Music21Object.classes`, :attr:`~music21.base.Music21Object.derivationHierarchy`, :attr:`~music21.base.Music21Object.duration`, :attr:`~music21.base.Music21Object.measureNumber`, :attr:`~music21.base.Music21Object.offset`, :attr:`~music21.base.Music21Object.priority`

        Properties inherited from :class:`~music21.base.JSONSerializer`: :attr:`~music21.base.JSONSerializer.json`

    **Fermata** **methods**

        Methods inherited from :class:`~music21.base.Music21Object`: :meth:`~music21.base.Music21Object.searchParentByAttr`, :meth:`~music21.base.Music21Object.getContextAttr`, :meth:`~music21.base.Music21Object.setContextAttr`, :meth:`~music21.base.Music21Object.addContext`, :meth:`~music21.base.Music21Object.addLocation`, :meth:`~music21.base.Music21Object.addLocationAndActiveSite`, :meth:`~music21.base.Music21Object.freezeIds`, :meth:`~music21.base.Music21Object.getAllContextsByClass`, :meth:`~music21.base.Music21Object.getCommonSiteIds`, :meth:`~music21.base.Music21Object.getCommonSites`, :meth:`~music21.base.Music21Object.getContextByClass`, :meth:`~music21.base.Music21Object.getOffsetBySite`, :meth:`~music21.base.Music21Object.getSiteIds`, :meth:`~music21.base.Music21Object.getSites`, :meth:`~music21.base.Music21Object.getSpannerSites`, :meth:`~music21.base.Music21Object.hasContext`, :meth:`~music21.base.Music21Object.mergeAttributes`, :meth:`~music21.base.Music21Object.purgeLocations`, :meth:`~music21.base.Music21Object.removeLocationBySite`, :meth:`~music21.base.Music21Object.removeLocationBySiteId`, :meth:`~music21.base.Music21Object.setOffsetBySite`, :meth:`~music21.base.Music21Object.show`, :meth:`~music21.base.Music21Object.splitAtDurations`, :meth:`~music21.base.Music21Object.splitAtQuarterLength`, :meth:`~music21.base.Music21Object.splitByQuarterLengths`, :meth:`~music21.base.Music21Object.unfreezeIds`, :meth:`~music21.base.Music21Object.unwrapWeakref`, :meth:`~music21.base.Music21Object.wrapWeakref`, :meth:`~music21.base.Music21Object.write`

        Methods inherited from :class:`~music21.base.JSONSerializer`: :meth:`~music21.base.JSONSerializer.jsonAttributes`, :meth:`~music21.base.JSONSerializer.jsonComponentFactory`, :meth:`~music21.base.JSONSerializer.jsonPrint`, :meth:`~music21.base.JSONSerializer.jsonRead`, :meth:`~music21.base.JSONSerializer.jsonWrite`


GeneralMordent
--------------

Inherits from: :class:`~music21.expressions.Ornament`, :class:`~music21.expressions.Expression`, :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`

.. class:: GeneralMordent()


    **GeneralMordent** **attributes**

        Attributes without Documentation: `direction`, `quarterLength`, `size`

        Attributes inherited from :class:`~music21.expressions.Ornament`: :attr:`~music21.expressions.Ornament.connectedToPrevious`, :attr:`~music21.expressions.Ornament.tieAttach`

        Attributes inherited from :class:`~music21.base.Music21Object`: :attr:`~music21.base.Music21Object.classSortOrder`, :attr:`~music21.base.Music21Object.hideObjectOnPrint`, :attr:`~music21.base.Music21Object.id`, :attr:`~music21.base.Music21Object.groups`

    **GeneralMordent** **properties**

        Properties inherited from :class:`~music21.base.Music21Object`: :attr:`~music21.base.Music21Object.activeSite`, :attr:`~music21.base.Music21Object.beat`, :attr:`~music21.base.Music21Object.beatDuration`, :attr:`~music21.base.Music21Object.beatStr`, :attr:`~music21.base.Music21Object.beatStrength`, :attr:`~music21.base.Music21Object.classes`, :attr:`~music21.base.Music21Object.derivationHierarchy`, :attr:`~music21.base.Music21Object.duration`, :attr:`~music21.base.Music21Object.measureNumber`, :attr:`~music21.base.Music21Object.offset`, :attr:`~music21.base.Music21Object.priority`

        Properties inherited from :class:`~music21.base.JSONSerializer`: :attr:`~music21.base.JSONSerializer.json`

    **GeneralMordent** **methods**

        .. method:: realize(srcObject)

            realize a mordent. returns a three-element tuple. The first is a list of the two notes that the beginning of the note were converted to. The second is the rest of the note The third is an empty list (since there are no notes at the end of a mordent) 

            TODO: write more docs... 

            

        Methods inherited from :class:`~music21.base.Music21Object`: :meth:`~music21.base.Music21Object.searchParentByAttr`, :meth:`~music21.base.Music21Object.getContextAttr`, :meth:`~music21.base.Music21Object.setContextAttr`, :meth:`~music21.base.Music21Object.addContext`, :meth:`~music21.base.Music21Object.addLocation`, :meth:`~music21.base.Music21Object.addLocationAndActiveSite`, :meth:`~music21.base.Music21Object.freezeIds`, :meth:`~music21.base.Music21Object.getAllContextsByClass`, :meth:`~music21.base.Music21Object.getCommonSiteIds`, :meth:`~music21.base.Music21Object.getCommonSites`, :meth:`~music21.base.Music21Object.getContextByClass`, :meth:`~music21.base.Music21Object.getOffsetBySite`, :meth:`~music21.base.Music21Object.getSiteIds`, :meth:`~music21.base.Music21Object.getSites`, :meth:`~music21.base.Music21Object.getSpannerSites`, :meth:`~music21.base.Music21Object.hasContext`, :meth:`~music21.base.Music21Object.mergeAttributes`, :meth:`~music21.base.Music21Object.purgeLocations`, :meth:`~music21.base.Music21Object.removeLocationBySite`, :meth:`~music21.base.Music21Object.removeLocationBySiteId`, :meth:`~music21.base.Music21Object.setOffsetBySite`, :meth:`~music21.base.Music21Object.show`, :meth:`~music21.base.Music21Object.splitAtDurations`, :meth:`~music21.base.Music21Object.splitAtQuarterLength`, :meth:`~music21.base.Music21Object.splitByQuarterLengths`, :meth:`~music21.base.Music21Object.unfreezeIds`, :meth:`~music21.base.Music21Object.unwrapWeakref`, :meth:`~music21.base.Music21Object.wrapWeakref`, :meth:`~music21.base.Music21Object.write`

        Methods inherited from :class:`~music21.base.JSONSerializer`: :meth:`~music21.base.JSONSerializer.jsonAttributes`, :meth:`~music21.base.JSONSerializer.jsonComponentFactory`, :meth:`~music21.base.JSONSerializer.jsonPrint`, :meth:`~music21.base.JSONSerializer.jsonRead`, :meth:`~music21.base.JSONSerializer.jsonWrite`


HalfStepInvertedMordent
-----------------------

Inherits from: :class:`~music21.expressions.InvertedMordent`, :class:`~music21.expressions.GeneralMordent`, :class:`~music21.expressions.Ornament`, :class:`~music21.expressions.Expression`, :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`

.. class:: HalfStepInvertedMordent()



HalfStepMordent
---------------

Inherits from: :class:`~music21.expressions.Mordent`, :class:`~music21.expressions.GeneralMordent`, :class:`~music21.expressions.Ornament`, :class:`~music21.expressions.Expression`, :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`

.. class:: HalfStepMordent()



HalfStepTrill
-------------

Inherits from: :class:`~music21.expressions.Trill`, :class:`~music21.expressions.Ornament`, :class:`~music21.expressions.Expression`, :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`

.. class:: HalfStepTrill()



InvertedMordent
---------------

Inherits from: :class:`~music21.expressions.GeneralMordent`, :class:`~music21.expressions.Ornament`, :class:`~music21.expressions.Expression`, :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`

.. class:: InvertedMordent()



InvertedTurn
------------

Inherits from: :class:`~music21.expressions.Ornament`, :class:`~music21.expressions.Expression`, :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`

.. class:: InvertedTurn()



Mordent
-------

Inherits from: :class:`~music21.expressions.GeneralMordent`, :class:`~music21.expressions.Ornament`, :class:`~music21.expressions.Expression`, :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`

.. class:: Mordent()



Ornament
--------

Inherits from: :class:`~music21.expressions.Expression`, :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`

.. class:: Ornament()


    **Ornament** **attributes**

        Attributes without Documentation: `connectedToPrevious`, `tieAttach`

        Attributes inherited from :class:`~music21.base.Music21Object`: :attr:`~music21.base.Music21Object.classSortOrder`, :attr:`~music21.base.Music21Object.hideObjectOnPrint`, :attr:`~music21.base.Music21Object.id`, :attr:`~music21.base.Music21Object.groups`

    **Ornament** **properties**

        Properties inherited from :class:`~music21.base.Music21Object`: :attr:`~music21.base.Music21Object.activeSite`, :attr:`~music21.base.Music21Object.beat`, :attr:`~music21.base.Music21Object.beatDuration`, :attr:`~music21.base.Music21Object.beatStr`, :attr:`~music21.base.Music21Object.beatStrength`, :attr:`~music21.base.Music21Object.classes`, :attr:`~music21.base.Music21Object.derivationHierarchy`, :attr:`~music21.base.Music21Object.duration`, :attr:`~music21.base.Music21Object.measureNumber`, :attr:`~music21.base.Music21Object.offset`, :attr:`~music21.base.Music21Object.priority`

        Properties inherited from :class:`~music21.base.JSONSerializer`: :attr:`~music21.base.JSONSerializer.json`

    **Ornament** **methods**

        .. method:: realize(sourceObject)

            subclassible method call that takes a sourceObject and returns a three-element tuple of a list of notes before the "main note", the "main note" itself, and a list of notes after the "main note". 

        Methods inherited from :class:`~music21.base.Music21Object`: :meth:`~music21.base.Music21Object.searchParentByAttr`, :meth:`~music21.base.Music21Object.getContextAttr`, :meth:`~music21.base.Music21Object.setContextAttr`, :meth:`~music21.base.Music21Object.addContext`, :meth:`~music21.base.Music21Object.addLocation`, :meth:`~music21.base.Music21Object.addLocationAndActiveSite`, :meth:`~music21.base.Music21Object.freezeIds`, :meth:`~music21.base.Music21Object.getAllContextsByClass`, :meth:`~music21.base.Music21Object.getCommonSiteIds`, :meth:`~music21.base.Music21Object.getCommonSites`, :meth:`~music21.base.Music21Object.getContextByClass`, :meth:`~music21.base.Music21Object.getOffsetBySite`, :meth:`~music21.base.Music21Object.getSiteIds`, :meth:`~music21.base.Music21Object.getSites`, :meth:`~music21.base.Music21Object.getSpannerSites`, :meth:`~music21.base.Music21Object.hasContext`, :meth:`~music21.base.Music21Object.mergeAttributes`, :meth:`~music21.base.Music21Object.purgeLocations`, :meth:`~music21.base.Music21Object.removeLocationBySite`, :meth:`~music21.base.Music21Object.removeLocationBySiteId`, :meth:`~music21.base.Music21Object.setOffsetBySite`, :meth:`~music21.base.Music21Object.show`, :meth:`~music21.base.Music21Object.splitAtDurations`, :meth:`~music21.base.Music21Object.splitAtQuarterLength`, :meth:`~music21.base.Music21Object.splitByQuarterLengths`, :meth:`~music21.base.Music21Object.unfreezeIds`, :meth:`~music21.base.Music21Object.unwrapWeakref`, :meth:`~music21.base.Music21Object.wrapWeakref`, :meth:`~music21.base.Music21Object.write`

        Methods inherited from :class:`~music21.base.JSONSerializer`: :meth:`~music21.base.JSONSerializer.jsonAttributes`, :meth:`~music21.base.JSONSerializer.jsonComponentFactory`, :meth:`~music21.base.JSONSerializer.jsonPrint`, :meth:`~music21.base.JSONSerializer.jsonRead`, :meth:`~music21.base.JSONSerializer.jsonWrite`


TextExpression
--------------

Inherits from: :class:`~music21.expressions.Expression`, :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`, :class:`~music21.text.TextFormat`

.. class:: TextExpression(content=None)

    A TextExpression is a word, phrase, or similar bit of text that is positioned in a Stream or Measure. Conventional expressive indications are text like "agitato" or "con fuoco." 

    >>> from music21 import *
    >>> te = expressions.TextExpression('testing')
    >>> te.size = 24
    >>> te.size
    24.0 
    >>> te.style = 'bolditalic'
    >>> te.letterSpacing = 0.5

    **TextExpression** **attributes**

        .. attribute:: classSortOrder

            Property which returns an number (int or otherwise) depending on the class of the Music21Object that represents a priority for an object based on its class alone -- used as a tie for stream sorting in case two objects have the same offset and priority.  Lower numbers are sorted to the left of higher numbers.  For instance, Clef, KeySignature, TimeSignature all come (in that order) before Note. All undefined classes have classSortOrder of 20 -- same as note.Note 

            >>> from music21 import *
            >>> tc = clef.TrebleClef()
            >>> tc.classSortOrder
            0 
            >>> ks = key.KeySignature(3)
            >>> ks.classSortOrder
            1 

            

            
            New classes can define their own default classSortOrder 

            

            
            >>> class ExampleClass(base.Music21Object):
            ...     classSortOrderDefault = 5 
            ... 
            >>> ec1 = ExampleClass()
            >>> ec1.classSortOrder
            5 

        Attributes inherited from :class:`~music21.base.Music21Object`: :attr:`~music21.base.Music21Object.hideObjectOnPrint`, :attr:`~music21.base.Music21Object.id`, :attr:`~music21.base.Music21Object.groups`

    **TextExpression** **properties**

        .. attribute:: content

            Get or set the the content. 

            >>> from music21 import *
            >>> te = expressions.TextExpression('testing')
            >>> te.content
            'testing' 

        .. attribute:: enclosure

            Get or set the the enclosure. 

            >>> from music21 import *
            >>> te = expressions.TextExpression()
            >>> te.justify = 'center'
            >>> te.enclosure = None
            >>> te.enclosure = 'rectangle'

        .. attribute:: positionVertical

            Get or set the the vertical position, where 0 is the top line of the staff and units are in 10ths of a staff space. 

            >>> from music21 import *
            >>> te = expressions.TextExpression()
            >>> te.positionVertical = 10
            >>> te.positionVertical
            10.0 

        Properties inherited from :class:`~music21.base.Music21Object`: :attr:`~music21.base.Music21Object.activeSite`, :attr:`~music21.base.Music21Object.beat`, :attr:`~music21.base.Music21Object.beatDuration`, :attr:`~music21.base.Music21Object.beatStr`, :attr:`~music21.base.Music21Object.beatStrength`, :attr:`~music21.base.Music21Object.classes`, :attr:`~music21.base.Music21Object.derivationHierarchy`, :attr:`~music21.base.Music21Object.duration`, :attr:`~music21.base.Music21Object.measureNumber`, :attr:`~music21.base.Music21Object.offset`, :attr:`~music21.base.Music21Object.priority`

        Properties inherited from :class:`~music21.base.JSONSerializer`: :attr:`~music21.base.JSONSerializer.json`

        Properties inherited from :class:`~music21.text.TextFormat`: :attr:`~music21.text.TextFormat.justify`, :attr:`~music21.text.TextFormat.letterSpacing`, :attr:`~music21.text.TextFormat.size`, :attr:`~music21.text.TextFormat.style`

    **TextExpression** **methods**

        Methods inherited from :class:`~music21.base.Music21Object`: :meth:`~music21.base.Music21Object.searchParentByAttr`, :meth:`~music21.base.Music21Object.getContextAttr`, :meth:`~music21.base.Music21Object.setContextAttr`, :meth:`~music21.base.Music21Object.addContext`, :meth:`~music21.base.Music21Object.addLocation`, :meth:`~music21.base.Music21Object.addLocationAndActiveSite`, :meth:`~music21.base.Music21Object.freezeIds`, :meth:`~music21.base.Music21Object.getAllContextsByClass`, :meth:`~music21.base.Music21Object.getCommonSiteIds`, :meth:`~music21.base.Music21Object.getCommonSites`, :meth:`~music21.base.Music21Object.getContextByClass`, :meth:`~music21.base.Music21Object.getOffsetBySite`, :meth:`~music21.base.Music21Object.getSiteIds`, :meth:`~music21.base.Music21Object.getSites`, :meth:`~music21.base.Music21Object.getSpannerSites`, :meth:`~music21.base.Music21Object.hasContext`, :meth:`~music21.base.Music21Object.mergeAttributes`, :meth:`~music21.base.Music21Object.purgeLocations`, :meth:`~music21.base.Music21Object.removeLocationBySite`, :meth:`~music21.base.Music21Object.removeLocationBySiteId`, :meth:`~music21.base.Music21Object.setOffsetBySite`, :meth:`~music21.base.Music21Object.show`, :meth:`~music21.base.Music21Object.splitAtDurations`, :meth:`~music21.base.Music21Object.splitAtQuarterLength`, :meth:`~music21.base.Music21Object.splitByQuarterLengths`, :meth:`~music21.base.Music21Object.unfreezeIds`, :meth:`~music21.base.Music21Object.unwrapWeakref`, :meth:`~music21.base.Music21Object.wrapWeakref`, :meth:`~music21.base.Music21Object.write`

        Methods inherited from :class:`~music21.base.JSONSerializer`: :meth:`~music21.base.JSONSerializer.jsonAttributes`, :meth:`~music21.base.JSONSerializer.jsonComponentFactory`, :meth:`~music21.base.JSONSerializer.jsonPrint`, :meth:`~music21.base.JSONSerializer.jsonRead`, :meth:`~music21.base.JSONSerializer.jsonWrite`


Trill
-----

Inherits from: :class:`~music21.expressions.Ornament`, :class:`~music21.expressions.Expression`, :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`

.. class:: Trill()


    **Trill** **attributes**

        .. attribute:: size

            A GenericInterval is an interval such as Third, Seventh, Octave, or Tenth. Constructor takes an integer or string specifying the interval and direction. The interval is not specified in half-steps, but in numeric values derived from interval names: a Third is 3; a Seventh is 7, etc. String values for interval names ('3rd' or 'third') are accepted. staffDistance: the number of lines or spaces apart, eg: E.g. C4 to C4 = 0;  C4 to D4 = 1;  C4 to B3 = -1 Two generic intervals are the equal if their size and direction are the same. 

            

        Attributes without Documentation: `nachschlag`, `placement`, `quarterLength`, `tieAttach`

        Attributes inherited from :class:`~music21.expressions.Ornament`: :attr:`~music21.expressions.Ornament.connectedToPrevious`

        Attributes inherited from :class:`~music21.base.Music21Object`: :attr:`~music21.base.Music21Object.classSortOrder`, :attr:`~music21.base.Music21Object.hideObjectOnPrint`, :attr:`~music21.base.Music21Object.id`, :attr:`~music21.base.Music21Object.groups`

    **Trill** **properties**

        .. attribute:: mx

            Returns a musicxml.TrillMark object 

            >>> a = Trill()
            >>> a.placement = 'above'
            >>> mxTrillMark = a.mx
            >>> mxTrillMark.get('placement')
            'above' 

        Properties inherited from :class:`~music21.base.Music21Object`: :attr:`~music21.base.Music21Object.activeSite`, :attr:`~music21.base.Music21Object.beat`, :attr:`~music21.base.Music21Object.beatDuration`, :attr:`~music21.base.Music21Object.beatStr`, :attr:`~music21.base.Music21Object.beatStrength`, :attr:`~music21.base.Music21Object.classes`, :attr:`~music21.base.Music21Object.derivationHierarchy`, :attr:`~music21.base.Music21Object.duration`, :attr:`~music21.base.Music21Object.measureNumber`, :attr:`~music21.base.Music21Object.offset`, :attr:`~music21.base.Music21Object.priority`

        Properties inherited from :class:`~music21.base.JSONSerializer`: :attr:`~music21.base.JSONSerializer.json`

    **Trill** **methods**

        .. method:: realize()

            neena will write this... with docs... and examples... 

        Methods inherited from :class:`~music21.base.Music21Object`: :meth:`~music21.base.Music21Object.searchParentByAttr`, :meth:`~music21.base.Music21Object.getContextAttr`, :meth:`~music21.base.Music21Object.setContextAttr`, :meth:`~music21.base.Music21Object.addContext`, :meth:`~music21.base.Music21Object.addLocation`, :meth:`~music21.base.Music21Object.addLocationAndActiveSite`, :meth:`~music21.base.Music21Object.freezeIds`, :meth:`~music21.base.Music21Object.getAllContextsByClass`, :meth:`~music21.base.Music21Object.getCommonSiteIds`, :meth:`~music21.base.Music21Object.getCommonSites`, :meth:`~music21.base.Music21Object.getContextByClass`, :meth:`~music21.base.Music21Object.getOffsetBySite`, :meth:`~music21.base.Music21Object.getSiteIds`, :meth:`~music21.base.Music21Object.getSites`, :meth:`~music21.base.Music21Object.getSpannerSites`, :meth:`~music21.base.Music21Object.hasContext`, :meth:`~music21.base.Music21Object.mergeAttributes`, :meth:`~music21.base.Music21Object.purgeLocations`, :meth:`~music21.base.Music21Object.removeLocationBySite`, :meth:`~music21.base.Music21Object.removeLocationBySiteId`, :meth:`~music21.base.Music21Object.setOffsetBySite`, :meth:`~music21.base.Music21Object.show`, :meth:`~music21.base.Music21Object.splitAtDurations`, :meth:`~music21.base.Music21Object.splitAtQuarterLength`, :meth:`~music21.base.Music21Object.splitByQuarterLengths`, :meth:`~music21.base.Music21Object.unfreezeIds`, :meth:`~music21.base.Music21Object.unwrapWeakref`, :meth:`~music21.base.Music21Object.wrapWeakref`, :meth:`~music21.base.Music21Object.write`

        Methods inherited from :class:`~music21.base.JSONSerializer`: :meth:`~music21.base.JSONSerializer.jsonAttributes`, :meth:`~music21.base.JSONSerializer.jsonComponentFactory`, :meth:`~music21.base.JSONSerializer.jsonPrint`, :meth:`~music21.base.JSONSerializer.jsonRead`, :meth:`~music21.base.JSONSerializer.jsonWrite`


Turn
----

Inherits from: :class:`~music21.expressions.Ornament`, :class:`~music21.expressions.Expression`, :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`

.. class:: Turn()



WholeStepInvertedMordent
------------------------

Inherits from: :class:`~music21.expressions.InvertedMordent`, :class:`~music21.expressions.GeneralMordent`, :class:`~music21.expressions.Ornament`, :class:`~music21.expressions.Expression`, :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`

.. class:: WholeStepInvertedMordent()



WholeStepMordent
----------------

Inherits from: :class:`~music21.expressions.Mordent`, :class:`~music21.expressions.GeneralMordent`, :class:`~music21.expressions.Ornament`, :class:`~music21.expressions.Expression`, :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`

.. class:: WholeStepMordent()



WholeStepTrill
--------------

Inherits from: :class:`~music21.expressions.Trill`, :class:`~music21.expressions.Ornament`, :class:`~music21.expressions.Expression`, :class:`~music21.base.Music21Object`, :class:`~music21.base.JSONSerializer`

.. class:: WholeStepTrill()



