\name{parseURI} \alias{parseURI} \alias{URI-class} \alias{coerce,URI,character-method} \title{Parse a URI string into its elements} \description{ This breaks a URI given as a string into its different elements such as protocol/scheme, host, port, file name, query. This information can be used, for example, when constructing URIs relative to a base URI. The return value is an S3-style object of class \code{URI}. This function uses libxml routines to perform the parsing. } \usage{ parseURI(uri) } \arguments{ \item{uri}{a single string} } \value{ A list with 8 elements \item{scheme}{the name of the protocol being used, http, ftp as a string.} \item{authority}{a string represeting a rarely used aspect of URIs} \item{server}{a string identifying the host, e.g. www.omegahat.net} \item{user}{a string giving the name of the user, e.g. in FTP "ftp://duncan@www.omegahat.net", this would yield "duncan"} \item{path}{a string identifying the path of the target file} \item{query}{the CGI query part of the string, e.g. the bit after '?' of the form \code{name=value&name=value}} \item{fragment}{a string giving the coo} \item{port}{an integer identifying the port number on which the connection is to be made} } \seealso{ \code{\link{getRelativeURL}} } \examples{\dontrun{ ## site is flaky parseURI("https://www.omegahat.net:8080/RCurl/index.html") parseURI("ftp://duncan@www.omegahat.net:8080/RCurl/index.html") parseURI("ftp://duncan@www.omegahat.net:8080/RCurl/index.html#my_anchor") as(parseURI("http://duncan@www.omegahat.net:8080/RCurl/index.html#my_anchor"), "character") as(parseURI("ftp://duncan@www.omegahat.net:8080/RCurl/index.html?foo=1&bar=axd"), "character") }} \keyword{IO} \concept{URI} \concept{Web}