Home > Article > Backend Development > XML Guide - XML Attributes
Like HTML, XML elements can be marked by element attributes at the beginning.
Attributes usually contain some additional information about the element.
XML attributes
XML elements can have attributes.
You must still remember this HTML code: ad4b5398865d50c95ba6bab15578323f. src is an attribute of the img element and provides additional information about the img element.
In HTML (and in XML as well) the attributes of an element provide additional information about the element.
<img src="computer.gif"> <a href="demo.asp">
Letters provide information that is usually not part of the data. In the following example, the type has nothing to do with the data, but it is very important to the software that operates on this element.
<file type="gif">computer.gif</file>
Quotation style "female" or 'female'?
Attribute values must be quoted. Both single quotes and double quotes can be used. For example, the gender of a person, the person element can be written like this:
<person sex="female">
can also be written like this:
<person sex='female'>
The above two writing methods are generally There is no difference, the use of double quotes is more common. But in some special cases, single quotes must be used, such as the following example:
<gangster name='George "Shotgun" Ziegler'>
Use subelements or attributes
Data can be stored in subelements or Can be stored in properties.
Please see the following example:
<person sex="female">Anna Smith female Anna Smith
In the first example, sex is an attribute, in the second example, sex is a child element. Both examples provide the same information.
There is no ready-made rule to follow when to use attributes and when to use subelements. My experience is that attributes can be quite convenient in HTML, but in XML you're better off avoiding them.
My preferred style
I prefer to store data in child elements.
The following three XML documents contain the same information:
The first example uses the data attribute:
<note date="12/11/99"> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note>
The second example uses the data element:
<note> <date>12/11/99</date> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note>
The third example uses the extended data element: (This is the style I recommend):
<note> <date> <day>12</day> <month>11</month> <year>99</year> </date> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note>
Avoid using Attributes?
Should we avoid using attributes?
Here are some problems caused by using attributes:
Attributes cannot contain multiple values (child elements can).
Attributes are not easy to extend.
Attributes cannot describe the structure (subelements can).
Attributes are difficult to handle by program code.
Attribute values are difficult to test via DTD.
If attributes are used to store data, the XML document written must be difficult to read and operate. Try to use elements to describe data, and only use attributes to describe additional information that has little to do with the data.
Don't do like the example below (if you do that, you haven't understood the above point).
<note day="12" month="11" year="99" to="Tove" from="Jani" heading="Reminder" body="Don't forget me this weekend!"> </note>
Exceptions to attribute rules
There are always exceptions to rules.
There is an exception to my rules about attributes:
Sometimes you should design an ID reference for an element, through which the specific XML element can be referenced and accessed, just like the name and id attributes in HTML. Please look at the following example:
<messages> <note ID="501"> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note> <note ID="502"> <to>Jani</to> <from>Tove</from> <heading>Re: Reminder</heading> <body>I will not!</body> </note> </messages>
In the above example, the ID attribute is equivalent to a counter, or a unique identifier that identifies different note information in the XML document. , he was not part of the note message.
What we are trying to explain to readers is that metadata (data related to data) should be stored in the form of attributes, and the data itself should be stored in the form of elements.
The above is the XML guide - the content of XML attributes. For more related content, please pay attention to the PHP Chinese website (www.php.cn)!