RFC #2 specifies the standard content and form for exchanging URLs and URIs
over OpenStep pasteboards.
_____________________________________________________________________________
RATIONALE
OpenStep relies extensively on the use of pasteboards for interapplication
data exhange (services, filters, cut/paste, drag-and-drop). While NeXT has
registered many common pasteboard types (RTF, PostScript, TIFF), it is not in
a position to sanction a standard exchange type for WWW references.
_____________________________________________________________________________
SPECIFICATION
The specification consists of three interrelated pasteboard types. Per
OpenStep conventions the "richest" form is presented first. Furthermore,
HTML pasteboard types may preempt all of these as a richer form still.
extern char * URIPboardType "WebStep Universal Resouce Identifier
1.0"
This is an IETF RFC1630-conformant URI. It must be prefixed by URL, per IETF
minutes (http://www.w3.org/hypertext/WWW/Addressing/URL/Minutes/9310.html#z5)
URIs MUST be properly hex-escaped for characters such as ' ', '~', and '/'
Mutiple URIs are to be separated by tab characters.
extern char * URITitlePboardType "WebStep URI Descriptive Title 1.0"
This is a descriptive title for the URI. It can come from a bookmark, from
the <TITLE> of a referenced HTML document, or the filename. The default
value is the URI itself, preferably _unescaped_ (human-readable).
Mutiple URI titles are to be separated by tab characters.
extern char * NXAsciiPboardType;
The payload of this datatype is what is exchanged witn non-WebStep-savvy apps
The most reasonable value for this is a copy of the escaped URI from the
URIPboardType. Mutiple URIs are to be separated by tab characters.
This information can also be manipulated as UNIX files. WebStep proposes to
register the .url filetype with NeXT to be used as:
URITitlePboardType.url, a file with the contents URIPboardType.
DISCUSSION ITEMS:
Should WebStep provide standard access tools? A W3URI object with
access methods and {read,write}{To,From}{Pasteboard,File}?
How can we accomodate lists of multiple URLs? Can we legally use the
tab-escaping sequence above (i.e. are tabs valid characters in URIs or
in descriptive titles)?
Should the .url file really be an NSDictionary with key/value pairs for
URIPboardType and URITitlePboardType?
_____________________________________________________________________________
CONFORMANCE TESTING
User-level testing includes:
* cut/paste and drag/drop exchange of URLs
* working with .url files
* included URL data must conform to
(http://www.w3.org/hypertext/WWW/Addressing/URL/URI_Overview.html)
_____________________________________________________________________________
EXAMPLE IMPLEMENTATIONS
eText will be conformant in its .92 release
OmniWeb uses different Pasteboard naming strings
SpiderWoman is unknown
Pages is unknown