diff --git a/input/fsh/endpoint.fsh b/input/fsh/endpoint.fsh index eef99357..d6541f47 100644 --- a/input/fsh/endpoint.fsh +++ b/input/fsh/endpoint.fsh @@ -174,6 +174,7 @@ This managing organization relationship is potentially independent of if the org * period MS * period ^short = "Overall deployment lifetime for this endpoint." * period ^comment = "usually indicating when the endpoint was deployed, and may indicate when this endpoint will be decommissioned." +* extension contains MCSDPurposeOfUse named purposeOfUse 0..* diff --git a/input/fsh/organization.fsh b/input/fsh/organization.fsh index c928edb3..a0cb0516 100644 --- a/input/fsh/organization.fsh +++ b/input/fsh/organization.fsh @@ -36,3 +36,4 @@ represented as child Organizations of a parent Organization. * partOf only Reference(MCSDOrganization) * ^short = "If the Organization belongs to a single hierarchy, the partOf element shall be used." * ^definition = "If the Organization belongs to a single hierarchy, the partOf element shall be used." +* extension contains MCSDPurposeOfUse named purposeOfUse 0..* diff --git a/input/fsh/purpose.fsh b/input/fsh/purpose.fsh new file mode 100644 index 00000000..2e84ae1f --- /dev/null +++ b/input/fsh/purpose.fsh @@ -0,0 +1,27 @@ +Extension: MCSDPurposeOfUse +Id: IHE.mCSD.PurposeOfUse +Title: "Purpose of Use Extension" +Description: """ +Set a purpose of use for an mCSD Endpoint or mCSD Organization. +""" +* ^context[+].type = #element +* ^context[=].expression = "MCSDOrganization" +* ^context[+].type = #element +* ^context[=].expression = "MCSDEndpoint" +* value[x] only CodeableConcept +* valueCodeableConcept from http://terminology.hl7.org/ValueSet/v3-PurposeOfUse (preferred) + +Instance: MCSDSearchPurposeOfUse +InstanceOf: SearchParameter +Title: "Search on the IHE defined extension for Purpose of Use" +Usage: #definition +* id = "IHE.mCSD.Search.PurposeOfUse" +* url = "http://profiles.ihe.net/ITI/mCSD/SearchParameter/IHE.mCSD.Search.PurposeOfUse" +* description = "This SearchParameter enables finding Endpoints or Organizatoins by the purpose of use code." +* name = "ihe-mcsd-purpose-of-use" +* status = #active +* code = #ihe-mcsd-purpose-of-use +* base[+] = #Organization +* base[+] = #Endpoint +* expression = "(extension('http://profiles.ihe.net/ITI/mCSD/SearchParameter/IHE.mCSD.Search.PurposeOfUse').value as CodeableConcept)" +* type = #token