<hairpin>

Indicates continuous dynamics expressed on the score as wedge-shaped graphics, e.g., < and >.
Module
Attributes
@angle.optimize, @class, @closed, @color, @copyof, @corresp, @dots.ges, @dur, @dur.ges, @dur.metrical, @dur.ppq, @dur.real, @dur.recip, @endho, @endid, @endto, @endvo, @evaluate, @facs, @follows, @form, @ho, @label, @layer, @lform, @lsegs, @lwidth, @meiversion, @n, @next, @niente, @opening, @opening.vertical, @part, @partstaff, @place, @plist, @precedes, @prev, @resp, @sameas, @staff, @startho, @startid, @startto, @startvo, @synch, @to, @tstamp, @tstamp.ges, @tstamp.real, @tstamp2, @tstamp2.ges, @tstamp2.real, @type, @val, @val2, @vgrp, @vo, @when, @x, @x2, @xml:base, @xml:id, @y, @y2
@angle.optimize(optional)Indicates that the slope of the hairpin can be adjusted to follow the content in order to optimize spacing.
@class(optional)Contains one or more URIs which denote classification terms that apply to the entity bearing this attribute.
@closed(optional)Applies to a "Rossini" hairpin, i.e., one where the normally open side is closed by a connecting line.
@color(optional)Used to indicate visual appearance. Do not confuse this with the musical term 'color' as used in pre-CMN notation.
@copyof(optional)Points to an element of which the current element is a copy.
@corresp(optional)Used to point to other elements that correspond to this one in a generic fashion.
@dots.ges(optional)Number of dots required for a gestural duration when different from that of the written duration.
@dur(optional)When a duration cannot be represented as a single power-of-two value, multiple space-separated values that add up to the total duration may be used.
@dur.ges(optional)Records performed duration information that differs from the written duration; @dur.ges allows the same datatypes as @dur. Values of @dur.ges that require dots should also use @dots.ges.
@dur.metrical(optional)Duration as a count of units provided in the time signature denominator.
@dur.ppq(optional)Duration recorded as pulses-per-quarter note, e.g., MIDI clicks or MusicXML divisions.
@dur.real(optional)Duration in seconds, e.g., 1.732.
@dur.recip(optional)Duration as an optionally dotted Humdrum **recip value.
@endho(optional)Records the horizontal adjustment of a feature’s programmatically-determined end point.
@endid(optional)Indicates the final element in a sequence of events to which the feature applies.
@endto(optional)Records a timestamp adjustment of a feature’s programmatically-determined end point.
@endvo(optional)Records a vertical adjustment of a feature’s programmatically-determined end point.
@evaluate(optional)Specifies the intended meaning when a participant in a relationship is itself a pointer. Allowed values are: "all" (If an element pointed to is itself a pointer, then the target of that pointer will be taken, and so on, until an element is found which is not a pointer.), "one" (If an element pointed to is itself a pointer, then its target (whether a pointer or not) is taken as the target of this pointer.), "none" (No further evaluation of targets is carried out beyond that needed to find the element(s) specified in plist or target attribute.)
@facs(optional)Points to one or more images, portions of an image, or surfaces which correspond to the current element.
@follows(optional)points to one or more events in a user-defined collection that are known to be predecessors of the current element.
@form(required)Captures the visual rendition and function of the hairpin; that is, whether it indicates an increase or a decrease in volume. Allowed values are: "cres" (Crescendo; , louder.), "dim" (Diminuendo; , softer.)
@ho(optional)Records a horizontal adjustment to a feature’s programmatically-determined location in terms of staff interline distance; that is, in units of 1/2 the distance between adjacent staff lines.
@label(optional)Captures text to be used to generate a label for the element to which it’s attached, a "tool tip" or prefatory text, for example. Should not be used to record document content.
@layer(optional)Identifies the layer to which a feature applies.
@lform(optional)Describes the style of a line.
@lsegs(optional)Describes the number of segments into which a dashed or dotted line may be divided, or the number of "peaks" of a wavy line; a pair of space-separated values (minimum and maximum, respectively) provides a range between which a rendering system-supplied value may fall, while a single value indicates a fixed amount of space; that is, the minimum and maximum values are equal.
@lwidth(optional)Width of a line.
@meiversion(recommended)Specifies a generic MEI version label. Allowed values are: "6.0-dev" (Version of MEI), "6.0-dev+anyStart" (Version of MEI All AnyStart customization)
@n(optional)Provides a number-like designation that indicates an element’s position in a sequence of similar elements. May not contain space characters.
@next(optional)Used to point to the next event(s) in a user-defined collection.
@niente(optional)Indicates that the hairpin starts from or ends in silence. Often rendered as a small circle attached to the closed end of the hairpin. See Gould, p. 108.
@opening(optional)Specifies the distance between the lines at the open end of a hairpin dynamic mark.
@opening.vertical(optional)Indicates that the opening points are aligned with an imaginary line that is always 90° perpendicular to the horizontal plane, regardless of any angle or start/end adjustments, including when the hairpin is angled with @angle.optimize or through @endvo/@startvo adjustments.
@part(optional)Indicates the part in which the current feature should appear. Use 'all' when the feature should occur in every part or 'none' when the feature should not appear in any part.
@partstaff(optional)Signifies the part staff on which a notated feature occurs. Use 'all' when the feature should occur on every staff.
@place(optional)Captures the placement of the item with respect to the staff with which it is associated.
@plist(optional)When the target attribute is present, plist identifies the active participants; that is, those entities pointed "from", in a relationship with the specified target(s). When the target attribute is not present, it identifies participants in a mutual relationship.
@precedes(optional)Points to one or more events in a user-defined collection that are known to be successors of the current element.
@prev(optional)Points to the previous event(s) in a user-defined collection.
@resp(optional)Indicates the agent(s) responsible for some aspect of the text’s transcription, editing, or encoding. Its value must point to one or more identifiers declared in the document header.
@sameas(optional)Points to an element that is the same as the current element but is not a literal copy of the current element.
@staff(optional)Signifies the staff on which a notated event occurs or to which a control event applies. Mandatory when applicable.
@startho(optional)Records the horizontal adjustment of a feature’s programmatically-determined start point.
@startid(optional)Holds a reference to the first element in a sequence of events to which the feature applies.
@startto(optional)Records a timestamp adjustment of a feature’s programmatically-determined start point.
@startvo(optional)Records a vertical adjustment of a feature’s programmatically-determined start point.
@synch(optional)Points to elements that are synchronous with the current element.
@to(optional)Records a timestamp adjustment of a feature’s programmatically-determined location in terms of musical time; that is, beats.
@tstamp(optional)Encodes the onset time in terms of musical time, i.e., beats[.fractional beat part], as expressed in the written time signature.
@tstamp.ges(optional)Encodes the onset time in terms of musical time, i.e., beats[.fractional beat part], as expressed in the written time signature.
@tstamp.real(optional)Records the onset time in terms of ISO time.
@tstamp2(optional)Encodes the ending point of an event, i.e., a count of measures plus a beat location in the ending measure.
@tstamp2.ges(optional)Encodes the ending point of an event, i.e., a count of measures plus a beat location in the ending measure.
@tstamp2.real(optional)Records the ending point of an event in terms of ISO time.
@type(optional)Designation which characterizes the element in some sense, using any convenient classification scheme or typology that employs single-token labels.
@val(optional)MIDI number.
@val2(optional)MIDI number.
@vgrp(optional)Provides a label for members of a vertically aligned group.
@vo(optional)Records the vertical adjustment of a feature’s programmatically-determined location in terms of staff interline distance; that is, in units of 1/2 the distance between adjacent staff lines.
@when(optional)Indicates the point of occurrence of this feature along a time line. Its value must be the ID of a <when> element elsewhere in the document.
@x(optional)Encodes an x coordinate for a feature in an output coordinate system. When it is necessary to record the placement of a feature in a facsimile image, use the facs attribute.
@x2(optional)Encodes the optional 2nd x coordinate.
@xml:base(optional)Provides a base URI reference with which applications can resolve relative URI references into absolute URI references.
@xml:id(optional)Regularizes the naming of an element and thus facilitates building links between it and other resources. Each id attribute within a document must have a unique value.
@y(optional)Encodes a y coordinate for a feature in an output coordinate system. When it is necessary to record the placement of a feature in a facsimile image, use the facs attribute.
@y2(optional)Encodes the optional 2nd y coordinate.
(MEI.shared) Attributes common to many elements.
(MEI.shared) Attributes that form the basis of the att.common class.
@xml:base(optional)Provides a base URI reference with which applications can resolve relative URI references into absolute URI references.
(MEI.shared) Attributes that uniquely identify an element.
@xml:id(optional)Regularizes the naming of an element and thus facilitates building links between it and other resources. Each id attribute within a document must have a unique value.
(MEI.shared) Attributes that record the version of MEI in use.
@meiversion(recommended)Specifies a generic MEI version label. Allowed values are: "6.0-dev" (Version of MEI), "6.0-dev+anyStart" (Version of MEI All AnyStart customization)
(MEI.shared)
@label(optional)Captures text to be used to generate a label for the element to which it’s attached, a "tool tip" or prefatory text, for example. Should not be used to record document content.
(MEI.shared) Attributes that specify element-to-element relationships.
@copyof(optional)Points to an element of which the current element is a copy.
@corresp(optional)Used to point to other elements that correspond to this one in a generic fashion.
@follows(optional)points to one or more events in a user-defined collection that are known to be predecessors of the current element.
@next(optional)Used to point to the next event(s) in a user-defined collection.
@precedes(optional)Points to one or more events in a user-defined collection that are known to be successors of the current element.
@prev(optional)Points to the previous event(s) in a user-defined collection.
@sameas(optional)Points to an element that is the same as the current element but is not a literal copy of the current element.
@synch(optional)Points to elements that are synchronous with the current element.
(MEI.shared) Attributes used to supply a number-like designation for an element.
@n(optional)Provides a number-like designation that indicates an element’s position in a sequence of similar elements. May not contain space characters.
(MEI.shared) Attributes capturing information regarding responsibility for some aspect of the text's creation, transcription, editing, or encoding.
@resp(optional)Indicates the agent(s) responsible for some aspect of the text’s transcription, editing, or encoding. Its value must point to one or more identifiers declared in the document header.
(MEI.shared) Attributes which can be used to classify features.
@type(optional)Designation which characterizes the element in some sense, using any convenient classification scheme or typology that employs single-token labels.
(MEI.shared) Attributes which can be used to classify features.
@class(optional)Contains one or more URIs which denote classification terms that apply to the entity bearing this attribute.
(MEI.facsimile) Attributes that associate a feature corresponding with all or part of an image.
@facs(optional)Points to one or more images, portions of an image, or surfaces which correspond to the current element.
(MEI.cmn) Logical domain attributes.
@form(required)Captures the visual rendition and function of the hairpin; that is, whether it indicates an increase or a decrease in volume. Allowed values are: "cres" (Crescendo; , louder.), "dim" (Diminuendo; , softer.)
@niente(optional)Indicates that the hairpin starts from or ends in silence. Often rendered as a small circle attached to the closed end of the hairpin. See Gould, p. 108.
(MEI.shared) Attributes shared by events which rely on other events for their existence. For example, a slur/phrase marking must be drawn between or over a group of notes. The slur is therefore a control event.
(MEI.performance) Temporal alignment attributes.
@when(optional)Indicates the point of occurrence of this feature along a time line. Its value must be the ID of a <when> element elsewhere in the document.
(MEI.shared) Attributes that identify the layer to which a feature applies.
@layer(optional)Identifies the layer to which a feature applies.
(MEI.shared) Attributes for identifying the part in which the current feature appears.
@part(optional)Indicates the part in which the current feature should appear. Use 'all' when the feature should occur in every part or 'none' when the feature should not appear in any part.
@partstaff(optional)Signifies the part staff on which a notated feature occurs. Use 'all' when the feature should occur on every staff.
(MEI.shared) Attributes listing the active participants in a user-defined collection.
@plist(optional)When the target attribute is present, plist identifies the active participants; that is, those entities pointed "from", in a relationship with the specified target(s). When the target attribute is not present, it identifies participants in a mutual relationship.
(MEI.shared) Attributes for identifying the staff or staff group associated with the current feature.
@staff(optional)Signifies the staff on which a notated event occurs or to which a control event applies. Mandatory when applicable.
(MEI.shared) Attributes that deal with resolution of values in plist or target attributes.
@evaluate(optional)Specifies the intended meaning when a participant in a relationship is itself a pointer. Allowed values are: "all" (If an element pointed to is itself a pointer, then the target of that pointer will be taken, and so on, until an element is found which is not a pointer.), "one" (If an element pointed to is itself a pointer, then its target (whether a pointer or not) is taken as the target of this pointer.), "none" (No further evaluation of targets is carried out beyond that needed to find the element(s) specified in plist or target attribute.)
(MEI.shared) Attributes that record a time stamp in terms of musical time, , beats[.fractional beat part].
@tstamp(optional)Encodes the onset time in terms of musical time, i.e., beats[.fractional beat part], as expressed in the written time signature.
(MEI.gestural) Attributes that record a performed (as opposed to notated) time stamp.
@tstamp.ges(optional)Encodes the onset time in terms of musical time, i.e., beats[.fractional beat part], as expressed in the written time signature.
@tstamp.real(optional)Records the onset time in terms of ISO time.
(MEI.shared) Attributes that permit total duration to be represented by multiple values.
@dur(optional)When a duration cannot be represented as a single power-of-two value, multiple space-separated values that add up to the total duration may be used.
(MEI.shared) Attributes recording the identifiers of the first and last elements of a sequence of elements to which the current element is associated.
@endid(optional)Indicates the final element in a sequence of events to which the feature applies.
(MEI.shared) Attributes that identify a relative starting point.
@startid(optional)Holds a reference to the first element in a sequence of events to which the feature applies.
(MEI.shared) Attributes that record a time stamp for the end of an event in terms of musical time.
@tstamp2(optional)Encodes the ending point of an event, i.e., a count of measures plus a beat location in the ending measure.
(MEI.visual) Visual domain attributes. The startho and startvo attributes record the horizontal and vertical offsets of the left end, endho and endvo record the horizontal and vertical offsets of the right end, and the opening attribute records the width of the opening in staff inter-line units. The x and y attributes give the absolute coordinates of the left end point, and x2 and y2 the right end point, of an imaginary line that defines the length of the hairpin and horizontally bifurcates it. The so-called "pitch" of hairpin may be controlled by use of the startho, endho, startvo, and endvo attributes, while the placement of the entire rendered mark may be controlled by use of the ho and vo attributes.
@opening(optional)Specifies the distance between the lines at the open end of a hairpin dynamic mark.
@closed(optional)Applies to a "Rossini" hairpin, i.e., one where the normally open side is closed by a connecting line.
@opening.vertical(optional)Indicates that the opening points are aligned with an imaginary line that is always 90° perpendicular to the horizontal plane, regardless of any angle or start/end adjustments, including when the hairpin is angled with @angle.optimize or through @endvo/@startvo adjustments.
@angle.optimize(optional)Indicates that the slope of the hairpin can be adjusted to follow the content in order to optimize spacing.
(MEI.shared) Visual color attributes.
@color(optional)Used to indicate visual appearance. Do not confuse this with the musical term 'color' as used in pre-CMN notation.
(MEI.shared) Attributes that record the basic visual rendition of lines.
@lform(optional)Describes the style of a line.
@lwidth(optional)Width of a line.
@lsegs(optional)Describes the number of segments into which a dashed or dotted line may be divided, or the number of "peaks" of a wavy line; a pair of space-separated values (minimum and maximum, respectively) provides a range between which a rendering system-supplied value may fall, while a single value indicates a fixed amount of space; that is, the minimum and maximum values are equal.
(MEI.shared) Attributes capturing placement information with respect to the staff.
@place(optional)Captures the placement of the item with respect to the staff with which it is associated.
(MEI.shared) Attributes that record grouping of vertically aligned elements.
@vgrp(optional)Provides a label for members of a vertically aligned group.
(MEI.shared) Visual offset attributes. Some items may have their location recorded in terms of offsets from their programmatically-determined location. The ho attribute records the horizontal offset while vo records the vertical. The to attribute holds a timestamp offset, the most common use of which is as an alternative to the ho attribute.
(MEI.shared) Horizontal offset attributes.
@ho(optional)Records a horizontal adjustment to a feature’s programmatically-determined location in terms of staff interline distance; that is, in units of 1/2 the distance between adjacent staff lines.
(MEI.shared) Horizontal offset attributes specified in terms of time.
@to(optional)Records a timestamp adjustment of a feature’s programmatically-determined location in terms of musical time; that is, beats.
(MEI.shared) Vertical offset attributes.
@vo(optional)Records the vertical adjustment of a feature’s programmatically-determined location in terms of staff interline distance; that is, in units of 1/2 the distance between adjacent staff lines.
(MEI.shared) Visual offset attributes. Some items may have their location recorded in terms of pairs of offsets from their programmatically-determined location. The startho and endho attributes record the horizontal offsets of the start and end points of the item, respectively. Similarly, the startvo and endvo attributes record the vertical offsets of the start and end points of the item. The startto and endto attributes hold timestamp offsets, the most common use of which is as alternatives to the ho attributes.
(MEI.shared) Horizontal offset requiring a pair of attributes.
@startho(optional)Records the horizontal adjustment of a feature’s programmatically-determined start point.
@endho(optional)Records the horizontal adjustment of a feature’s programmatically-determined end point.
(MEI.shared) Horizontal offset attributes requiring a pair of attributes specified in terms of time.
@startto(optional)Records a timestamp adjustment of a feature’s programmatically-determined start point.
@endto(optional)Records a timestamp adjustment of a feature’s programmatically-determined end point.
(MEI.shared) Vertical offset attributes requiring a pair of attributes.
@startvo(optional)Records a vertical adjustment of a feature’s programmatically-determined start point.
@endvo(optional)Records a vertical adjustment of a feature’s programmatically-determined end point.
(MEI.shared) Output coordinate attributes. Some elements may have their exact rendered *output* coordinates recorded. x and y attributes indicate where to place the rendered output. Recording the coordinates of a feature in a facsimile requires the use of the facs attribute.
@x(optional)Encodes an x coordinate for a feature in an output coordinate system. When it is necessary to record the placement of a feature in a facsimile image, use the facs attribute.
@y(optional)Encodes a y coordinate for a feature in an output coordinate system. When it is necessary to record the placement of a feature in a facsimile image, use the facs attribute.
(MEI.shared) Output coordinate attributes. Some elements may need 2 coordinate pairs to record their rendered *output* coordinates. The attributes indicate where to place the rendered output. Recording the coordinates of a feature in a facsimile requires the use of the facs attribute.
@x2(optional)Encodes the optional 2nd x coordinate.
@y2(optional)Encodes the optional 2nd y coordinate.
(MEI.gestural) Gestural domain attributes.
(MEI.gestural) Attributes that record performed duration that differs from a feature’s written duration.
@dur.ges(optional)Records performed duration information that differs from the written duration; @dur.ges allows the same datatypes as @dur. Values of @dur.ges that require dots should also use @dots.ges.
@dots.ges(optional)Number of dots required for a gestural duration when different from that of the written duration.
@dur.metrical(optional)Duration as a count of units provided in the time signature denominator.
@dur.ppq(optional)Duration recorded as pulses-per-quarter note, e.g., MIDI clicks or MusicXML divisions.
@dur.real(optional)Duration in seconds, e.g., 1.732.
@dur.recip(optional)Duration as an optionally dotted Humdrum **recip value.
(MEI.midi) Attributes that record MIDI values.
@val(optional)MIDI number.
(MEI.midi) Attributes that record terminal MIDI values.
@val2(optional)MIDI number.
(MEI.gestural) Attributes that record a performed (as opposed to notated) time stamp for the end of an event.
@tstamp2.ges(optional)Encodes the ending point of an event, i.e., a count of measures plus a beat location in the ending measure.
@tstamp2.real(optional)Records the ending point of an event in terms of ISO time.
(MEI.analytical) Analytical domain attributes.
@form(required)Captures the visual rendition and function of the hairpin; that is, whether it indicates an increase or a decrease in volume. Allowed values are: "cres" (Crescendo; , louder.), "dim" (Diminuendo; , softer.)
@niente(optional)Indicates that the hairpin starts from or ends in silence. Often rendered as a small circle attached to the closed end of the hairpin. See Gould, p. 108.
@facs(optional)Points to one or more images, portions of an image, or surfaces which correspond to the current element.
@dots.ges(optional)Number of dots required for a gestural duration when different from that of the written duration.
@dur.ges(optional)Records performed duration information that differs from the written duration; @dur.ges allows the same datatypes as @dur. Values of @dur.ges that require dots should also use @dots.ges.
@dur.metrical(optional)Duration as a count of units provided in the time signature denominator.
@dur.ppq(optional)Duration recorded as pulses-per-quarter note, e.g., MIDI clicks or MusicXML divisions.
@dur.real(optional)Duration in seconds, e.g., 1.732.
@dur.recip(optional)Duration as an optionally dotted Humdrum **recip value.
@tstamp.ges(optional)Encodes the onset time in terms of musical time, i.e., beats[.fractional beat part], as expressed in the written time signature.
@tstamp.real(optional)Records the onset time in terms of ISO time.
@tstamp2.ges(optional)Encodes the ending point of an event, i.e., a count of measures plus a beat location in the ending measure.
@tstamp2.real(optional)Records the ending point of an event in terms of ISO time.
@val(optional)MIDI number.
@val2(optional)MIDI number.
@when(optional)Indicates the point of occurrence of this feature along a time line. Its value must be the ID of a <when> element elsewhere in the document.
@class(optional)Contains one or more URIs which denote classification terms that apply to the entity bearing this attribute.
@color(optional)Used to indicate visual appearance. Do not confuse this with the musical term 'color' as used in pre-CMN notation.
@copyof(optional)Points to an element of which the current element is a copy.
@corresp(optional)Used to point to other elements that correspond to this one in a generic fashion.
@dur(optional)When a duration cannot be represented as a single power-of-two value, multiple space-separated values that add up to the total duration may be used.
@endho(optional)Records the horizontal adjustment of a feature’s programmatically-determined end point.
@endid(optional)Indicates the final element in a sequence of events to which the feature applies.
@endto(optional)Records a timestamp adjustment of a feature’s programmatically-determined end point.
@endvo(optional)Records a vertical adjustment of a feature’s programmatically-determined end point.
@evaluate(optional)Specifies the intended meaning when a participant in a relationship is itself a pointer. Allowed values are: "all" (If an element pointed to is itself a pointer, then the target of that pointer will be taken, and so on, until an element is found which is not a pointer.), "one" (If an element pointed to is itself a pointer, then its target (whether a pointer or not) is taken as the target of this pointer.), "none" (No further evaluation of targets is carried out beyond that needed to find the element(s) specified in plist or target attribute.)
@follows(optional)points to one or more events in a user-defined collection that are known to be predecessors of the current element.
@ho(optional)Records a horizontal adjustment to a feature’s programmatically-determined location in terms of staff interline distance; that is, in units of 1/2 the distance between adjacent staff lines.
@label(optional)Captures text to be used to generate a label for the element to which it’s attached, a "tool tip" or prefatory text, for example. Should not be used to record document content.
@layer(optional)Identifies the layer to which a feature applies.
@lform(optional)Describes the style of a line.
@lsegs(optional)Describes the number of segments into which a dashed or dotted line may be divided, or the number of "peaks" of a wavy line; a pair of space-separated values (minimum and maximum, respectively) provides a range between which a rendering system-supplied value may fall, while a single value indicates a fixed amount of space; that is, the minimum and maximum values are equal.
@lwidth(optional)Width of a line.
@meiversion(recommended)Specifies a generic MEI version label. Allowed values are: "6.0-dev" (Version of MEI), "6.0-dev+anyStart" (Version of MEI All AnyStart customization)
@n(optional)Provides a number-like designation that indicates an element’s position in a sequence of similar elements. May not contain space characters.
@next(optional)Used to point to the next event(s) in a user-defined collection.
@part(optional)Indicates the part in which the current feature should appear. Use 'all' when the feature should occur in every part or 'none' when the feature should not appear in any part.
@partstaff(optional)Signifies the part staff on which a notated feature occurs. Use 'all' when the feature should occur on every staff.
@place(optional)Captures the placement of the item with respect to the staff with which it is associated.
@plist(optional)When the target attribute is present, plist identifies the active participants; that is, those entities pointed "from", in a relationship with the specified target(s). When the target attribute is not present, it identifies participants in a mutual relationship.
@precedes(optional)Points to one or more events in a user-defined collection that are known to be successors of the current element.
@prev(optional)Points to the previous event(s) in a user-defined collection.
@resp(optional)Indicates the agent(s) responsible for some aspect of the text’s transcription, editing, or encoding. Its value must point to one or more identifiers declared in the document header.
@sameas(optional)Points to an element that is the same as the current element but is not a literal copy of the current element.
@staff(optional)Signifies the staff on which a notated event occurs or to which a control event applies. Mandatory when applicable.
@startho(optional)Records the horizontal adjustment of a feature’s programmatically-determined start point.
@startid(optional)Holds a reference to the first element in a sequence of events to which the feature applies.
@startto(optional)Records a timestamp adjustment of a feature’s programmatically-determined start point.
@startvo(optional)Records a vertical adjustment of a feature’s programmatically-determined start point.
@synch(optional)Points to elements that are synchronous with the current element.
@to(optional)Records a timestamp adjustment of a feature’s programmatically-determined location in terms of musical time; that is, beats.
@tstamp(optional)Encodes the onset time in terms of musical time, i.e., beats[.fractional beat part], as expressed in the written time signature.
@tstamp2(optional)Encodes the ending point of an event, i.e., a count of measures plus a beat location in the ending measure.
@type(optional)Designation which characterizes the element in some sense, using any convenient classification scheme or typology that employs single-token labels.
@vgrp(optional)Provides a label for members of a vertically aligned group.
@vo(optional)Records the vertical adjustment of a feature’s programmatically-determined location in terms of staff interline distance; that is, in units of 1/2 the distance between adjacent staff lines.
@x(optional)Encodes an x coordinate for a feature in an output coordinate system. When it is necessary to record the placement of a feature in a facsimile image, use the facs attribute.
@x2(optional)Encodes the optional 2nd x coordinate.
@xml:base(optional)Provides a base URI reference with which applications can resolve relative URI references into absolute URI references.
@xml:id(optional)Regularizes the naming of an element and thus facilitates building links between it and other resources. Each id attribute within a document must have a unique value.
@y(optional)Encodes a y coordinate for a feature in an output coordinate system. When it is necessary to record the placement of a feature in a facsimile image, use the facs attribute.
@y2(optional)Encodes the optional 2nd y coordinate.
@angle.optimize(optional)Indicates that the slope of the hairpin can be adjusted to follow the content in order to optimize spacing.
@closed(optional)Applies to a "Rossini" hairpin, i.e., one where the normally open side is closed by a connecting line.
@opening(optional)Specifies the distance between the lines at the open end of a hairpin dynamic mark.
@opening.vertical(optional)Indicates that the opening points are aligned with an imaginary line that is always 90° perpendicular to the horizontal plane, regardless of any angle or start/end adjustments, including when the hairpin is angled with @angle.optimize or through @endvo/@startvo adjustments.
Member of
model.controlEventLike.cmnGroups control events that appear in CMN.
Contained By
(MEI.cmn) Groups control events that appear in CMN.
(MEI.cmn) Groups elements that may appear within a CMN measure.
<measure>Unit of musical time consisting of a fixed number of note values of a given type, as determined by the prevailing meter, and delimited in musical notation by bar lines.
(MEI.critapp) Groups elements that may appear as part of a musical variant.
(MEI.critapp) Groups elements that may appear as part of a textual or musical variant.
<lem>Contains the lemma, or base text, of a textual variation.
<rdg>Contains a single reading within a textual variation.
(MEI.edittrans) Groups elements that may appear as part of editorial and transcription elements in music notation.
(MEI.edittrans) Groups elements that may appear as part of editorial and transcription elements.
<abbr>A generic element for 1) a shortened form of a word, including an acronym or 2) a shorthand notation.
<add>Marks an addition to the text.
<corr>Contains the correct form of an apparent erroneous passage.
<damage>Contains an area of damage to the physical medium.
<del>Contains information deleted, marked as deleted, or otherwise indicated as superfluous or spurious in the copy text by an author, scribe, annotator, or corrector.
<expan>Contains the expansion of an abbreviation.
<orig>Contains material which is marked as following the original, rather than being normalized or corrected.
<reg>Contains material which has been regularized or normalized in some sense.
<restore>Indicates restoration of material to an earlier state by cancellation of an editorial or authorial marking or instruction.
<sic>Contains apparently incorrect or inaccurate material.
<supplied>Contains material supplied by the transcriber or editor for any reason.
<unclear>Contains material that cannot be transcribed with certainty because it is illegible or inaudible in the source.
<measure>Unit of musical time consisting of a fixed number of note values of a given type, as determined by the prevailing meter, and delimited in musical notation by bar lines.
<lem>Contains the lemma, or base text, of a textual variation.
<rdg>Contains a single reading within a textual variation.
<abbr>A generic element for 1) a shortened form of a word, including an acronym or 2) a shorthand notation.
<add>Marks an addition to the text.
<corr>Contains the correct form of an apparent erroneous passage.
<damage>Contains an area of damage to the physical medium.
<del>Contains information deleted, marked as deleted, or otherwise indicated as superfluous or spurious in the copy text by an author, scribe, annotator, or corrector.
<expan>Contains the expansion of an abbreviation.
<orig>Contains material which is marked as following the original, rather than being normalized or corrected.
<reg>Contains material which has been regularized or normalized in some sense.
<restore>Indicates restoration of material to an earlier state by cancellation of an editorial or authorial marking or instruction.
<sic>Contains apparently incorrect or inaccurate material.
<supplied>Contains material supplied by the transcriber or editor for any reason.
<unclear>Contains material that cannot be transcribed with certainty because it is illegible or inaudible in the source.
May Contain
– (<hairpin> may not have child elements)
Remarks

The <hairpin> element is used for graphical, i.e., crescendo and diminuendo, dynamic markings. For instantaneous or continuous textual dynamics, such as 'p', 'mf', or 'cres. poco a poco', the <dynam> element should be used. The starting point of the hairpin marking may be indicated by either a @startid, @tstamp, @tstamp.ges, or @tstamp.real attribute, while the ending point may be recorded by either a @dur, @dur.ges, @endid, or @tstamp2 attribute. It is a semantic error not to specify one starting and one ending type of attribute. MIDI values associated with the graphical dynamic sign may be recorded in the @val and @val2 attributes.

Constraints

Must have one of the attributes: startid, tstamp, tstamp.ges or tstamp.real.
Must have one of the attributes: dur, dur.ges, endid, or tstamp2.

Declaration
<elementSpec xmlns="http://www.tei-c.org/ns/1.0" rend="add" ident="hairpin" module="MEI.cmn">
<desc xml:lang="en">Indicates continuous dynamics expressed on the score as wedge-shaped graphics,
<abbr>e.g.</abbr>
, < and >.</desc>
<classes>
<memberOf key="att.common"/>
<memberOf key="att.facsimile"/>
<memberOf key="att.hairpin.log"/>
<memberOf key="att.hairpin.vis"/>
<memberOf key="att.hairpin.ges"/>
<memberOf key="att.hairpin.anl"/>
<memberOf key="model.controlEventLike.cmn"/>
</classes>
<content>
<empty/>
</content>
<constraintSpec ident="hairpin_start-_and_end-type_attributes_required" scheme="schematron">
<constraint>
<sch:rule context="mei:hairpin">
<sch:assert test="@startid or @tstamp or @tstamp.ges or @tstamp.real">Must have one of the attributes: startid, tstamp, tstamp.ges or tstamp.real.</sch:assert>
<sch:assert test="@dur or @dur.ges or @endid or @tstamp2">Must have one of the attributes: dur, dur.ges, endid, or tstamp2.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
<remarks xml:lang="en">
<p>The <gi scheme="MEI">hairpin</gi> element is used for <emph>graphical</emph>,
<abbr>i.e.</abbr>
, crescendo and diminuendo, dynamic markings. For instantaneous or continuous <emph>textual</emph> dynamics, such as 'p', 'mf', or 'cres. poco a poco', the <gi scheme="MEI">dynam</gi> element should be used. The starting point of the hairpin marking may be indicated by either a <att>startid</att>, <att>tstamp</att>, <att>tstamp.ges</att>, or <att>tstamp.real</att> attribute, while the ending point may be recorded by either a <att>dur</att>, <att>dur.ges</att>, <att>endid</att>, or <att>tstamp2</att> attribute. It is a semantic error not to specify one starting and one ending type of attribute. MIDI values associated with the graphical dynamic sign may be recorded in the <att>val</att> and <att>val2</att> attributes.</p>
</remarks>
</elementSpec>