ISOAbstractObject: ISOAbstractObject

ISOAbstractObjectR Documentation

ISOAbstractObject

Description

ISOAbstractObject

ISOAbstractObject

Format

R6Class object.

Value

Object of R6Class for modelling an ISO Metadata Element

Static Methods

getISOStandardByPrefix(prefix)

Inherit the ISO (and/or OGC) standard reference for a given standard prefix (e.g. GMD). The object returned is a data.frame containing the specification reference and title.

getISOStandard(clazz)

Inherit the ISO (and/or OGC) standard reference for a given geometa class. The object returned is a data.frame containing the specification reference and title.

getISOClasses(extended, pretty)

Get the list of classes supported by geometa. By default, extended is set to FALSE (restrained to geometa environment). If TRUE, this allows to list eventual classes loaded in your global environment and that extend geometa classes. The argument pretty gives a the list of classes and associated ISO/OGC standard information as data.frame.

getISOClassByNode(node)

Inherit the ISO class matching an XML document or node

compare(metadataElement1, metadataElement2)

Compares two metadata elements objects. Returns TRUE if they are equal, FALSE otherwise. The comparison of object is done by comparing the XML representation of the objects (since no R6 object comparison method seems to exist)

Super class

geometa::geometaLogger -> ISOAbstractObject

Public fields

wrap

wrap

element

element

namespace

namespace

defaults

defaults

attrs

attributes

printAttrs

attributes to print

parentAttrs

parent attributes

value

value

value_as_field

value as field?

isNull

is null?

anyElement

any element?

Methods

Public methods

Inherited methods

Method new()

Initializes object

Usage
ISOAbstractObject$new(
  xml = NULL,
  element = NULL,
  namespace = NULL,
  attrs = list(),
  defaults = list(),
  wrap = TRUE,
  value_as_field = FALSE
)
Arguments
xml

object of class XMLInternalNode-class

element

element name

namespace

namespace

attrs

attrs

defaults

defaults

wrap

wrap?

value_as_field

value as field?


Method print()

Provides a custom print output (as tree) of the current class

Usage
ISOAbstractObject$print(..., depth = 1, add_codelist_description = TRUE)
Arguments
...

args

depth

class nesting depth

add_codelist_description

Add codelist description. Default is TRUE


Method decode()

Decodes object from XML

Usage
ISOAbstractObject$decode(xml)
Arguments
xml

object of class XMLInternalNode-class


Method encode()

Encodes object as XML.

By default, namespace definition will be added to XML root (addNS = TRUE), and validation of object will be performed (validate = TRUE) prior to its XML encoding. The argument strict allows to stop the encoding in case object is not valid, with a default value set to FALSE.

The argument setSerialID is used by geometa to generate automatically serial IDs associated to XML elements, in particular for GML, default value is TRUE (recommended value).

The argument resetSerialID is used by geometa for reseting mandatory IDs associated to XML elements, such as GML objects, default value is TRUE (recommended value).

Setting inspire to TRUE (default FALSE), the metadata will be checked with the INSPIRE metadata validator (online web-service provided by INSPIRE). To check metadata with the INSPIRE metadata validator, setting an INSPIRE metadata validator is now required, and should be specified with the inspireValidator. See INSPIREMetadataValidator for more details

Usage
ISOAbstractObject$encode(
  addNS = TRUE,
  validate = TRUE,
  strict = FALSE,
  inspire = FALSE,
  inspireValidator = NULL,
  resetSerialID = TRUE,
  setSerialID = TRUE,
  encoding = "UTF-8"
)
Arguments
addNS

add namespace? Default is TRUE

validate

validate XML output against schemas?

strict

strict validation? Default is FALSE.

inspire

perform INSPIRE validation? Default is FALSE

inspireValidator

an object of class INSPIREMetadataValidator to perform INSPIRE metadata validation

resetSerialID

reset Serial ID? Default is TRUE

setSerialID

set serial ID? Default is TRUE

encoding

encoding. Default is UTF-8


Method validate()

Validates an XML object resulting from object encoding

Usage
ISOAbstractObject$validate(
  xml = NULL,
  strict = FALSE,
  inspire = FALSE,
  inspireValidator = NULL
)
Arguments
xml

object of class XMLInternalNode-class

strict

strict validation? If TRUE, a invalid XML will return an error

inspire

perform INSPIRE validation? Default is FALSE

inspireValidator

an object of class INSPIREMetadataValidator to perform INSPIRE metadata validation

Returns

TRUE if valid, FALSE otherwise


Method save()

Save XML representation resulting from $encode(...) method to a file

Usage
ISOAbstractObject$save(file, ...)
Arguments
file

file

...

any other argument from $encode(...) method


Method getNamespaceDefinition()

Get namespace definition

Usage
ISOAbstractObject$getNamespaceDefinition(recursive = FALSE)
Arguments
recursive

recursive namespace definitions? Default is FALSE

Returns

the list of XML namespace definitions


Method getClassName()

Get class name

Usage
ISOAbstractObject$getClassName(level = 1L)
Arguments
level

level of class

Returns

the class name


Method getClass()

Get class

Usage
ISOAbstractObject$getClass()
Returns

the corresponding class, as R6Class reference object generator


Method wrapBaseElement()

Wraps base element

Usage
ISOAbstractObject$wrapBaseElement(field, fieldObj)
Arguments
field

field name

fieldObj

field object

an

object of class R6Class


Method setIsNull()

Set Is Null

Usage
ISOAbstractObject$setIsNull(isNull, reason = "missing")
Arguments
isNull

object of class logical

reason

reason why object is Null


Method contains()

Util to know if a field contain a metadata element

Usage
ISOAbstractObject$contains(field, metadataElement)
Arguments
field

field name

metadataElement

metadata element

Returns

TRUE if contains, FALSE otherwise


Method addListElement()

Util to add an element to a list of elements for N cardinality of a target element name

Usage
ISOAbstractObject$addListElement(field, metadataElement)
Arguments
field

field

metadataElement

metadata element

Returns

TRUE if added, FALSE otherwise


Method delListElement()

Util to deleted an element to a list of elements for N cardinality of a target element name

Usage
ISOAbstractObject$delListElement(field, metadataElement)
Arguments
field

field

metadataElement

metadata element

Returns

TRUE if deleted, FALSE otherwise


Method setAttr()

Util to set an attribute

Usage
ISOAbstractObject$setAttr(attrKey, attrValue)
Arguments
attrKey

attribute key

attrValue

attribute value


Method addFieldAttrs()

Util add field attributes, over the XML field wrapping element instead of the element itself

Usage
ISOAbstractObject$addFieldAttrs(field, ...)
Arguments
field

field

...

list of attributes


Method setId()

Set id

Usage
ISOAbstractObject$setId(id, addNS = FALSE)
Arguments
id

id

addNS

add namespace definition? Default is FALSE


Method setHref()

Set Href attribute

Usage
ISOAbstractObject$setHref(href)
Arguments
href

href


Method setCodeList()

Set codelist attribute

Usage
ISOAbstractObject$setCodeList(codeList)
Arguments
codeList

codelist


Method setCodeListValue()

Set codelist value

Usage
ISOAbstractObject$setCodeListValue(codeListValue)
Arguments
codeListValue

codelist value


Method setCodeSpace()

Set codeSpace

Usage
ISOAbstractObject$setCodeSpace(codeSpace)
Arguments
codeSpace

codespace


Method setValue()

Set value

Usage
ISOAbstractObject$setValue(value)
Arguments
value

value


Method isDocument()

Util to check where object refers to a emetadata document (eg. ISOMetadata or ISOFeatureCatalogue)

Usage
ISOAbstractObject$isDocument()
Returns

TRUE if a document, FALSE otherwise


Method isFieldInheritedFrom()

Indicates the class a field inherits from

Usage
ISOAbstractObject$isFieldInheritedFrom(field)
Arguments
field

field

Returns

an object generator of class R6Class


Method createLocalisedProperty()

Creates a localised property

Usage
ISOAbstractObject$createLocalisedProperty(text, locales)
Arguments
text

text

locales

a list of localized names

Note

Abstract ISO Metadata class used internally by geometa

Author(s)

Emmanuel Blondel <emmanuel.blondel1@gmail.com>


eblondel/geometa documentation built on April 18, 2024, 1:46 p.m.