Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagejava
titleEksempel på oprettelse af documententry
linenumberstrue
collapsetrue
public DocumentEntry createDocumentEntry() {
	return createDocumentEntry(new Code("12345678902512489996", new LocalizedString("CPR"), "1.2.208.176.1.2"), 
			new Code("12345679999", new LocalizedString("DROS Testafdeling"), "1.2.208.176.1.1"), 
			"2022022111214920220221113011", "2022022111214920220221113011", "2022022112214920220221113011", // datoer skal angives i UTC tid
			new Code("001", new LocalizedString("Klinisk rapport"), "1.2.208.184.100.9"), 
			new Code("N", new LocalizedString("N"), "2.16.840.1.113883.5.25"), 
			null, 
			new Code("urn:ad:dk:medcom:appointmentsummary:full", new LocalizedString("DK Appointment Summary Document schema"), "1.2.208.184.100.10"), 
			new Code("22232009", new LocalizedString("hospital"), "2.16.840.1.113883.6.96"), 
			"da-DK", 
			"text/xml", 
			"Dato og tidspunkt for møde mellem patient og sundhedsperson", 
			new Code("39289-4", new LocalizedString("Follow-up (referred to) provider &or specialist, appointment date"), "2.16.840.1.113883.6.1"), 
			new Code("408443003", new LocalizedString("almen medicin"), "2.16.840.1.113883.6.96"), 
			"urn:uuid:cfe0c27469d3b9f3-170c7919-457e40e0-8db48731-978ef88cbc6732fb339216c2", // dette er det entryuuid, som skal anvendes i forbindelse med evt. ret og slet dokument
			"68625636022403185028438472030670286734.54339070042876615527450729509229840524.16454389099231645439411709",
			"68625636022403185028438472030670286734.54339070042876615527450729509229840524.16454389099231645439411709");
}


public DocumentEntry createDocumentEntry(Code patientId, Code organisation, String creationTime, String serviceStartTime, String serviceStopTime, Code classCode, Code confidentialityCode, List<Code> eventCodes, Code formatCode, Code healthcareFacilityTypeCode, 
		 String languageCode, String mimeType, String title, Code typeCode, Code practiceSettingCode, String documentEntryUuid, String uniqueId, String logicalId) {
	
	// Opret DocumentEntry for CDA dokumentet
	DocumentEntry documentEntry = new DocumentEntry();
	documentEntry.setEntryUuid(documentEntryUuid); //
	documentEntry.setUniqueId(uniqueId);
	documentEntry.setLogicalUuid(logicalId);

	// Patient Identification
	Identifiable patientIdentifiable = null;
	if (patientId != null) {
		AssigningAuthority patientIdAssigningAuthority = new AssigningAuthority(patientId.getSchemeName());
		patientIdentifiable = new Identifiable(patientId.getCode(), patientIdAssigningAuthority);
	}
	documentEntry.setPatientId(patientIdentifiable);
	documentEntry.setSourcePatientId(patientIdentifiable);


	// Opret author (Organisation)
	AssigningAuthority organisationAssigningAuthority = new AssigningAuthority(organisation.getSchemeName());
	Author author = new Author();
	if (organisation != null && organisation.getCode() != null) {
		String orgDisplayname = (organisation.getDisplayName() != null ? organisation.getDisplayName().getValue() : "");
		Organization authorOrganisation = new Organization(orgDisplayname, organisation.getCode(), organisationAssigningAuthority);
		author.getAuthorInstitution().add(authorOrganisation);
	}
	documentEntry.setAuthor(author);

	// Availability Status (enumeration: APPROVED, SUBMITTED, DEPRECATED)
	documentEntry.setAvailabilityStatus(AvailabilityStatus.APPROVED);

	// Datoer - skal angives i UTC tid
	if (creationTime != null) {
		documentEntry.setCreationTime(creationTime);
	}
	if (serviceStartTime != null) {
		documentEntry.setServiceStartTime(serviceStartTime);
	}
	if (serviceStopTime != null) {
		documentEntry.setServiceStopTime(serviceStopTime);
	}

	if (classCode != null) {
		documentEntry.setClassCode(classCode);
	}
	if (confidentialityCode != null) {
		documentEntry.getConfidentialityCodes().add(confidentialityCode);
	}

	List<Code> eventCodesEntry = documentEntry.getEventCodeList();
	if (eventCodes != null) {
		for (Code eventCode : eventCodes) {
			eventCodesEntry.add(eventCode);
		}
	}
	if (formatCode != null) {
		documentEntry.setFormatCode(formatCode);
	}
	if (healthcareFacilityTypeCode != null) {
		documentEntry.setHealthcareFacilityTypeCode(healthcareFacilityTypeCode);
	}
	if (languageCode != null) {
		documentEntry.setLanguageCode(languageCode);
	}
	if (mimeType != null) {
		documentEntry.setMimeType(mimeType);
	}
	documentEntry.setType(DocumentEntryType.STABLE);
	if (title != null) {
		documentEntry.setTitle(new LocalizedString(title));
	}
	if (typeCode != null) {
		documentEntry.setTypeCode(typeCode);
	}
	if (practiceSettingCode != null) {
		documentEntry.setPracticeSettingCode(practiceSettingCode);
	}
	return documentEntry;
}

...

Code Block
titleOpret Stable Dokument Request
linenumberstrue
collapsetrue
---------------------------
ID: 4
Address: https://dros-url/dros/iti41
Encoding: UTF-8
Http-Method: POST
Content-Type: multipart/related; type="application/xop+xml"; boundary="uuid:6a0c89522f4c8aeb-ab853158-434f4730-b2cdacaf-086cb95327add113802064c9"; start="<root.message@cxf.apache.org>"; start-info="application/soap+xml"
Headers: {Accept=[*/*]}
Payload: --uuid:6a0c89522f4c8aeb-ab853158-434f4730-b2cdacaf-086cb95327add113802064c9
Content-Type: application/xop+xml; charset=UTF-8; type="application/soap+xml"
Content-Transfer-Encoding: binary
Content-ID: <root.message@cxf.apache.org>

 <?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Header>
     .. soap headers fjernet for overskueligehed...
  </soap:Header>
   <soap:Body>
    <ns4:ProvideAndRegisterDocumentSetRequest xmlns:ns6="urn:oasis:names:tc:ebxml-regrep:xsd:query:3.0" xmlns:ns5="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:3.0" xmlns:ns4="urn:ihe:iti:xds-b:2007" xmlns:ns3="urn:oasis:names:tc:ebxml-regrep:xsd:rs:3.0" xmlns:ns2="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <ns5:SubmitObjectsRequest>
        <ns2:RegistryObjectList>
          <ns2:ExtrinsicObject mimeType="text/xml" lid="76769668033309539288438472030670286734.57978363163331308667450729509229840524.16165855916911645439411709" objectType="urn:uuid:7edca82f-054d-47f2-a032-9b2a5b5186c1" status="urn:oasis:names:tc:ebxml-regrep:StatusType:Approved" id="urn:uuid:69d3b9f3cfe0c274-7919170c-40e0457e-87318db4-32fb339216c2978ef88cbc67">
            <ns2:Slot name="creationTime">
              <ns2:ValueList>
                <ns2:Value>20210324123311<Value>20220221113011</ns2:Value>
              </ns2:ValueList>
            </ns2:Slot>
            <ns2:Slot name="languageCode">
              <ns2:ValueList>
                <ns2:Value>da-DK</ns2:Value>
              </ns2:ValueList>
            </ns2:Slot>
            <ns2:Slot name="serviceStartTime">
              <ns2:ValueList>
                <ns2:Value>20210324123311<Value>20220221113011</ns2:Value>
              </ns2:ValueList>
            </ns2:Slot>
            <ns2:Slot name="serviceStopTime">
              <ns2:ValueList>
                <ns2:Value>20210324123311<Value>20220221113011</ns2:Value>
              </ns2:ValueList>
            </ns2:Slot>
            <ns2:Slot name="sourcePatientId">
              <ns2:ValueList>
                <ns2:Value>2512489996^^^Value>ABCDE^^^&1.2.208.176.1.2&ISO</ns2:Value>
              </ns2:ValueList>
            </ns2:Slot>
            <ns2:Name>
              <ns2:LocalizedString xml:lang="en-US" charset="UTF-8" value="Dato og tidspunkt for møde mellem patient og sundhedsperson"/>
            </ns2:Name>
            <ns2:Classification classificationScheme="urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d" classifiedObject="urn:uuid:69d3b9f3cfe0c274-7919170c-40e0457e-87318db4-32fb339216c2978ef88cbc67" nodeRepresentation="" id="urn:uuid:f016c5a05d10bc50-1c9cf8fc-4b834209-a2d79b5b-edf98403265e9ae7e3ec9c16">
              <ns2:Slot name="authorInstitution">
                <ns2:ValueList>
                  <ns2:Value>DROS Testafdeling^^^^^&1.2.208.176.1.1&ISO^^^^12345679999</ns2:Value>
                </ns2:ValueList>
              </ns2:Slot>
            </ns2:Classification>
            <ns2:Classification classificationScheme="urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a" classifiedObject="urn:uuid:69d3b9f3cfe0c274-7919170c-40e0457e-87318db4-32fb339216c2978ef88cbc67" nodeRepresentation="001" id="urn:uuid:bb7e5754fc8d7a57-06381ca4-4a72492d-8e3aab01-ab22203e005869306d007f09">
              <ns2:Slot name="codingScheme">
                <ns2:ValueList>
                  <ns2:Value>1.2.208.184.100.9</ns2:Value>
                </ns2:ValueList>
              </ns2:Slot>
              <ns2:Name>
                <ns2:LocalizedString xml:lang="en-US" charset="UTF-8" value="Klinisk rapport"/>
              </ns2:Name>
            </ns2:Classification>
            <ns2:Classification classificationScheme="urn:uuid:a09d5840-386c-46f2-b5ad-9c3699a4309d" classifiedObject="urn:uuid:69d3b9f3cfe0c274-7919170c-40e0457e-87318db4-32fb339216c2978ef88cbc67" nodeRepresentation="urn:ad:dk:medcom:appointmentsummary:appointmentfull" id="urn:uuid:e55b16b11ad9b3b9-ca39163a-4ece401d-99c79bb8-957dd66f9c2f087b14fad7ab">
              <ns2:Slot name="codingScheme">
                <ns2:ValueList>
                  <ns2:Value>1.2.208.184.14100.1<10</ns2:Value>
                </ns2:ValueList>
              </ns2:Slot>
              <ns2:Name>
                <ns2:LocalizedString xml:lang="en-US" charset="UTF-8" value="DK Appointment Summary CDADocument APDschema"/>
              </ns2:Name>
            </ns2:Classification>
            <ns2:Classification classificationScheme="urn:uuid:f33fb8ac-18af-42cc-ae0e-ed0b0bdb91e1" classifiedObject="urn:uuid:69d3b9f3cfe0c274-7919170c-40e0457e-87318db4-32fb339216c2978ef88cbc67" nodeRepresentation="22232009" id="urn:uuid:d1e7a9489e659080-59542238-422f43b7-8ba8bc6d-117f39e1da306705596e9451">
              <ns2:Slot name="codingScheme">
                <ns2:ValueList>
                  <ns2:Value>2.16.840.1.113883.6.96</ns2:Value>
                </ns2:ValueList>
              </ns2:Slot>
              <ns2:Name>
                <ns2:LocalizedString xml:lang="en-US" charset="UTF-8" value="hospital"/>
              </ns2:Name>
            </ns2:Classification>
            <ns2:Classification classificationScheme="urn:uuid:cccf5598-8b07-4b77-a05e-ae952c785ead" classifiedObject="urn:uuid:69d3b9f3cfe0c274-7919170c-40e0457e-87318db4-32fb339216c2978ef88cbc67" nodeRepresentation="408443003" id="urn:uuid:d4a85db04c1de4ab-2d1ef396-41e94d40-b2dfaa0f-f3b6d8dd20755cd48e9fbf46">
              <ns2:Slot name="codingScheme">
                <ns2:ValueList>
                  <ns2:Value>2.16.840.1.113883.6.96</ns2:Value>
                </ns2:ValueList>
              </ns2:Slot>
              <ns2:Name>
                <ns2:LocalizedString xml:lang="en-US" charset="UTF-8" value="almen medicin"/>
              </ns2:Name>
            </ns2:Classification>
            <ns2:Classification classificationScheme="urn:uuid:f0306f51-975f-434e-a61c-c59651d33983" classifiedObject="urn:uuid:69d3b9f3cfe0c274-7919170c-40e0457e-87318db4-32fb339216c2978ef88cbc67" nodeRepresentation="39289-4" id="urn:uuid:0e0fe7cee80eacf0-14629047-41d947de-aea19d7a-f2012d7029357b37ae7fb749">
              <ns2:Slot name="codingScheme">
                <ns2:ValueList>
                  <ns2:Value>2.16.840.1.113883.6.1</ns2:Value>
                </ns2:ValueList>
              </ns2:Slot>
              <ns2:Name>
                <ns2:LocalizedString xml:lang="en-US" charset="UTF-8" value="Dato og tidspunkt for møde mellem patient og sundhedspersonFollow-up (referred to) provider &or specialist, appointment date"/>
              </ns2:Name>
            </ns2:Classification>
            <ns2:Classification classificationScheme="urn:uuid:f4f85eac-e6cb-4883-b524-f2705394840f" classifiedObject="urn:uuid:69d3b9f3cfe0c274-7919170c-40e0457e-87318db4-32fb339216c2978ef88cbc67" nodeRepresentation="N" id="urn:uuid:9068bc2b4274843e-17173550-43374234-abfb877b-027f303b20c69b70ed5ec1ef">
              <ns2:Slot name="codingScheme">
                <ns2:ValueList>
                  <ns2:Value>2.16.840.1.113883.5.25</ns2:Value>
                </ns2:ValueList>
              </ns2:Slot>
              <ns2:Name>
                <ns2:LocalizedString xml:lang="en-US" charset="UTF-8" value="N"/>
              </ns2:Name>
            </ns2:Classification>
            <ns2:ExternalIdentifier registryObject="urn:uuid:69d3b9f3cfe0c274-7919170c-40e0457e-87318db4-32fb339216c2978ef88cbc67" identificationScheme="urn:uuid:58a6f841-87b3-4a3e-92fd-a8ffeff98427" value="2512489996^^^ABCDE^^^&1.2.208.176.1.2&ISO" id="urn:uuid:6dc240d890e4671c-d871fed6-4df14b01-b8c69b23-3414f1415022efbdad59a90a">
              <ns2:Name>
                <ns2:LocalizedString value="XDSDocumentEntry.patientId"/>
              </ns2:Name>
            </ns2:ExternalIdentifier>
            <ns2:ExternalIdentifier registryObject="urn:uuid:69d3b9f3cfe0c274-7919170c-40e0457e-87318db4-32fb339216c2978ef88cbc67" identificationScheme="urn:uuid:2e82c1f6-a085-4c72-9da3-8640a32e42ab" value="76769668033309539288438472030670286734.57978363163331308667450729509229840524.16165855916911645439411709" id="urn:uuid:524abed36d5fe954-c68f401e-4c7a4e44-a16ab9a7-a088d4dc0af0ea69713d55fb">
              <ns2:Name>
                <ns2:LocalizedString value="XDSDocumentEntry.uniqueId"/>
              </ns2:Name>
            </ns2:ExternalIdentifier>
          </ns2:ExtrinsicObject>
          <ns2:RegistryPackage status="urn:oasis:names:tc:ebxml-regrep:StatusType:Approved" id="66706689448203839186610087827968212831.17890640921936050453203050515460410630.16165855940361645439455555">
            <ns2:Slot name="submissionTime">
              <ns2:ValueList>
                <ns2:Value>20210324123311<Value>20220221113011</ns2:Value>
              </ns2:ValueList>
            </ns2:Slot>
            <ns2:Classification classificationScheme="urn:uuid:aa543740-bdda-424e-8c96-df4873be8500" classifiedObject="66706689448203839186610087827968212831.17890640921936050453203050515460410630.16165855940361645439455555" nodeRepresentation="39289-4" id="urn:uuid:406b67785901c10c-6150427c-424f4e9f-a03fbd02-a7acb709a82ef722bbe682cc">
              <ns2:Slot name="codingScheme">
                <ns2:ValueList>
                  <ns2:Value>2.16.840.1.113883.6.1</ns2:Value>
                </ns2:ValueList>
              </ns2:Slot>
              <ns2:Name>
                <ns2:LocalizedString xml:lang="en-US" charset="UTF-8" value="Dato og tidspunkt for møde mellem patient og sundhedspersonFollow-up (referred to) provider &or specialist, appointment date"/>
              </ns2:Name>
            </ns2:Classification>
            <ns2:ExternalIdentifier registryObject="66706689448203839186610087827968212831.17890640921936050453203050515460410630.16165855940361645439455555" identificationScheme="urn:uuid:6b5aea1a-874d-4603-a4bc-96a0a7b38446" value="2512489996^^^ABCDE^^^&1.2.208.176.1.2&ISO" id="urn:uuid:1a22ae5a455d6c19-b75304a8-48644abc-9db386a7-1278c066ed7bb4610879f9bb">
              <ns2:Name>
                <ns2:LocalizedString value="XDSSubmissionSet.patientId"/>
              </ns2:Name>
            </ns2:ExternalIdentifier>
            <ns2:ExternalIdentifier registryObject="66706689448203839186610087827968212831.17890640921936050453203050515460410630.16165855940361645439455555" identificationScheme="urn:uuid:96fdda7c-d067-4183-912e-bf5ee74998a8" value="66706689448203839186610087827968212831.17890640921936050453203050515460410630.16165855940361645439455555" id="urn:uuid:6331fd25d86cc2f3-028e726d-42564e67-83a38d5b-69108a3e00da65ddcb244607">
              <ns2:Name>
                <ns2:LocalizedString value="XDSSubmissionSet.uniqueId"/>
              </ns2:Name>
            </ns2:ExternalIdentifier>
            <ns2:ExternalIdentifier registryObject="66706689448203839186610087827968212831.17890640921936050453203050515460410630.16165855940361645439455555" identificationScheme="urn:uuid:554ac39e-e3fe-47fe-b233-965d2a147832" value="66706689448203839186610087827968212831.17890640921936050453203050515460410630.16165855940361645439455555" id="urn:uuid:ed4689fc995d3638-93c8f9b9-48e64cf7-9a0299da-d67a05a277d8396b2c15b82c">
              <ns2:Name>
                <ns2:LocalizedString value="XDSSubmissionSet.sourceId"/>
              </ns2:Name>
            </ns2:ExternalIdentifier>
          </ns2:RegistryPackage>
          <ns2:Classification classifiedObject="66706689448203839186610087827968212831.17890640921936050453203050515460410630.16165855940361645439455555" classificationNode="urn:uuid:a54d6aa5-d40d-43f9-88c5-b4633d873bdd" id="urn:uuid:9782ddc571497627-4668476c-45d4492c-90608dac-137a722e03c5b1532e4fcdb0"/>
          <ns2:Association associationType="urn:oasis:names:tc:ebxml-regrep:AssociationType:HasMember" sourceObject="66706689448203839186610087827968212831.17890640921936050453203050515460410630.16165855940361645439455555" targetObject="urn:uuid:69d3b9f3cfe0c274-7919170c-40e0457e-87318db4-32fb339216c2978ef88cbc67" status="urn:oasis:names:tc:ebxml-regrep:StatusType:Approved" id="47d04723d5d9f096-5279a2d2-4f444029-876e86cc-b39a71f1cc066a19e3af30e4">
            <ns2:Slot name="SubmissionSetStatus">
              <ns2:ValueList>
                <ns2:Value>Original</ns2:Value>
              </ns2:ValueList>
            </ns2:Slot>
          </ns2:Association>
        </ns2:RegistryObjectList>
      </ns5:SubmitObjectsRequest>
      <ns4:Document id="urn:uuid:69d3b9f3cfe0c274-7919170c-40e0457e-87318db4-32fb339216c2978ef88cbc67">
        <xop:Include xmlns:xop="http://www.w3.org/2004/08/xop/include" href="cid:5a142a5b5cc72a7d-fe8dd08c-40dc4a24-bc7eaecb-1e2df3a527c9ada368be561d-3@urn%3Aihe%3Aiti%3Axds1@urn%3Aihe%3Aiti%3Axds-b%3A2007"/>
      </ns4:Document>
    </ns4:ProvideAndRegisterDocumentSetRequest>
  </soap:Body>
</soap:Envelope>


--uuid:6a0c89522f4c8aeb-ab853158-434f4730-b2cdacaf-086cb95327add113802064c9
Content-Type: text/xml
Content-Transfer-Encoding: binary
Content-ID: <5a142a5b<5cc72a7d-fe8dd08c-40dc4a24-bc7eaecb-1e2df3a527c9ada368be561d-3@urn1@urn:ihe:iti:xds-b:2007>  

<ClinicalDocument xmlns="urn:hl7-org:v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" classCode="DOCCLIN" moodCode="EVN" xsi:schemaLocation="urn:hl7-org:v3 ../../PHMR/Schema/CDA_SDTC.xsd">
  <realmCode code="DK"/>
  <typeId extension="POCD_HD000040" root="2.16.840.1.113883.1.3"/>
  <!-- MedCom DK CDA APD profile OID -->
  <templateId root="1.2.208.184.14.1"/>
  <id assigningAuthorityName="MedCom" extension="aa2386d0-79ea-11e3-981f-0800200c9a66" root="1.2.208.184"/>
  <!-- LOINC code for appointment date -->
  <code code="39289-4" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC" displayName="Dato og tidspunkt for møde mellem patient og sundhedsperson"/>
  <!-- title = "Aftale for" + patient id -->
  <title>Aftale for 2512489996</title>
  <effectiveTime value="20170113100000+0100"/>
  <confidentialityCode code="N" codeSystem="2.16.840.1.113883.5.25"/>
  <languageCode code="da-DK"/>

  ... ... resten af dokumetet er fjernet for overskuelighed ... 

</ClinicalDocument> 
--uuid:6a0c89522f4c8aeb-ab853158-434f4730-b2cdacaf-086cb95327add113802064c9-- 
--------------------------------------

...