En el trabajo, se nos pide que creemos archivos XML para pasar datos a otra aplicación fuera de línea que luego creará un segundo archivo XML para pasar para actualizar algunos de nuestros datos. Durante el proceso, hemos estado discutiendo con el equipo de la otra aplicación sobre la estructura del archivo XML.
La muestra que se me ocurrió es esencialmente algo así como:
<INVENTORY>
<ITEM serialNumber="something" location="something" barcode="something">
<TYPE modelNumber="something" vendor="something"/>
</ITEM>
</INVENTORY>
El otro equipo dijo que esto no era estándar de la industria y que los atributos solo deberían usarse para metadatos. Ellos sugirieron:
<INVENTORY>
<ITEM>
<SERIALNUMBER>something</SERIALNUMBER>
<LOCATION>something</LOCATION>
<BARCODE>something</BARCODE>
<TYPE>
<MODELNUMBER>something</MODELNUMBER>
<VENDOR>something</VENDOR>
</TYPE>
</ITEM>
</INVENTORY>
La razón por la que sugerí la primera es que el tamaño del archivo creado es mucho más pequeño. Habrá aproximadamente 80000 elementos que estarán en el archivo durante la transferencia. Su sugerencia en realidad resulta ser tres veces mayor que la que sugerí. Busqué el misterioso "Estándar de la Industria" que se mencionó, pero lo más cercano que pude encontrar fue que los atributos XML solo deberían usarse para metadatos, pero dije que el debate era sobre lo que en realidad eran metadatos.
Después de la larga explicación (perdón), ¿cómo determina qué son los metadatos, y al diseñar la estructura de un documento XML, cómo debe decidir cuándo utilizar un atributo o un elemento?