Understanding XML: Elements vs Attributes

  • Thread starter Thread starter DaveC426913
  • Start date Start date
  • Tags Tags
    xml
Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
3 replies · 3K views
DaveC426913
Gold Member
2025 Award
Messages
24,601
Reaction score
8,936
What's the design difference between elements and attributes? What I'm asking is: what makes you decide that something should be an element versus an attribute?

Code:
<pet>
  <name>Spike</name>
</pet>
i.e: which is better?
Code:
<pet name="Spike">
</pet>
Does the difference lie in the fact that 'Spike' is likely to be user-facing content - as opposed to some behind-the-scenes value such as a width of 200?
 
Last edited:
on Phys.org
Thank you. The fact that this is a common question is good to know. And I do seem to be right on the money:

You can use either, it's a matter of design and practicality which you decide to use. But in general, the rule of thumb seems to be:
"...data goes in elements, metadata in attributes..."
 
Last edited:
Generally, i prefer attributes, unless the data is large or when the data may contain some special characters, such as <, >, in which case i opt for text nodes with <![CDATA[...]]>.