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