Binary content information in an iCalendar object SHOULD be referenced using a URI within a property value. That is, the binary content information SHOULD be placed in an external MIME entity that can be referenced by a URI from within the iCalendar object. In applications where this is not feasible, binary content information can be included within an iCalendar object, but only after first encoding it into text using the "BASE64" encoding method defined in [RFC4648]. Inline binary content SHOULD only be used in applications whose special circumstances demand that an iCalendar object be expressed as a single entity. A property containing inline binary content information MUST specify the "ENCODING" property parameter. Binary content information placed external to the iCalendar object MUST be referenced by a uniform resource identifier (URI).
The following example specifies an "ATTACH" property that references an attachment external to the iCalendar object with a URI reference:
ATTACH:http://example.com/public/quarterly-report.doc
The following example specifies an "ATTACH" property with inline binary encoded content information:
ATTACH;FMTTYPE=text/plain;ENCODING=BASE64;VALUE=BINARY:VGhlIH F1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4