Applies to: Protocol and format interpretation for developers inspecting authorized media delivery.
The useful distinctions
- Relative URI references are resolved against a base.
- A trailing slash affects path merging.
- Dot segments participate in relative-path resolution.
Treat the base as a URI, not a folder label
In a DASH resource investigation, a BaseURL often looks like a directory name, but its actual URI spelling governs resolution. The synthetic fragment includes a trailing slash, making session-7 a retained path component when a segment reference is merged. Without that slash, an ordinary relative merge can replace the last path component instead. Write the exact base before resolving any child reference.
Use resolved addresses to audit portability
For a content move, create a table of the MPD location, applicable base references, raw media reference, and final resolved URI. This catches accidental parent-directory escapes and assumptions about a local filesystem layout. The URI-resolution rules are general; the complete DASH hierarchy determines which base context applies at each level. This article isolates the path-merging step rather than claiming to implement every DASH BaseURL alternative or selection rule. Neither the fictional hostname nor the final path is contacted. The result is a reviewable address calculation that can be applied to authorized resources once their real hierarchy and selection behavior are known. The two base forms make a useful pair of regression fixtures. Keep their resolved results beside their original strings so a refactor of URL handling cannot silently change directory-versus-file interpretation.
Worked example · synthetic
With this base, the relative reference v/segment-3.m4s resolves under /session-7/v/. If the base ended in /session-7 without the final slash, ordinary URI path merging would yield /v/segment-3.m4s instead.
Valid namespaced BaseURL element plus an RFC URI-resolution calculation.
<BaseURL xmlns="urn:mpeg:dash:schema:mpd:2011">https://media.example.invalid/session-7/</BaseURL>Check the interpretation
- Preserve trailing slashes during transcription.
- Resolve from the complete applicable base.
- Keep URI resolution separate from DASH base-selection policy.