FHIR Release 3 (STU) 5 Preview #3
This page is part of the FHIR Specification (v3.0.2: STU 3). The current version which supercedes this version is 4.0.1 . For a full list of available versions, see the Directory of published versions
FHIR Infrastructure Work Group Maturity Level : 0 1   Draft Trial Use Security Category : Anonymous Compartments : Not linked to any defined compartments

Detailed Descriptions for the elements in the GraphDefinition resource.

GraphDefinition
Element Id GraphDefinition
Definition

A formal computable definition of a graph of resources - that is, a coherent set of resources that form a graph by following references. The Graph Definition resource defines a set and makes rules about the set.

Control Cardinality 1..1 0..*
Type CanonicalResource
Invariants
Defined on this element
cnl-0 Warning Name should be usable as an identifier for the module by machine processing applications such as code generation name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
GraphDefinition.url
Element Id GraphDefinition.url
Definition

An absolute URI that is used to identify this graph definition when it is referenced in a specification, model, design or an instance. instance; also called its canonical identifier. This SHALL be a URL, SHOULD be globally unique, unique and SHOULD be an a literal address at which at which an authoritative instance of this graph definition is (or will be) published. The This URL SHOULD include can be the major version target of a canonical reference. It SHALL remain the same when the graph definition. For more information see Technical and Business Versions . definition is stored on different servers.

Control Cardinality 0..1
Type uri
Requirements

Allows the graph definition to be referenced by a single globally unique identifier.

Summary true
Comments

Can be a urn:uuid: or a urn:oid:, urn:oid: but real http: addresses are preferred. Multiple instances may share the same url URL if they have a distinct version.

The determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in Technical and Business Versions .

In some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the meta.source element to indicate where the current master source of the resource can be found.

GraphDefinition.version
Element Id GraphDefinition.version
Definition

The identifier that is used to identify this version of the graph definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the graph definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.

Note This is a business versionId, not a resource version id (see discussion )
Control Cardinality 0..1
Type string
Summary true
Comments

There may be different graph definition instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a refrence reference to a particular business version of the graph definition with the format [url]|[version].

GraphDefinition.name
Element Id GraphDefinition.name
Definition

A natural language name identifying the graph definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.

Control Cardinality 1..1
Type string
Requirements

Support human navigation and code generation.

Summary true
Comments

The name is not expected to be globally unique. The name should be a simple alpha-numeric alphanumeric type name to ensure that it is computable machine-processing friendly.

Invariants
Affect this element
cnl-0 Warning Name should be usable as an identifier for the module by machine processing applications such as code generation name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
GraphDefinition.status
Element Id GraphDefinition.status
Definition

The status of this graph definition. Enables tracking the life-cycle of the content.

Control Cardinality 1..1
Terminology Binding PublicationStatus ( Required )
Type code
Is Modifier true (Reason: This is labeled as "Is Modifier" because applications should not use a retired {{title}} without due consideration)
Summary true
Comments

Allows filtering of graph definitions that are appropriate for use vs. versus not. This is labeled as "Is Modifier" because applications should not use a retired graph definition without due consideration.

GraphDefinition.experimental
Element Id GraphDefinition.experimental
Definition

A boolean Boolean value to indicate that this graph definition is authored for testing purposes (or education/evaluation/marketing), education/evaluation/marketing) and is not intended to be used for genuine usage.

Control Cardinality 0..1
Type boolean
Is Modifier true Requirements

Enables experimental content to be developed following the same lifecycle that would be used for a production-level graph definition.

Summary true
Comments

Allows filtering of graph definition definitions that are appropriate for use vs. versus not. This is labeled as "Is Modifier" because applications should not use an experimental graph definition in production.

GraphDefinition.date
Element Id GraphDefinition.date
Definition

The date (and optionally time) when the graph definition was published. The date must change if and when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the graph definition changes.

Control Cardinality 0..1
Type dateTime
Alternate Names Revision Date
Summary true
Comments

Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the graph definition. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.

GraphDefinition.publisher
Element Id GraphDefinition.publisher
Definition

The name of the individual or organization or individual that published the graph definition.

Control Cardinality 0..1
Type string
Requirements

Helps establish the "authority/credibility" of the graph definition. May also allow for contact.

Summary true
Comments

Usually an organization, organization but may be an individual. The publisher (or steward) of the graph definition is the organization or individual primarily responsible for the maintenance and upkeep of the graph definition. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the graph definition. This item SHOULD be populated unless the information is available from context.

GraphDefinition.contact
Element Id GraphDefinition.contact
Definition

Contact details to assist a user in finding and communicating with the publisher.

Control Cardinality 0..*
Type ContactDetail
Summary true
Comments

May be a web site, an email address, a telephone number, etc.

GraphDefinition.description
Element Id GraphDefinition.description
Definition

A free text natural language description of the graph definition from a consumer's perspective.

Control Cardinality 0..1
Type markdown
Comments

This description can be used to capture details such as why the graph definition was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the graph definition as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the profile graph definition is presumed to be the predominant language in the place the profile graph definition was created).

GraphDefinition.useContext
Element Id GraphDefinition.useContext
Definition

The content was developed with a focus and intent of supporting the contexts that are listed. These terms contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate graph definition instances.

Control Cardinality 0..*
Type UsageContext
Requirements

Assist in searching for appropriate content.

Summary true
Comments

When multiple useContexts are specified, there is no expectation whether that all or any of the contexts apply.

GraphDefinition.jurisdiction
Element Id GraphDefinition.jurisdiction
Definition

A legal or geographic region in which the graph definition is intended to be used.

Control Cardinality 0..*
Terminology Binding Jurisdiction ValueSet ( Extensible )
Type CodeableConcept
Summary true
Comments

It may be possible for the graph definition to be used in jurisdictions other than those for which it was originally designed or intended.

GraphDefinition.purpose
Element Id GraphDefinition.purpose
Definition

Explaination Explanation of why this graph definition is needed and why it has been designed as it has.

Control Cardinality 0..1
Type markdown
Comments

This element does not describe the usage of the graph definition Instead definition. Instead, it provides traceability of ''why'' the resource is either needed or ''why'' it is defined as it is. This may be used to point to source materials or specifications that drove the structure of this graph definition.

GraphDefinition.start
Element Id GraphDefinition.start
Definition

The type of FHIR resource at which instances of this graph start.

Control Cardinality 1..1
Terminology Binding Any defined Resource Type name
Type code
Summary true
GraphDefinition.profile
Element Id GraphDefinition.profile
Definition

The profile that describes the use of the base resource.

Control Cardinality 0..1
Type uri canonical ( StructureDefinition )
Comments

The code does not include the '$' prefix that is always included in the URL when the operation is invoked.

GraphDefinition.link
Element Id GraphDefinition.link
Definition

Links this graph makes rules about.

Control Cardinality 0..*
GraphDefinition.link.path
Element Id GraphDefinition.link.path
Definition

Path in the resource A FHIR expression that contains the link. identifies one of FHIR References to other resources.

Control Cardinality 1..1 0..1
Type string
Comments

The path can be expression cannot contain a literal path (e.g. Observation.subject), or it can be resolve() function. If there is no path, the link is a query for reverse links (e.g. Provenance?target=[id]). lookup, using target.params. If the path is "*" then this means all references in the resource.

GraphDefinition.link.sliceName
Element Id GraphDefinition.link.sliceName
Definition

Which slice (if profiled).

Control Cardinality 0..1
Type string
GraphDefinition.link.min
Element Id GraphDefinition.link.min
Definition

Minimum occurrences for this link.

Control Cardinality 0..1
Type integer
GraphDefinition.link.max
Element Id GraphDefinition.link.max
Definition

Maximum occurrences for this link.

Control Cardinality 0..1
Type string
GraphDefinition.link.description
Element Id GraphDefinition.link.description
Definition

Information about why this link is of interest in this graph definition.

Control Cardinality 0..1
Type string
GraphDefinition.link.target
Element Id GraphDefinition.link.target
Definition

Potential target for the link.

Control Cardinality 1..* 0..*
GraphDefinition.link.target.type
Element Id GraphDefinition.link.target.type
Definition

Type of resource this link refers to.

Control Cardinality 1..1
Terminology Binding Any defined Resource Type name
Type code
GraphDefinition.link.target.params
Element Id GraphDefinition.link.target.params
Definition

A set of parameters to look up.

Cardinality 0..1
Type string
Comments

At least one of the parameters must have the value {ref} which identifies the focus resource.

GraphDefinition.link.target.profile
Element Id GraphDefinition.link.target.profile
Definition

Profile for the target resource.

Control Cardinality 0..1
Type uri canonical ( StructureDefinition )
GraphDefinition.link.target.compartment
Element Id GraphDefinition.link.target.compartment
Definition

Compartment Consistency Rules.

Control Cardinality 0..*
GraphDefinition.link.target.compartment.use
Element Id GraphDefinition.link.target.compartment.use
Definition

Defines how the compartment rule is used - whether it it is used to test whether resources are subject to the rule, or whether it is a rule that must be followed.

Cardinality 1..1
Terminology Binding GraphCompartmentUse ( Required )
Type code
Comments

All conditional rules are evaluated; if they are true, then the rules are evaluated.

GraphDefinition.link.target.compartment.code
Element Id GraphDefinition.link.target.compartment.code
Definition

Identifies the compartment.

Control Cardinality 1..1
Terminology Binding CompartmentType ( Required )
Type code
GraphDefinition.link.target.compartment.rule
Element Id GraphDefinition.link.target.compartment.rule
Definition

identical | matching | different | no-rule | custom.

Control Cardinality 1..1
Terminology Binding GraphCompartmentRule ( Required )
Type code
GraphDefinition.link.target.compartment.expression
Element Id GraphDefinition.link.target.compartment.expression
Definition

Custom rule, as a FHIRPath expression.

Control Cardinality 0..1
Type string
GraphDefinition.link.target.compartment.description
Element Id GraphDefinition.link.target.compartment.description
Definition

Documentation for FHIRPath expression.

Control Cardinality 0..1
Type string
GraphDefinition.link.target.link
Element Id GraphDefinition.link.target.link
Definition

Additional links from target resource.

Control Cardinality 0..*
Type See GraphDefinition.link