Hangry Labs Standard · Version 1.0

SSML-H

A backward-compatible extension profile for speech systems that need standard SSML controls and local generative capabilities such as on-demand character voices and per-turn direction.

SSML 1.1 base Hardened XML Local-first
Namespace https://hangrylabs.app/ns/ssml-h/1.0 Example prefix h: Input mode ssml-h

01

Standard body, extended metadata

SSML-H preserves the W3C <speak> root and standard synthesis body. Hangry Labs declarations live inside standard <metadata>.

<speak
  version="1.1"
  xmlns="http://www.w3.org/2001/10/synthesis"
  xmlns:h="https://hangrylabs.app/ns/ssml-h/1.0"
  xml:lang="en-US">

  <metadata>
    <h:extensions version="1.0">
      <h:voice-definition
        name="Bob"
        gender="male"
        age="elderly"
        pitch="low"
        style="warm"
        languages="en-US"
        accent="american"
        dialect="midwestern"
        scope="profile"
        replace="true"
        seed="4242">
        <h:description>
          A seasoned engineer with a warm, grounded voice.
        </h:description>
        <h:sample xml:lang="en-US">
          My name is Bob. I have spent many years solving difficult problems.
        </h:sample>
      </h:voice-definition>

      <h:voice-definition
        name="Elisabeth"
        gender="female"
        age="elderly"
        accent="american"
        scope="request"
        seed="8241">
        <h:description>
          A calm, precise coordinator with a clear American English voice.
        </h:description>
      </h:voice-definition>
    </h:extensions>
  </metadata>

  <voice name="Bob" h:direction="Confident and upbeat">
    Elisabeth, are we ready for launch?
  </voice>
  <break time="300ms" />
  <voice name="Elisabeth" h:direction="Calm and reassuring">
    Yes. <prosody rate="slow">Everything is prepared.</prosody>
  </voice>
</speak>
SSML-H extension Standard SSML 1.1
Pure SSML remains valid

An SSML document without Hangry declarations can be submitted unchanged to an SSML-H processor.

Extensions are explicit

Processors never infer XML from plain text. Clients deliberately select the ssml-h input mode.

Fallback is honest

A standard processor can ignore extension metadata, but cannot create or resolve a dynamically declared voice.

02

Character voices and directed turns

SSML-H creates bounded local voice references and adds optional natural-language delivery direction to standard <voice> turns.

namePortable identifier used by standard voice turns.
scoperequest for temporary use or profile for atomic persistence.
replaceExplicitly permits replacement of a persistent profile.
seedUnsigned 32-bit seed for deterministic voice design.
designCapability-driven gender, age, pitch, style, languages, accent, and dialect.
h:sampleOptional known bootstrap transcript; no ASR is needed.
h:directionOptional bounded delivery instruction for one voice turn; never persisted as identity.

03

Bounded by design

Implementations publish capabilities and reject unsupported behavior before inference.

Parsing

DTD declarations, entities, external references, unknown synthesis namespaces, and unsupported markup are errors.

Resources

Source size, elements, nesting, breaks, definitions, synthesis units, bootstrap text, model tokens, and output duration are bounded.

Streaming

Streaming and complete output share one plan. A disconnect prevents profile publication and removes staged resources.

Capabilities

Processors report their standard elements, voice properties, languages, pronunciation alphabets, persistence policy, and limits.

SSML-H is a Hangry Labs standard. It builds on W3C SSML 1.1, but it is not a W3C Recommendation and does not claim identical rendering across speech engines.