Meta

@POJOBoilerplate
class Meta(val id: Option[String], val tag: LitSeq[Coding], val source: Option[UriStr], val profile: LitSeq[Canonical], val security: LitSeq[Coding], val extension: LitSeq[Extension], val versionId: Option[Id], val lastUpdated: Option[ZonedDateTime], val primitiveAttributes: TreeMap[FHIRComponentFieldMeta[_], PrimitiveElementInfo]) extends Element

Base StructureDefinition for Meta Type: The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

Subclass of core.model.Element (Base StructureDefinition for Element Type: Base definition for all elements in a resource.)

Value Params
extension
  • May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
id
  • Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
lastUpdated
  • When the resource last changed - e.g. when the version changed.
profile
security
  • Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.
source
  • A uri that identifies the source system of the resource. This provides a minimal amount of Provenance information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.
tag
  • Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.
versionId
  • The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.
Constructor

Introduces the fields tag, source, profile, security, versionId, lastUpdated.

Companion
object
class Element
trait Utils
class Object
trait Matchable
class Any

Type members

Inherited classlikes

object extensions
Inherited from
FHIRObject
object ids
Inherited from
FHIRObject

Inherited types

Value members

Concrete methods

def getIds(field: C => FHIRComponentFieldMeta[_]): Option[String]
def set[T](fieldSelection: C => FHIRComponentFieldMeta[T])(value: T): O
def setExtensions(field: C => FHIRComponentFieldMeta[_])(extension: LitSeq[Extension]): O
def setIds(field: C => FHIRComponentFieldMeta[_])(id: Option[String]): O
def update[T](fieldSelection: C => FHIRComponentFieldMeta[T])(fn: T => T): O
def updateAll[T](fieldSelection: C => FHIRComponentFieldMeta[LitSeq[T]])(fn: T => T): O
def updateIds(field: C => FHIRComponentFieldMeta[_])(update: Option[String] => Option[String]): O
def updateIfExists[T](fieldSelection: C => FHIRComponentFieldMeta[Option[T]])(fn: T => T): O

Inherited methods

final
def >>[T](fn: T => T)(implicit tt: LTag[T]): Meta

Slower than nodalMap, but should work with subtypes (e.g. PositiveInt). If you must use it, then:

Slower than nodalMap, but should work with subtypes (e.g. PositiveInt). If you must use it, then:

  • T should not be a Choice[_], a LitSeq[_] or an Option[_]
  • It may require a type parameter sometimes (e.g. sampleResource >>[BUNDLE_TYPE] { (_: BUNDLE_TYPE) => BUNDLE_TYPE.SEARCHSET } )
Inherited from
FHIRObject
final
def >>=[T, F[_] : Monad](fn: T => F[T])(implicit evidence$7: Monad[F], tt: LTag[T]): F[Meta]
Inherited from
FHIRObject
final
def ^^[From, To](fn: From => To)(implicit tt: LTag[From]): LitSeq[To]

Extract values of type From, and map to LitSeq[To] using fn: From => To. Unlike >>, this is safe even if From is a Choice[], a LitSeq[] or an Option[_] Quite slow, slower than nodalExtract

Extract values of type From, and map to LitSeq[To] using fn: From => To. Unlike >>, this is safe even if From is a Choice[], a LitSeq[] or an Option[_] Quite slow, slower than nodalExtract

Inherited from
FHIRObject
final
def ^^^[T](implicit tt: LTag[T]): LitSeq[T]
Inherited from
FHIRObject
def companionClassName[T](tag: LTag[T]): String
Inherited from
Utils
def companionOf[T <: FHIRObject : ClassTag](implicit evidence$1: ClassTag[T], tag: LTag[T]): CompanionFor[T]
Inherited from
Utils
def constructor: Constructor[_]
Inherited from
FHIRComponent
def decodeMethodFor[T <: FHIRObject : ClassTag](implicit evidence$2: ClassTag[T], tag: LTag[T], params: DecoderParams): HCursor => Try[T]
Inherited from
Utils
override
def equals(obj: Any): Boolean
Definition Classes
FHIRObject -> Any
Inherited from
FHIRObject
Inherited from
FHIRObject
def getFieldByClass[T](name: String, clazz: Class[T]): LitSeq[T]
Inherited from
FHIRComponent
def getFieldByType[T : LTag](name: String): LitSeq[T]
Inherited from
FHIRComponent
override
def hashCode(): Int
Definition Classes
FHIRObject -> Any
Inherited from
FHIRObject
def modifyField[T : LTag, Up >: Meta <: FHIRObject](fieldName: String, modify: T => T)(implicit evidence$5: LTag[T], ct: ClassTag[Up], tt: LTag[Up]): Up
Inherited from
FHIRObject
def modifyFieldUnsafe[T, Up >: Meta <: FHIRObject](fieldName: String, modify: T => T)(implicit ct: ClassTag[Up], tt: LTag[Up]): Up
Inherited from
FHIRObject
final
def nodalExtract[From, To](klass: Class[From], fn: From => To): LitSeq[To]

Convenience alias for nodalGetByClass andThen map to LitSeq[To] using fn: From => To.

Convenience alias for nodalGetByClass andThen map to LitSeq[To] using fn: From => To.

Inherited from
FHIRObject
final
def nodalGetByClass[Target](klass: Class[Target]): LitSeq[Target]

Extract values of type From Unlike nodalMap, this is safe even if From is a Choice[_], a LitSeq[_] or an Option[_], however there remains a caveat with 'subtyped' types (eg PositiveInt), in that we can't differentiate them from the parent class Quite slow but faster than ^^

Extract values of type From Unlike nodalMap, this is safe even if From is a Choice[_], a LitSeq[_] or an Option[_], however there remains a caveat with 'subtyped' types (eg PositiveInt), in that we can't differentiate them from the parent class Quite slow but faster than ^^

Inherited from
FHIRObject
final
def nodalMap[T](klass: Class[T], fn: T => T): Meta

Bit faster than >>, but still much slower than using update$foo when possible. If you must use it, then:

Bit faster than >>, but still much slower than using update$foo when possible. If you must use it, then:

  • T should not be a Choice[_], a LitSeq[_], an Option[_], or any 'subtyped' type (eg PositiveInt). You should ensure, if T is a supertype of multiple valid choice values (e.g. T =:= Object), that the return value of fn retains the same type as the input value.
Inherited from
FHIRObject
def productElementNames: Iterator[String]
Inherited from
Product
def productIterator: Iterator[Any]
Inherited from
Product
def setFromField[T, UpType >: Meta <: FHIRObject : LTag](field: FHIRComponentFieldMeta[T])(newVal: T): UpType
Inherited from
FHIRObject
def thisClassName: String
Inherited from
FHIRObject
def toClass[T](klass: Class[T]): Option[T]
Inherited from
FHIRObject
override
def toString: String
Definition Classes
FHIRObject -> Any
Inherited from
FHIRObject
def toType[T](implicit ct: ClassTag[T]): Option[T]
Inherited from
FHIRObject
def updateFromField[T, UpType >: Meta <: FHIRObject : LTag](field: FHIRComponentFieldMeta[T])(fn: T => T): UpType
Inherited from
FHIRObject
def withField[T : LTag, Up >: Meta <: FHIRObject](fieldName: String, value: T)(implicit evidence$6: LTag[T], ct: ClassTag[Up], tt: LTag[Up]): Up
Inherited from
FHIRObject
def withFieldUnsafe[T, Up >: Meta <: FHIRObject](fieldName: String, value: T)(implicit ct: ClassTag[Up], tt: LTag[Up]): Up
Inherited from
FHIRObject
def withFields[Up >: Meta <: FHIRObject](replacementFields: (String, Any)*)(implicit ct: ClassTag[Up], tt: LTag[Up]): Up
Inherited from
FHIRObject

Concrete fields

override
override
val id: Option[String]
val lastUpdated: Option[ZonedDateTime]
val source: Option[UriStr]
override
val thisTypeName: String
val versionId: Option[Id]

Inherited fields