This is really not a programming question per se, but I was wondering why the name of the tag is required in a closing tag in XML. For instance, couldn't
<a>
<b>stuff</b>
</a>
Be written
<a>
<b>stuff</>
</>
So that each closing tag </>
merely terminated the last opened tag?
So my questions are
All XML elements must have a closing tag.
TL;DR: In HTML5 it is not strictly necessary to close certain HTML tags.
The end tag functions exactly like a right parenthesis or a closing quotation mark or a right curly brace. It contains no data of its own; it simply ends the most recent (innermost) tag with the same name. XML requires a matching end tag for each start tag.
If it would work, why didn't 'they' design it that way?
One reason is that SGML/XML are also designed to be human readable. Your /a/b
example is readable, but a structure much more complex would be a nightmare to try to interpret.
This would especially be true with mixed content (PCDATA and element structures mixed).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With