1wlmscpfs(1)                       OFFIS DCMTK                      wlmscpfs(1)
2
3
4

NAME

6       wlmscpfs - DICOM Basic Worklist Management SCP (based on data files)
7
8

SYNOPSIS

10       wlmscpfs [options] port
11

DESCRIPTION

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

PARAMETERS

26       port  tcp/ip port number to listen on
27

OPTIONS

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

NOTES

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

LOGGING

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

COMMAND LINE

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

ENVIRONMENT

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)
Impressum