Эта страница объясняет, как добавить правило Attribute Coercion (принуждение атрибутов) к Archive Device или к Application Entity Archive Device.
Примечание: - Attribute Coercion можно настраивать на уровне Archive Device или на уровне Archive Application Entity Extension. Значения, настроенные на уровне Archive Application Entity Extension, дополняют значения, настроенные на уровне Archive Device. - Сценарий использования, упомянутый ниже: необходимо гарантировать, что у входящих DICOM-объектов в архив из конкретного application entity всегда есть issuer of patient ID. Если он отсутствует, значение, заданное в таблице стилей, будет применено ко всем объектам, поступающим от этого application entity. После настройки принуждения атрибутов убедитесь, что Vendor Data также обновлён.
Menu->Configuration, затем на странице Devices Edit устройство dcm4chee-arc. Перейдите в Extensions и Edit extension у Device Extension. Снова перейдите в его Extensions и Edit extension у Archive device. Перейдите в Child Objects и выберите + для добавления Attribute Coercion.Menu->Configuration, затем на страницу Devices и Edit устройство dcm4chee-arc. Перейдите в Child Objects и выберите Network AE, для которого нужно настроить Attribute Coercion. Перейдите в Extensions и Edit extension у Network AE Extension. Снова перейдите в его Extensions и Edit extension у Archive Network AE. Перейдите в Child Objects и выберите + для добавления Attribute Coercion.Name, DIMSE, DICOM Transfer Role согласно своим требованиям. Можно также добавить необязательные поля вроде Conditions, SOP Class и т. п., чтобы правило принуждения атрибутов было более специфичным. Можно также использовать поле URI для указания таблицы стилей, которая должна применяться для этого правила принуждения атрибутов, и нажать Save.Можно создать LDIF-файл и импортировать его на LDAP-сервер с помощью утилиты командной строки ldapmodify. - Для настройки на уровне Archive device:
version: 1
dn: cn=Ensure PID Issuer,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
objectClass: dcmArchiveAttributeCoercion
cn: Ensure PID Issuer
dcmDIMSE: C_STORE_RQ
dicomTransferRole: SCU
dcmProperty: SendingApplicationEntityTitle=TESTAET
dcmNoKeywords: TRUE
dcmURI: ${jboss.server.temp.url}/dcm4chee-arc/ensure-pidIssuer.xsl
version: 1
dn: cn=Ensure PID Issuer,dicomAETitle=DCM4CHEE,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
objectClass: dcmArchiveAttributeCoercion
cn: Ensure PID Issuer
dcmDIMSE: C_STORE_RQ
dicomTransferRole: SCU
dcmProperty: SendingApplicationEntityTitle=TESTAET
dcmNoKeywords: TRUE
dcmURI: ${jboss.server.temp.url}/dcm4chee-arc/ensure-pidIssuer.xsl
Пример таблицы стилей
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml"/>
<xsl:template match="/NativeDicomModel">
<NativeDicomModel>
<xsl:if test="not(DicomAttribute[@tag='00100021']/Value)">
<DicomAttribute tag="00100021" vr="LO">
<Value number="1">TESTIssuer</Value>
</DicomAttribute>
</xsl:if>
</NativeDicomModel>
</xsl:template>
</xsl:stylesheet>