HS.FHIR.vSTU3.Repository.Resource.Abstract
deprecated abstract persistent class HS.FHIR.vSTU3.Repository.Resource.Abstract extends HS.FHIR.vCommon.ResourceBase
SQL Table Name: HS_FHIR_vSTU3_Repository_Resource.Abstract
THIS CLASS IS DEPRECATED Use HS.FHIRServer.* instead.Method Inventory
- BuildCompartmentDef()
- CacheSearchParams()
- DeleteOrphanedResources()
- DeleteSessionResources()
- IndexHumanName()
- ParamSearchesPeriod()
Parameters
parameter BASERESOURCE = Resource;
The name of the table in the search package that will store the searchable
values common to all resource types, which will be searched in a
"search-all" interaction. Also, the name of the class in the storage
package (HS.FHIR.vSTU3.Repository.Resource) that contains the definitions of the
search parameters common to all types in its SearchParams XData block.
parameter COUNTERGLOBAL;
parameter DATAGLOBAL;
parameter EXCLUDEPARAMS;
Comma-delimited list of search params that are defined in the FHIR
standard (STU3), but that are not currently supported by HealthShare. The
parameter value should start and end with commas. Note that all composite
type params are currently not supported and do not need to be included here.
parameter INDEXGLOBAL;
Inherited description: The name of the Global used by the subclass (
parameter MODELPACKAGE = HS.FHIR.vSTU3.Model;
parameter SEARCHTABLEPACKAGE = NSLocal.FHIR.Search.vSTU3;
parameter STORAGEPKG = HS.FHIR.vSTU3.Repository.Resource.;
The Package for the Resource Subclasses of this class
parameter STREAMGLOBAL;
parameter VERSIONKEY = STU3;
A key useable for disambiguating version-specific cached data
Methods
deprecated classmethod BuildCompartmentDef(pFHIRVersion As %String)
THIS CLASS IS DEPRECATED Use HS.FHIRServer.* instead.
Based on definitions as seen at:http://hl7.org/fhir/STU3/compartmentdefinition.html
http://hl7.org/fhir/STU3/compartmentdefinition-patient.html
http://hl7.org/fhir/STU3/compartmentdefinition-encounter.html
http://hl7.org/fhir/STU3/compartmentdefinition-relatedperson.html
http://hl7.org/fhir/STU3/compartmentdefinition-practitioner.html
http://hl7.org/fhir/STU3/compartmentdefinition-device.html
Based on definitions as seen at:
THIS CLASS IS DEPRECATED Use HS.FHIRServer.* instead.
pType must be either null ("") or a valid resource type with a storage class that will be returned by a call to GetStorageClass().
This method caches search parameters defined in the SearchParams XData of the HS.FHIR.vSTU3.Repository.Resource.[type] class in %HSFHIRSearchParams, if not already cached, as well as the search params common to all resource types, which are defined in HS.FHIR.vSTU3.Repository.Resource.Resource, if not already cached. If the input value is null or ..#BASERESOURCE ("Resource"), only the common search params will be cached. If the given type is already cached in %HSFHIRSearchParams, then this method is effectively a no-op.
The format of %HSFHIRSearchParams is:
%HSFHIRSearchParams(..#VERSIONKEY, resourceType,0) = resource type includes an XPath with complex predicate (0 or 1)
An XPath is considered to have a "complex predicate" if either the predicate is not in the last piece of the XPath, or there are multiple predicates.
%HSFHIRSearchParams(..#VERSIONKEY, resourceType,searchParam) = paramType^xpath^refType1~refType2~...~^custom
%HSFHIRSearchParams(..#VERSIONKEY, "Patient","deceased") = "token^f:Patient/f:deceasedBoolean | f:Patient/f:deceasedDateTime^^1"
%HSFHIRSearchParams(..#VERSIONKEY, "Patient","given") = "string~f:Patient/f:name/f:given~~0"
%HSFHIRSearchParams(..#VERSIONKEY, "MedicationAdministration","effectivetime") = "date^f:MedicationAdministration/f:effectiveDateTime | f:MedicationAdministration/f:effectivePeriod^^0"
%HSFHIRSearchParams(..#VERSIONKEY, "Appointment","practitioner") = "reference^f:Appointment/f:participant/f:actor^Practitioner^0"
%HSFHIRSearchParams(..#VERSIONKEY, "Resource","_lastUpdated") = "date^f:Resource/f:meta/f:lastUpdated^^0"
pType must be either null ("") or a valid resource type with a storage class that will be returned by a call to GetStorageClass().
This method caches search parameters defined in the SearchParams XData of the HS.FHIR.vSTU3.Repository.Resource.[type] class in %HSFHIRSearchParams, if not already cached, as well as the search params common to all resource types, which are defined in HS.FHIR.vSTU3.Repository.Resource.Resource, if not already cached. If the input value is null or ..#BASERESOURCE ("Resource"), only the common search params will be cached. If the given type is already cached in %HSFHIRSearchParams, then this method is effectively a no-op.
The format of %HSFHIRSearchParams is:
%HSFHIRSearchParams(..#VERSIONKEY, resourceType,0) = resource type includes an XPath with complex predicate (0 or 1)
An XPath is considered to have a "complex predicate" if either the predicate is not in the last piece of the XPath, or there are multiple predicates.
%HSFHIRSearchParams(..#VERSIONKEY, resourceType,searchParam) = paramType^xpath^refType1~refType2~...~^custom
%HSFHIRSearchParams(..#VERSIONKEY, "Patient","deceased") = "token^f:Patient/f:deceasedBoolean | f:Patient/f:deceasedDateTime^^1"
%HSFHIRSearchParams(..#VERSIONKEY, "Patient","given") = "string~f:Patient/f:name/f:given~~0"
%HSFHIRSearchParams(..#VERSIONKEY, "MedicationAdministration","effectivetime") = "date^f:MedicationAdministration/f:effectiveDateTime | f:MedicationAdministration/f:effectivePeriod^^0"
%HSFHIRSearchParams(..#VERSIONKEY, "Appointment","practitioner") = "reference^f:Appointment/f:participant/f:actor^Practitioner^0"
%HSFHIRSearchParams(..#VERSIONKEY, "Resource","_lastUpdated") = "date^f:Resource/f:meta/f:lastUpdated^^0"
- resourceType: The type of resource being searched
- searchParam: The name of the search param, as is appears in the spec (ie, not normalized via NormalizeParamName())
- paramType: The type of the search param. Currently we support token, date, string, reference, quantity, number, and uri.
- xpath: The xpath value the describes the location of the value to be indexed/searched. This value will be XML-unescaped from the original SearchParameter resource, in case the original value contains any XML escape sequences, like ' for example.
- refType[x]: If paramType="reference", this field may be used to constrain the types of references that this search param indexes. For example, the Appointment practitioner search param searches the participant.actor property, but only references of type Practitioner. refTypes is "~"-delimited, and begins and ends with "~". A value of "*" may be used to indicate that this search param indexes and searches all reference types.
- custom: If custom=1, then the search indices for this param are created by a method in the storage class for this type. The name of the method is the param name normalized via NormalizeParamName(), so the method for param onset-info is onsetInfo(), for example. This is needed when the indices for a certain search parameter are more complex than simply "the value at [xpath]". If custom=1, the other fields technically aren't needed, since the method should handle all the details of indexing, but can be included for reference.
deprecated classmethod DeleteOrphanedResources() as %Status
THIS CLASS IS DEPRECATED Use HS.FHIRServer.* instead.
API In this context, "orphaned" means the resource references a non-existent session.
There *should* never be orphaned resources. The deletion of the referenced session should trigger the delete of the resource. Still, this utility is provided in case something goes wrong and orphaned resources are left in the repository.
API In this context, "orphaned" means the resource references a non-existent session.
There *should* never be orphaned resources. The deletion of the referenced session should trigger the delete of the resource. Still, this utility is provided in case something goes wrong and orphaned resources are left in the repository.
THIS CLASS IS DEPRECATED Use HS.FHIRServer.* instead.
THIS CLASS IS DEPRECATED Use HS.FHIRServer.* instead.
deprecated classmethod ParamSearchesPeriod(pResourceType As %String, pParamName As %String) as %Boolean
THIS CLASS IS DEPRECATED Use HS.FHIRServer.* instead.
Returns true if the given search parameter on the given resource type searches of property of type Period, and false otherwise. pParamName must be the name of the search parameter as it appears in the parameter definition, *not* the param name normalized via NormalizeParamName(). ie, "date-recorded", not "dateRecorded". If a search parameter searches more than one property, this will return true if any of them is a Period. For example, the "date" parameter on Procedure searches two properties, performedDateTime and performedPeriod. performedPeriod is a Period, so this method returns true for that parameter.
Returns true if the given search parameter on the given resource type searches of property of type Period, and false otherwise. pParamName must be the name of the search parameter as it appears in the parameter definition, *not* the param name normalized via NormalizeParamName(). ie, "date-recorded", not "dateRecorded". If a search parameter searches more than one property, this will return true if any of them is a Period. For example, the "date" parameter on Procedure searches two properties, performedDateTime and performedPeriod. performedPeriod is a Period, so this method returns true for that parameter.
Indexes
index (IDKEY on ) [IdKey, Type = key];
Index methods: IDKEYCheck(), IDKEYDelete(), IDKEYExists(), IDKEYOpen(), IDKEYSQLCheckUnique(), IDKEYSQLExists(), IDKEYSQLFindPKeyByConstraint(), IDKEYSQLFindRowIDByConstraint()
Inherited Members
Inherited Properties
- CommonSearchTableEntry
- Compartments
- Deleted
- Format
- LastModified
- Resource
- ResourceId
- ResourceObject
- ResourceSchema
- ResourceStream
- ResourceString
- ResourceType
- SearchTableEntry
- Session
- Verb
- VersionId
- XPathDoc
Inherited Methods
- %%CLASSNAMELogicalToStorage()
- %%CLASSNAMEStorageToLogical()
- %BMEBuilt()
- %Exists()
- %ExistsId()
- %InitExtentData()
- %InsertBatch()
- %KillExtentData()
- %LoadFromMemory()
- %LockExtent()
- %LockId()
- %OnDetermineClass()
- %PhysicalAddress()
- %PurgeIndices()
- %SaveDirect()
- %SaveIndices()
- %SortBegin()
- %SortEnd()
- %UnlockExtent()
- %UnlockId()
- %ValidateIndices()
- %ValidateTable()
- AddToSearchTableEntry()
- Collate()
- CollateSession()
- CurrentVersion()
- DecrementDateTime()
- DeprecateResource()
- EvalXPathPredicate()
- EvaluatePointer()
- EvaluateXPath()
- EvaluateXPathDynObjPredicate()
- EvaluateXPathDynamicObj()
- FirstInstant()
- FixLastModified()
- GenerateResourceId()
- GetCompartmentSearchParam()
- GetExtensionIndexProp()
- GetFHIRClass()
- GetRefTypeIdsFromSearchParam()
- GetResourceAsStream()
- GetSearchParamType()
- GetStorageClass()
- GetStorageClassFromLogicalId()
- IncrementDateTime()
- IndexAddress()
- IndexCodeableConcept()
- IndexCoding()
- IndexContactPoint()
- IndexDate()
- IndexDateAsPeriod()
- IndexIdentifier()
- IndexNumber()
- IndexPeriod()
- IndexQuantity()
- IndexReference()
- IndexScalar()
- IndexValues()
- IsCompartment()
- IsStringOrCode()
- KillAllData()
- LastInstant()
- LoadResource()
- NormalizeAccents()
- NormalizeParamName()
- NormalizePhone()
- OnAfterSave()
- OnBeforeMatch()
- OnValidate()
- PreviousInstant()
- RebuildClassIndices()
- RebuildSearchIndices()
- RefMatchesSearchParam()
- ResourceExists()
- ResourceIsDeleted()
- ResourceToLogicalId()
- SaveResource()
- SearchCompartment()
- SearchDate()
- SearchNumber()
- SearchQuantity()
- SearchReference()
- SearchString()
- SearchToken()
- SearchURI()
- SetResourceId()
- UpdateMeta()
- ValidateDate()
- VersionExists()
Storage
Gray indicates storage defined by superclasses.
Storage Model: Storage (HS.FHIR.vSTU3.Repository.Resource.Abstract)
^HS.FHIR.Repo.Data.STU3D(ID) |
= | %%CLASSNAME
ResourceType
ResourceId
VersionId
Deleted
LastModified
Format
Verb
Session
Compartments
ResourceStream
ResourceSchema
|
Storage Model: Storage (HS.FHIR.vSTU3.Repository.Resource.Abstract)
^HS.FHIR.Repo.Data.STU3D(ID,"Resource") |
= | ResourceString |
Subclasses
- HS.FHIR.vSTU3.Repository.Resource.Account
- HS.FHIR.vSTU3.Repository.Resource.ActivityDefinition
- HS.FHIR.vSTU3.Repository.Resource.AdverseEvent
- HS.FHIR.vSTU3.Repository.Resource.AllergyIntolerance
- HS.FHIR.vSTU3.Repository.Resource.Appointment
- HS.FHIR.vSTU3.Repository.Resource.AppointmentResponse
- HS.FHIR.vSTU3.Repository.Resource.AuditEvent
- HS.FHIR.vSTU3.Repository.Resource.Basic
- HS.FHIR.vSTU3.Repository.Resource.Binary
- HS.FHIR.vSTU3.Repository.Resource.BodySite
- HS.FHIR.vSTU3.Repository.Resource.Bundle
- HS.FHIR.vSTU3.Repository.Resource.CapabilityStatement
- HS.FHIR.vSTU3.Repository.Resource.CarePlan
- HS.FHIR.vSTU3.Repository.Resource.CareTeam
- HS.FHIR.vSTU3.Repository.Resource.ChargeItem
- HS.FHIR.vSTU3.Repository.Resource.Claim
- HS.FHIR.vSTU3.Repository.Resource.ClaimResponse
- HS.FHIR.vSTU3.Repository.Resource.ClinicalImpression
- HS.FHIR.vSTU3.Repository.Resource.CodeSystem
- HS.FHIR.vSTU3.Repository.Resource.Communication
- HS.FHIR.vSTU3.Repository.Resource.CommunicationRequest
- HS.FHIR.vSTU3.Repository.Resource.CompartmentDefinition
- HS.FHIR.vSTU3.Repository.Resource.Composition
- HS.FHIR.vSTU3.Repository.Resource.ConceptMap
- HS.FHIR.vSTU3.Repository.Resource.Condition
- HS.FHIR.vSTU3.Repository.Resource.Consent
- HS.FHIR.vSTU3.Repository.Resource.Contract
- HS.FHIR.vSTU3.Repository.Resource.Coverage
- HS.FHIR.vSTU3.Repository.Resource.DataElement
- HS.FHIR.vSTU3.Repository.Resource.DetectedIssue
- HS.FHIR.vSTU3.Repository.Resource.Device
- HS.FHIR.vSTU3.Repository.Resource.DeviceComponent
- HS.FHIR.vSTU3.Repository.Resource.DeviceMetric
- HS.FHIR.vSTU3.Repository.Resource.DeviceRequest
- HS.FHIR.vSTU3.Repository.Resource.DeviceUseStatement
- HS.FHIR.vSTU3.Repository.Resource.DiagnosticReport
- HS.FHIR.vSTU3.Repository.Resource.DocumentManifest
- HS.FHIR.vSTU3.Repository.Resource.DocumentReference
- HS.FHIR.vSTU3.Repository.Resource.DomainResource
- HS.FHIR.vSTU3.Repository.Resource.EligibilityRequest
- HS.FHIR.vSTU3.Repository.Resource.EligibilityResponse
- HS.FHIR.vSTU3.Repository.Resource.Encounter
- HS.FHIR.vSTU3.Repository.Resource.Endpoint
- HS.FHIR.vSTU3.Repository.Resource.EnrollmentRequest
- HS.FHIR.vSTU3.Repository.Resource.EnrollmentResponse
- HS.FHIR.vSTU3.Repository.Resource.EpisodeOfCare
- HS.FHIR.vSTU3.Repository.Resource.ExpansionProfile
- HS.FHIR.vSTU3.Repository.Resource.ExplanationOfBenefit
- HS.FHIR.vSTU3.Repository.Resource.FamilyMemberHistory
- HS.FHIR.vSTU3.Repository.Resource.Flag
- HS.FHIR.vSTU3.Repository.Resource.Goal
- HS.FHIR.vSTU3.Repository.Resource.GraphDefinition
- HS.FHIR.vSTU3.Repository.Resource.Group
- HS.FHIR.vSTU3.Repository.Resource.GuidanceResponse
- HS.FHIR.vSTU3.Repository.Resource.HealthcareService
- HS.FHIR.vSTU3.Repository.Resource.ImagingManifest
- HS.FHIR.vSTU3.Repository.Resource.ImagingStudy
- HS.FHIR.vSTU3.Repository.Resource.Immunization
- HS.FHIR.vSTU3.Repository.Resource.ImmunizationRecommendation
- HS.FHIR.vSTU3.Repository.Resource.ImplementationGuide
- HS.FHIR.vSTU3.Repository.Resource.Library
- HS.FHIR.vSTU3.Repository.Resource.Linkage
- HS.FHIR.vSTU3.Repository.Resource.List
- HS.FHIR.vSTU3.Repository.Resource.Location
- HS.FHIR.vSTU3.Repository.Resource.Measure
- HS.FHIR.vSTU3.Repository.Resource.MeasureReport
- HS.FHIR.vSTU3.Repository.Resource.Media
- HS.FHIR.vSTU3.Repository.Resource.Medication
- HS.FHIR.vSTU3.Repository.Resource.MedicationAdministration
- HS.FHIR.vSTU3.Repository.Resource.MedicationDispense
- HS.FHIR.vSTU3.Repository.Resource.MedicationRequest
- HS.FHIR.vSTU3.Repository.Resource.MedicationStatement
- HS.FHIR.vSTU3.Repository.Resource.MessageDefinition
- HS.FHIR.vSTU3.Repository.Resource.MessageHeader
- HS.FHIR.vSTU3.Repository.Resource.NamingSystem
- HS.FHIR.vSTU3.Repository.Resource.NutritionOrder
- HS.FHIR.vSTU3.Repository.Resource.Observation
- HS.FHIR.vSTU3.Repository.Resource.OperationDefinition
- HS.FHIR.vSTU3.Repository.Resource.Organization
- HS.FHIR.vSTU3.Repository.Resource.Patient
- HS.FHIR.vSTU3.Repository.Resource.PaymentNotice
- HS.FHIR.vSTU3.Repository.Resource.PaymentReconciliation
- HS.FHIR.vSTU3.Repository.Resource.Person
- HS.FHIR.vSTU3.Repository.Resource.PlanDefinition
- HS.FHIR.vSTU3.Repository.Resource.Practitioner
- HS.FHIR.vSTU3.Repository.Resource.PractitionerRole
- HS.FHIR.vSTU3.Repository.Resource.Procedure
- HS.FHIR.vSTU3.Repository.Resource.ProcedureRequest
- HS.FHIR.vSTU3.Repository.Resource.ProcessRequest
- HS.FHIR.vSTU3.Repository.Resource.ProcessResponse
- HS.FHIR.vSTU3.Repository.Resource.Provenance
- HS.FHIR.vSTU3.Repository.Resource.Questionnaire
- HS.FHIR.vSTU3.Repository.Resource.QuestionnaireResponse
- HS.FHIR.vSTU3.Repository.Resource.ReferralRequest
- HS.FHIR.vSTU3.Repository.Resource.RelatedPerson
- HS.FHIR.vSTU3.Repository.Resource.RequestGroup
- HS.FHIR.vSTU3.Repository.Resource.ResearchStudy
- HS.FHIR.vSTU3.Repository.Resource.ResearchSubject
- HS.FHIR.vSTU3.Repository.Resource.Resource
- HS.FHIR.vSTU3.Repository.Resource.RiskAssessment
- HS.FHIR.vSTU3.Repository.Resource.Schedule
- HS.FHIR.vSTU3.Repository.Resource.SearchParameter
- HS.FHIR.vSTU3.Repository.Resource.Sequence
- HS.FHIR.vSTU3.Repository.Resource.ServiceDefinition
- HS.FHIR.vSTU3.Repository.Resource.Slot
- HS.FHIR.vSTU3.Repository.Resource.Specimen
- HS.FHIR.vSTU3.Repository.Resource.StructureDefinition
- HS.FHIR.vSTU3.Repository.Resource.StructureMap
- HS.FHIR.vSTU3.Repository.Resource.Subscription
- HS.FHIR.vSTU3.Repository.Resource.Substance
- HS.FHIR.vSTU3.Repository.Resource.SupplyDelivery
- HS.FHIR.vSTU3.Repository.Resource.SupplyRequest
- HS.FHIR.vSTU3.Repository.Resource.Task
- HS.FHIR.vSTU3.Repository.Resource.TestReport
- HS.FHIR.vSTU3.Repository.Resource.TestScript
- HS.FHIR.vSTU3.Repository.Resource.ValueSet
- HS.FHIR.vSTU3.Repository.Resource.VisionPrescription