Mindgap: Der richtige Einsatz von Bildattributen

Hallo Forum, nach langer Ausszeit melde ich mich heute mal wieder. Meine Diplomarbeit habe ich abgeschlossen und habe auch einen Job gefunden.

Nun aber zu meiner Frage :)

Es geht darum, das Tag <picture> mit mehreren Atributen auszustatten.

Der aktuell vorliegende XML-Code sieht so aus:

<picture>

<format><JPG/></format>

<basename>a1e_8fc</basename>

<uri>mob</uri>

<width>200</width>

<height>126</height>

<dpi>72</dpi>

</picture>

Da dieser Code nach meiner Meinung total daneben ist, würde ich diesen wie folgt umschreiben:

<picture format="jpg" basename="a1e_8fc" uri="mob" width="200" height="126" dpi="72"/>

Stimmt ihr mit mir darüber überein? Ist das sinnvoller als die vorherige  Variante, oder gibt es noch was zu beachten wenn man z.B. die URI als Attributwert definiert?

Über eine kleine Einschätzung wäre ich dankbar!

Grüße,
Michael

  1. Hi Michael!
    Ja, besonders <JPG/> ist schön ;-)
    Ich denke, dass dein Plan ganz gut ist.
    Alternativ geht noch:
    <picture>
      <parm id="format">JPG</parm>
      <parm id="basename">a1e_8fc</parm>
      <parm id="uri">mob</parm>
      <parm id="width">200</parm>
      <parm id="height">126</parm>
      <parm id="dpi">72</parm>
    </picture>

    Der Vorteil hier ist, dass du auf die Parameter als Liste zugreifen kannst; auch hinzufügen/weglassen ist konsistenter als bei der Attribut Lösung.

    Grüsse,
    Richard

    1. Hello out there!

      Alternativ geht noch:
      <picture>
        <parm id="format">JPG</parm>
        <parm id="basename">a1e_8fc</parm>
        <parm id="uri">mob</parm>
        <parm id="width">200</parm>
        <parm id="height">126</parm>
        <parm id="dpi">72</parm>
      </picture>

      Schlechte Alternative. Das ist das Pendant zu Divitis in HTML:

      <body>  
        <div class="headline">Lorem ipsum</div>  
        <div class="paragraph">Lorem ipsum dolor sit amet.</div>  
        <div class="paragraph">At vero eos et accusam et justo duo dolores et ea rebum.</div>  
      </body>
      

      Unterschiedliche Daten sollten Inhalte unterschiedlicher Elemente bzw. Werte unterschiedlicher Attribute sein; nicht Inhalte gleicher Elemente.

      Die Auszeichnung der Daten sollte anhand der Daten erfolgen, nicht anhand einer eventuell gewünschten Verarbeitung; genauso wie HTML die Daten einer Webseite struktuell auszeichnet, ohne Hinblick auf eine gewünschte Darstellung.

      See ya up the road,
      Gunnar

      --
      „Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)
  2. Hello out there!

    <picture>
      <format><JPG/></format>
      <basename>a1e_8fc</basename>
      <uri>mob</uri>
      <width>200</width>
      <height>126</height>
      <dpi>72</dpi>
    </picture>

    Da dieser Code nach meiner Meinung total daneben ist,

    Warum?

    Was ich daneben finde, ist das 'JPG'-Element. Warum ist der Inhalt des 'format'-Elements nicht Text?

    BTW, das Bildformat heißt JPEG, nicht JPG.
                                ▲
    Als Wert böte sich auch der MIME-Type "image/jpeg" an.

    Ansonsten würde ich den Zahlenwerten von 'width' und 'height' evtl. noch eine Maßeinheit spendieren; auf jeden Fall aber 'dpi' nicht nach der Maßeinheit benennen, sondern konsistent zu 'width' und 'height':

      <width>200px</width>  
      <height>126px</height>  
      <resolution>72dpi</resolution>
    

    <picture format="jpg" basename="a1e_8fc" uri="mob" width="200" height="126" dpi="72"/>

    Stimmt ihr mit mir darüber überein?

    Mit den o.g. Veränderungen, ja:

    <picture format="image/jpeg" basename="a1e_8fc" uri="mob\" width="200px" height="126px" resolution="72dpi"/>

    Ist das sinnvoller als die vorherige  Variante […]?

    Nein. Beides ist gleichwertig. (Solange nicht die Kindelemente von 'picture' wiederum Kindelemente haben könnten; dann geht die Schreibweise mit den Attributen natürlich nicht mehr.)

    Auch eine datenverarbeitende Software sollte mit beiden Varianten gleich gut klarkommen. Eventuell könnte man diese so implementieren, dass sie beide Varianten verarbeiten kann. Auch eine Mischform:

    <picture format="image/jpeg" basename="a1e_8fc" uri="mob\">  
      <width>200px</width>  
      <height>126px</height>  
      <resolution>72dpi</resolution>  
    </picture>
    

    Dann ist man bei der Auszeichnung an keine strenge Syntax gebunden. Bei RDF [RDF] ist das bspw. in der XML-Notaion so.

    RDF (Resource Description Framework) könntest du auch nutzen, schließlich willst du ja Ressourcen beschreiben. [PHOTO-RDF, EXIF]

    See ya up the road,
    Gunnar

    --
    „Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)