.TH "xml2dsr" 1 "پنج‌شنبه 9 ژوئیه 2026 18:43:40" "Version 3.7.0" "OFFIS DCMTK" \" -*- nroff -*- .nh .SH "نام (NAME)" xml2dsr \- تبدیل سند XML به فایل گزارش ساختاریافته دایکام (DICOM SR) .PP .SH "خلاصه دستور (SYNOPSIS)" .PP .PP .nf xml2dsr [گزینه‌ها] xmlfile-in dsrfile-out .fi .PP .SH "توضیحات (DESCRIPTION)" .PP ابزار \fBxml2dsr\fP محتوای یک سند XML (زبان نشانه‌گذاری توسعه‌پذیر) را به قالب گزارش ساختاریافته دایکام یا DICOM SR (قالب فایل یا مجموعه داده خام) تبدیل می‌کند. طرح‌واره XML با نام \fIdsr2xml.xsd\fP هنوز از هیچ قالب استانداردی پیروی نمی‌کند. با این حال، ممکن است برنامه \fBxml2dsr\fP در آینده از این جنبه ارتقا یابد (مثلاً با پشتیبانی از HL7/CDA - معماری اسناد بالینی). .PP یک فایل XML مناسب را می‌توان با استفاده از ابزار \fBdsr2xml\fP ایجاد کرد (گزینه \fI+Xn\fP برای افزودن اعلان فضای نام XML به عنصر ریشه توصیه می‌شود). .SH "پارامترها (PARAMETERS)" .PP .PP .nf xmlfile-in نام فایل ورودی XML برای تبدیل ("-" برای ورودی استاندارد stdin) dsrfile-out نام فایل خروجی DICOM SR ("-" برای خروجی استاندارد stdout) .fi .PP .SH "گزینه‌ها (OPTIONS)" .PP .SS "گزینه‌های عمومی (general options)" .PP .nf -h --help چاپ این متن راهنما و خروج --version چاپ اطلاعات نسخه و خروج --arguments چاپ آرگومان‌های بسط‌یافته خط فرمان -q --quiet حالت بی‌صدا، عدم چاپ هشدارها و خطاها -v --verbose حالت پرحرف، چاپ جزئیات پردازش -d --debug حالت اشکال‌زدایی، چاپ اطلاعات دیباگ -ll --log-level [l]evel: string constant (fatal, error, warn, info, debug, trace) استفاده از سطح l برای لاگر -lc --log-config [f]ilename: string استفاده از فایل پیکربندی f برای لاگر .fi .PP .SS "گزینه‌های ورودی (input options)" .PP .nf کدگذاری: +Ee --template-envelope عنصر قالب، آیتم‌های محتوا را در بر می‌گیرد .fi .PP .SS "گزینه‌های پردازش (processing options)" .PP .nf اعتبارسنجی: +Vs --validate-schema اعتبارسنجی سند XML در برابر طرح‌واره (Schema) (همراه با --template-envelope مجاز نیست) # نیازمند کامپایل libxml با پشتیبانی از XML Schema است +Vn --check-namespace بررسی فضای نام XML در ریشه سند شناسه‌های یکتا (UIDs): +Ug --generate-new-uids تولید شناسه یکتای جدید Study/Series/SOP Instance UID -Uo --dont-overwrite-uids عدم بازنویسی UIDs موجود (پیش‌فرض) +Uo --overwrite-uids بازنویسی UIDs موجود .fi .PP .SS "گزینه‌های خروجی (output options)" .PP .nf قالب فایل خروجی: +F --write-file نوشتن در قالب فایل (پیش‌فرض) -F --write-dataset نوشتن مجموعه داده بدون فراداده فایل سینتکس انتقال خروجی: +t= --write-xfer-same نوشتن با همان سینتکس انتقال ورودی (پیش‌فرض) +te --write-xfer-little نوشتن با VR صریح و ترتیب بایت little endian +tb --write-xfer-big نوشتن با VR صریح و ترتیب بایت big endian +ti --write-xfer-implicit نوشتن با VR ضمنی و ترتیب بایت little endian +td --write-xfer-deflated نوشتن با VR صریح فشرده‌شده deflated و little endian نمایش مقادیر پس از ۱۹۹۳ (post-1993 VRs): +u --enable-new-vr فعال‌سازی پشتیبانی از VRهای جدید (UN/UT) (پیش‌فرض) -u --disable-new-vr غیرفعال کردن پشتیبانی از VRهای جدید، تبدیل به OB کدگذاری طول گروه: +g= --group-length-recalc محاسبه مجدد طول گروه‌ها در صورت وجود (پیش‌فرض) +g --group-length-create همیشه همراه با عناصر طول گروه نوشته شود -g --group-length-remove همیشه بدون عناصر طول گروه نوشته شود کدگذاری طول در توالی‌ها و آیتم‌ها: +e --length-explicit نوشتن با طول‌های صریح (پیش‌فرض) -e --length-undefined نوشتن با طول‌های نامشخص فاصله‌گذاری انتهای مجموعه داده (نه با --write-dataset): -p= --padding-retain عدم تغییر فاصله‌گذاری (پیش‌فرض مگر اینکه --write-dataset باشد) -p --padding-off بدون فاصله‌گذاری (ضمنی در صورت --write-dataset) +p --padding-create [f]ile-pad [i]tem-pad: integer تراز کردن فایل با مضربی از f بایت و آیتم‌ها با مضربی از i بایت سطح فشرده‌سازی deflate (فقط با --write-xfer-deflated): +cl --compression-level [l]evel: integer (پیش‌فرض: 6) 0=بدون فشرده‌سازی، 1=سریع‌ترین، 9=بهترین فشرده‌سازی .fi .PP .SH "نکات (NOTES)" .PP .SS "انطباق با دایکام (DICOM Conformance)" ابزار \fBxml2dsr\fP از رده‌های SOP زیر پشتیبانی می‌کند: .PP .PP .nf SpectaclePrescriptionReportStorage 1.2.840.10008.5.1.4.1.1.78.6 MacularGridThicknessAndVolumeReportStorage 1.2.840.10008.5.1.4.1.1.79.1 BasicTextSRStorage 1.2.840.10008.5.1.4.1.1.88.11 EnhancedSRStorage 1.2.840.10008.5.1.4.1.1.88.22 ComprehensiveSRStorage 1.2.840.10008.5.1.4.1.1.88.33 Comprehensive3DSRStorage 1.2.840.10008.5.1.4.1.1.88.34 ProcedureLogStorage 1.2.840.10008.5.1.4.1.1.88.40 MammographyCADSRStorage 1.2.840.10008.5.1.4.1.1.88.50 KeyObjectSelectionDocumentStorage 1.2.840.10008.5.1.4.1.1.88.59 ChestCADSRStorage 1.2.840.10008.5.1.4.1.1.88.65 XRayRadiationDoseSRStorage 1.2.840.10008.5.1.4.1.1.88.67 RadiopharmaceuticalRadiationDoseSRStorage 1.2.840.10008.5.1.4.1.1.88.68 ColonCADSRStorage 1.2.840.10008.5.1.4.1.1.88.69 ImplantationPlanSRStorage 1.2.840.10008.5.1.4.1.1.88.70 AcquisitionContextSRStorage 1.2.840.10008.5.1.4.1.1.88.71 SimplifiedAdultEchoSRStorage 1.2.840.10008.5.1.4.1.1.88.72 PatientRadiationDoseSRStorage 1.2.840.10008.5.1.4.1.1.88.73 PlannedImagingAgentAdministrationSRStorage 1.2.840.10008.5.1.4.1.1.88.74 PerformedImagingAgentAdministrationSRStorage 1.2.840.10008.5.1.4.1.1.88.75 WaveformAnnotationSRStorage 1.2.840.10008.5.1.4.1.1.88.77 RenditionSelectionDocumentRealTimeCommunication 1.2.840.10008.10.4 (*) .fi .PP .PP (*) این مورد یک Storage SOP Class نیست، بلکه برای ارتباطات بلادرنگ (Real-Time) استفاده می‌شود. .PP لطفاً توجه داشته باشید که در حال حاضر فقط ویژگی‌های اجباری و برخی ویژگی‌های اختیاری پشتیبانی می‌شوند. .SS "کدگذاری نویسه‌ها (Character Encoding)" کدگذاری نویسه‌های دایکام به صورت خودکار از عنصر با تگ "0008,0005" (Specific Character Set) در صورت وجود تعیین می‌شود. مجموعه‌های نویسه زیر در حال حاضر پشتیبانی می‌شوند (نیازمند کامپایل \fBlibxml\fP با پشتیبانی از \fBiconv\fP است، خروجی \fI\-\-version\fP را ببینید): .PP .PP .nf ASCII (ISO_IR 6) (UTF-8) UTF-8 "ISO_IR 192" (UTF-8) ISO Latin 1 "ISO_IR 100" (ISO-8859-1) ISO Latin 2 "ISO_IR 101" (ISO-8859-2) ISO Latin 3 "ISO_IR 109" (ISO-8859-3) ISO Latin 4 "ISO_IR 110" (ISO-8859-4) ISO Latin 5 "ISO_IR 148" (ISO-8859-9) ISO Latin 9 "ISO_IR 203" (ISO-8859-15) Cyrillic "ISO_IR 144" (ISO-8859-5) Arabic "ISO_IR 127" (ISO-8859-6) Greek "ISO_IR 126" (ISO-8859-7) Hebrew "ISO_IR 138" (ISO-8859-8) Thai "ISO_IR 166" (TIS-620) Japanese "ISO 2022 IR 13\eISO 2022 IR 87" (ISO-2022-JP) Korean "ISO 2022 IR 6\eISO 2022 IR 149" (ISO-2022-KR) Chinese "ISO 2022 IR 6\eISO 2022 IR 58" (ISO-2022-CN) Chinese "GB18030" (GB18030) Chinese "GBK" (GBK) .fi .PP .SS "فشرده‌سازی (Compression)" اگر libxml با پشتیبانی zlib کامپایل شده باشد، فایل ورودی (\fIxmlfile-in\fP) می‌تواند با ZIP فشرده شود، که معمولاً منجر به فایل‌های بسیار کوچک‌تری می‌گردد. برای بررسی اینکه آیا پشتیبانی از zlib در دسترس است، خروجی گزینه \fI\-\-version\fP را بررسی کنید. .SS "محدودیت‌ها (Limitations)" طرح‌واره \fIdsr2xml.xsd\fP از تمام حالات قالب خروجی \fBdsr2xml\fP پشتیبانی نمی‌کند. با این حال، قالب خروجی پیش‌فرض (به علاوه گزینه \fI\-\-use\-xml\-namespace\fP) باید به درستی کار کند. .PP نسخه‌های مختلف libxml ظاهراً محدودیت‌های متفاوتی برای حداکثر طول مقدار یک عنصر XML دارند. بنابراین، باید از به کار بردن مقادیر بسیار طولانی برای عناصر خودداری شود. محدودیت معمول برای نسخه ۲.۷.۳ به بعد libxml برابر با ۱۰ مگابایت برای یک عنصر منفرد است. .SH "گزارش‌گیری (LOGGING)" .PP سطح خروجی گزارش‌گیری ابزارهای مختلف خط فرمان و کتابخانه‌های زیربنایی توسط کاربر قابل تعیین است. به‌طور پیش‌فرض، تنها خطاها و هشدارها در جریان خطای استاندارد (stderr) نوشته می‌شوند. با استفاده از گزینه \fI\-\-verbose\fP پیام‌های اطلاع‌رسانی مانند جزئیات پردازش نیز گزارش می‌شوند. گزینه \fI\-\-debug\fP می‌تواند برای دریافت جزئیات بیشتر در مورد فعالیت‌های داخلی، مثلاً برای اشکال‌زدایی، استفاده شود. سطوح دیگر لاگ را می‌توان با گزینه \fI\-\-log\-level\fP انتخاب کرد. در حالت \fI\-\-quiet\fP فقط خطاهای مرگبار (fatal) گزارش می‌شوند. در چنین رخدادهای خطای بسیار شدیدی، برنامه معمولاً متوقف خواهد شد. برای جزئیات بیشتر درباره سطوح مختلف لاگ، مستندات ماژول "oflog" را ببینید. .PP در صورتی که خروجی لاگ باید در فایل نوشته شود (اختیاراً با چرخش فایل لاگ)، در syslog (یونیکس) یا event log (ویندوز) از گزینه \fI\-\-log\-config\fP می‌توان استفاده کرد. این فایل پیکربندی همچنین امکان هدایت تنها پیام‌های خاص به یک جریان خروجی مشخص و فیلتر کردن پیام‌ها بر اساس ماژول یا برنامه‌ای که در آن تولید شده‌اند را فراهم می‌کند. یک نمونه فایل پیکربندی در \fI/logger.cfg\fP ارائه شده است. .SH "خط فرمان (COMMAND LINE)" .PP تمام ابزارهای خط فرمان از نمادگذاری زیر برای پارامترها استفاده می‌کنند: کروشه‌ها مقادیر اختیاری (۰-۱) را در بر می‌گیرند، سه نقطه نشان‌دهنده مجاز بودن چندین مقدار (۱-n) است، و ترکیبی از هر دو به معنی ۰ تا n مقدار است. .PP گزینه‌های خط فرمان به ترتیب با علامت '+' یا '-' از پارامترها متمایز می‌شوند. معمولاً ترتیب و موقعیت گزینه‌های خط فرمان اختیاری است (یعنی می‌توانند در هر جایی ظاهر شوند). با این حال، اگر گزینه‌ها مانعه‌الجمع باشند، گزینه‌ای که در انتهای سمت راست آمده لحاظ می‌شود. این رفتار مطابق با قواعد ارزیابی استاندارد در پوسته‌های رایج یونیکس است. .PP علاوه بر این، یک یا چند فایل حاوی دستور را می‌توان با پیشوند علامت '@' قبل از نام فایل مشخص کرد (مثلاً \fI@command.txt\fP). چنین آرگومانی پیش از هرگونه ارزیابی بیشتر، با محتوای فایل متنی مربوطه جایگزین می‌شود (فاصله‌های خالی متعدد به عنوان یک جداکننده محسوب می‌شوند مگر اینکه بین دو علامت نقل‌قول قرار گیرند). لطفاً توجه داشته باشید که یک فایل دستور نمی‌تواند شامل فایل دستور دیگری باشد. این رویکرد ساده اما مؤثر امکان خلاصه‌سازی ترکیب‌های رایج گزینه‌ها/پارامترها را فراهم کرده و از طولانی و گیج‌کننده شدن خط فرمان جلوگیری می‌کند (یک مثال در فایل \fI/dumppat.txt\fP آورده شده است). .SH "محیط (ENVIRONMENT)" .PP ابزار \fBxml2dsr\fP تلاش خواهد کرد تا فرهنگ‌نامه‌های داده DICOM مشخص‌شده در متغیر محیطی \fIDCMDICTPATH\fP را بارگذاری کند. به‌طور پیش‌فرض، یعنی اگر متغیر محیطی \fIDCMDICTPATH\fP تنظیم نشده باشد، فایل \fI/dicom.dic\fP بارگذاری خواهد شد مگر اینکه فرهنگ‌نامه درون برنامه تعبیه شده باشد (پیش‌فرض برای ویندوز). .PP رفتار پیش‌فرض ارجح است و متغیر محیطی \fIDCMDICTPATH\fP تنها زمانی باید استفاده شود که به فرهنگ‌نامه‌های داده جایگزین نیاز باشد. متغیر محیطی \fIDCMDICTPATH\fP قالبی مشابه متغیر \fIPATH\fP در پوسته یونیکس دارد که در آن دو نقطه (":") ورودی‌ها را جدا می‌کند. در سیستم‌های ویندوز، نقطه ویرگول (";") به عنوان جداکننده به کار می‌رود. کد فرهنگ‌نامه داده سعی خواهد کرد هر فایل مشخص‌شده در متغیر محیطی \fIDCMDICTPATH\fP را بارگذاری کند. اگر هیچ فرهنگ‌نامه داده‌ای بارگذاری نشود، یک خطا رخ خواهد داد. .SH "فایل‌ها (FILES)" .PP \fI/dsr2xml.xsd\fP \- فایل طرح‌واره XML .SH "همچنین ببینید (SEE ALSO)" .PP .BR dsr2xml (1) .SH "حق نشر (COPYRIGHT)" .PP حق نشر (C) ۲۰۰۳-۲۰۲۵ توسط OFFIS e.V., Escherweg 2, 26121 Oldenburg, Germany.