Sentence Structure Lab

Sentence Structure Lab

Annotate a sentence manually and see how your phrase and clause ranges nest.

Browser tab only. Manual labels are not verified grammar. Up to 2,000 source characters, 80 tokens, 100 ranges and 128 KiB JSON.

6 tokens · 4 ranges · 0 untagged · 0 outside phrases

Source sentence

Whitespace separates tokens; the exact source, including repeated spaces, remains in JSON. Replacing it resets annotations.

Current exact source: The curious child reads a book.

Word-class tags

Select labels manually. Offsets count UTF-16 code units in the exact source.

No.TokenSource offsetWord-class tags
1The0–3
2curious4–11
3child12–17
4reads18–23
5a24–25
6book.26–31

Phrase and clause ranges

Choose inclusive first and last tokens. A nested range is allowed; crossing or identical ranges are not. Role and label describe your interpretation.

IDStructure kindRoleYour labelIncluded tokensContaining range
s1ClauseOtherMain clause1–6: The curious child reads a book.—
s2PhraseSubjectSubject noun phrase1–3: The curious childs1
s3PhrasePredicatePredicate verb phrase4–6: reads a book.s1
s4PhraseObjectObject noun phrase5–6: a book.s3

Structure diagram

Clause bars are blue and phrase bars are teal. Ranges connect their first and last tokens; contained ranges sit below their parent.

s1: Main clause (Clause, Other) — The curious child reads a book.Main clauses2: Subject noun phrase (Phrase, Subject) — The curious childSubject noun phrases3: Predicate verb phrase (Phrase, Predicate) — reads a book.Predicate verb phrases4: Object noun phrase (Phrase, Object) — a book.Object noun phrase1. The (Determiner)TheDeterminer2. curious (Adjective)curiousAdjective3. child (Noun)childNoun4. reads (Verb)readsVerb5. a (Determiner)aDeterminer6. book. (Noun)book.Noun

The table above gives every full label, role, token range and parent for keyboard and screen-reader review.

Review missing annotations

Untagged tokens: None

Tokens outside any phrase: None

These gaps are prompts for your review, not claims of incorrect grammar.

Import editable project

Only strict version 1 JSON restores editing. Invalid files leave the current sentence and annotations unchanged.

The sentence and annotations remain in this browser tab. There is no automatic save or remote collection. Download JSON before leaving if you need to continue later.

Comments & questions

Sentence Structure Lab

Build a sentence diagram by choosing word classes and contiguous phrase or clause ranges yourself. The diagram displays the nesting you entered, while gap lists expose words without a word-class tag or phrase range. Crossed ranges are rejected because they cannot form a clear hierarchy. The page does not parse language, verify grammar or claim a correct answer.

Key features

  • Manual word-class choices for each whitespace-delimited token
  • Editable phrase and clause spans with grammatical-role labels
  • Crossing-range rejection and explicit missing-tag or uncovered-token lists
  • Nested SVG diagram with a keyboard-readable annotation table
  • Original text and UTF-16 token offsets preserved in exports
  • Versioned JSON round-trip plus formula-safe token TSV

How to use

  1. Load the example or replace the source sentence. Replacing the source deliberately starts fresh tags and spans.
  2. Choose a word-class label for each token, including Other when your teaching scheme does not fit a preset label.
  3. Select a first and last token, phrase or clause, role and a short label. Add or edit the range; contained ranges form a hierarchy.
  4. Read the diagram and annotation table, then inspect untagged and outside-phrase words. Revise your manual choices as needed.
  5. Download editable JSON, a standalone SVG diagram or token TSV. Reimport only the versioned JSON to continue editing.

Use cases

  • Prepare a classroom phrase-boundary exercise without revealing an automatic answer
  • Compare two manually annotated readings of one sentence
  • Identify which words a learner forgot to tag
  • Attach exact token positions to an annotated example

Frequently asked questions

Does the tool analyze or grade grammar automatically?

No. Every word-class, phrase, clause and role label is chosen by you. The page checks only structural consistency, such as valid token positions and non-crossing spans. A structurally valid diagram can still be linguistically wrong.

How are words split?

Runs of non-whitespace characters become tokens. Spacing and punctuation stay in the source text; punctuation attached to a word stays in that token. Edit the source with whitespace if you want a different token boundary, then retag it.

Why is my span rejected?

A span must include one or more complete consecutive tokens. Two ranges may be separate or one may fully contain the other. Crossing ranges and two annotations with exactly the same range are rejected to keep one unambiguous display hierarchy.

What do the gap lists mean?

Untagged lists tokens still marked Untagged. Outside phrase lists tokens that belong to no phrase range; a clause alone does not clear that warning. These are editing prompts, not automatic grammar errors.

Can I change the sentence after annotating it?

Yes, but Replace sentence intentionally resets all word-class labels and spans because token positions may have changed. Download JSON first if you need to keep the previous analysis.

What do the exports contain?

JSON is the only editable import format and preserves exact source spacing, tags and spans. SVG is a standalone diagram with shortened visual labels and full title text; TSV lists token surfaces, UTF-16 offsets, tags and containing spans. Neither is a grammar certification.

Privacy

The sentence and annotations remain in this browser tab. There is no automatic save or remote collection. Download JSON before leaving if you need to continue later.

Related Tools

Hangul Jamo ConverterText Diagram EditorMind Map WorkbenchKakuro StudioFunction Graph WorkbenchAudio ABX Blind TestCard Sort StudyEvent Run of ShowChecklist RunnerKanban Project BoardArgument Map EditorTeam Skill MatrixCorpus ConcordancerTerminology Glossary ManagerCloze Worksheet MakerSliding Tile PuzzleReversi BoardNonogram StudioMinesweeper LabTangram StudioCrossword BuilderWord Ladder GameWord Search StudioAnagram Word GameConnect Four BoardAttribute Trio PuzzleMaze WorkbenchNumber Merge GameLogic Grid Puzzle MakerLights Out PuzzlePeg Solitaire BoardArithmetic Cage PuzzleSudoku StudioChess Tactics BoardProjectile Motion LabGeometry Construction LabEtymology Map ExplorerPronunciation Comparison StudioReading PacerPhonetic Transcription LabProbability Experiment LabPeriodic Trend LabAlgebra Balance LabPhonics Word BuilderSpaced Repetition CardsService Blueprint DesignerOrganization Chart EditorProject Risk RegisterHabit Progress TrackerProcess Swimlane DesignerResource Capacity SchedulerInventory Movement LedgerRanked Ballot CounterUsability Task RunnerRequirements TraceabilityTranslation Memory WorkbenchDictation PracticeFraction ManipulativesMolecule Structure ViewerGantt Dependency PlannerWeighted Decision MatrixRound Robin SchedulerMental age test · everyday attitude themesPast-life story test27-question Enneagram explorerKorean initials quizFocus Games · Numbers and Ink ColorsColor vision reference platesPitch Recognition PracticeNumber Memory PracticeMoving Target RecognitionScoreboardBingo Card GeneratorTruth or DareQuote of the DayPreference Tournament MakerRock Paper ScissorsRandom Seating PlanRandom Nickname GeneratorRandom Conversation QuestionsMouse TestTouchscreen TestMonitor TestRefresh Rate EstimateScreen and Display InformationKorean Business Number CheckLotto GeneratorLadder GameCompatibility CheckerRandom GeneratorPassword GeneratorMy IP AddressLunch PickerSpin the WheelMetronomeReaction Time TestBalance Game (Would You Rather)Personality Type TestDream DictionaryKeyboard Test
Explore all Life/Fun tools →Image/Media →Text/Convert →Dev Tools →