ISOFeatureType

ISOFeatureType

Format

R6Class object.

Value

Object of R6Class for modelling an ISO FeatureType

References

ISO 19110:2005 Methodology for Feature cataloguing

Author

Emmanuel Blondel <emmanuel.blondel1@gmail.com>

Super classes

geometa::geometaLogger -> geometa::ISOAbstractObject -> ISOFeatureType

Public fields

typeName

typeName [1..1]: ISOLocalName

definition

definition [0..1]: character

code

code [0..1]: character

isAbstract

isAbstract [1..1]: logical

aliases

aliases [0..*]: ISOLocalName

inheritsFrom

inheritsFrom [0..*]: ISOInheritanceRelation

inheritsTo

inheritsTo [0..*]: ISOInheritanceRelation

featureCatalogue

featureCatalogue: ISOFeatureCatalogue

constrainedBy

constrainedBy [0..*]: ISOConstraint

definitionReference

definitionReference [0..*]: ISODefinitionReference

carrierOfCharacteristics

carrierOfCharacteristics [0..*]: ISOCarrierOfCharacteristics

Methods

Inherited methods


Method new()

Initializes object

Usage

ISOFeatureType$new(xml = NULL)

Arguments

xml

object of class XMLInternalNode-class


Method setTypeName()

Set type name

Usage

ISOFeatureType$setTypeName(typeName)

Arguments

typeName

type name, object of class ISOLocalName or character


Method setDefinition()

Set definition

Usage

ISOFeatureType$setDefinition(definition, locales = NULL)

Arguments

definition

definition

locales

list of localized definitions. Default is NULL


Method setCode()

Set code

Usage

ISOFeatureType$setCode(code, locales = NULL)

Arguments

code

definition

locales

list of localized codes. Default is NULL


Method setIsAbstract()

Set whether feature type is abstract

Usage

ISOFeatureType$setIsAbstract(isAbstract)

Arguments

isAbstract

object of class logical


Method addAlias()

Adds alias

Usage

ISOFeatureType$addAlias(alias)

Arguments

alias

object of class ISOLocalName or character

Returns

TRUE if added, FALSE otherwise


Method delAlias()

Deletes alias

Usage

ISOFeatureType$delAlias(alias)

Arguments

alias

object of class ISOLocalName or character

Returns

TRUE if deleted, FALSE otherwise


Method addInheritsFrom()

Adds 'inheritsFrom' relation

Usage

ISOFeatureType$addInheritsFrom(rel)

Arguments

rel

rel, object of class ISOInheritanceRelation

Returns

TRUE if added, FALSE otherwise


Method delInheritsFrom()

Deletes 'inheritsFrom' relation

Usage

ISOFeatureType$delInheritsFrom(rel)

Arguments

rel

rel, object of class ISOInheritanceRelation

Returns

TRUE if deleted, FALSE otherwise


Method addInheritsTo()

Adds 'inheritsTo' relation

Usage

ISOFeatureType$addInheritsTo(rel)

Arguments

rel

rel, object of class ISOInheritanceRelation

Returns

TRUE if added, FALSE otherwise


Method delInheritsTo()

Deletes 'inheritsTo' relation

Usage

ISOFeatureType$delInheritsTo(rel)

Arguments

rel

rel, object of class ISOInheritanceRelation

Returns

TRUE if deleted, FALSE otherwise


Method setFeatureCatalogue()

Set feature catalogue

Usage

ISOFeatureType$setFeatureCatalogue(fc)

Arguments

fc

object of class ISOFeatureCatalogue


Method addConstraint()

Adds constraint

Usage

ISOFeatureType$addConstraint(constraint)

Arguments

constraint

constraint, object of class ISOConstraint

Returns

TRUE if added, FALSE otherwise


Method delConstraint()

Deletes constraint

Usage

ISOFeatureType$delConstraint(constraint)

Arguments

constraint

constraint, object of class ISOConstraint

Returns

TRUE if deleted, FALSE otherwise


Method setDefinitionReference()

Set definition reference

Usage

ISOFeatureType$setDefinitionReference(definitionReference)

Arguments

definitionReference

object of class ISODefinitionReference


Method addCharacteristic()

Adds characteristic

Usage

ISOFeatureType$addCharacteristic(characteristic)

Arguments

characteristic

characteristic, object inheriting class ISOAbstractCarrierOfCharacteristics

Returns

TRUE if added, FALSE otherwise


Method delCharacteristic()

Deletes characteristic

Usage

ISOFeatureType$delCharacteristic(characteristic)

Arguments

characteristic

characteristic, object inheriting class ISOAbstractCarrierOfCharacteristics

Returns

TRUE if deleted, FALSE otherwise


Method clone()

The objects of this class are cloneable with this method.

Usage

ISOFeatureType$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

Examples

 #featuretype
 md <- ISOFeatureType$new()
 md$setTypeName("typeName")
 md$setDefinition("definition")
 md$setCode("code")
 md$setIsAbstract(FALSE)
 md$addAlias("alias1")
#> [1] TRUE
 md$addAlias("alias2")
#> [1] TRUE
 
 #add feature attributes
 for(i in 1:3){
   #create attribute
   fat <- ISOFeatureAttribute$new()
   fat$setMemberName(sprintf("name %s",i))
   fat$setDefinition(sprintf("definition %s",i))
   fat$setCardinality(lower=1,upper=1)
   fat$setCode(sprintf("code %s",i))
   
   #add measurement unit
   gml <- GMLBaseUnit$new(id = "ID%")
   gml$setDescriptionReference("someref")
   gml$setIdentifier("identifier", "codespace")
   gml$addName("name1", "codespace")
   gml$addName("name2", "codespace")
   gml$setQuantityTypeReference("someref")
   gml$setCatalogSymbol("symbol")
   gml$setUnitsSystem("somelink")
   fat$setValueMeasurementUnit(gml)
   
   #add listed values
   val1 <- ISOListedValue$new()
   val1$setCode("code1")
   val1$setLabel("label1")
   val1$setDefinition("definition1")
   fat$addListedValue(val1)
   val2 <- ISOListedValue$new()
   val2$setCode("code2")
   val2$setLabel("label2")
   val2$setDefinition("definition2")
   fat$addListedValue(val2)
   fat$setValueType("typeName")
   
   #add feature attribute as carrierOfCharacteristic
   md$addCharacteristic(fat)
 }
 xml <- md$encode()
#> [geometa][WARN] Element '{http://www.isotc211.org/2005/gfc}FC_FeatureType': No matching global declaration available for the validation root at line 1. 
#> [geometa][WARN] Object 'ISOFeatureType' is INVALID according to ISO 19139 XML schemas!