Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Utterance (a.k.a. prosodic sentence) as unit or stack #214

Open
johnwdubois opened this issue Apr 21, 2019 · 0 comments
Open

Utterance (a.k.a. prosodic sentence) as unit or stack #214

johnwdubois opened this issue Apr 21, 2019 · 0 comments
Labels
enhancement New feature or request
Projects
Milestone

Comments

@johnwdubois
Copy link
Owner

johnwdubois commented Apr 21, 2019

Is your feature request related to a problem?
It will be useful to display information about Utterances (formerly called Prosodic Sentence
or pSent) in Rezonator. There are two ways to visualize this on the Main screen:

  • We can offer the option to display each Utterance (Utterance) as if it was an (extra-long) Line (instead of automatically equating the Line with a Unit).
  • Alternatively, we can visualize Utterances by re-using the existing code for Stacks, assigning a unique chainID to each Utterance, and displaying the units in each Utterance with a distinctive color (similar to Stack color).

NOTES

  1. It may not be the job of Rezonator to segment the corpus data into Utterances (or Prosodic Sentences). But see the Utterance Stacker algorithm Utterance stacker: Quick improvements #1431 Utterance stacker algorithm #1446

  2. Most corpora will not have information about Utterances, but they may have Sentences (a comparable category).

  3. A recent version of the SBCorpus may already have this information encoded in it, when imported.

  4. For a general discussion, see the Rezonator wiki on Prosodic Sentence.

Definition: "Utterance/Prosodic Sentence"
An Utterance (or Prosodic Sentence) is a sequence of one or more intonation units, uttered by a single speaker, which ends with a period or question mark. (That is, the final intonation unit of the sequence ends in a period (EndNote = Final) or a question mark (EndNote = Appeal).) There are exceptions: for example, if other speakers intervene for more than 1.5 seconds, the pSent is ended, even if there is no period or question mark. Note that a pSent is not necessarily continuous in the discourse sequence, since it does allow for brief interruptions (backchannels or short turns) by other speakers.

Describe the solution you'd like

  1. One way to visualize an Utterance (Prosodic Sentence) (pSent) is to draw all the words of a pSent (all words that share the same pSentID) on one line (on the same display row of the Main screen).
  2. Information about Utterances (Prosodic Sentences) is contained in both the Word grid (as imported from its corresponding CSV file) and the Unit grid (from its corresponding CSV file). For each Prosodic Sentence, there is already a unique corpus ID in the column/field labeled pSentID. (See also pSentBIL.)

An alternative solution: Auto-Stacks

  1. Another way to represent Utterances / Prosodic Sentences (pSents), which may or may not be easier, is to automatically create a series of pSent Stacks, and assign to each of them a list of Units (similar to the list of Units in a Stack).
  2. For each distinct pSentID, create a Stack, and assign it its own unique Rezonator ChainID (same as with any Stack).
  3. For each Unit (e.g. intonation unit), look up its pSentID in the Unit or Word grid, and assign it to the appropriate pSentStack.
  4. The pSents should be numbered (by Rezonator) in sequence, following the standard discourse order (not by the order of pSentID's).
  5. Assign each pSent Stack a unique display name, consisting of:
  • pSent (not Stack), plus
  • an integer (1,2,3...), plus
  • the pSentID, enclosed in square brackets ([1], [2], ...)
  • The result: pSent 1 [101], pSent 2 [102], pSent 3 [103]...).
  1. Assign the Tier as pSent. In general, the pSentTier behaves just like a StackTier.
  2. The pSentTier can be displayed in the Nav window in the same tab location as the Tab tier. (In the long run, we will want to have an additional tab to display the pSentTier.) It should inherit all the functionality of a standard Stack (scrolling, highlighting, filtering, etc.)
  3. In general, the simplest way to implement the pSent Stack is to incorporate a few general fields (columns) into the Stack grid:
  • Tier (= pSent)
  • TierType (from a drop-down list?)
  • Label (a automatically assigned string, as above)
  1. The pSent Stacks must co-exist with regular Stacks. This can be done in one of two ways:
  • Users can choose whether to display Stacks or pSents (but not both - this is the easiest to implement)
  • Users can choose to display both Stacks AND pSents. In this case the colors should be displayed in different regions of the screen (to be decided). For now, this option will not be available.

Auto-Stacks 2: Turns
Once the AutoStack functionality is created, it can be applied to additional cases; for example, Turn.

  1. Information about Turn is contained in both the Word grid (from its corresponding CSV file) and the Unit grid (from its corresponding CSV file). For each Turn, there is already a unique corpus ID in the column/field labeled turnID. (See also turnBIL and turnPlace.)
  2. For each distinct turnID, create a Stack, and assign it its own unique Rezonator chainID (same as with any Stack).
  3. For each Unit (e.g. intonation unit), look up its TurnID in the Unit or Word grid, and assign it to the appropriate TurnStack.
  4. Follow the rest of the guidelines described for pSent above, changing what must be changed.

Additional context

  1. Note that at this time, the pSent Stacks will be assigned automatically, following the imported corpus data.
  2. We do not expect that users will normally need to modify the pSent Stacks. For now, the ability to edit pSent stacks is not a high priority.
  3. Still, there could be special circumstances requiring pSents to be edited, so in the long run this will be a useful feature.
  4. In the future, we may also allow users to use Rezonator to create pSentStacks automatically, following the definition given above.
@johnwdubois johnwdubois added the enhancement New feature or request label Apr 21, 2019
@johnwdubois johnwdubois added this to To do in Core via automation Apr 21, 2019
@johnwdubois johnwdubois changed the title Auto-Stack 1: Prosodic sentence (pSent) Auto-Stacks: Prosodic sentence (pSent) Apr 21, 2019
@johnwdubois johnwdubois changed the title Auto-Stacks: Prosodic sentence (pSent) Prosodic sentence (pSent) Jul 20, 2019
@johnwdubois johnwdubois added this to the 1.0.0 release milestone Sep 9, 2020
@johnwdubois johnwdubois modified the milestones: 1.0 release, 1.1 release Jul 27, 2021
@johnwdubois johnwdubois changed the title Prosodic sentence (pSent) Prosodic sentence (pSent) as unit or stack Jan 15, 2022
@johnwdubois johnwdubois changed the title Prosodic sentence (pSent) as unit or stack Utterance (a.k.a. prosodic sentence) as unit or stack Apr 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: To do
Core
  
To do
Development

No branches or pull requests

2 participants