4 ms·
this is why attributes are really a stupid ass way to do things <img> <srcset> <source><width>1024</width><src>large-image.jpg</source> <sour
by iopq 12y ago
this is why attributes are really a stupid ass way to do things
<img>
<srcset>
<source><width>1024</width><src>large-image.jpg</source>
<source><width>512</width><src>small-image.jpg</source>
</srcset>
<src>image.jpg</src> <*>fallback</*>
<alt>My image</alt>
</img>
- hrktb 12y agoBut now it's a PITA properly handle and escape for any toolset that don't have good xml support. Imagine people starting to put <![CDATA[ ]] blocks into this.
- iopq 12y agoI meant if I had designed it from the start. Then everything is a tag, no attributes, no quotes, equal signs, etc.
- johnlbevan2 12y agoHow about JsonML; i.e. XHTML but in JSON format to make it less verbose / further improve integration with javascript?
- yoklov 12y agoYou'd want to kill yourself pretty quickly. JSON is great as an interchange format, but there are many reasons editing it by hand is painful, lack of comments and lack of newlines in strings not being the least of them.
- mckamey 12y agoJsonML is pretty efficient when auto-generated from HTML source. I use it as an intermediate form for client side templates ( http://duelengine.org http://duelengine.org ) but I don't write it by hand. Its regularity makes it a perfect candidate for output from a parser/compiler.
- aubergene 12y agoThere's no syntactic difference between an attribute, an object and an array.
- iopq 12y agoyou can't nest tags into attributes
- tobyhinloopen 12y agoI really dislike your approach.
- mercurial 12y ago"Attributes are stupid" is also Maven's approach, but this results in unnecessarily verbose XML files.
- est 12y ago<imgset w1024="large.jpg" w640="medium.jpg" />
- palakchokshi 12y agonot practical since you'd have to define attributes for every conceivable size in the spec and that's just asking for trouble. e.g. w2048, h1024, w320, w240,h320, wPleaseShootMe :)
- Pxtl 12y agoHoly crap that's verbose. This is why *ML is a stupid-ass way to do things. "the problem it solves is not hard, and it does not solve the problem well."
- aubergene 12y agoThat isn't well formed, you're missing two </src>. I dislike XML, the confusion between attributes and sub elements is one of the worst bits.
- ianburrell 12y ago"1024 large-image.jpg 512 small-image.jpg image.jpg fallback My Image" That is what your code would look like to browsers that didn't know about the new elements. HTML is defined such that browsers can ignore unknown elements for compatibility and still display the text. Using contents for the metadata means that browsers need to know about the elements to at least hide the text.