Re: The semantics of mediaobject

Dave Pawson <[email protected]> Thu, 6 Apr 2023 07:45:50 +0100
Newsgroups gmane.text.docbook.misc
Message-ID <CAEncD4f5PdO0KxCipFUhUVAEdEtdnyoxqG3xeeKY-C00RQwrSg@mail.gmail.com>
On Thu, 6 Apr 2023 at 01:47, Bob Stayton <[email protected]> wrote:
>
> It seems ok to me.  The idea of a mediaobject is to contain markup for on=
e or more versions of the same content.  Presenting more than one of those =
to the end user would be redundant and annoying.  If you consider the whole=
 rendering system to be the transformation from DocBook to HTML5 *and* the =
browser rendering of that HTML5, then your use case does not seem to violat=
e the description because the consumer of the content sees only one version=
, right?


Relies on an odd (rare?) circumstance, despite being logical.

Is there any backwards compatibility reason not to adopt Norms logic?


regards








>
> Bob
>
> On 4/5/2023 9:27 AM, Norm Tovey-Walsh wrote:
>
> Hello world,
>
> The description of mediaobject states:
>
>   This element contains a set of alternative =E2=80=9Cmedia objects.=E2=
=80=9D Exactly
>   one object will be selected and rendered. =E2=80=A6 Under no circumstan=
ces
>   should more than one object in a mediaobject be used or presented at
>   the same time.
>
> Bearing in mind that this markup was invented 15 or 20 years ago, long
> before any (widely used) web browser offered anything sophisticated in
> the way of fallback, we anticipated that markup like this:
>
>   <mediaobject>
>     <videoobject>=E2=80=A6</videoobject>
>     <imageobject>=E2=80=A6</imageobject>
>     <textobject>=E2=80=A6</textobject>
>   </mediaobject>
>
> would be intepreted along the following lines: =E2=80=9C=E2=80=A6 a media=
object might
> contain a video, a high-resolution image, a low-resolution image, a long
> text description, and a short text description. In a =E2=80=98high-end=E2=
=80=99 online
> system, the video is used. For print publishing, the high-resolution
> image is used. For other online systems, either the high- or the
> low-resolution image is used, possibly including the short text
> description as the online alternative. In a text-only environment,
> either the long or the short text description is used.=E2=80=9D
>
> <aside>I observe that =E2=80=9Cpossibly including the short text=E2=80=9D=
 is, by a very
> narrow reading, a violation of the semantics we=E2=80=99ve already
> asserted.</aside>
>
> Starting in V5.1 we allow more than one *data element in a *object
> element[1] with the semantics that the downstream processor will pick
> one. So now you can do:
>
>   <mediaobject>
>     <videoobject>
>       <videodata type=3D"video/mp4" =E2=80=A6/>
>       <videodata type=3D"video/webm" =E2=80=A6/>
>     </videoobject>
>     <imageobject>=E2=80=A6</imageobject>
>     <textobject>=E2=80=A6</textobject>
>   </mediaobject>
>
> And let the browser decide whether it wants to render MP4 or WebM.
>
> Trouble is, you can=E2=80=99t put imagedata in the videoobject wrapper, s=
o
> there=E2=80=99s no way to fallback to a still image. We could fix this by
> changing videoobject (and audioobject) to allow imageobject, but at that
> point, we might as well do away with the various flavors and just have
> one wrapper. (That=E2=80=99s probably what we=E2=80=99d do today, if we w=
ere starting
> over.)
>
> Rather than make the markup even more complicated, I=E2=80=99m tempted to=
 squint
> really hard at the semantics and try to persuade you that selecting
> multiple objects from the same mediaobject is not a violation of the
> semantics if the rendering system will only render one of them.
>
> In other words, I want a license to cheat and say that I can render that
> example above in HTML5 as a video element containing three sources, two
> videos and an image. What say you?
>
>                                         Be seeing you,
>                                           norm
>
> [1] But the content model of imageobject weirdly forbids you from mixing
> SVG and MathML and other formats. What is that about?
>
> --
> Norm Tovey-Walsh <[email protected]>
> https://norm.tovey-walsh.com/
>
> Advancement is powered by the dynamic interaction of theory and
> practice.



--=20
Dave Pawson
XSLT XSL-FO FAQ.
Docbook FAQ.