ISOSRVServiceIdentification | R Documentation |
ISOSRVServiceIdentification
ISOSRVServiceIdentification
R6Class
object.
Object of R6Class
for modelling an ISO ServiceIdentification
geometa::geometaLogger
-> geometa::ISOAbstractObject
-> geometa::ISOIdentification
-> geometa::ISOServiceIdentification
-> ISOSRVServiceIdentification
serviceType
serviceType [1..1]: ISOGenericName
serviceTypeVersion
serviceTypeVersion [0..*]: character
accessProperties
accessProperties [0..1]: ISOStandardOrderProcess
restrictions
restrictions [0..1]: ISOConstraints
keywords
keywords [0..*]: ISOKeywords
extent
extent [0..*]: ISOExtent
coupledResource
coupledResource [0..*]: ISOCoupledResource
couplingType
couplingType [1..1]: ISOCouplingType
containsOperations
containsOperations [1..*]: ISOOperationMetadata
operatesOn
operatesOn [0..*]: ISODataIdentification
geometa::geometaLogger$ERROR()
geometa::geometaLogger$INFO()
geometa::geometaLogger$WARN()
geometa::ISOAbstractObject$addFieldAttrs()
geometa::ISOAbstractObject$addListElement()
geometa::ISOAbstractObject$contains()
geometa::ISOAbstractObject$createLocalisedProperty()
geometa::ISOAbstractObject$decode()
geometa::ISOAbstractObject$delListElement()
geometa::ISOAbstractObject$encode()
geometa::ISOAbstractObject$getClass()
geometa::ISOAbstractObject$getClassName()
geometa::ISOAbstractObject$getNamespaceDefinition()
geometa::ISOAbstractObject$isDocument()
geometa::ISOAbstractObject$isFieldInheritedFrom()
geometa::ISOAbstractObject$print()
geometa::ISOAbstractObject$save()
geometa::ISOAbstractObject$setAttr()
geometa::ISOAbstractObject$setCodeList()
geometa::ISOAbstractObject$setCodeListValue()
geometa::ISOAbstractObject$setCodeSpace()
geometa::ISOAbstractObject$setHref()
geometa::ISOAbstractObject$setId()
geometa::ISOAbstractObject$setIsNull()
geometa::ISOAbstractObject$setValue()
geometa::ISOAbstractObject$validate()
geometa::ISOAbstractObject$wrapBaseElement()
geometa::ISOIdentification$addAggregateInformation()
geometa::ISOIdentification$addCredit()
geometa::ISOIdentification$addFormat()
geometa::ISOIdentification$addGraphicOverview()
geometa::ISOIdentification$addPointOfContact()
geometa::ISOIdentification$addResourceConstraints()
geometa::ISOIdentification$addResourceMaintenance()
geometa::ISOIdentification$addStatus()
geometa::ISOIdentification$delAggregateInformation()
geometa::ISOIdentification$delCredit()
geometa::ISOIdentification$delFormat()
geometa::ISOIdentification$delGraphicOverview()
geometa::ISOIdentification$delPointOfContact()
geometa::ISOIdentification$delResourceConstraints()
geometa::ISOIdentification$delResourceMaintenance()
geometa::ISOIdentification$delStatus()
geometa::ISOIdentification$setAbstract()
geometa::ISOIdentification$setCitation()
geometa::ISOIdentification$setGraphicOverview()
geometa::ISOIdentification$setKeywords()
geometa::ISOIdentification$setPurpose()
geometa::ISOIdentification$setResourceConstraints()
geometa::ISOIdentification$setResourceMaintenance()
new()
Initializes object
ISOSRVServiceIdentification$new(xml = NULL)
xml
object of class XMLInternalNode-class
setServiceType()
Set service type
ISOSRVServiceIdentification$setServiceType(serviceType)
serviceType
object of class ISOLocalName, ISOScopedName or character
addServiceTypeVersion()
Adds service type version
ISOSRVServiceIdentification$addServiceTypeVersion(version)
version
version
TRUE
if added, FALSE
otherwise
delServiceTypeVersion()
Deletes service type version
ISOSRVServiceIdentification$delServiceTypeVersion(version)
version
version
TRUE
if deleted, FALSE
otherwise
setAccessProperties()
Set access properties
ISOSRVServiceIdentification$setAccessProperties(accessProperties)
accessProperties
object of class ISOStandardOrderProcess
setRestrictions()
Set restrictions
ISOSRVServiceIdentification$setRestrictions(restrictions)
restrictions
object of class ISOConstraints
addKeywords()
Adds keywords
ISOSRVServiceIdentification$addKeywords(keywords)
keywords
object of class ISOKeywords
TRUE
if added, FALSE
otherwise
delKeywords()
Deletes keywords
ISOSRVServiceIdentification$delKeywords(keywords)
keywords
object of class ISOKeywords
TRUE
if deleted, FALSE
otherwise
addExtent()
Adds extent
ISOSRVServiceIdentification$addExtent(extent)
extent
object of class ISOExtent
TRUE
if added, FALSE
otherwise
delExtent()
Deletes extent
ISOSRVServiceIdentification$delExtent(extent)
extent
object of class ISOExtent
TRUE
if deleted, FALSE
otherwise
addCoupledResource()
Adds coupled resource
ISOSRVServiceIdentification$addCoupledResource(resource)
resource
object of class ISOCoupledResource
TRUE
if added, FALSE
otherwise
delCoupledResource()
Deletes coupled resource
ISOSRVServiceIdentification$delCoupledResource(resource)
resource
object of class ISOCoupledResource
TRUE
if deleted, FALSE
otherwise
setCouplingType()
Set coupling type
ISOSRVServiceIdentification$setCouplingType(couplingType)
couplingType
object of class ISOCouplingType or any character
among values returned by ISOCouplingType$values()
addOperationMetadata()
Adds operation metadata
ISOSRVServiceIdentification$addOperationMetadata(operationMetadata)
operationMetadata
object of class ISOOperationMetadata
TRUE
if added, FALSE
otherwise
delOperationMetadata()
Deletes operation metadata
ISOSRVServiceIdentification$delOperationMetadata(operationMetadata)
operationMetadata
object of class ISOOperationMetadata
TRUE
if deleted, FALSE
otherwise
addOperatesOn()
Adds operates on
ISOSRVServiceIdentification$addOperatesOn(dataIdentification)
dataIdentification
object of class ISODataIdentification
TRUE
if added, FALSE
otherwise
delOperatesOn()
Deletes operates on
ISOSRVServiceIdentification$delOperatesOn(dataIdentification)
dataIdentification
object of class ISODataIdentification
TRUE
if deleted, FALSE
otherwise
clone()
The objects of this class are cloneable with this method.
ISOSRVServiceIdentification$clone(deep = FALSE)
deep
Whether to make a deep clone.
Emmanuel Blondel <emmanuel.blondel1@gmail.com>
ISO 19119:2005 - Geographic information – Services
#encoding
md <- ISOSRVServiceIdentification$new()
md$setAbstract("abstract")
md$setPurpose("purpose")
#adding a point of contact
rp <- ISOResponsibleParty$new()
rp$setIndividualName("someone")
rp$setOrganisationName("somewhere")
rp$setPositionName("someposition")
rp$setRole("pointOfContact")
contact <- ISOContact$new()
phone <- ISOTelephone$new()
phone$setVoice("myphonenumber")
phone$setFacsimile("myfacsimile")
contact$setPhone(phone)
address <- ISOAddress$new()
address$setDeliveryPoint("theaddress")
address$setCity("thecity")
address$setPostalCode("111")
address$setCountry("France")
address$setEmail("someone@theorg.org")
contact$setAddress(address)
res <- ISOOnlineResource$new()
res$setLinkage("http://www.somewhereovertheweb.org")
res$setName("somename")
contact$setOnlineResource(res)
rp$setContactInfo(contact)
md$addPointOfContact(rp)
#citation
ct <- ISOCitation$new()
ct$setTitle("sometitle")
d <- ISODate$new()
d$setDate(ISOdate(2015, 1, 1, 1))
d$setDateType("publication")
ct$addDate(d)
ct$setEdition("1.0")
ct$setEditionDate(ISOdate(2015,1,1))
ct$addIdentifier(ISOMetaIdentifier$new(code = "identifier"))
ct$addPresentationForm("mapDigital")
ct$addCitedResponsibleParty(rp)
md$setCitation(ct)
#graphic overview
go <- ISOBrowseGraphic$new(
fileName = "http://wwww.somefile.org/png",
fileDescription = "Map Overview",
fileType = "image/png"
)
md$addGraphicOverview(go)
#maintenance information
mi <- ISOMaintenanceInformation$new()
mi$setMaintenanceFrequency("daily")
md$addResourceMaintenance(mi)
#adding legal constraints
lc <- ISOLegalConstraints$new()
lc$addUseLimitation("limitation1")
lc$addUseLimitation("limitation2")
lc$addUseLimitation("limitation3")
lc$addAccessConstraint("copyright")
lc$addAccessConstraint("license")
lc$addUseConstraint("copyright")
lc$addUseConstraint("license")
md$addResourceConstraints(lc)
#specific elements to service identification
md$setServiceType("Fishery data harmonization process")
md$addServiceTypeVersion("1.0")
orderProcess <- ISOStandardOrderProcess$new()
orderProcess$setFees("fees")
orderProcess$setPlannedAvailableDateTime(ISOdate(2017,7,5,12,0,0))
orderProcess$setOrderingInstructions("instructions")
orderProcess$setTurnaround("turnaround")
md$setAccessProperties(orderProcess)
md$setRestrictions(lc)
kwds <- ISOKeywords$new()
kwds$addKeyword("keyword1")
kwds$addKeyword("keyword2")
kwds$setKeywordType("theme")
th <- ISOCitation$new()
th$setTitle("General")
th$addDate(d)
kwds$setThesaurusName(th)
md$addKeywords(kwds)
#adding extent
extent <- ISOExtent$new()
bbox <- ISOGeographicBoundingBox$new(minx = -180, miny = -90, maxx = 180, maxy = 90)
extent$addGeographicElement(bbox)
md$addExtent(extent)
#coupling type
#(here "tight" associated with a particular dataset "my-dataset-identifier")
#see ISOCouplingType$values(labels = T) for other values
md$setCouplingType("tight")
coupledDataset1 <- ISOCoupledResource$new()
coupledDataset1$setOperationName("Rscript")
coupledDataset1$setIdentifier("my-dataset-identifier")
coupledDataset2 <- ISOCoupledResource$new()
coupledDataset2$setOperationName("WPS:Execute")
coupledDataset2$setIdentifier("my-dataset-identifier")
md$addCoupledResource(coupledDataset1)
md$addCoupledResource(coupledDataset2)
#add operation metadata 1 (Rscript)
scriptOp <- ISOOperationMetadata$new()
scriptOp$setOperationName("Rscript")
scriptOp$addDCP("WebServices")
scriptOp$setOperationDescription("WPS Execute")
scriptOp$setInvocationName("identifier")
for(i in 1:3){
param <- ISOParameter$new()
param$setName(sprintf("name%s",i), "xs:string")
param$setDirection("in")
param$setDescription(sprintf("description%s",i))
param$setOptionality(FALSE)
param$setRepeatability(FALSE)
param$setValueType("xs:string")
scriptOp$addParameter(param)
}
outParam <-ISOParameter$new()
outParam$setName("outputname", "xs:string")
outParam$setDirection("out")
outParam$setDescription("outputdescription")
outParam$setOptionality(FALSE)
outParam$setRepeatability(FALSE)
outParam$setValueType("xs:string")
scriptOp$addParameter(outParam)
or <- ISOOnlineResource$new()
or$setLinkage("http://somelink/myrscript.R")
or$setName("R script name")
or$setDescription("R script description")
or$setProtocol("protocol")
scriptOp$addConnectPoint(or)
md$addOperationMetadata(scriptOp)
#add operation metadata 1 (WPS)
wpsOp <- ISOOperationMetadata$new()
wpsOp$setOperationName("WPS:Execute")
wpsOp$addDCP("WebServices")
wpsOp$setOperationDescription("WPS Execute")
invocationName <- "mywpsidentifier"
wpsOp$setInvocationName(invocationName)
for(i in 1:3){
param <- ISOParameter$new()
param$setName(sprintf("name%s",i), "xs:string")
param$setDirection("in")
param$setDescription(sprintf("description%s",i))
param$setOptionality(FALSE)
param$setRepeatability(FALSE)
param$setValueType("xs:string")
wpsOp$addParameter(param)
}
outParam <-ISOParameter$new()
outParam$setName("outputname", "xs:string")
outParam$setDirection("out")
outParam$setDescription("outputdescription")
outParam$setOptionality(FALSE)
outParam$setRepeatability(FALSE)
outParam$setValueType("xs:string")
wpsOp$addParameter(outParam)
or1 <- ISOOnlineResource$new()
or1$setLinkage(
sprintf("http://somelink/wps?request=Execute&version=1.0.0&Identifier=%s",
invocationName)
)
or1$setName("WPS process name")
or1$setDescription("WPS process description")
or1$setProtocol("protocol")
wpsOp$addConnectPoint(or1)
or2 <- ISOOnlineResource$new()
or2$setLinkage("http://somelink/myrscript.R")
or2$setName("Source R script name")
or2$setDescription("Source R script description")
or2$setProtocol("protocol")
wpsOp$addConnectPoint(or2)
md$addOperationMetadata(wpsOp)
xml <- md$encode()
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.