Bei der Arbeit werden wir aufgefordert, XML-Dateien zu erstellen, um Daten an eine andere Offline-Anwendung zu übergeben. Diese erstellt dann eine zweite XML-Datei, die zurückgegeben werden muss, um einige unserer Daten zu aktualisieren. Während des Prozesses haben wir mit dem Team der anderen Anwendung über die Struktur der XML-Datei gesprochen.
Das Beispiel, das ich mir ausgedacht habe, ist im Wesentlichen so etwas wie:
<INVENTORY>
<ITEM serialNumber="something" location="something" barcode="something">
<TYPE modelNumber="something" vendor="something"/>
</ITEM>
</INVENTORY>
Das andere Team sagte, dass dies kein Industriestandard sei und dass Attribute nur für Metadaten verwendet werden sollten. Sie schlugen vor:
<INVENTORY>
<ITEM>
<SERIALNUMBER>something</SERIALNUMBER>
<LOCATION>something</LOCATION>
<BARCODE>something</BARCODE>
<TYPE>
<MODELNUMBER>something</MODELNUMBER>
<VENDOR>something</VENDOR>
</TYPE>
</ITEM>
</INVENTORY>
Der Grund, warum ich den ersten vorgeschlagen habe, ist, dass die Größe der erstellten Datei viel kleiner ist. Während der Übertragung befinden sich ungefähr 80000 Elemente in der Datei. Ihr Vorschlag in Wirklichkeit ist dreimal so groß wie der von mir vorgeschlagene. Ich suchte nach dem mysteriösen "Industriestandard", der erwähnt wurde, aber am ehesten konnte ich feststellen, dass XML-Attribute nur für Metadaten verwendet werden sollten, sagte aber, dass es in der Debatte um Metadaten ging.
Wie bestimmen Sie nach der langwierigen Erklärung (sorry), was Metadaten sind, und wie sollten Sie beim Entwerfen der Struktur eines XML-Dokuments entscheiden, wann ein Attribut oder ein Element verwendet werden soll?