1wlmscpfs(1) OFFIS DCMTK wlmscpfs(1)
2
3
4
6 wlmscpfs - DICOM Basic Worklist Management SCP (based on data files)
7
8
10 wlmscpfs [options] port
11
13 The wlmscpfs application implements a Service Class Provider (SCP) for
14 the Basic Worklist Management Service. The application will listen on a
15 specified TCP/IP port for incoming association requests from a Worklist
16 Management SCU. In case an association was acknowledged and a worklist
17 query was received, the wlmscpfs application will query particular
18 files in a certain directory (which can be specified through
19 corresponding program options) on the file system for corresponding
20 worklist information, and it will send this information back to the
21 calling Worklist Management SCU. Aside from dealing with Worklist
22 Management queries, the wlmscpfs application also supports the
23 Verification Service Class as an SCP.
24
26 port tcp/ip port number to listen on
27
29 general options
30 -h --help
31 print this help text and exit
32
33 --version
34 print version information and exit
35
36 --arguments
37 print expanded command line arguments
38
39 -q --quiet
40 quiet mode, print no warnings and errors
41
42 -v --verbose
43 verbose mode, print processing details
44
45 -d --debug
46 debug mode, print debug information
47
48 -ll --log-level [l]evel: string constant
49 (fatal, error, warn, info, debug, trace)
50 use level l for the logger
51
52 -lc --log-config [f]ilename: string
53 use config file f for the logger
54
55 multi-process options
56 -s --single-process
57 single process mode
58
59 --fork
60 fork child process for each association (default)
61
62 input options
63 general:
64
65 -dfp --data-files-path [p]ath: string (default: .)
66 path to worklist data files
67
68 handling of worklist files:
69
70 -efr --enable-file-reject
71 enable rejection of incomplete worklist files (default)
72
73 -dfr --disable-file-reject
74 disable rejection of incomplete worklist files
75
76 processing options
77 returned character set:
78
79 -cs0 --return-no-char-set
80 return no specific character set (default)
81
82 -cs1 --return-iso-ir-100
83 return specific character set ISO IR 100
84
85 -csk --keep-char-set
86 return character set provided in file
87
88 other processing options:
89
90 -nse --no-sq-expansion
91 disable expansion of empty sequences in C-FIND
92 request messages
93
94 network options
95 preferred network transfer syntaxes:
96
97 +x= --prefer-uncompr
98 prefer explicit VR local byte order (default)
99
100 +xe --prefer-little
101 prefer explicit VR little endian TS
102
103 +xb --prefer-big
104 prefer explicit VR big endian TS
105
106 +xd --prefer-deflated
107 prefer deflated explicit VR little endian TS
108
109 +xi --implicit
110 accept implicit VR little endian TS only
111
112 network host access control (tcp wrapper):
113
114 -ac --access-full
115 accept connections from any host (default)
116
117 +ac --access-control
118 enforce host access control rules
119
120 post-1993 value representations:
121
122 +u --enable-new-vr
123 enable support for new VRs (UN/UT) (default)
124
125 -u --disable-new-vr
126 disable support for new VRs, convert to OB
127
128 deflate compression level (only with --prefer-deflated):
129
130 +cl --compression-level [l]evel: integer (default: 6)
131 0=uncompressed, 1=fastest, 9=best compression
132
133 other network options:
134
135 -ta --acse-timeout [s]econds: integer (default: 30)
136 timeout for ACSE messages
137
138 -td --dimse-timeout [s]econds: integer (default: unlimited)
139 timeout for DIMSE messages
140
141 --max-associations [a]ssocs: integer (default: 50)
142 limit maximum number of parallel associations
143
144 --refuse
145 refuse association
146
147 --reject
148 reject association if no implementation class UID
149
150 --no-fail
151 don't fail on an invalid query
152
153 --sleep-after [s]econds: integer
154 sleep s seconds after find (default: 0)
155
156 --sleep-during [s]econds: integer
157 sleep s seconds during find (default: 0)
158
159 -pdu --max-pdu [n]umber of bytes: integer (4096..131072)
160 set max receive pdu to n bytes (default: 16384)
161
162 -dhl --disable-host-lookup
163 disable hostname lookup
164
166 The semantic impacts of the above mentioned options is clear for the
167 majority of options. Some particular options, however, are so specific
168 that they need detailed descriptions which will be given in this
169 passage.
170
171 The returned character set options are intended for situations in which
172 the wlmscpfs application will return attribute values which are not
173 composed of characters from the DICOM default character repertoire. In
174 such cases, for example option --return-iso-ir-100 can be used to
175 specify that a response to a modality's worklist management C-FIND
176 request shall contain DICOM's Specific Character Set attribute
177 (0008,0005) with a corresponding value, indicating the character
178 repertoire from which the characters of returned attribute values were
179 taken (in this example the repertoire ISO IR 100). Please note that the
180 wlmscpfs application will not make sure that all returned values are
181 actually made up of this character repertoire; the application expects
182 this to be the case.
183
184 In general, the Specific Character Set attribute (0008,0005) will only
185 be included in the C-FIND response if it contains any attributes that
186 are affected by the character set, i.e. for value representations PN,
187 LO, LT, SH, ST and UT.
188
189 Please note that a C-FIND request which is handled by this application
190 may contain DICOM's Specific Character Set attribute (0008,0005), but
191 this application will never use this attribute's value for matching.
192 Besides, the question if DICOM's Specific Character Set attribute
193 (0008,0005) will be contained in a C-FIND response which is returned by
194 this application is always determined by the returned character set
195 option which was specified when this application was started.
196
197 The options --enable-file-reject and --disable-file-reject can be used
198 to enable or disable a file rejection mechanism which makes sure only
199 complete worklist files will be used during the matching process. A
200 worklist file is considered to be complete if it contains all necessary
201 type 1 information which the SCP might have to return to an SCU in a C-
202 FIND response message. Table K.6-1 in part 4 annex K of the DICOM
203 standard lists all corresponding type 1 attributes (see column 'Return
204 Key Type').
205
206 DICOM Conformance
207 The wlmscpfs application supports the following SOP Classes as an SCP:
208
209 VerificationSOPClass 1.2.840.10008.1.1
210 FINDModalityWorklistInformationModel 1.2.840.10008.5.1.4.31
211
212 The wlmscpfs application will accept presentation contexts for all of
213 the abovementioned supported SOP Classes using any of the transfer
214 syntaxes:
215
216 LittleEndianImplicitTransferSyntax 1.2.840.10008.1.2
217 LittleEndianExplicitTransferSyntax 1.2.840.10008.1.2.1
218 BigEndianExplicitTransferSyntax 1.2.840.10008.1.2.2
219
220 The default behavior of the wlmscpfs application is to prefer transfer
221 syntaxes having an explicit encoding over the default implicit transfer
222 syntax. If wlmscpfs is running on big-endian hardware it will prefer
223 BigEndianExplicit to LittleEndianExplicit transfer syntax (and vice
224 versa). This behavior can be changed with the --prefer options (see
225 above).
226
227 If compiled with zlib support enabled (see --version output) and if
228 option --prefer-deflated is used, also the following transfer syntax is
229 accepted.
230
231 DeflatedExplicitVRLittleEndianTransferSyntax 1.2.840.10008.1.2.1.99
232
233 The wlmscpfs application does not support extended negotiation.
234
235 Currently, the wlmscpfs application supports the following attributes
236 as matching keys:
237
238 (0008,0020) StudyDate
239 (0008,0030) StudyTime
240 (0008,0050) AccessionNumber
241 (0008,0090) ReferringPhysicianName
242 (0010,0010) PatientName
243 (0010,0020) PatientID
244 (0010,0021) IssuerOfPatientID
245 (0010,0030) PatientBirthDate
246 (0010,0040) PatientSex
247 (0010,2297) Responsible Person
248 (0010,2298) Responsible Person Role
249 (0032,1032) RequestingPhysician
250 (0038,0010) AdmissionID
251 (0040,0100) ScheduledProcedureStepSequence
252 (0008,0060) > Modality
253 (0040,0001) > ScheduledStationAETitle
254 (0040,0002) > ScheduledProcedureStepStartDate
255 (0040,0003) > ScheduledProcedureStepStartTime
256 (0040,0006) > ScheduledPerformingPhysicianName
257 (0040,1001) RequestedProcedureID
258 (0040,1003) RequestedProcedurePriority
259
260 As return keys the following attributes are currently supported by
261 wlmscpfs:
262
263 (0008,0020) StudyDate
264 (0008,0030) StudyTime
265 (0008,0050) AccessionNumber
266 (0008,0080) InstitutionName
267 (0008,0081) InstitutionAddress
268 (0008,0090) ReferringPhysicianName
269 (0008,1080) AdmittingDiagnosesDescription
270 (0008,1110) ReferencedStudySequence
271 (0008,1150) > ReferencedSOPClassUID
272 (0008,1155) > ReferencedSOPInstanceUID
273 (0008,1120) ReferencedPatientSequence
274 (0008,1150) > ReferencedSOPClassUID
275 (0008,1155) > ReferencedSOPInstanceUID
276 (0010,0010) PatientName
277 (0010,0020) PatientID
278 (0010,0021) IssuerOfPatientID
279 (0010,0030) PatientBirthDate
280 (0010,0040) PatientSex
281 (0010,1000) OtherPatientIDs (retired)
282 (0010,1001) OtherPatientNames
283 (0010,1020) PatientSize
284 (0010,1030) PatientWeight
285 (0010,1040) PatientAddress
286 (0010,1080) MilitaryRank
287 (0010,2000) MedicalAlerts
288 (0010,2110) ContrastAllergies
289 (0010,2160) EthnicGroup
290 (0010,21a0) SmokingStatus
291 (0010,21b0) AdditionalPatientHistory
292 (0010,21c0) PregnancyStatus
293 (0010,21d0) LastMenstrualDate
294 (0010,2297) ResponsiblePerson
295 (0010,2298) ResponsiblePersonRole
296 (0010,4000) PatientComments
297 (0020,000d) StudyInstanceUID
298 (0032,1032) RequestingPhysician
299 (0032,1033) RequestingService
300 (0032,1060) RequestedProcedureDescription
301 (0032,1064) RequestedProcedureCodeSequence
302 (0008,0100) > CodeValue
303 (0008,0102) > CodingSchemeDesignator
304 (0008,0103) > CodingSchemeVersion
305 (0008,0104) > CodeMeaning
306 (0038,0010) AdmissionID
307 (0038,0011) IssuerOfAdmissionID
308 (0038,0050) SpecialNeeds
309 (0038,0300) CurrentPatientLocation
310 (0038,0500) PatientState
311 (0040,0100) ScheduledProcedureStepSequence
312 (0008,0060) > Modality
313 (0032,1070) > RequestedContrastAgent
314 (0040,0001) > ScheduledStationAETitle
315 (0040,0002) > ScheduledProcedureStepStartDate
316 (0040,0003) > ScheduledProcedureStepStartTime
317 (0040,0004) > ScheduledProcedureStepEndDate
318 (0040,0005) > ScheduledProcedureStepEndTime
319 (0040,0006) > ScheduledPerformingPhysicianName
320 (0040,0007) > ScheduledProcedureStepDescription
321 (0040,0008) > ScheduledProtocolCodeSequence
322 (0008,0100) > > CodeValue
323 (0008,0102) > > CodingSchemeDesignator
324 (0008,0103) > > CodingSchemeVersion
325 (0008,0104) > > CodeMeaning
326 (0040,0009) > ScheduledProcedureStepID
327 (0040,0010) > ScheduledStationName
328 (0040,0011) > ScheduledProcedureStepLocation
329 (0040,0012) > PreMedication
330 (0040,0020) > ScheduledProcedureStepStatus
331 (0040,0400) > CommentsOnTheScheduledProcedureStep
332 (0040,1001) RequestedProcedureID
333 (0040,1002) ReasonForTheRequestedProcedure
334 (0040,1003) RequestedProcedurePriority
335 (0040,1004) PatientTransportArrangements
336 (0040,1005) RequestedProcedureLocation
337 (0040,1008) ConfidentialityCode
338 (0040,1009) ReportingPriority
339 (0040,1010) NamesOfIntendedRecipientsOfResults
340 (0040,1400) RequestedProcedureComments
341 (0040,2001) ReasonForTheImagingServiceRequest
342 (0040,2004) IssueDateOfImagingServiceRequest
343 (0040,2005) IssueTimeOfImagingServiceRequest
344 (0040,2008) OrderEnteredBy
345 (0040,2009) OrderEnterersLocation
346 (0040,2010) OrderCallbackPhoneNumber
347 (0040,2016) PlacerOrderNumberImagingServiceRequest
348 (0040,2017) FillerOrderNumberImagingServiceRequest
349 (0040,2400) ImagingServiceRequestComments
350 (0040,3001) ConfidentialityConstraintOnPatientDataDescription
351
352 The attribute (0008,0005) SpecificCharacterSet is a special case and
353 its support by wlmscpfs is discussed in the NOTES section above.
354
355 Access Control
356 When compiled on Unix platforms with TCP wrapper support, host-based
357 access control can be enabled with the --access-control command line
358 option. In this case the access control rules defined in the system's
359 host access control tables for wlmscpfs are enforced. The default
360 locations of the host access control tables are /etc/hosts.allow and
361 /etc/hosts.deny. Further details are described in hosts_access(5).
362
364 The level of logging output of the various command line tools and
365 underlying libraries can be specified by the user. By default, only
366 errors and warnings are written to the standard error stream. Using
367 option --verbose also informational messages like processing details
368 are reported. Option --debug can be used to get more details on the
369 internal activity, e.g. for debugging purposes. Other logging levels
370 can be selected using option --log-level. In --quiet mode only fatal
371 errors are reported. In such very severe error events, the application
372 will usually terminate. For more details on the different logging
373 levels, see documentation of module 'oflog'.
374
375 In case the logging output should be written to file (optionally with
376 logfile rotation), to syslog (Unix) or the event log (Windows) option
377 --log-config can be used. This configuration file also allows for
378 directing only certain messages to a particular output stream and for
379 filtering certain messages based on the module or application where
380 they are generated. An example configuration file is provided in
381 <etcdir>/logger.cfg.
382
384 All command line tools use the following notation for parameters:
385 square brackets enclose optional values (0-1), three trailing dots
386 indicate that multiple values are allowed (1-n), a combination of both
387 means 0 to n values.
388
389 Command line options are distinguished from parameters by a leading '+'
390 or '-' sign, respectively. Usually, order and position of command line
391 options are arbitrary (i.e. they can appear anywhere). However, if
392 options are mutually exclusive the rightmost appearance is used. This
393 behavior conforms to the standard evaluation rules of common Unix
394 shells.
395
396 In addition, one or more command files can be specified using an '@'
397 sign as a prefix to the filename (e.g. @command.txt). Such a command
398 argument is replaced by the content of the corresponding text file
399 (multiple whitespaces are treated as a single separator unless they
400 appear between two quotation marks) prior to any further evaluation.
401 Please note that a command file cannot contain another command file.
402 This simple but effective approach allows one to summarize common
403 combinations of options/parameters and avoids longish and confusing
404 command lines (an example is provided in file <datadir>/dumppat.txt).
405
407 The wlmscpfs utility will attempt to load DICOM data dictionaries
408 specified in the DCMDICTPATH environment variable. By default, i.e. if
409 the DCMDICTPATH environment variable is not set, the file
410 <datadir>/dicom.dic will be loaded unless the dictionary is built into
411 the application (default for Windows).
412
413 The default behavior should be preferred and the DCMDICTPATH
414 environment variable only used when alternative data dictionaries are
415 required. The DCMDICTPATH environment variable has the same format as
416 the Unix shell PATH variable in that a colon (':') separates entries.
417 On Windows systems, a semicolon (';') is used as a separator. The data
418 dictionary code will attempt to load each file specified in the
419 DCMDICTPATH environment variable. It is an error if no data dictionary
420 can be loaded.
421
423 Copyright (C) 1996-2017 by OFFIS e.V., Escherweg 2, 26121 Oldenburg,
424 Germany.
425
426
427
428Version 3.6.4 Thu Nov 29 2018 wlmscpfs(1)