| Title: | Orchestrate Geospatial (Meta)Data Management Workflows and Manage FAIR Services |
|---|---|
| Description: | An engine to facilitate the orchestration and execution of metadata-driven data management workflows, in compliance with 'FAIR' (Findable, Accessible, Interoperable and Reusable) data management principles. By means of a pivot metadata model, relying on the 'DublinCore' standard (<https://dublincore.org/>), a unique source of metadata can be used to operate multiple and inter-connected data management actions. Users can also customise their own workflows by creating specific actions but the library comes with a set of native actions targeting common geographic information and data management, in particular actions oriented to the publication on the web of metadata and data resources to provide standard discovery and access services. At first, default actions of the library were meant to focus on providing turn-key actions for geospatial (meta)data: 1) by creating manage geospatial (meta)data complying with 'ISO/TC211' (<https://committee.iso.org/home/tc211>) and 'OGC' (<https://www.ogc.org/standards/>) geographic information standards (eg 19115/19119/19110/19139) and related best practices (eg. 'INSPIRE'); and 2) by facilitating extraction, reading and publishing of standard geospatial (meta)data within widely used software that compound a Spatial Data Infrastructure ('SDI'), including spatial databases (eg. 'PostGIS'), metadata catalogues (eg. 'GeoNetwork', 'CSW' servers), data servers (eg. 'GeoServer'). The library was then extended to actions for other domains: 1) biodiversity (meta)data standard management including handling of 'EML' metadata, and their management with 'DataOne' servers, 2) in situ sensors, remote sensing and model outputs (meta)data standard management by handling part of 'CF' conventions, 'NetCDF' data format and 'OPeNDAP' access protocol, and their management with 'Thredds' servers, 3) generic / domain agnostic (meta)data standard managers ('DublinCore', 'DataCite'), to facilitate the publication of data within (meta)data repositories such as 'Zenodo' (<https://zenodo.org>) or DataVerse (<https://dataverse.org/>). The execution of several actions will then allow to cross-reference (meta)data resources in each action performed, offering a way to bind resources between each other (eg. reference 'Zenodo' 'DOI' in 'GeoNetwork'/'GeoServer' metadata, or vice versa reference 'GeoNetwork'/'GeoServer' links in 'Zenodo' or 'EML' metadata). The use of standardized configuration files ('JSON' or 'YAML' formats) allow fully reproducible workflows to facilitate the work of data and information managers. |
| Authors: | Emmanuel Blondel [aut, cre, cph] (ORCID: <https://orcid.org/0000-0002-5870-5762>), Julien, Barde [aut] (ORCID: <https://orcid.org/0000-0002-3519-6141>), Wilfried Heintz [aut] (ORCID: <https://orcid.org/0000-0002-9244-9766>), Alexandre Bennici [ctb], Sylvain Poulain [ctb], Bastien Grasset [ctb], Mathias Rouan [ctb], Emilie Lerigoleur [ctb], Yvan Le Bras [ctb], Jeroen Ooms [ctb] |
| Maintainer: | Emmanuel Blondel <[email protected]> |
| License: | MIT + file LICENSE |
| Version: | 1.2.9004 |
| Built: | 2026-05-10 08:14:55 UTC |
| Source: | https://github.com/r-geoflow/geoflow |
add_config_logger enables a logger (managed with the internal
class geoflowLogger).
add_config_logger(config)add_config_logger(config)
config |
object of class list |
Emmanuel Blondel, [email protected]
Creates a sf object out of a bounding box
bbox_to_sf(xmin, ymin, xmax, ymax, crs = 4326)bbox_to_sf(xmin, ymin, xmax, ymax, crs = 4326)
xmin |
xmin |
ymin |
ymin |
xmax |
xmax |
ymax |
ymax |
crs |
Defaut is 4326 |
an object of class sf
Emmanuel Blondel [email protected]
build_hierarchical_list
build_hierarchical_list(parent, relationships)build_hierarchical_list(parent, relationships)
parent |
parent |
relationships |
relationships |
a hierarchical list
check_packages checks availability of a list of R packages in R. This
function is essentially used internally by geoflow in assocation to geoflow_software and
geoflow_action that would need specific packages to be imported in R.
check_packages(pkgs)check_packages(pkgs)
pkgs |
a vector of package names |
Emmanuel Blondel, [email protected]
closeWorkflow allows to close a workflow
closeWorkflow(config)closeWorkflow(config)
config |
a configuration object as read by |
Emmanuel Blondel, [email protected]
create_geoflow_data_from_dbi
create_geoflow_data_from_dbi(dbi, schema, table)create_geoflow_data_from_dbi(dbi, schema, table)
dbi |
a dbi connection |
schema |
schema |
table |
table |
Emmanuel Blondel, [email protected]
create_object_identification_id
create_object_identification_id(prefix, str)create_object_identification_id(prefix, str)
prefix |
a character string |
str |
a character string |
a digested character string
debugWorkflow allows to initiate a workflow job for
developers to work / debug on workflow actions.
debugWorkflow(file, dir, entityIndex, copyData, runSoftwareActions, runLocalActions)debugWorkflow(file, dir, entityIndex, copyData, runSoftwareActions, runLocalActions)
file |
configuration file |
dir |
directory where to debug/execute the workflow |
entityIndex |
index of the entity within the list of loaded entities. Default is 1 |
copyData |
whether data should be downloaded/copied to job data directory.
Default is |
runSoftwareActions |
whether software actions should be run. Default is |
runLocalActions |
whether entity data local actions (if any) should be run.
Default is |
a named list including the workflow config, the selected entity,
the eventual options associated to the entity, and the output entity dir path
of the selected entity.
Emmanuel Blondel, [email protected]
describeOGCRelation
describeOGCRelation(entity, data_object, service, download, format, handle_category, handle_ogc_service_description, handle_format)describeOGCRelation(entity, data_object, service, download, format, handle_category, handle_ogc_service_description, handle_format)
entity |
the entity considered |
data_object |
data object |
service |
service acronym |
download |
whether the relation should be a download one or not |
format |
format |
handle_category |
append the relation category |
handle_ogc_service_description |
append the OGC service description |
handle_format |
append the download format |
Emmanuel Blondel, [email protected]
enrich_text_from_entity will attempt to enrich an entity text property
from other entity metadata, depending on text variables handled by a pattern in the form
- If the entity property is a text, only the name of the property name is required.
- If the entity property is a list, then 2 subcases can be distinguished:
If it is a named list (such as entity descriptions), the text variable will be compound by the entity property name and the element_property name, in the form
If it is a unnamed list (such as list of keywords, list of relations, etc), the text variable will handle four elements: property (entity property name to look at), a key value pair to use for search within the list, an element_property for which the value should be picked up to enrich the text. The variable willbe in the form
enrich_text_from_entity(str, entity)enrich_text_from_entity(str, entity)
str |
a text to be enriched |
entity |
an object of class |
Emmanuel Blondel, [email protected]
executeWorkflow allows to execute a workflow
executeWorkflow(file, dir, queue, on_initWorkflowJob, on_initWorkflow, on_closeWorkflow, monitor, session)executeWorkflow(file, dir, queue, on_initWorkflowJob, on_initWorkflow, on_closeWorkflow, monitor, session)
file |
a JSON geoflow configuration file |
dir |
a directory where to execute the workflow |
queue |
an ipc queue to use geoflow in geoflow-shiny |
on_initWorkflowJob |
a function to trigger once |
on_initWorkflow |
a function to trigger once |
on_closeWorkflow |
a function to trigger once |
monitor |
a monitor function to increase progress bar |
session |
a shiny session object (optional) to run geoflow in a shiny context |
the path of the job directory
Emmanuel Blondel, [email protected]
executeWorkflowJob allows to execute a workflow job
executeWorkflowJob(config, jobdir, queue, monitor)executeWorkflowJob(config, jobdir, queue, monitor)
config |
a configuration object as read by |
jobdir |
the Job directory. Optional, by default inherited with the configuration. |
queue |
an ipc queue to use geoflow in geoflow-shiny |
monitor |
a monitor function to increase progress bar |
Emmanuel Blondel, [email protected]
extract_cell_components extracts the components of a cell
when using tabular data content handlers (for entity and contact).
extract_cell_components(str)extract_cell_components(str)
str |
a string as object of class |
Emmanuel Blondel, [email protected]
extract_kvp parses a string into a key value pair represented by
a geoflow_kvp object.
extract_kvp(str)extract_kvp(str)
str |
a string as object of class |
Emmanuel Blondel, [email protected]
extract_kvp parses a string into a key value pair represented by
a geoflow_kvp object.
extract_kvps(strs, collapse)extract_kvps(strs, collapse)
strs |
a string as object of class |
collapse |
collapse by. Default is |
Emmanuel Blondel, [email protected]
fetch_layer_styles_from_dbi
fetch_layer_styles_from_dbi(entity, dbi, schema, table)fetch_layer_styles_from_dbi(entity, dbi, schema, table)
entity |
a geoflow_entity to be used and enriched |
dbi |
a dbi connection |
schema |
schema |
table |
table |
the entity, enriched with layer styles
Emmanuel Blondel, [email protected]
filter_sf_by_cqlfilter filters an object of class sf using
a CQL syntax. This function is minimalistic and only basic CQL filters are supported.
filter_sf_by_cqlfilter(sfdata, cqlfilter)filter_sf_by_cqlfilter(sfdata, cqlfilter)
sfdata |
object of class |
cqlfilter |
object of class |
Emmanuel Blondel, [email protected]
Provides an engine to manage Spatial Data Infrastructures (SDI) and to orchestrate, run and automate geospatial (meta)data workflows in compliance with international standards (ISO, OGC, INSPIRE) with a range of actions such as data upload in spatial databases, publication in GeoServer and metadata publication in GeoNetwork. It includes actions to manage domain-specific resources usch ecological metadata (EML) and its publication on tools such as Metacat. It also allows to publish data on cloud data infrastructures such as Zenodo or Dataverse. Through a pivot metadata model, geoflow allows to manage a unique source dataset metadata while offering a way to target various repositories for their publication. The execution of several actions will allow to cross-share (meta)data resources in each action performed, offering a way to bind resources between each other (eg. reference Zenodo DOIS in Geonetwork/Geoserver metadata, reference Geonetwork/Geoserver links in Zenodo or EML metadata). The use of standardized configuration files allows fully reproducible workflows, in compliance with FAIR (Findable, Accessible, Interoperable, Reusable) principles.
Emmanuel Blondel [email protected]
Useful links:
This class models an action to be executed by geoflow
R6Class object.
geoflow_action
Object of R6Class for modelling an action
geoflow::geoflowLogger -> geoflow_action
idaction ID
enabledenabled
fundersfunders
authorsauthors
maintainermaintainer
scopeaction scope
typestypes of action
defthe action definition
targetthe action target
target_dirthe action target directory
packageslist of packages required to perform the action
pid_generatora name referencing the PID generator (if existing)
pid_typestypes of PIDs to generate
generic_uploaderwhether the action is a generic uploader or not.
funa function for the action
scripta script for the action
optionsaction options
available_optionsa list of available options for the actions
statusstatus
notesnotes
new()
Initialize a geoflow_action
geoflow_action$new( yaml = NULL, id = NULL, enabled = TRUE, funders = list(), authors = list(), maintainer = NULL, scope = "global", types = list(), def = "", target = NA, target_dir = NA, packages = list(), pid_generator = NULL, pid_types = list(), generic_uploader = FALSE, fun = NULL, script = NULL, options = list(), available_options = list(), status = "stable", notes = "" )
yamla yaml file
idaction id
enabledenabled
fundersfunders
authorsauthors
maintainermaintainer
scopeaction scope "global" or "local"
typesaction types
defaction definition
targetthe action target, e.g. "entity"
target_dirthe action target directory
packageslist of packages required to perform the action
pid_generatora name referencing the PID generator (if existing)
pid_typestypes of PIDs to generate by the action
generic_uploaderwhether the action is a generic uploader or not.
funaction function
scriptaction script
optionsaction options
available_optionsavailable options for the action
statusstatus of the action (experimental, stable, deprecated, superseded)
notesnotes
fromYAML()
Reads action properties from YAML file
geoflow_action$fromYAML(file)
filefile
checkPackages()
Check that all packages required for the action are available, if yes,
import them in the R session, and return a data.frame giving the
packages names and version. If one or more packages are unavailable,
an error is thrown and user informed of the missing packages.
geoflow_action$checkPackages()
run()
Runs the action
geoflow_action$run(entity, config)
entityentity
configconfig
getOption()
Get action option value
geoflow_action$getOption(option)
optionoption id
the option value, either specified through a workflow, or the default value
isPIDGenerator()
Indicates if the action is PID generator
geoflow_action$isPIDGenerator()
TRUE if the action is a PID generator, FALSE otherwise
exportPIDs()
Exports PIDs for the action. This function will export the PIDs in several ways. First, a simple CSV file including the list of PIDs for each entity, and associated status (eg. draft/release) for the given PID resource. In addition, for each metadata entities file, an equivalent metadata table will be produced as CSV to handle entities enriched with the PID (added in the "Identifier" column), ready for use as workflow entities input. In addition, a new configuration file will be produced with name "<pid_generator>_geoflow_config_for_publication.json" turned as ready for publishing resources with PIDs (eg. publishing deposits in Zenodo).
geoflow_action$exportPIDs(config, entities)
configa geoflow configuration
entitiesone or more objects of class geoflow_entity
isGenericUploader()
Indicates if the action is a generic uploader
geoflow_action$isGenericUploader()
TRUE if the action is a generic uploader, FALSE otherwise
clone()
The objects of this class are cloneable with this method.
geoflow_action$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: action <- geoflow_action$new( id = "some-id", scope = "global", types = list("some purpose1", "some purpose2"), target = "entity", target_dir = "data", def = "some definition", packages = list(), pid_generator = NULL, generic_uploader = FALSE, fun = function(action, entity, config){}, available_options = list( option_name = list(def = "option description", default = FALSE) ), options = list(option_name = TRUE) ) ## End(Not run)## Not run: action <- geoflow_action$new( id = "some-id", scope = "global", types = list("some purpose1", "some purpose2"), target = "entity", target_dir = "data", def = "some definition", packages = list(), pid_generator = NULL, generic_uploader = FALSE, fun = function(action, entity, config){}, available_options = list( option_name = list(def = "option description", default = FALSE) ), options = list(option_name = TRUE) ) ## End(Not run)
This class models a contact to be executed by geoflow
R6Class object.
geoflow_contact
Object of R6Class for modelling a contact
idcontact identifier
firstNamecontact first name
lastNamecontact lastname
organizationNamecontact organization
positionNamecontact position
rolecontact role
voicecontact phone number
facsimilecontact facsimile
emailcontact email
websiteUrlcontact website URL
websiteNamecontact website name
postalAddresscontact postal address
postalCodecontact postal code
citycontact city
countrycontact country
identifierscontact identifiers
new()
Initializes a geoflow_contact object
geoflow_contact$new()
setShinyEditorMode()
Set mode for geoflow-shiny
geoflow_contact$setShinyEditorMode(mode = c("creation", "edition"))modemode
getShinyEditorMode()
Get mode for geoflow-shiny
geoflow_contact$getShinyEditorMode()
the shiny editor mode
getAllowedKeyValuesFor()
Retrieves keys allowed for a given tabular field name. eg. "Identifier"
geoflow_contact$getAllowedKeyValuesFor(field)
fieldfield name
the list of valid keys for the field considered
setIdentifier()
Sets an identifier by means of key
geoflow_contact$setIdentifier(key = "id", id)
keyan identifier key. Default is "id"
idthe identifier
setId()
Sets an "id" identifier
geoflow_contact$setId(id)
idthe identifier
setFirstName()
Sets contact first name
geoflow_contact$setFirstName(firstName)
firstNamecontact first name
setLastName()
Sets contact last name
geoflow_contact$setLastName(lastName)
lastNamecontact last name
setOrganizationName()
Sets contact organization name
geoflow_contact$setOrganizationName(organizationName)
organizationNamecontact organization name
setPositionName()
Sets contact position name
geoflow_contact$setPositionName(positionName)
positionNamecontact position name
setRole()
Sets contact role
geoflow_contact$setRole(role)
rolethe contact role
setVoice()
Sets contact voice (phone number)
geoflow_contact$setVoice(voice)
voicecontact voice (phone number)
setFacsimile()
Sets contact facsimile
geoflow_contact$setFacsimile(facsimile)
facsimilecontact facsimile
setEmail()
Sets contact email
geoflow_contact$setEmail(email)
emailcontact email
setWebsiteUrl()
Sets contact website URL
geoflow_contact$setWebsiteUrl(websiteUrl)
websiteUrlcontact website URL
setWebsiteName()
Sets contact website name
geoflow_contact$setWebsiteName(websiteName)
websiteNamecontact website name
setPostalAddress()
Sets the contact postal address
geoflow_contact$setPostalAddress(postalAddress)
postalAddresscontact postal address
setPostalCode()
Sets the contact postal code
geoflow_contact$setPostalCode(postalCode)
postalCodecontact postalCode
setCity()
Sets the contact city
geoflow_contact$setCity(city)
citycontact city
setCountry()
Sets the contact country
geoflow_contact$setCountry(country)
countrycontact country
asDataFrame()
Methods to export the geoflow_contact as data.frame using key-based syntax.
geoflow_contact$asDataFrame(line_separator = NULL)
line_separatora line separator. By default, the default line separator will be used.
an object of class data.frame giving the entities using key-based syntax
clone()
The objects of this class are cloneable with this method.
geoflow_contact$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: contact <- geoflow_contact$new() contact$setId("[email protected]") contact$setFirstName("John") contact$setLastName("Doe") contact$setOrganizationName("Nowhere") contact$setPositionName("Wizard") contact$setRole("Manager") contact$setVoice("+9999000000000") contact$setFacsimile("+9999000000001") contact$setEmail("[email protected]") contact$setWebsiteUrl("www.nowhere.org") contact$setWebsiteName("Nowhere Inc.") contact$setPostalAddress("Nowhere street") contact$setPostalCode("Nowhere code") contact$setCity("Nowhere city") contact$setCountry("Nowhere country") ## End(Not run)## Not run: contact <- geoflow_contact$new() contact$setId("[email protected]") contact$setFirstName("John") contact$setLastName("Doe") contact$setOrganizationName("Nowhere") contact$setPositionName("Wizard") contact$setRole("Manager") contact$setVoice("+9999000000000") contact$setFacsimile("+9999000000001") contact$setEmail("[email protected]") contact$setWebsiteUrl("www.nowhere.org") contact$setWebsiteName("Nowhere Inc.") contact$setPostalAddress("Nowhere street") contact$setPostalCode("Nowhere code") contact$setCity("Nowhere city") contact$setCountry("Nowhere country") ## End(Not run)
This class models a data object
R6Class object.
geoflow_data
Object of R6Class for modelling a data object
diran object of class character giving a data directory
datalist of object of class geoflow_data in case we point to a data directory
restrictedindicates whether the data is under restricted access or not
accessaccessor key for accessing sources. Default is 'default'
sourcesource
sourceFidsourceFid
sourceSqlsourceSql
sourceTypesource type
sourceZipcreate a zip for the sources (DEPRECATED with #344)
sourceZipOnlycreate a zip only for the sources, remove source files (DEPRECATED with #344)
sqlsql
uploadupload
uploadSourceupload source name
uploadTypeupload type
cqlfilterCQL filter for filtering data
workspacesworkspaces
storestore
layernamelayer name
layertitlelayer title
layerdesclayer description
layerurilayer URI layeruri layer URI
stylesstyles
styleUploadupload styles
dimensionsdimensions
cloud_patha relative path in a cloud storage (e.g., OCS)
spatialRepresentationTypespatial representation type eg. "vector", "grid"
ogc_dimensionsOGC dimensions
featuresfeatures
parametersparameters
geometryFieldgeometry field
geometryTypegeometry type
featureTypefeature type name
featureTypeObjfeature type object
attributesattributes
variablesvariables
coveragescoverages
envelopeCompositionTypeenvelope composition type (for coverages)
selectedResolutionselected resolution (for coverages)
selectedResolutionIndexselected resolution index (for coverages)
bandslist of bands
actionslocal actions
runwhether to run local actions
new()
Initializes an object of class geoflow_data
geoflow_data$new(str = NULL, config = NULL)
strcharacter string to initialize from, using key-based syntax
configa geoflow config, if available and needed
getDir()
Get data directory where datasets are scanned to build geoflow_data objects
geoflow_data$getDir()
an object of class character
getData()
Get a lis tof geoflow_data objects built from a directory
geoflow_data$getData()
a list of objects of class geoflow_data
getAllowedSourceValues()
Get allowed source values
geoflow_data$getAllowedSourceValues()
a vector of class character
setAccess()
Set accessor id. See list_data_accessors() for available accessors
geoflow_data$setAccess(access)
accessa data data accessor id
getAllowedSourceTypes()
Get allowed source types
geoflow_data$getAllowedSourceTypes()
a vector of class character
setSourceType()
Set the source type.
The source type is a simplification of the data mime type and is used to identify the type of source
set for the data object. By default it is assumed to be "other" (undefined). The source types currently
allowed in geoflow can be listed with $getAllowedSourcedTypes().
geoflow_data$setSourceType(sourceType)
sourceTypesource type
getAllowedGeomPossibleNames()
Get allowed Geometry possible names for coercing data to sf objects
geoflow_data$getAllowedGeomPossibleNames()
listof geom possible names
getAllowedXPossibleNames()
Get allowed X possible names for coercing data to sf objects
geoflow_data$getAllowedXPossibleNames()
listof X possible names
getAllowedYPossibleNames()
Get allowed Y possible names for coercing data to sf objects
geoflow_data$getAllowedYPossibleNames()
listof Y possible names
addSource()
Add source, object of class "character" (single source)
geoflow_data$addSource(source)
sourcesource
setSource()
Set source, object of class "character" (single source), or list.
For spatial source, a single source will be used, while for sources of type 'other'
(eg PDF files), multiple sources can be specified
geoflow_data$setSource(source)
sourcesource
setSourceFid()
Set source FID, object of class "character" (single source FID), or list.
geoflow_data$setSourceFid(sourceFid)
sourceFidsourceFid
setSourceSql()
This is a convenience method for users that want to specify directly
a SQL source. This method is called internally when a source SQL file has been set using
setSource
geoflow_data$setSourceSql(sourceSql)
sourceSqla source SQL query
setSourceZip()
Sets whether a zipped version of the data file(s) should be created from source files. Default is FALSE
geoflow_data$setSourceZip(sourceZip)
sourceZipzip sources, object of class logical
setSourceZipOnly()
Sets whether a zipped version of the data file(s) only should be created from source files. Default is FALSE
geoflow_data$setSourceZipOnly(sourceZipOnly)
sourceZipOnlyzip sources only, object of class logical
setUploadSource()
Set the source to upload in output software, alternative to the source. If leave empty, the source will be used as uploadSource. A typical use case is when we want to get a CSV source to import in a database, and use the dbtable (or view/query) as upload source for publication in software like geoserver.
geoflow_data$setUploadSource(uploadSource)
uploadSourceupload source
getAllowedUploadTypes()
Get allowed upload types
geoflow_data$getAllowedUploadTypes()
the list of allowed upload types
setUploadType()
The upload type is a simplification of the data mime type and is used to identify the type of data uploaded.
By default it is assumed to be "other" (undefined). The upload types currently allowed in geoflow can be
listed with $getAllowedUploadTypes().
geoflow_data$setUploadType(uploadType)
uploadTypeupload type
setUpload()
Set whether the source data should be uploaded to the sofware output declared in the geoflow
configuration or not. By default it is assumed that upload should be performed (upload TRUE).
geoflow_data$setUpload(upload)
uploadupload
setStyleUpload()
Set whether styles in source data should be uploaded, by default TRUE
geoflow_data$setStyleUpload(styleUpload)
styleUploadstyle upload
setSql()
Sets SQL for publication purpose.
geoflow_data$setSql(sql)
sqlsql
setCqlFilter()
Sets a CQL filter. In case of spatial data, once the data is read by geoflow (during initialization phase), the CQL filter will be applied to the data.
geoflow_data$setCqlFilter(cqlfilter)
cqlfilterCQL filter
setWorkspace()
Sets a workspace name, object of class character. A workspace must target a valid software type, object of
class character, to be declared as first argument of this function, assuming the corresponding software is
declared in the geoflow configuration.
geoflow_data$setWorkspace(software_type, workspace)
software_typesotware type where the workspace is identifier
workspaceworkspace name
setStore()
Sets a data/coverage store name, object of class character. Used as target data/coverage store name for GeoServer action.
geoflow_data$setStore(store)
storestore
setDatastore()
Sets a datastore name, object of class character. Used as target datastore name for GeoServer action. DEPRECATED, use setStore
geoflow_data$setDatastore(datastore)
datastoredatastore
setLayername()
Sets a layername, object of class character. Used as target layer name for Geoserver action.
geoflow_data$setLayername(layername)
layernamelayername
setLayertitle()
Sets a layer title, object of class character. If available, used as target layer title in SDI-related action.
geoflow_data$setLayertitle(layertitle)
layertitlelayertitle
setLayerdesc()
Sets a layer description, object of class character. If available, used as target layer description/abstract in SDI-related actions.
geoflow_data$setLayerdesc(layerdesc)
layerdesclayerdesc
setLayeruri()
Sets a layer URI, object of class character. If available, used as annotating URI for layer metadata (eg. in ISO 19115 action).
geoflow_data$setLayeruri(layeruri)
layerurilayeruri
addStyle()
Adds a style name, object of class character. Used as layer style name(s) for GeoServer action.
geoflow_data$addStyle(style)
stylestyle
addDimension()
Adds a dimension
geoflow_data$addDimension(name, dimension)
namedimension name
dimensionobject of class geoflow_dimension
setCloudPath()
Set cloud path
geoflow_data$setCloudPath(cloud_path)
cloud_pathcloud path
getAllowedSpatialRepresentationTypes()
Get allowed spatial representation types, typically "vector" and "grid"
geoflow_data$getAllowedSpatialRepresentationTypes()
an object of class character
setSpatialRepresentationType()
Set spatial representation type for the data considered
geoflow_data$setSpatialRepresentationType(spatialRepresentationType)
spatialRepresentationTypespatial representation type
setOgcDimensions()
Set OGC dimensions
geoflow_data$setOgcDimensions(name, values)
namedimension name
valuesdimension values
setFeatures()
Set data features
geoflow_data$setFeatures(features)
featuresfeatures
setParameter()
Set virtual parameter definition for setting virtual SQL view parametized layers in Geoserver, when uploadType is
set to dbquery.The arguments here follow the definition of virtual parameters in GeoServer, ie a name (alias),
the corresponding field name in the DBMS, a regular expression for validation of parameter values (required to
prevent SQL injection risks), and a default value.
geoflow_data$setParameter(name, fieldname, regexp, defaultvalue)
namename
fieldnamefieldname
regexpregexp
defaultvaluedefault value
setGeometryField()
Sets the name of the geometry field in the target GeoServer SQL view parametrized layer
geoflow_data$setGeometryField(geometryField)
geometryFieldgeometry field
setGeometryType()
Sets the name of the geometry field in the target GeoServer SQL view parametrized layer
geoflow_data$setGeometryType(geometryType)
geometryTypegeometry type
setFeatureType()
Sets a feature type (ID) to link data with a dictionnary
geoflow_data$setFeatureType(featureType)
featureTypefeature type name
setFeatureTypeObj()
Sets a feature type object
geoflow_data$setFeatureTypeObj(featureTypeObj)
featureTypeObjfeature type object of class geoflow_featuretype
setAttributes()
Set attributes, as simple way to describe attributes without binding to a proper geoflow_dictionary.
geoflow_data$setAttributes(attributes)
attributesattributes
setVariables()
Set variables, as simple way to describe variables without binding to a proper geoflow_dictionary.
geoflow_data$setVariables(variables)
variablesvariables
setCoverages()
Set coverages
geoflow_data$setCoverages(coverages)
coveragescoverages
getAllowedEnvelopeCompositionTypes()
Get allowed envelope composition types
geoflow_data$getAllowedEnvelopeCompositionTypes()
an object of class character
setEnvelopeCompositionType()
Set envelope composition type
geoflow_data$setEnvelopeCompositionType(envelopeCompositionType)
envelopeCompositionTypeenvelope composition type, either 'UNION' or 'INTERSECTION'
setSelectedResolution()
Set selected resolution
geoflow_data$setSelectedResolution(selectedResolution)
selectedResolutionselected resolution
setSelectedResolutionIndex()
Set selected resolution index
geoflow_data$setSelectedResolutionIndex(selectedResolutionIndex)
selectedResolutionIndexselected resolution index
setBand()
Set band
geoflow_data$setBand(name, index)
nameband name
indexband index
addAction()
Adds a local action
geoflow_data$addAction(action)
actionobject of class geoflow_action
checkSoftwareProperties()
A function triggered when loading a data object to check eventual software dependent properties, to make sure the corresponding software are declared in the config.
geoflow_data$checkSoftwareProperties(config)
configgeoflow config object
clone()
The objects of this class are cloneable with this method.
geoflow_data$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
This class models a data accessor to be used by geoflow
R6Class object.
geoflow_data_accessor
Object of R6Class for modelling a data accessor
geoflow::geoflowLogger -> geoflow_data_accessor
idaccessor ID
software_typeaccessor software type
definitionaccessor definition
packageslist of packages required for the accessor
downloada download function handler
lista function handler to list resources in case of a data directory
new()
Initializes the data ccessor
geoflow_data_accessor$new( id = NULL, software_type = NULL, definition, packages = list(), download, list = NULL )
idaccessor ID
software_typeaccessor software type
definitionaccessor definition
packageslist of packages required for the accessor
downloaddownload function handler
listlist function handler
setId()
Sets accessor ID
geoflow_data_accessor$setId(id)
idaccessor ID to set
setSoftwareType()
Sets software type
geoflow_data_accessor$setSoftwareType(software_type)
software_typesoftware type
setPackages()
Sets list of packages required for the accessor
geoflow_data_accessor$setPackages(packages)
packagesa vecto of package names
setDefinition()
Sets accessor definition
geoflow_data_accessor$setDefinition(definition)
definitionaccessor definition
setDownload()
Set download handler (a function with arguments resource,
file, path, unzip (TRUE/FALSE) and optional software)
geoflow_data_accessor$setDownload(download)
downloadan object of class function
setList()
Set list handler (a function with no arguments)
geoflow_data_accessor$setList(list)
listan object of class function
checkPackages()
Check that all packages required for the software are available, if yes,
import them in the R session, and return a data.frame giving the
packages names and version. If one or more packages are unavailable,
an error is thrown and user informed of the missing packages.
geoflow_data_accessor$checkPackages()
clone()
The objects of this class are cloneable with this method.
geoflow_data_accessor$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: access <- geoflow_data_accessor$new( id = "some-id", software_type = "some-software", definition = "definition", packages = list(), download = function(resource, file, path, software, unzip){}, list = function(resource, software){} ) ## End(Not run)## Not run: access <- geoflow_data_accessor$new( id = "some-id", software_type = "some-software", definition = "definition", packages = list(), download = function(resource, file, path, software, unzip){}, list = function(resource, software){} ) ## End(Not run)
This class models an date
R6Class object.
geoflow_date
Object of R6Class for modelling an date
keydate key. Default is "creation"
valuedate value. Default is generated with Sys.time()
new()
Initializes a geoflow_date
geoflow_date$new()
setKey()
Sets the date key
geoflow_date$setKey(key)
keydate key
setValue()
Sets the date value. The method will check validity of date value.
geoflow_date$setValue(value)
valuedate value
clone()
The objects of this class are cloneable with this method.
geoflow_date$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: date <- geoflow_date$new() date$setKey("creation") date$setValue(Sys.time()) ## End(Not run)## Not run: date <- geoflow_date$new() date$setKey("creation") date$setValue(Sys.time()) ## End(Not run)
This class models a dictionary to be executed by geoflow
R6Class object.
geoflow_dictionary
Object of R6Class for modelling a dictionary
sourcedictionary source, object of class data.frame
featuretypeslist of objects of class geoflow_featuretype
registerslist of objects of class geoflow_register
new()
Initializes a geoflow_dictionary object
geoflow_dictionary$new()
setSource()
Sets dictionnary source
geoflow_dictionary$setSource(source)
sourceobject of class data.frame
getFeatureTypes()
Get the list of geoflow_featuretype defined in the dictionary
geoflow_dictionary$getFeatureTypes()
a list of geoflow_featuretype
getFeatureTypeById()
Get an object of class geoflow_featuretype given an ID
geoflow_dictionary$getFeatureTypeById(id)
idid
an object of class geoflow_featuretype, otherwise NULL
addFeatureType()
Adds a feature type to the dictionnary
geoflow_dictionary$addFeatureType(ft)
ftobject of class geoflow_featuretype
getRegisters()
Get the list of registers associated with the dictionnary
geoflow_dictionary$getRegisters()
a list of geoflow_register objects
getRegisterById()
Get register by ID
geoflow_dictionary$getRegisterById(id)
idid
an object of class geoflow_register, otherwise NULL
addRegister()
Adds a register to the dictionnary
geoflow_dictionary$addRegister(register)
registerobject of class geoflow_register
clone()
The objects of this class are cloneable with this method.
geoflow_dictionary$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
This class models a dimension
R6Class object.
geoflow_dimension
Object of R6Class for modelling a dimension
longNamedimension longName
resolutiondimension resolution
sizedimension size
valuesdimension values
minValuedimension min value
maxValuedimension max value
new()
Initializes the geoflow_dimension
geoflow_dimension$new()
setLongName()
Sets the dimension long name
geoflow_dimension$setLongName(longName)
longNamedimension long name
setResolution()
Sets the resolution
geoflow_dimension$setResolution(uom, value)
uomunit of measure
valueresolution value
setSize()
Sets the dimension size
geoflow_dimension$setSize(size)
sizedimension size
setValues()
Sets dimension values
geoflow_dimension$setValues(values)
valuesdimension values
setMinValue()
Sets dimension min value
geoflow_dimension$setMinValue(minValue)
minValuemin value
setMaxValue()
Sets dimension max value
geoflow_dimension$setMaxValue(maxValue)
maxValuemax value
clone()
The objects of this class are cloneable with this method.
geoflow_dimension$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: dimension <- geoflow_dimension$new() dimension$setLongName("longname") dimension$setResolution(uom="s",value=1) dimension$setSize(10) dimension$setValues(c(1,2,3)) dimension$setMinValue(1) dimension$setMaxValue(3) ## End(Not run)## Not run: dimension <- geoflow_dimension$new() dimension$setLongName("longname") dimension$setResolution(uom="s",value=1) dimension$setSize(10) dimension$setValues(c(1,2,3)) dimension$setMinValue(1) dimension$setMaxValue(3) ## End(Not run)
This class models a entity object
R6Class object.
geoflow_entity
Object of R6Class for modelling a entity object
identifiersentity identifiers
datesentity dates
languageentity language
typesentity types
titlesentity titles
descriptionsentity descriptions
subjectsentity subjects
formatsentity formats
contactsentity contacts
relationsentity relations
rightsentity rights
spatial_extentspatial extent
spatial_bboxspatial bounding box
geo_bboxgeographic bounding box (in EPSG:4326 / WGS 84)
sridentity srid
temporal_extententity temporal extent
provenanceentity provenance
dataentity data
statusentity status
resourcesentity resources
localesentity locales
new()
Initializes an object of class geoflow_entity
geoflow_entity$new()
setShinyEditorMode()
Set mode for geoflow-shiny
geoflow_entity$setShinyEditorMode(mode = c("creation", "edition"))modemode
getShinyEditorMode()
Get mode for geoflow-shiny
geoflow_entity$getShinyEditorMode()
the shiny editor mode
getAllowedKeyValuesFor()
Retrieves keys allowed for a given tabular field name. eg. "Identifier"
geoflow_entity$getAllowedKeyValuesFor(field)
fieldfield name
the list of valid keys for the field considered
addLocalesFromValues()
Adds locales to entity from kvp values
geoflow_entity$addLocalesFromValues(values)
valuesvalues
setIdentifier()
Set an identifier given a key. Default key is "id", but others can be specified, eg "doi".
geoflow_entity$setIdentifier(key = "id", id)
keyidentifier key. Default is "id"
ididentifier value
addDate()
Adds a date
geoflow_entity$addDate(dateType, date)
dateTypedate type, object of class character
datedate, object of class Date or POSIXt
setLanguage()
Set the language used for the entity description (metadata). Default is "eng".
geoflow_entity$setLanguage(language)
languagelanguage
writeDataResource()
writes a data resource. Deprecrated Note: TODO to review in line with 'writeWorkflowJobDataResource
geoflow_entity$writeDataResource(obj = NULL, resourcename, type = "shp")
objobject
resourcenameresource name
typetype of resosurce
setType()
Set the type of description. By default a generic type (key = "generic") is defined to "dataset", and will be used as default type for actions that perform metadata production / publication.
geoflow_entity$setType(key = "generic", type)
keytype key. Default is "generic"
typetype value
setTitle()
Sets title
geoflow_entity$setTitle(key = "title", title)
keytitle key. Default is "title"
titletitle value
setDescription()
Sets description
geoflow_entity$setDescription(key, description)
keydescription key. Default is "abstract"
descriptiondescription value
addSubject()
Adds a subject
geoflow_entity$addSubject(subject)
subjectobject of class geoflow_subject
addFormat()
Adds a format
geoflow_entity$addFormat(format)
formatobject of class geoflow_format
addContact()
Adds a contact
geoflow_entity$addContact(contact)
contactobject of class geoflow_contact
addRelation()
Adds a relation
geoflow_entity$addRelation(relation)
relationobject of class geoflow_relation
addRight()
Adds a right
geoflow_entity$addRight(right)
rightobject of class geoflow_right
setSpatialExtent()
Set spatial extent. Various ways can be used to set the spatial extent 1) with a WKT string,
2) with a bbox, object of class matrix, or 3) specifying a data object (from sf).
The crs (coordinate reference system) should be specified with the crs SRID (number).
The spatial extent is not necessarily a bounding box but can be one or more geometries.
geoflow_entity$setSpatialExtent(wkt = NULL, bbox = NULL, data = NULL, crs = NA)
wkta WKT string
bboxa bbox
dataan object of class sf
crscrs
setSpatialBbox()
Set spatial bbox. Various ways can be used to set the spatial extent 1) with a WKT string,
2) with a bbox, object of class matrix, or 3) specifying a data object (from sf).
The crs (coordinate reference system) should be specified with the crs SRID (number).
geoflow_entity$setSpatialBbox(wkt = NULL, bbox = NULL, data = NULL, crs = NA)
wkta WKT string
bboxa bbox
dataan object of class sf
crscrs
setGeographicBbox()
Set geographic bbox (in EPGS:4326 / WGS 84), by converting (if needed) the spatial bbox
geoflow_entity$setGeographicBbox()
setSrid()
Sets entity SRID
geoflow_entity$setSrid(srid)
sridsrid
setTemporalExtent()
Sets temporal extent. The temporal extent can be a year, date instant or interval
geoflow_entity$setTemporalExtent(str)
strobject of class numeric (case of year) or character
setProvenance()
Sets entity provenance
geoflow_entity$setProvenance(provenance)
provenanceobject of class geoflow_provenance
setData()
Sets entity data object
geoflow_entity$setData(data)
dataobject of class geoflow_data
addData()
Adds entity data object
geoflow_entity$addData(data)
dataobject of class geoflow_data
getEntityJobDirname()
Gets entity job directory name. In case entity is identified with a DOI, the '/' (slash) will be replaced by '_' (underscore) to make sure directory is created.
geoflow_entity$getEntityJobDirname()
get the name of entity job directory that will be created for the entity
getEntityJobDirPath()
Gets entity job directory path. In the job directory, all entities subdirs will be created within a 'entities' directory.
geoflow_entity$getEntityJobDirPath(config, jobdir = NULL)
configgeoflow configuration object
jobdirrelative path of the job directory
the entity job directory path
prepareEntityJobDir()
Function called internally by geoflow that creates the entity directory and relevant sub-directories. The default sub-directories will include 'data' and 'metadata'. Other sub-directories may be created depnding on the actions enabled in the workflow (and if their target directory is different from 'data'/'metadata').
geoflow_entity$prepareEntityJobDir(config, jobdir = NULL)
configgeoflow config object
jobdirrelative path of the job directory
copyDataToJobDir()
This function will look at data object(s) associated to the entity (previously set with
setData or added with addData), and will try to (download)/copy the data source to the
geoflow job directory.
geoflow_entity$copyDataToJobDir(config, jobdir = NULL)
configgeoflow config object
jobdirrelative path of the job directory
copyStylesToJobDir()
This function checks for the availability of layer styles (set as entity resource) that would have been added with DBI handlers from a special DB 'layer_styles' table
geoflow_entity$copyStylesToJobDir(config)
configgeoflow config object
enrichWithDatatypes()
Function that will scan zip data files and resolve data objects sourceType and uploadType
geoflow_entity$enrichWithDatatypes(config, jobdir = NULL)
configgeoflow config object
jobdirrelative path of the job directory
enrichWithData()
This function will enrich the entity data objects with data features (vector data) or coverages (grid data). This method will overwrite
spatial metadata such as the bounding box (unless global option skipDynamicBbox is enabled). Note that the user spatial extent is not overwriten
since it may contain finer geometries than a bounding box.
geoflow_entity$enrichWithData(config, jobdir = NULL)
configgeoflow config object
jobdirrelative path of the job directory
enrichSpatialCoverageFromDB()
This function computes spatial coverage from DB (table, view or query)
without having to deal with a full data download. It is triggered when the global option
skipDataDownload is enabled.
geoflow_entity$enrichSpatialCoverageFromDB(config)
configgeoflow config object
enrichWithFeatures()
This function will enrich the entity data objects with data features (vector data). This method will overwrite
spatial metadata such as the bounding box (unless global option skipDynamicBbox is enabled). Note that the user spatial extent is not overwriten
since it may contain finer geometries than a bounding box.
geoflow_entity$enrichWithFeatures(config, jobdir = NULL)
configgeoflow config object
jobdirrelative path of the job directory
enrichWithCoverages()
This function will enrich the entity data objects with data coverages (grid data). This method will overwrite
spatial metadata such as the bounding box (unless global option skipDynamicBbox is enabled). Note that the user spatial extent is not overwriten
since it may contain finer geometries than a bounding box.
geoflow_entity$enrichWithCoverages(config, jobdir = NULL)
configgeoflow config object
jobdirrelative path of the job directory
prepareFeaturesToUpload()
This function will 1) check (in case of upload is requested) if the type of source and upload are both different on files formats(eg. csv,shp,gpkg) and 2) process automatically to conversion from source to upload type.
geoflow_entity$prepareFeaturesToUpload(config)
configgeoflow config object
enrichWithIdentifiers()
Function that will enrich entity with identifiers needed across multiple actions
geoflow_entity$enrichWithIdentifiers(config)
configgeoflow config object
enrichWithRelations()
This function that will enrich the entity with relations. At now this is essentially related to adding
relations if a Geoserver (geosapi) publishing action is enabled. Relations added will depend on the
enrich_with_relation_* options set in a) the geosapi action, ie.
1) add WMS auto-generated thumbnail (if option enrich_with_relation_wms_thumbnail is TRUE)
2) add WMS base URL relation (if option enrich_with_relation_wms is TRUE)
3) for vector spatial representation type:
- add WFS base URL relation (if option enrich_with_relation_wfs is TRUE)
- add WFS auto-generated links as convenience for data download links (if option enrich_with_relation_wfs_download_links is TRUE)
4) for grid spatial representation type:
- add WCS base URL relation (if option enrich_with_relation_wcs is TRUE)
b) in the geonapi action (for adding a CSW metadata URL)
b) in the ows4R action (for adding a CSW metadata URL)
geoflow_entity$enrichWithRelations(config)
configgeoflow config object
enrichWithSubjects()
Enrichs the entity with subjects. If no subject specify in Subjects, automatically add keyword from dictionary to 'theme' category
geoflow_entity$enrichWithSubjects(config, exclusions = c())
configgeoflow config object
exclusionsexclusions
enrichWithVocabularies()
Enrichs the entity with vocabularies
geoflow_entity$enrichWithVocabularies(config)
configgeoflow config object
enrichWithFormats()
Enrichs the entity with formats
geoflow_entity$enrichWithFormats(config)
configgeoflow config object
enrichWithMetadata()
Enrichs the entity properties with entity metadata from other properties.
geoflow_entity$enrichWithMetadata(config)
configgeoflow config object
getContacts()
Get the entity contacts
geoflow_entity$getContacts(pretty = FALSE)
prettyto prettify the output as data.frame
a list of geoflow_contact or a data.frame
getSubjects()
Get the entity subjects
geoflow_entity$getSubjects(pretty = FALSE, keywords = FALSE)
prettyto prettify the output as data.frame
keywordsto add keywords to the output or not. Default is FALSE
a list of geoflow_subject or a data.frame
getRelations()
Get the entity relations
geoflow_entity$getRelations(pretty = FALSE)
prettyto prettify the output as data.frame
a list of geoflow_relation or a data.frame
setStatus()
Set a simple status either "draft" or "published". This method is required to deal with systems that manage DOIs, such as Zenodo (with zen4R) or Dataverse (with atom4R) publishing actions (Used internally by geoflow).
geoflow_entity$setStatus(system, status)
systema system name eg. "zenodo", "dataverse"
statusa status for entity resource "draft" or "published"
getJobResource()
Get an entity job resource path
geoflow_entity$getJobResource(config, resourceType, filename)
configa geoflow config object
resourceTypetype of resource, matching a sub-directory within the entity job directory
filenamefilename
the file path of the job resource
getJobDataResource()
Get an entity job data resource path
geoflow_entity$getJobDataResource(config, filename)
configa geoflow config object
filenamefilename
the file path of the job data resource
getJobMetadataResource()
Get an entity job metadata resource path
geoflow_entity$getJobMetadataResource(config, filename)
configa geoflow config object
filenamefilename
the file path of the job metadata resource
addResource()
Adds a resource to the entity
geoflow_entity$addResource(id, resource)
idid of the resource
resourceresource
asDataFrame()
Methods to export the geoflow_entity as data.frame using key-based syntax.
geoflow_entity$asDataFrame(line_separator = NULL)
line_separatora line separator. By default, the default line separator will be used.
an object of class data.frame giving the entities using key-based syntax
clone()
The objects of this class are cloneable with this method.
geoflow_entity$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
This class models a feature type to be executed by geoflow
R6Class object.
geoflow_featuremember
Object of R6Class for modelling a dictionary feature type member
idfeature member ID
typefeature member type
codefeature member code
namefeature member name
deffeature member definition
defSourcefeature member definition source
minOccursfeature member minOccurs
maxOccursfeature member maxOccurs
uomfeature member unit of measure (uom)
registerIdfeature member register ID
registerScriptfeature member register script
new()
Initializes a geoflow_featuremember
geoflow_featuremember$new( type = "attribute", code = NULL, name = NULL, def = NULL, defSource = NULL, minOccurs = NULL, maxOccurs = NULL, uom = NULL, registerId = NULL, registerScript = NULL )
typetype
codecode
namename
defdefinition
defSourcedefinition source. Default is NULL
minOccursminOccurs. Default is NULL
maxOccursmaxOccurs. Default is NULL
uomunit of measure. Default is NULL
registerIdID of the register associated to the feature type. Default is NULL
registerScriptsource script providing the register functions. Default is NULL
asDataFrame()
Converts as data.frame
geoflow_featuremember$asDataFrame()
an object of class data.frame
clone()
The objects of this class are cloneable with this method.
geoflow_featuremember$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
This class models a feature type to be executed by geoflow
R6Class object.
geoflow_featuretype
Object of R6Class for modelling a dictionary feature type
idfeature type ID
membersfeature type members
new()
Initializes a geoflow_featuretype
geoflow_featuretype$new(id = NULL)
idid
addMember()
Adds a member
geoflow_featuretype$addMember(fm)
fmobject of class geoflow_featuremember
getMembers()
Get members
geoflow_featuretype$getMembers()
the list of members, as objects of class geoflow_featuremember
getMemberById()
Get member by ID
geoflow_featuretype$getMemberById(id)
idid
an object of class geoflow_featuremember, NULL otherwise
asDataFrame()
Converts to data frame
geoflow_featuretype$asDataFrame()
an object of class data.frame
clone()
The objects of this class are cloneable with this method.
geoflow_featuretype$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
This class models a format
R6Class object.
geoflow_format
Object of R6Class for modelling a format
keyformat key
namekey name
urikey URI
descriptionkey description
new()
Initializes a geoflow_format
geoflow_format$new(str = NULL)
strcharacter string to initialize object using key-based syntax
setKey()
Sets format key
geoflow_format$setKey(key)
keykey
setName()
Sets format name
geoflow_format$setName(name)
namename
setUri()
Sets format URI
geoflow_format$setUri(uri)
uriURI
setDescription()
Sets format description
geoflow_format$setDescription(description)
descriptiondescription
clone()
The objects of this class are cloneable with this method.
geoflow_format$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: format <- geoflow_format$new() format$setKey("distribution") format$setName("text/csv") format$setUri("https://www.iana.org/assignments/media-types/text/csv") format$setDescription("CSV format") ## End(Not run)## Not run: format <- geoflow_format$new() format$setKey("distribution") format$setName("text/csv") format$setUri("https://www.iana.org/assignments/media-types/text/csv") format$setDescription("CSV format") ## End(Not run)
This class models a content handler. An handler is a method to handle
some content (eg entity or contact). It is mainly driven by a function that takes
as argument the handler considered (as self accessible object), a source
which identifiers the source to be handled, that can be of a different type (eg a URL, a file path)
depending on the handler, and a config object, as the overall configuration created by geoflow
initWorkflow function.
R6Class object.
geoflow_handler
Object of R6Class for modelling a handler
idhandler id
typehandler type (entity,contact,dictionary)
fundersfunders
authorsauthors
maintainermaintainer
defhandler definition
packageshandler packages
funhandler function
scripthandler script
optionsoptions
available_optionsavailable options
statusstatus
notesnotes
new()
Initializes a geoflow_handler
geoflow_handler$new(
yaml = NULL,
id = NULL,
type = c("entity", "contact", "dictionary"),
funders = list(),
authors = list(),
maintainer = NULL,
def = "",
packages = list(),
fun = NULL,
script = NULL,
options = list(),
available_options = list(),
status = "stable",
notes = ""
)yamla YAML file
idid
typetype
fundersfunders
authorsauthors
maintainermaintainer
defdef
packageslist of packages required for the handler
funthe handler function having 2 arguments config and source
scripta handler script
optionsaction options
available_optionsavailable options for the action
statusstatus (experimental/stable/deprecated/superseded)
notesnotes
fromYAML()
Reads handler properties from YAML file
geoflow_handler$fromYAML(file)
filefile
checkPackages()
Check that all packages required for the handler are available, if yes,
import them in the R session, and return a data.frame giving the
packages names and version. If one or more packages are unavailable,
an error is thrown and user informed of the missing packages.
geoflow_handler$checkPackages()
getOption()
Get handler option value
geoflow_handler$getOption(option)
optionoption id
the option value, either specified through a workflow, or the default value
clone()
The objects of this class are cloneable with this method.
geoflow_handler$clone(deep = FALSE)
deepWhether to make a deep clone.
This class is essentially called internally by geoflow to register default handlers for entities and contacts.
Emmanuel Blondel <[email protected]>
## Not run: handler <- geoflow_handler$new( id = "some-id", def = "some definition", packages = list(), fun = function(handler, source, config){}, available_options = list() ) ## End(Not run)## Not run: handler <- geoflow_handler$new( id = "some-id", def = "some definition", packages = list(), fun = function(handler, source, config){}, available_options = list() ) ## End(Not run)
This class models a keyword
R6Class object.
geoflow_keyword
Object of R6Class for modelling a keyword
namekeyword
urikeyword uri
new()
Initializes a geoflow_keyword
geoflow_keyword$new(name = NULL, uri = NULL)
namekeyword name
urikeyword URI
setName()
Sets keyword
geoflow_keyword$setName(name)
namekeyword name
setUri()
Sets keyword URI
geoflow_keyword$setUri(uri)
urikeyword URI
clone()
The objects of this class are cloneable with this method.
geoflow_keyword$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: kwd <- geoflow_keyword$new() kwd$setName("keyword") kwd$setUri("http://somelink/keyword") ## End(Not run)## Not run: kwd <- geoflow_keyword$new() kwd$setName("keyword") kwd$setUri("http://somelink/keyword") ## End(Not run)
This class models an kvp (Key Values pair)
R6Class object.
geoflow_kvp
Object of R6Class for modelling an kvp (Key Values pair)
keythe KVP key
valuesthe KVP values
localea locale definition for the KVP
new()
Initializes a Key-Value pair (KVP)
geoflow_kvp$new(key = NULL, values = NULL, locale = NULL)
keykey
valuesvalues
localelocale
setKey()
Set KVP key
geoflow_kvp$setKey(key)
keythe key
setValues()
Set KVP values
geoflow_kvp$setValues(values)
valuesthe values
setLocale()
Set KVP locale
geoflow_kvp$setLocale(locale)
localelocale
clone()
The objects of this class are cloneable with this method.
geoflow_kvp$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
This class models an process
R6Class object.
geoflow_process
Object of R6Class for modelling an process
rationaleprocess rationale
descriptionprocess description
processorsobject of class list
new()
Initializes the geoflow_process
geoflow_process$new()
setRationale()
Set process rationale
geoflow_process$setRationale(rationale)
rationalethe process rationale
setDescription()
Set process description
geoflow_process$setDescription(description)
descriptionSet the process description
addProcessor()
Adds processor
geoflow_process$addProcessor(processor)
processor, object of class geoflow_contact
clone()
The objects of this class are cloneable with this method.
geoflow_process$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: process <- geoflow_process$new() process$setRationale("rationale") process$setDescription("description") processor <- geoflow_contact$new() process$addProcessor(processor) ## End(Not run)## Not run: process <- geoflow_process$new() process$setRationale("rationale") process$setDescription("description") processor <- geoflow_contact$new() process$addProcessor(processor) ## End(Not run)
This class models an profile
R6Class object.
geoflow_profile
Object of R6Class for modelling an profile
idprofile id
nameprofile name
projectprofile project
organizationprofile organization
logosprofile logo(s)
modemode of execution (Default is "raw")
optionsglobal config options
new()
Initializes an object of class geoflow_profile
geoflow_profile$new()
setId()
Sets profile ID
geoflow_profile$setId(id)
idid
setName()
Sets profile name
geoflow_profile$setName(name)
namename
setProject()
Sets profile project
geoflow_profile$setProject(project)
projectproject
setOrganization()
Sets profile organization
geoflow_profile$setOrganization(organization)
organizationorganization
addLogo()
Adds a profile organization
geoflow_profile$addLogo(logo)
logologo
setMode()
Sets profile mode
geoflow_profile$setMode(mode)
modeprofile mode
setOption()
Set global config option
geoflow_profile$setOption(name, value)
nameoption name
valueoption value
clone()
The objects of this class are cloneable with this method.
geoflow_profile$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: profile <- geoflow_profile$new() profile$setId("workflow1") profile$setName("Workflow 1") profile$setProject("My project") profile$setOrganization("My organization") provfile$addLogo("https://via.placeholder.com/300x150.png/09f/fff?text=geoflow") ## End(Not run)## Not run: profile <- geoflow_profile$new() profile$setId("workflow1") profile$setName("Workflow 1") profile$setProject("My project") profile$setOrganization("My organization") provfile$addLogo("https://via.placeholder.com/300x150.png/09f/fff?text=geoflow") ## End(Not run)
This class models an provenance
R6Class object.
geoflow_provenance
Object of R6Class for modelling an provenance
statementprovenance statement
processeslist of processes, as objects of class geoflow_process
new()
Initializes a geoflow_provenance
geoflow_provenance$new(str = NULL)
strcharacter string to initialize a provenance using key-based syntax
setStatement()
Set process statement
geoflow_provenance$setStatement(statement)
statementprocess statement
addProcess()
Adds process
geoflow_provenance$addProcess(process)
process, object of class geoflow_process
clone()
The objects of this class are cloneable with this method.
geoflow_provenance$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: provenance <- geoflow_provenance$new() provenance$setStatement("statement") process1 <- geoflow_process$new() process1$setRationale("task 1") process1$setDescription("Performs task 1") provenance$addProcess(process1) process2 <- geoflow_process$new() process2$setRationale("task 2") process2$setDescription("Performs task 2") provenance$addProcess(process2) ## End(Not run)## Not run: provenance <- geoflow_provenance$new() provenance$setStatement("statement") process1 <- geoflow_process$new() process1$setRationale("task 1") process1$setDescription("Performs task 1") provenance$addProcess(process1) process2 <- geoflow_process$new() process2$setRationale("task 2") process2$setDescription("Performs task 2") provenance$addProcess(process2) ## End(Not run)
This class models a register to be used by geoflow
R6Class object.
geoflow_register
Object of R6Class for modelling a register
idregister id
defregister def
funregister function
dataregister data
new()
Initializes an object of class geoflow_register
geoflow_register$new(id, def, fun)
idid
defdef
funfun
fetch()
Fetchs the register data using the register function
geoflow_register$fetch(config = NULL)
configa geoflow config object
check()
Checks the register data structure. The structure of the data.frame returned
by the register function should be of 4 columns including "code", "uri", "label", "definition".
In case the data structure is not valid, the function throws an error.
geoflow_register$check(data)
dataa register data structure
clone()
The objects of this class are cloneable with this method.
geoflow_register$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: register <- geoflow_register$new( id = "some-id", def = "definition", fun = function(){} ) ## End(Not run)## Not run: register <- geoflow_register$new( id = "some-id", def = "definition", fun = function(){} ) ## End(Not run)
This class models an relation
R6Class object.
geoflow_relation
Object of R6Class for modelling an relation
keyrelation key
linkrelation link
mimeTyperelation mime
namerelation name
descriptionrelation name
provprovenance,
new()
Initializes an object of class geoflow_relation
geoflow_relation$new(str = NULL)
strcharacter string to initialize from using key-based syntax
setKey()
Set key
geoflow_relation$setKey(key)
keykey
setLink()
Set link
geoflow_relation$setLink(link)
linklink
setMimeType()
Set mime type
geoflow_relation$setMimeType(mimeType)
mimeTypemime type
setName()
Set name
geoflow_relation$setName(name)
namename
setDescription()
Set description
geoflow_relation$setDescription(description)
descriptiondescription
setProv()
Set provenance
geoflow_relation$setProv(prov = c("user", "geoflow"))provprovenance
clone()
The objects of this class are cloneable with this method.
geoflow_relation$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: relation <- geoflow_relation$new() relation$setProv("user") relation$setKey("wms") relation$setLink("http://somelink/wms") relation$setMimeType("application/xml") relation$setName("layername") relation$setDescription("layer description") ## End(Not run)## Not run: relation <- geoflow_relation$new() relation$setProv("user") relation$setKey("wms") relation$setLink("http://somelink/wms") relation$setMimeType("application/xml") relation$setName("layername") relation$setDescription("layer description") ## End(Not run)
This class models an right
R6Class object.
geoflow_right
Object of R6Class for modelling an right
keyright key
valuesright values
new()
Initializes an object of class geoflow_right
geoflow_right$new(str = NULL, kvp = NULL)
strcharacter string to initialize from using key-based syntax
kvpan object of class geoflow_kvp
setKey()
Sets key
geoflow_right$setKey(key)
keykey
setValues()
Sets values
geoflow_right$setValues(values)
valuesvalues
clone()
The objects of this class are cloneable with this method.
geoflow_right$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: right <- geoflow_right$new() right$setKey("use") right$setValues("No restrictions") ## End(Not run)## Not run: right <- geoflow_right$new() right$setKey("use") right$setValues("No restrictions") ## End(Not run)
This class models a SKOS vocabulary
R6Class object.
geoflow_skos_vocabulary
Object of R6Class for modelling a SKOS vocabulary
geoflow::geoflow_vocabulary -> geoflow_skos_vocabulary
rdfrdf
rdf_datardf_data
endpointendpoint
new()
Initializes a vocabulary
geoflow_skos_vocabulary$new(id, def, uri, endpoint = NULL, file = NULL)
idid
defdef
uriuri
endpointA Sparql endpoint
filea RDF file
query()
query
geoflow_skos_vocabulary$query(str, graphUri = NULL, mimetype = "text/csv")
strstr
graphUrigraphUri
mimetypemimetype
the response of the SPARQL query
query_full_dataset()
Queries full dataset
geoflow_skos_vocabulary$query_full_dataset()
an object of class tibble
ping()
Ping query
geoflow_skos_vocabulary$ping()
list_collections()
list_collections
geoflow_skos_vocabulary$list_collections( mimetype = "text/csv", count_sub_collections = TRUE, count_concepts = TRUE )
mimetypemimetype
count_sub_collectionscount_sub_collections. Default is TRUE
count_conceptscount_concepts. Default is TRUE
the response of the SPARQL query
get_concepts_hierarchy()
list_concepts
geoflow_skos_vocabulary$get_concepts_hierarchy(
lang = "en",
method = c("SPARQL", "R"),
out_format = c("tibble", "list")
)langlang
methodmethod used to build the hierarchy, either "SPARQL" or "R"
out_formatoutput format (tibble or list). Default is "tibble"
the response of the SPARQL query
list_concepts()
list_concepts
geoflow_skos_vocabulary$list_concepts(lang = "en", mimetype = "text/csv")
langlang
mimetypemimetype
the response of the SPARQL query
query_from_uri()
query_from_uri
geoflow_skos_vocabulary$query_from_uri( uri, graphUri = NULL, mimetype = "text/csv" )
uriuri
graphUrigraphUri
mimetypemimetype
an object of class tibble
query_from_term()
query_from_term
geoflow_skos_vocabulary$query_from_term( term, graphUri = NULL, mimetype = "text/csv" )
termterm
graphUrigraphUri
mimetypemimetype
an object of class tibble
clone()
The objects of this class are cloneable with this method.
geoflow_skos_vocabulary$clone(deep = FALSE)
deepWhether to make a deep clone.
This class models a software to be used by geoflow
R6Class object.
geoflow_software
Object of R6Class for modelling a software
geoflow::geoflowLogger -> geoflow_software
idsoftware id
typesoftware I/O type ("input" or "output")
software_typetype of software
definitiondefinition
packageslist of packages required for the software functioning
handlersoftware handler function
argumentssoftware arguments
parameterssoftware parameters
attributessoftware attributes
propertiessoftware properties
actionsactions associated with the software
new()
Initializes a software
geoflow_software$new( id = NULL, type = NULL, software_type, packages = list(), definition, handler, arguments, attributes = list(), actions = list() )
idid
typetype "input" or "output"
software_typesoftware type
packageslist of packages required for the software functioning
definitionsoftware definition
handlersoftware handler function
argumentssoftware handler arguments
attributessoftware attributes
actionssoftware actions
setId()
Sets software ID
geoflow_software$setId(id)
idid
setType()
Set type. Either "input" or "output"
geoflow_software$setType(type)
typesoftware I/O type
setSoftwareType()
Set software type
geoflow_software$setSoftwareType(software_type)
software_typesoftware type
setPackages()
Set software required packages
geoflow_software$setPackages(packages)
packageslist of package names
setDefinition()
Set software definition
geoflow_software$setDefinition(definition)
definitionsoftware definition
setAttributes()
Set attributes. Function to call when creating an instance of geoflow_software
geoflow_software$setAttributes(attributes)
attributesnamed list of attributes
setProperties()
Set properties. Function to call to pass argument values for a given geoflow_software
geoflow_software$setProperties(props)
propsnamed list of properties
setArguments()
Set software arguments. Function to call when creating an instance of geoflow_software
geoflow_software$setArguments(arguments)
argumentslist of software arguments
setParameters()
Set parameters. Function to call to pass argument values for a given geoflow_software
geoflow_software$setParameters(params)
paramsnamed list of parameters
setActions()
Set software actions
geoflow_software$setActions(actions)
actionsa list of geoflow_action
setHandler()
Set the software handler function
geoflow_software$setHandler(handler)
handlerobject of class function
checkPackages()
Check that all packages required for the software are available, if yes,
import them in the R session, and return a data.frame giving the
packages names and version. If one or more packages are unavailable,
an error is thrown and user informed of the missing packages.
geoflow_software$checkPackages()
getHandlerInstance()
Get the software handler instance
geoflow_software$getHandlerInstance()
an object instance of the software handler
clone()
The objects of this class are cloneable with this method.
geoflow_software$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: software<- geoflow_software$new( id = "some-id", type = "output", software_type = "software", definition = "definition", packages = list(), handler = function(){}, arguments = list( url = list(def = "the software url") ), attributes = list( workspace = list(def = "a workspace name in the software") ) ) ## End(Not run)## Not run: software<- geoflow_software$new( id = "some-id", type = "output", software_type = "software", definition = "definition", packages = list(), handler = function(){}, arguments = list( url = list(def = "the software url") ), attributes = list( workspace = list(def = "a workspace name in the software") ) ) ## End(Not run)
This class models a subject
R6Class object.
geoflow_subject
Object of R6Class for modelling a subject
keysubject key
namesubject name
urisubject URI
datessubject date(s)
keywordssubject keywords
new()
Initializes an object of class geoflow_subject
geoflow_subject$new(str = NULL, kvp = NULL)
stra character string to initialize from, using key-based syntax
kvpan object of class geoflow_kvp
setKey()
Sets subject key
geoflow_subject$setKey(key)
keykey
setName()
Sets subject name
geoflow_subject$setName(name)
namename
setUri()
Sets subject URI
geoflow_subject$setUri(uri)
uriuri
setDate()
Sets date
geoflow_subject$setDate(dateType, date)
dateTypetype of date
datedate
addKeyword()
Adds a keyword
geoflow_subject$addKeyword(keyword, uri = NULL)
keywordkeyword
urikeyword URI. Default is NULL
getKeywords()
Get keywords associated with the subject
geoflow_subject$getKeywords(pretty = FALSE)
prettywhether the output has to prettyfied as data.frame
the list of keywords as list of geoflow_keyword objects or data.frame
clone()
The objects of this class are cloneable with this method.
geoflow_subject$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: subject <- geoflow_subject$new() subject$setKey("theme") subject$setName("General") subject$setUri("http://somelink/general") subject$addKeyword("keyword1", "http://somelink/keyword1") subject$addKeyword("keyword2", "http://somelink/keyword2") subject$addKeyword("keyword3", "http://somelink/keyword3") ## End(Not run)## Not run: subject <- geoflow_subject$new() subject$setKey("theme") subject$setName("General") subject$setUri("http://somelink/general") subject$addKeyword("keyword1", "http://somelink/keyword1") subject$addKeyword("keyword2", "http://somelink/keyword2") subject$addKeyword("keyword3", "http://somelink/keyword3") ## End(Not run)
geoflow_validator
geoflow_validator
sourceobject of class data.frame handling metadata objects to validate
new()
Initializes a table validator for a given metadata model
geoflow_validator$new(model, valid_columns, source)
modelthe data model name, eg. "entity", "contact"
valid_columnsa vector of valid columns for the data model
sourcean object of class data.frame handling the contacts
validate_structure()
Validates a source table against a data model structure
geoflow_validator$validate_structure()
TRUE if valid, FALSE otherwise.
validate_content()
Validates a source table using syntactic and content validation rules
geoflow_validator$validate_content(raw = FALSE)
rawindicates whether to return a list of geoflow_validator_cell objects or a data.frame
debugdebug validation
a list of geoflow_validator_cell objects, or data.frame
clone()
The objects of this class are cloneable with this method.
geoflow_validator$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_cell
geoflow_validator_cell
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
new()
Initializes a geoflow_validator_cell
geoflow_validator_cell$new( na_authorized, use_key_syntax, key_required, valid_keys, default_key, error_if_invalid_key, exclude_http_keys, multiple, i, j, str )
na_authorizedif validator cell authorizes NAs or empty strings. Default is FALSE
use_key_syntaxif validator cell uses key-based syntax. Default is TRUE
key_requiredif validator cell has a key required. Default is TRUE
valid_keysvalid keys for the validator cell. Default is an empty list
default_keydefault_key to use if key is omitted. Default is NULL
error_if_invalid_keyraise an error if key is invalid. Default is TRUE
exclude_http_keysif 'http' keys have to be excluded from validation checks. Default is TRUE
multipleif cell may contain multiple values. Deprecated
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strcharacter string to validate
isNaAuthorized()
Indicates if the validator cell authorizes NAs and empty strings
geoflow_validator_cell$isNaAuthorized()
TRUE if authorizes NAs and empty strings, FALSE otherwise
isKeySynthaxUser()
Indicates if the validator cell makes use of key-based syntax
geoflow_validator_cell$isKeySynthaxUser()
TRUE if using key-based syntax, FALSE otherwise
isKeyRequired()
Indicates if a key is required for the validator cell
geoflow_validator_cell$isKeyRequired()
TRUE if requires a key, FALSE otherwise
getValidKeys()
Gives the list of valid keys for the validator cell
geoflow_validator_cell$getValidKeys()
the list of valid keys
isErrorIfInvalidKey()
Indicates if a report error will be given in case of invalid key
geoflow_validator_cell$isErrorIfInvalidKey()
TRUE if a report error will be given in case of invalid key, FALSE otherwise
getDefaultKey()
Gets the default key
geoflow_validator_cell$getDefaultKey()
the default key
isExcludeHttpKeys()
Indicates if 'http' keys are excluded from the validation
geoflow_validator_cell$isExcludeHttpKeys()
TRUE if 'http' keys are excluded from the validation, FALSE otherwise
isMultiple()
indicates if multiple key-based components can be used within a same cell
geoflow_validator_cell$isMultiple()
TRUE if supporting multiple key-based components by cell, FALSE otherwise
validate()
Proceeds with syntactic validation for the cell considered
geoflow_validator_cell$validate()
an object of class data.frame including possible errors/warnings
clone()
The objects of this class are cloneable with this method.
geoflow_validator_cell$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_contact_Identifier
geoflow_validator_contact_Identifier
geoflow::geoflow_validator_cell -> geoflow_validator_contact_Identifier
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()new()
Initializes a contact 'Identifier' cell
geoflow_validator_contact_Identifier$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
validate()
Validates a contact identifier. Proceeds with syntactic validation and content (ORCID) validation.
geoflow_validator_contact_Identifier$validate()
an validation report, as object of class data.frame
clone()
The objects of this class are cloneable with this method.
geoflow_validator_contact_Identifier$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_contacts
geoflow_validator_contacts
geoflow::geoflow_validator -> geoflow_validator_contacts
new()
Initializes a contacts table validator
geoflow_validator_contacts$new(source)
sourcean object of class data.frame handling the contacts
clone()
The objects of this class are cloneable with this method.
geoflow_validator_contacts$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entities
geoflow_validator_entities
geoflow::geoflow_validator -> geoflow_validator_entities
new()
Initializes an entities table validator
geoflow_validator_entities$new(source)
sourcean object of class data.frame handling the entities
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entities$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Creator
geoflow_validator_entity_Creator
geoflow::geoflow_validator_cell -> geoflow_validator_entity_Creator
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()geoflow::geoflow_validator_cell$validate()new()
Initializes an entity 'Creator' cell
geoflow_validator_entity_Creator$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entity_Creator$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Data
geoflow_validator_entity_Data
geoflow::geoflow_validator_cell -> geoflow_validator_entity_Data
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()geoflow::geoflow_validator_cell$validate()new()
Initializes an entity 'Data' cell
geoflow_validator_entity_Data$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entity_Data$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Date
geoflow_validator_entity_Date
geoflow::geoflow_validator_cell -> geoflow_validator_entity_Date
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()new()
Initializes an entity 'Date' cell
geoflow_validator_entity_Date$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
validate()
Validates a date. Proceeds with syntactic validation and content validation.
geoflow_validator_entity_Date$validate()
an validation report, as object of class data.frame
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entity_Date$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Description
geoflow_validator_entity_Description
geoflow::geoflow_validator_cell -> geoflow_validator_entity_Description
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()geoflow::geoflow_validator_cell$validate()new()
Initializes an entity 'Description' cell
geoflow_validator_entity_Description$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entity_Description$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Format
geoflow_validator_entity_Format
geoflow::geoflow_validator_cell -> geoflow_validator_entity_Format
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()geoflow::geoflow_validator_cell$validate()new()
Initializes an entity 'Format' cell
geoflow_validator_entity_Format$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entity_Format$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Identifier
geoflow_validator_entity_Identifier
geoflow::geoflow_validator_cell -> geoflow_validator_entity_Identifier
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()new()
Initializes an entity 'Identifier' cell
geoflow_validator_entity_Identifier$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
validate()
Validates an entity identifier. Proceeds with syntactic validation and content validation for DOIs and UUIDs.
geoflow_validator_entity_Identifier$validate()
an validation report, as object of class data.frame
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entity_Identifier$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Language
geoflow_validator_entity_Language
geoflow::geoflow_validator_cell -> geoflow_validator_entity_Language
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()new()
Initializes an entity 'Language' cell
geoflow_validator_entity_Language$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
validate()
Validates a language. Proceeds with syntactic validation and language validation.
geoflow_validator_entity_Language$validate()
an validation report, as object of class data.frame
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entity_Language$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Provenance
geoflow_validator_entity_Provenance
geoflow::geoflow_validator_cell -> geoflow_validator_entity_Provenance
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()new()
Initializes an entity 'Provenance' cell
geoflow_validator_entity_Provenance$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
validate()
Validates a Provenance. Proceeds with syntactic validation and content validation.
geoflow_validator_entity_Provenance$validate()
an validation report, as object of class data.frame
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entity_Provenance$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Relation
geoflow_validator_entity_Relation
geoflow::geoflow_validator_cell -> geoflow_validator_entity_Relation
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()geoflow::geoflow_validator_cell$validate()new()
Initializes an entity 'Relation' cell
geoflow_validator_entity_Relation$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entity_Relation$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Rights
geoflow_validator_entity_Rights
geoflow::geoflow_validator_cell -> geoflow_validator_entity_Rights
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()geoflow::geoflow_validator_cell$validate()new()
Initializes an entity 'Rights' cell
geoflow_validator_entity_Rights$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entity_Rights$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_SpatialCoverage
geoflow_validator_entity_SpatialCoverage
geoflow::geoflow_validator_cell -> geoflow_validator_entity_SpatialCoverage
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()new()
Initializes an entity 'SpatialCoverage' cell
geoflow_validator_entity_SpatialCoverage$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
validate()
Validates a spatial coverage. Proceeds with syntactic validation and spatial coverage validation (including EWKT, WKT and SRID).
geoflow_validator_entity_SpatialCoverage$validate()
an validation report, as object of class data.frame
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entity_SpatialCoverage$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Subject
geoflow_validator_entity_Subject
geoflow::geoflow_validator_cell -> geoflow_validator_entity_Subject
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()new()
Initializes an entity 'Subject' cell
geoflow_validator_entity_Subject$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
validate()
Validates a Subject. Proceeds with syntactic validation and content validation.
geoflow_validator_entity_Subject$validate()
an validation report, as object of class data.frame
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entity_Subject$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_TemporalCoverage
geoflow_validator_entity_TemporalCoverage
geoflow::geoflow_validator_cell -> geoflow_validator_entity_TemporalCoverage
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()new()
Initializes an entity 'TemporalCoverage' cell
geoflow_validator_entity_TemporalCoverage$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
validate()
Validates temporal coverage. Proceeds with syntactic validation and temporal coverage validation.
geoflow_validator_entity_TemporalCoverage$validate()
an validation report, as object of class data.frame
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entity_TemporalCoverage$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Title
geoflow_validator_entity_Title
geoflow::geoflow_validator_cell -> geoflow_validator_entity_Title
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()geoflow::geoflow_validator_cell$validate()new()
Initializes an entity 'Title' cell
geoflow_validator_entity_Title$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entity_Title$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Type
geoflow_validator_entity_Type
geoflow::geoflow_validator_cell -> geoflow_validator_entity_Type
geoflow::geoflow_validator_cell$getDefaultKey()geoflow::geoflow_validator_cell$getValidKeys()geoflow::geoflow_validator_cell$isErrorIfInvalidKey()geoflow::geoflow_validator_cell$isExcludeHttpKeys()geoflow::geoflow_validator_cell$isKeyRequired()geoflow::geoflow_validator_cell$isKeySynthaxUser()geoflow::geoflow_validator_cell$isMultiple()geoflow::geoflow_validator_cell$isNaAuthorized()geoflow::geoflow_validator_cell$validate()new()
Initializes an entity 'Type' cell
geoflow_validator_entity_Type$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
clone()
The objects of this class are cloneable with this method.
geoflow_validator_entity_Type$clone(deep = FALSE)
deepWhether to make a deep clone.
This class models a vocabulary
R6Class object.
geoflow_vocabulary
Object of R6Class for modelling a vocabulary
idid
defdef
uriuri
software_typesoftware_type
softwaresoftware
connectionconnection
new()
Initializes a vocabulary
geoflow_vocabulary$new(id, def, uri, software_type, connection = "unknown")
idid
defdef
uriuri
software_typesoftware type
connectionconnection
setSoftware()
Set software
geoflow_vocabulary$setSoftware(software)
softwaresoftware
clone()
The objects of this class are cloneable with this method.
geoflow_vocabulary$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflowLogger
geoflowLogger
R6Class object.
Object of R6Class for modelling a simple logger
verboseverbose
debugdebug
separator()
Util to separate chunks of logs of different natures
geoflowLogger$separator(char)
charA character to be used, eg '='
INFO()
Prints an INFO logger message
geoflowLogger$INFO(txt, ...)
txtlogger message
...values to be passed into txt. See sprintf
WARN()
Prints an WARN logger message
geoflowLogger$WARN(txt, ...)
txtlogger message
...values to be passed into txt. See sprintf
ERROR()
Prints an ERROR logger message
geoflowLogger$ERROR(txt, ...)
txtlogger message
...values to be passed into txt. See sprintf
DEBUG()
Prints an DEBUG logger message
geoflowLogger$DEBUG(txt, ...)
txtlogger message
...values to be passed into txt. See sprintf
new()
Initializes an object of class geoflowLogger
geoflowLogger$new(verbose = TRUE, debug = FALSE)
verboseTRUE if the logger is enabled, FALSE otherwise. Default is TRUE
debugTRUE if the debugger is enabled, FALSE otherwise. Default is FALSE
clone()
The objects of this class are cloneable with this method.
geoflowLogger$clone(deep = FALSE)
deepWhether to make a deep clone.
Logger class used internally by geoflow
get_absolute_path allows to get the absolute path of a resource
given a base directory
get_absolute_path(path, base, mustWork, expand_tilde)get_absolute_path(path, base, mustWork, expand_tilde)
path |
a path in character string |
base |
a base direcotry |
mustWork |
must work? |
expand_tilde |
expand tilde? |
Emmanuel Blondel, [email protected]
get_config_resource_path
get_config_resource_path(config, path)get_config_resource_path(config, path)
config |
a geoflow config |
path |
a resource path to resolve vs. the config root dir |
Emmanuel Blondel, [email protected]
get_contact_handler allows to get a contact handler
get_contact_handler(id)get_contact_handler(id)
id |
A contact handler identifier |
an object of class geoflow_handler
Emmanuel Blondel, [email protected]
get_data_accessor get a data accessor by ID.
get_data_accessor('ocs')get_data_accessor('ocs')
id |
an accessor ID |
an object of class geoflow_data_accessor, or NULL
Emmanuel Blondel, [email protected]
get_dictionary_handler allows to get a dictionary handler
get_dictionary_handler(id)get_dictionary_handler(id)
id |
A dictionary handler identifier |
an object of class geoflow_handler
Emmanuel Blondel, [email protected]
get_entity_handler allows to get an entity handler
get_entity_handler(id)get_entity_handler(id)
id |
An entity handler identifier |
an object of class geoflow_handler
Emmanuel Blondel, [email protected]
get_epsg_code is a consolidated method to get EPSG code (srid) from a CRS
get_epsg_code(x)get_epsg_code(x)
x |
an object of class 'sf' |
Emmanuel Blondel, [email protected]
get_line_separator get the line separator used by geoflow
when extracting cell components for tabular data content handling. Default is
set to an underscore followed by a line break.
get_line_separator()get_line_separator()
Emmanuel Blondel, [email protected]
Get locales from a property values set
get_locales_from(values)get_locales_from(values)
values |
values |
get_union_bbox will build a unified bounding box from a list of geoflow_data objects
get_union_bbox(data_objects)get_union_bbox(data_objects)
data_objects |
list of |
Emmanuel Blondel, [email protected]
getDBTableColumnComment
getDBTableColumnComment(dbi, schema, table, column_index)getDBTableColumnComment(dbi, schema, table, column_index)
dbi |
a dbi connection |
schema |
schema |
table |
table |
column_index |
table column index |
the table comment
Emmanuel Blondel, [email protected]
getDBTableComment
getDBTableComment(dbi, schema, table)getDBTableComment(dbi, schema, table)
dbi |
a dbi connection |
schema |
schema |
table |
table |
the table comment
Emmanuel Blondel, [email protected]
initWorkflow allows to init a workflow
initWorkflow(file, dir, jobDirPath, handleMetadata, session)initWorkflow(file, dir, jobDirPath, handleMetadata, session)
file |
a JSON or YAML configuration file |
dir |
a directory where to execute the workflow. |
jobDirPath |
a directory set-up for the job. Default is |
handleMetadata |
Default is |
session |
a shiny session object (optional) to run geoflow in a shiny context |
Emmanuel Blondel, [email protected]
initWorkflowJob allows to init a workflow job
initWorkflowJob(dir)initWorkflowJob(dir)
dir |
a directory where to initialize/execute the workflow |
the job directory path
Emmanuel Blondel, [email protected]
is_absolute_path evaluate if a ${{path}} expression is an absolute path,
the function will return a boolean argument.
is_absolute_path(path)is_absolute_path(path)
path |
a path in character string |
Emmanuel Blondel, [email protected]
list_action_options lists the options available for a given action supported by geoflow.
list_action_options(id, raw)list_action_options(id, raw)
id |
An action identifier |
raw |
if raw list should be returned |
an object of class data.frame (or list if raw is TRUE) listing the available action options.
Emmanuel Blondel, [email protected]
list_actions lists the actions supported by geoflow.
list_actions(raw)list_actions(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_action if raw = FALSE)
Emmanuel Blondel, [email protected]
list_contact_handler_options lists the options available for a given contact handler supported by geoflow.
list_contact_handler_options(id, raw)list_contact_handler_options(id, raw)
id |
An contact handler identifier |
raw |
if raw list should be returned |
an object of class data.frame (or list if raw is TRUE) listing the available handler options.
Emmanuel Blondel, [email protected]
list_contact_handlers lists the contact handlers supported by geoflow.
list_contact_handlers(raw)list_contact_handlers(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_handler if raw = FALSE)
Emmanuel Blondel, [email protected]
list_data_accessors lists the data accessors supported by geoflow.
list_data_accessors(raw)list_data_accessors(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_data_accessor if raw = FALSE)
Emmanuel Blondel, [email protected]
list_dictionary_handler_options lists the options available for a given dictionary handler supported by geoflow.
list_dictionary_handler_options(id, raw)list_dictionary_handler_options(id, raw)
id |
An dictionary handler identifier |
raw |
if raw list should be returned |
an object of class data.frame (or list if raw is TRUE) listing the available handler options.
Emmanuel Blondel, [email protected]
list_dictionary_handlers lists the dictionary handlers supported by geoflow.
list_dictionary_handlers(raw)list_dictionary_handlers(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_handler if raw = FALSE)
Emmanuel Blondel, [email protected]
list_entity_handler_options lists the options available for a given entity handler supported by geoflow.
list_entity_handler_options(id, raw)list_entity_handler_options(id, raw)
id |
An entity handler identifier |
raw |
if raw list should be returned |
an object of class data.frame (or list if raw is TRUE) listing the available handler options.
Emmanuel Blondel, [email protected]
list_entity_handlers lists the entity handlers supported by geoflow.
list_entity_handlers(raw)list_entity_handlers(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_handler if raw = FALSE)
Emmanuel Blondel, [email protected]
list_registers lists the registers supported by geoflow.
list_registers(raw)list_registers(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_register if raw = FALSE)
Emmanuel Blondel, [email protected]
list_software lists the software supported by geoflow.
list_software(raw)list_software(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_software if raw = FALSE)
Emmanuel Blondel, [email protected]
list_software_parameters lists the parameters of a given software supported by geoflow.
list_software_parameters(software_type, raw)list_software_parameters(software_type, raw)
software_type |
A software type |
raw |
if raw list should be returned |
an object of class data.frame (or list if raw is TRUE) listing the software parameters
Emmanuel Blondel, [email protected]
list_software_properties lists the properties of a given software supported by geoflow.
list_software_properties(software_type, raw)list_software_properties(software_type, raw)
software_type |
A software type |
raw |
if raw list should be returned |
an object of class data.frame listing the software properties
Emmanuel Blondel, [email protected]
list_vocabularies lists the vocabularies supported by geoflow.
list_vocabularies(raw)list_vocabularies(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_vocabulary if raw = FALSE)
load_workflow_environment loads a workflow environment by evaluating variable expressions in the
form ${{variable}}. If no variable expression pattern is identified in the string,
the function will return the original string.
load_workflow_environment(config, session)load_workflow_environment(config, session)
config |
object of class list |
session |
a shiny session object (optional) to run geoflow in a shiny context. |
Emmanuel Blondel, [email protected]
loadMetadataHandler allows to load a metadata handler
loadMetadataHandler(config, element, type)loadMetadataHandler(config, element, type)
config |
a geoflow configuration (as list). Only used to write logs, can be NULL. |
element |
a geoflow configuration metadata list element |
type |
either 'contacts', 'entities' or 'dictionnary' |
an object of class geoflow_handler
Emmanuel Blondel, [email protected]
posix_to_str converts a POSIX object to ISO string
posix_to_str(posix)posix_to_str(posix)
posix |
a |
Emmanuel Blondel, [email protected]
precompute_relationships
precompute_relationships(data, parent_key, child_key, child_label)precompute_relationships(data, parent_key, child_key, child_label)
data |
data |
parent_key |
parent_key |
child_key |
child_key |
child_label |
child_label |
a list of relationships
read_contacts allows to read contacts
read_contacts(id, source, config)read_contacts(id, source, config)
id |
a contact handler identifier |
source |
source |
config |
a geoflow config (output of initWorkflow). Default is |
a list of object of class geoflow_contact
Emmanuel Blondel, [email protected]
read_dictionary allows to read a dictionary
read_dictionary(id, source, config)read_dictionary(id, source, config)
id |
a dictionary handler identifier |
source |
source |
config |
a geoflow config (output of initWorkflow). Default is |
an object of class geoflow_dictionary
Emmanuel Blondel, [email protected]
read_entities allows to read entities
read_entities(id, source, config)read_entities(id, source, config)
id |
an entity handler identifier |
source |
source |
config |
a geoflow config (output of initWorkflow). Default is |
a list of object of class geoflow_entity
Emmanuel Blondel, [email protected]
register_actions registers default geoflow actions
register_actions()register_actions()
Function called on load by geoflow
Emmanuel Blondel, [email protected]
register_contact_handlers registers the default contact handlers for geoflow
register_contact_handlers()register_contact_handlers()
Internal function called on load by geoflow
Emmanuel Blondel, [email protected]
register_data_accessors registers default geoflow data accessors
register_data_accessors()register_data_accessors()
Function called on load by geoflow
Emmanuel Blondel, [email protected]
register_dictionary_handlers registers the default dictionary handlers for geoflow
register_dictionary_handlers()register_dictionary_handlers()
Internal function called on load by geoflow
Emmanuel Blondel, [email protected]
register_entity_handlers registers the default entity handlers for geoflow
register_entity_handlers()register_entity_handlers()
Internal function called on load by geoflow
Emmanuel Blondel, [email protected]
register_registers registers default geoflow registers
register_registers()register_registers()
Function called on load by geoflow
Emmanuel Blondel, [email protected]
register_software registers default geoflow software
register_software()register_software()
Function called on load by geoflow
Emmanuel Blondel, [email protected]
register_vocabularies registers default geoflow vocabularies
register_vocabularies()register_vocabularies()
Function called on load by geoflow
sanitize_date sanitizes a date in geoflow
sanitize_date(date)sanitize_date(date)
date |
an object o class |
Emmanuel Blondel, [email protected]
sanitize_str sanitizes a string definition in geoflow
sanitize_str(str)sanitize_str(str)
str |
a string as object of class |
Emmanuel Blondel, [email protected]
Set default locales to a property values set
set_i18n(term_key, default, expr, ...)set_i18n(term_key, default, expr, ...)
term_key |
term key |
default |
default |
expr |
expr |
... |
named values to be passed to expr |
set_line_separator set the line separator to be used by geoflow
when extracting cell components for tabular data content handling.
set_line_separator(x)set_line_separator(x)
x |
a string as object of class |
Emmanuel Blondel, [email protected]
Set locales to a property values set
set_locales_to(values,locales)set_locales_to(values,locales)
values |
values |
locales |
locales |
str_to_posix parses a string into a POSIX object
str_to_posix(str)str_to_posix(str)
str |
a string as object of class |
Emmanuel Blondel, [email protected]
unload_workflow_environment unloads a workflow environment, in the case environment
was provided by means of a dotenv file, and loaded using dotenv by geoflow. The function will
recover the session environment variables values (useful in case an environment variable was overwriten for
the workflow execution).
unload_workflow_environment(config)unload_workflow_environment(config)
config |
object of class list |
Emmanuel Blondel, [email protected]
writeWorkflowJobDataResource allows to transform datasource into different formats
writeWorkflowJobDataResource(entity, config, obj, useFeatures, resourcename, useUploadSource, createIndexes, overwrite, append, chunk.size, type)writeWorkflowJobDataResource(entity, config, obj, useFeatures, resourcename, useUploadSource, createIndexes, overwrite, append, chunk.size, type)
entity |
a entity object as read by |
config |
a configuration object as read by |
obj |
a sf file |
useFeatures |
a boolean condition to define if features must be attach to obj file |
resourcename |
name of data input |
useUploadSource |
a boolean condition to define if resourcename is same as uploadSource information |
createIndexes |
a boolean condition for possibility to create indexes for each column |
overwrite |
a boolean condition for writing to DB. Default is |
append |
a boolean condition for appending to DB existing table. Default is |
chunk.size |
an object of class |
type |
format to convert into. Formats supported: shp, csv, gpkg, parquet, dbtable |
Alexandre Bennici, [email protected]