class FHIR::DSTU2::ElementDefinition

Extend ElementDefinition for profile validation code

Constants

MULTIPLE_TYPES
SEARCH_PARAMS

Attributes

alias[RW]
base[RW]
binding[RW]
children[RW]

children is used to hierarchically arrange elements so profile validation is easier to compute

code[RW]
comments[RW]
condition[RW]
constraint[RW]
defaultValueAddress[RW]
defaultValueAnnotation[RW]
defaultValueAttachment[RW]
defaultValueBase64Binary[RW]
defaultValueBoolean[RW]
defaultValueCode[RW]
defaultValueCodeableConcept[RW]
defaultValueCoding[RW]
defaultValueContactPoint[RW]
defaultValueDate[RW]
defaultValueDateTime[RW]
defaultValueDecimal[RW]
defaultValueHumanName[RW]
defaultValueId[RW]
defaultValueIdentifier[RW]
defaultValueInstant[RW]
defaultValueInteger[RW]
defaultValueMarkdown[RW]
defaultValueMeta[RW]
defaultValueOid[RW]
defaultValuePeriod[RW]
defaultValuePositiveInt[RW]
defaultValueQuantity[RW]
defaultValueRange[RW]
defaultValueRatio[RW]
defaultValueReference[RW]
defaultValueSampledData[RW]
defaultValueSignature[RW]
defaultValueString[RW]
defaultValueTime[RW]
defaultValueTiming[RW]
defaultValueUnsignedInt[RW]
defaultValueUri[RW]
definition[RW]
exampleAddress[RW]
exampleAnnotation[RW]
exampleAttachment[RW]
exampleBase64Binary[RW]
exampleBoolean[RW]
exampleCode[RW]
exampleCodeableConcept[RW]
exampleCoding[RW]
exampleContactPoint[RW]
exampleDate[RW]
exampleDateTime[RW]
exampleDecimal[RW]
exampleHumanName[RW]
exampleId[RW]
exampleIdentifier[RW]
exampleInstant[RW]
exampleInteger[RW]
exampleMarkdown[RW]
exampleMeta[RW]
exampleOid[RW]
examplePeriod[RW]
examplePositiveInt[RW]
exampleQuantity[RW]
exampleRange[RW]
exampleRatio[RW]
exampleReference[RW]
exampleSampledData[RW]
exampleSignature[RW]
exampleString[RW]
exampleTime[RW]
exampleTiming[RW]
exampleUnsignedInt[RW]
exampleUri[RW]
extension[RW]
fixedAddress[RW]
fixedAnnotation[RW]
fixedAttachment[RW]
fixedBase64Binary[RW]
fixedBoolean[RW]
fixedCode[RW]
fixedCodeableConcept[RW]
fixedCoding[RW]
fixedContactPoint[RW]
fixedDate[RW]
fixedDateTime[RW]
fixedDecimal[RW]
fixedHumanName[RW]
fixedId[RW]
fixedIdentifier[RW]
fixedInstant[RW]
fixedInteger[RW]
fixedMarkdown[RW]
fixedMeta[RW]
fixedOid[RW]
fixedPeriod[RW]
fixedPositiveInt[RW]
fixedQuantity[RW]
fixedRange[RW]
fixedRatio[RW]
fixedReference[RW]
fixedSampledData[RW]
fixedSignature[RW]
fixedString[RW]
fixedTime[RW]
fixedTiming[RW]
fixedUnsignedInt[RW]
fixedUri[RW]
id[RW]
isModifier[RW]
isSummary[RW]
label[RW]
local_name[RW]
mapping[RW]
marked_for_keeping[RW]
max[RW]
maxLength[RW]
maxValueAddress[RW]
maxValueAnnotation[RW]
maxValueAttachment[RW]
maxValueBase64Binary[RW]
maxValueBoolean[RW]
maxValueCode[RW]
maxValueCodeableConcept[RW]
maxValueCoding[RW]
maxValueContactPoint[RW]
maxValueDate[RW]
maxValueDateTime[RW]
maxValueDecimal[RW]
maxValueHumanName[RW]
maxValueId[RW]
maxValueIdentifier[RW]
maxValueInstant[RW]
maxValueInteger[RW]
maxValueMarkdown[RW]
maxValueMeta[RW]
maxValueOid[RW]
maxValuePeriod[RW]
maxValuePositiveInt[RW]
maxValueQuantity[RW]
maxValueRange[RW]
maxValueRatio[RW]
maxValueReference[RW]
maxValueSampledData[RW]
maxValueSignature[RW]
maxValueString[RW]
maxValueTime[RW]
maxValueTiming[RW]
maxValueUnsignedInt[RW]
maxValueUri[RW]
meaningWhenMissing[RW]
min[RW]
minValueAddress[RW]
minValueAnnotation[RW]
minValueAttachment[RW]
minValueBase64Binary[RW]
minValueBoolean[RW]
minValueCode[RW]
minValueCodeableConcept[RW]
minValueCoding[RW]
minValueContactPoint[RW]
minValueDate[RW]
minValueDateTime[RW]
minValueDecimal[RW]
minValueHumanName[RW]
minValueId[RW]
minValueIdentifier[RW]
minValueInstant[RW]
minValueInteger[RW]
minValueMarkdown[RW]
minValueMeta[RW]
minValueOid[RW]
minValuePeriod[RW]
minValuePositiveInt[RW]
minValueQuantity[RW]
minValueRange[RW]
minValueRatio[RW]
minValueReference[RW]
minValueSampledData[RW]
minValueSignature[RW]
minValueString[RW]
minValueTime[RW]
minValueTiming[RW]
minValueUnsignedInt[RW]
minValueUri[RW]
mustSupport[RW]
name[RW]
nameReference[RW]
path[RW]
patternAddress[RW]
patternAnnotation[RW]
patternAttachment[RW]
patternBase64Binary[RW]
patternBoolean[RW]
patternCode[RW]
patternCodeableConcept[RW]
patternCoding[RW]
patternContactPoint[RW]
patternDate[RW]
patternDateTime[RW]
patternDecimal[RW]
patternHumanName[RW]
patternId[RW]
patternIdentifier[RW]
patternInstant[RW]
patternInteger[RW]
patternMarkdown[RW]
patternMeta[RW]
patternOid[RW]
patternPeriod[RW]
patternPositiveInt[RW]
patternQuantity[RW]
patternRange[RW]
patternRatio[RW]
patternReference[RW]
patternSampledData[RW]
patternSignature[RW]
patternString[RW]
patternTime[RW]
patternTiming[RW]
patternUnsignedInt[RW]
patternUri[RW]
representation[RW]
requirements[RW]
short[RW]
slicing[RW]
type[RW]

Public Instance Methods

add_descendent(element) click to toggle source
# File lib/fhir_dstu2_models/fhir_ext/element_definition.rb, line 11
def add_descendent(element)
  @children = [] if @children.nil?
  element.local_name = element.path.gsub("#{path}.", '')
  if @children.last && element.path.start_with?(@children.last.path)
    if element.path == @children.last.path
      # slicing
      @children << element
    else
      @children.last.add_descendent(element)
    end
  else
    @children << element
  end
end
keep_children(whitelist = []) click to toggle source
# File lib/fhir_dstu2_models/fhir_ext/element_definition.rb, line 26
def keep_children(whitelist = [])
  @marked_for_keeping = true if whitelist.include?(path)
  return unless @children
  @children.each do |child|
    child.keep_children(whitelist)
  end
end
print_children(spaces = 0) click to toggle source
sweep_children() click to toggle source
# File lib/fhir_dstu2_models/fhir_ext/element_definition.rb, line 34
def sweep_children
  return unless @children
  @children.each(&:sweep_children)
  @children = @children.keep_if(&:marked_for_keeping)
  @marked_for_keeping = !@children.empty? || @marked_for_keeping
end