"(...) or because the author does not himself know what the images represent (e.g. a blind photographer sharing an image on his blog)."
and I thought that my examples are stupid

#dc comics#batman#dc#bruce wayne#dick grayson#tim drake#batfamily#batfam#dc fanart


seen from United States
seen from United States
seen from United States

seen from Malaysia
seen from United Kingdom
seen from United States

seen from United Kingdom
seen from United States

seen from TĂŒrkiye
seen from Sweden

seen from Brazil
seen from China

seen from Lithuania
seen from China
seen from United States
seen from United States
seen from United States
seen from China

seen from Australia
seen from Poland
"(...) or because the author does not himself know what the images represent (e.g. a blind photographer sharing an image on his blog)."
and I thought that my examples are stupid
On the cite element: "A person's name is not the title of a work â even if people call that person a piece of work â and the element must therefore not be used to mark up people's names."
"Because HTML conveys meaning, rather than presentation (...)"
HTML5 spec: URL creation and implementation
2.5.5Â URL manipulation and creation
To fragment-escape a string input, a user agent must run the following steps:
Let input be the string to be escaped.Let position point at the first character of input.
Let output be an empty string.
Loop: If position is past the end of input, then jump to the step labeled end.
If the character in input pointed to by position is in the range U+0000 to U+0020 or is one of the following characters:
""" (U+0022) character
"#" (U+0023) character
"%" (U+0025) character
U+003C LESS-THAN SIGN character (<)
">" (U+003E) character
"[" (U+005B) character
"\" (U+005C) character
"]" (U+005D) character
"^" (U+005E) character
"{" (U+007B) character
"|" (U+007C) character
"}" (U+007D) character
...then append the percent-encoded form of the character to output. [RFC3986]
Otherwise, append the character itself to output.
This escapes any ASCII characters that are not valid in the URI <fragment> production without being escaped.
Advance position to the next character in input.
Return to the step labeled loop.
End: Return output.
Implementation:
15: def escape(s) 16: s.to_s.gsub(/([^ a-zA-Z0-9_.-]+)/n) { 17: '%'+$1.unpack('H2'*bytesize($1)).join('%').upcase 18: }.tr(' ', '+') 19: end
23: def unescape(s) 24: s.tr('+', ' ').gsub(/((?:%[0-9a-fA-F]{2})+)/n){ 25: [$1.delete('%')].pack('H*') 26: } 27: end
http://rack.rubyforge.org/doc/classes/Rack/Utils.html
from HTML5 spec
1.7.1Â How to read this specification
This specification should be read like all other specifications. First, it should be read cover-to-cover, multiple times. Then, it should be read backwards at least once. Then it should be read by picking random sections from the contents list and following all the cross-references