blob: c0bbd34c6a75964d10453eebc75367366ca6f68d [file] [log] [blame]
/**
*/
package org.hl7.fhir;
import org.eclipse.emf.common.util.EList;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Implementation Guide</b></em>'.
* <!-- end-user-doc -->
*
* <!-- begin-model-doc -->
* A set of rules or how FHIR is used to solve a particular problem. This resource is used to gather all the parts of an implementation guide into a logical whole, and to publish a computable definition of all the parts.
* If the element is present, it must have either a @value, an @id, or extensions
* <!-- end-model-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link org.hl7.fhir.ImplementationGuide#getUrl <em>Url</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getVersion <em>Version</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getName <em>Name</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getStatus <em>Status</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getExperimental <em>Experimental</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getPublisher <em>Publisher</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getContact <em>Contact</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getDate <em>Date</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getDescription <em>Description</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getUseContext <em>Use Context</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getCopyright <em>Copyright</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getFhirVersion <em>Fhir Version</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getDependency <em>Dependency</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getPackage <em>Package</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getGlobal <em>Global</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getBinary <em>Binary</em>}</li>
* <li>{@link org.hl7.fhir.ImplementationGuide#getPage <em>Page</em>}</li>
* </ul>
*
* @see org.hl7.fhir.FhirPackage#getImplementationGuide()
* @model extendedMetaData="name='ImplementationGuide' kind='elementOnly'"
* @generated
*/
public interface ImplementationGuide extends DomainResource {
/**
* Returns the value of the '<em><b>Url</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* An absolute URL that is used to identify this implementation guide when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this implementation guide is (or will be) published.
* <!-- end-model-doc -->
* @return the value of the '<em>Url</em>' containment reference.
* @see #setUrl(Uri)
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_Url()
* @model containment="true" required="true"
* extendedMetaData="kind='element' name='url' namespace='##targetNamespace'"
* @generated
*/
Uri getUrl();
/**
* Sets the value of the '{@link org.hl7.fhir.ImplementationGuide#getUrl <em>Url</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Url</em>' containment reference.
* @see #getUrl()
* @generated
*/
void setUrl(Uri value);
/**
* Returns the value of the '<em><b>Version</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The identifier that is used to identify this version of the Implementation Guide when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Implementation Guide author manually.
* <!-- end-model-doc -->
* @return the value of the '<em>Version</em>' containment reference.
* @see #setVersion(org.hl7.fhir.String)
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_Version()
* @model containment="true"
* extendedMetaData="kind='element' name='version' namespace='##targetNamespace'"
* @generated
*/
org.hl7.fhir.String getVersion();
/**
* Sets the value of the '{@link org.hl7.fhir.ImplementationGuide#getVersion <em>Version</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Version</em>' containment reference.
* @see #getVersion()
* @generated
*/
void setVersion(org.hl7.fhir.String value);
/**
* Returns the value of the '<em><b>Name</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* A free text natural language name identifying the Implementation Guide.
* <!-- end-model-doc -->
* @return the value of the '<em>Name</em>' containment reference.
* @see #setName(org.hl7.fhir.String)
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_Name()
* @model containment="true" required="true"
* extendedMetaData="kind='element' name='name' namespace='##targetNamespace'"
* @generated
*/
org.hl7.fhir.String getName();
/**
* Sets the value of the '{@link org.hl7.fhir.ImplementationGuide#getName <em>Name</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Name</em>' containment reference.
* @see #getName()
* @generated
*/
void setName(org.hl7.fhir.String value);
/**
* Returns the value of the '<em><b>Status</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The status of the Implementation Guide.
* <!-- end-model-doc -->
* @return the value of the '<em>Status</em>' containment reference.
* @see #setStatus(Code)
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_Status()
* @model containment="true" required="true"
* extendedMetaData="kind='element' name='status' namespace='##targetNamespace'"
* @generated
*/
Code getStatus();
/**
* Sets the value of the '{@link org.hl7.fhir.ImplementationGuide#getStatus <em>Status</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Status</em>' containment reference.
* @see #getStatus()
* @generated
*/
void setStatus(Code value);
/**
* Returns the value of the '<em><b>Experimental</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* This Implementation Guide was authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage.
* <!-- end-model-doc -->
* @return the value of the '<em>Experimental</em>' containment reference.
* @see #setExperimental(org.hl7.fhir.Boolean)
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_Experimental()
* @model containment="true"
* extendedMetaData="kind='element' name='experimental' namespace='##targetNamespace'"
* @generated
*/
org.hl7.fhir.Boolean getExperimental();
/**
* Sets the value of the '{@link org.hl7.fhir.ImplementationGuide#getExperimental <em>Experimental</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Experimental</em>' containment reference.
* @see #getExperimental()
* @generated
*/
void setExperimental(org.hl7.fhir.Boolean value);
/**
* Returns the value of the '<em><b>Publisher</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The name of the individual or organization that published the implementation guide.
* <!-- end-model-doc -->
* @return the value of the '<em>Publisher</em>' containment reference.
* @see #setPublisher(org.hl7.fhir.String)
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_Publisher()
* @model containment="true"
* extendedMetaData="kind='element' name='publisher' namespace='##targetNamespace'"
* @generated
*/
org.hl7.fhir.String getPublisher();
/**
* Sets the value of the '{@link org.hl7.fhir.ImplementationGuide#getPublisher <em>Publisher</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Publisher</em>' containment reference.
* @see #getPublisher()
* @generated
*/
void setPublisher(org.hl7.fhir.String value);
/**
* Returns the value of the '<em><b>Contact</b></em>' containment reference list.
* The list contents are of type {@link org.hl7.fhir.ImplementationGuideContact}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* Contacts to assist a user in finding and communicating with the publisher.
* <!-- end-model-doc -->
* @return the value of the '<em>Contact</em>' containment reference list.
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_Contact()
* @model containment="true"
* extendedMetaData="kind='element' name='contact' namespace='##targetNamespace'"
* @generated
*/
EList<ImplementationGuideContact> getContact();
/**
* Returns the value of the '<em><b>Date</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The date this version of the implementation guide was published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the implementation guide changes.
* <!-- end-model-doc -->
* @return the value of the '<em>Date</em>' containment reference.
* @see #setDate(DateTime)
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_Date()
* @model containment="true"
* extendedMetaData="kind='element' name='date' namespace='##targetNamespace'"
* @generated
*/
DateTime getDate();
/**
* Sets the value of the '{@link org.hl7.fhir.ImplementationGuide#getDate <em>Date</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Date</em>' containment reference.
* @see #getDate()
* @generated
*/
void setDate(DateTime value);
/**
* Returns the value of the '<em><b>Description</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* A free text natural language description of the Implementation Guide and its use.
* <!-- end-model-doc -->
* @return the value of the '<em>Description</em>' containment reference.
* @see #setDescription(org.hl7.fhir.String)
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_Description()
* @model containment="true"
* extendedMetaData="kind='element' name='description' namespace='##targetNamespace'"
* @generated
*/
org.hl7.fhir.String getDescription();
/**
* Sets the value of the '{@link org.hl7.fhir.ImplementationGuide#getDescription <em>Description</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Description</em>' containment reference.
* @see #getDescription()
* @generated
*/
void setDescription(org.hl7.fhir.String value);
/**
* Returns the value of the '<em><b>Use Context</b></em>' containment reference list.
* The list contents are of type {@link org.hl7.fhir.CodeableConcept}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching of implementation guides. The most common use of this element is to represent the country / jurisdiction for which this implementation guide was defined.
* <!-- end-model-doc -->
* @return the value of the '<em>Use Context</em>' containment reference list.
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_UseContext()
* @model containment="true"
* extendedMetaData="kind='element' name='useContext' namespace='##targetNamespace'"
* @generated
*/
EList<CodeableConcept> getUseContext();
/**
* Returns the value of the '<em><b>Copyright</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* A copyright statement relating to the implementation guide and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the details of the constraints and mappings.
* <!-- end-model-doc -->
* @return the value of the '<em>Copyright</em>' containment reference.
* @see #setCopyright(org.hl7.fhir.String)
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_Copyright()
* @model containment="true"
* extendedMetaData="kind='element' name='copyright' namespace='##targetNamespace'"
* @generated
*/
org.hl7.fhir.String getCopyright();
/**
* Sets the value of the '{@link org.hl7.fhir.ImplementationGuide#getCopyright <em>Copyright</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Copyright</em>' containment reference.
* @see #getCopyright()
* @generated
*/
void setCopyright(org.hl7.fhir.String value);
/**
* Returns the value of the '<em><b>Fhir Version</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The version of the FHIR specification on which this ImplementationGuide is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 1.2.0 for this version.
* <!-- end-model-doc -->
* @return the value of the '<em>Fhir Version</em>' containment reference.
* @see #setFhirVersion(Id)
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_FhirVersion()
* @model containment="true"
* extendedMetaData="kind='element' name='fhirVersion' namespace='##targetNamespace'"
* @generated
*/
Id getFhirVersion();
/**
* Sets the value of the '{@link org.hl7.fhir.ImplementationGuide#getFhirVersion <em>Fhir Version</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Fhir Version</em>' containment reference.
* @see #getFhirVersion()
* @generated
*/
void setFhirVersion(Id value);
/**
* Returns the value of the '<em><b>Dependency</b></em>' containment reference list.
* The list contents are of type {@link org.hl7.fhir.ImplementationGuideDependency}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* Another implementation guide that this implementation depends on. Typically, an implementation guide uses value sets, profiles etc.defined in other implementation guides.
* <!-- end-model-doc -->
* @return the value of the '<em>Dependency</em>' containment reference list.
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_Dependency()
* @model containment="true"
* extendedMetaData="kind='element' name='dependency' namespace='##targetNamespace'"
* @generated
*/
EList<ImplementationGuideDependency> getDependency();
/**
* Returns the value of the '<em><b>Package</b></em>' containment reference list.
* The list contents are of type {@link org.hl7.fhir.ImplementationGuidePackage}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* A logical group of resources. Logical groups can be used when building pages.
* <!-- end-model-doc -->
* @return the value of the '<em>Package</em>' containment reference list.
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_Package()
* @model containment="true" required="true"
* extendedMetaData="kind='element' name='package' namespace='##targetNamespace'"
* @generated
*/
EList<ImplementationGuidePackage> getPackage();
/**
* Returns the value of the '<em><b>Global</b></em>' containment reference list.
* The list contents are of type {@link org.hl7.fhir.ImplementationGuideGlobal}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* A set of profiles that all resources covered by this implementation guide must conform to.
* <!-- end-model-doc -->
* @return the value of the '<em>Global</em>' containment reference list.
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_Global()
* @model containment="true"
* extendedMetaData="kind='element' name='global' namespace='##targetNamespace'"
* @generated
*/
EList<ImplementationGuideGlobal> getGlobal();
/**
* Returns the value of the '<em><b>Binary</b></em>' containment reference list.
* The list contents are of type {@link org.hl7.fhir.Uri}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* A binary file that is included in the implementation guide when it is published.
* <!-- end-model-doc -->
* @return the value of the '<em>Binary</em>' containment reference list.
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_Binary()
* @model containment="true"
* extendedMetaData="kind='element' name='binary' namespace='##targetNamespace'"
* @generated
*/
EList<Uri> getBinary();
/**
* Returns the value of the '<em><b>Page</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* A page / section in the implementation guide. The root page is the implementation guide home page.
* <!-- end-model-doc -->
* @return the value of the '<em>Page</em>' containment reference.
* @see #setPage(ImplementationGuidePage)
* @see org.hl7.fhir.FhirPackage#getImplementationGuide_Page()
* @model containment="true" required="true"
* extendedMetaData="kind='element' name='page' namespace='##targetNamespace'"
* @generated
*/
ImplementationGuidePage getPage();
/**
* Sets the value of the '{@link org.hl7.fhir.ImplementationGuide#getPage <em>Page</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Page</em>' containment reference.
* @see #getPage()
* @generated
*/
void setPage(ImplementationGuidePage value);
} // ImplementationGuide