docs: public ChainWriter encodeJavaScriptStringInXmlAttribute(Object value) throws IOException {
  		// Two stage encoding:
  		//   1) Text -> JavaScript (with quotes added)
  		//   2) JavaScript -> XML Attribute
  		if(
  			value instanceof Writable
  			&& !((Writable)value).isFastToString()
  		) {
  			// Avoid unnecessary toString calls
  			textInJavaScriptEncoder.writePrefixTo(javaScriptInXhtmlAttributeWriter);
  			Coercion.write(value, textInJavaScriptEncoder, javaScriptInXhtmlAttributeWriter);
  			textInJavaScriptEncoder.writeSuffixTo(javaScriptInXhtmlAttributeWriter);
  		} else {
  			String str = Coercion.toString(value);
  			BundleLookupMarkup lookupMarkup;
  			BundleLookupThreadContext threadContext = BundleLookupThreadContext.getThreadContext(false);
  			if(threadContext!=null) {
  				lookupMarkup = threadContext.getLookupMarkup(str);
  			} else {
  				lookupMarkup = null;
  			}
  			if(lookupMarkup!=null) lookupMarkup.appendPrefixTo(MarkupType.JAVASCRIPT, javaScriptInXhtmlAttributeWriter);
  			textInJavaScriptEncoder.writePrefixTo(javaScriptInXhtmlAttributeWriter);
  			textInJavaScriptEncoder.write(str, javaScriptInXhtmlAttributeWriter);
  			textInJavaScriptEncoder.writeSuffixTo(javaScriptInXhtmlAttributeWriter);
  			if(lookupMarkup!=null) lookupMarkup.appendSuffixTo(MarkupType.JAVASCRIPT, javaScriptInXhtmlAttributeWriter);
  		}
  		return this;
  	}