docs(dicom-printer-2): migrate verified content and add SetSequence#6
Open
mostlydev wants to merge 11 commits intodocs/dicom-printer-2from
Open
docs(dicom-printer-2): migrate verified content and add SetSequence#6mostlydev wants to merge 11 commits intodocs/dicom-printer-2from
mostlydev wants to merge 11 commits intodocs/dicom-printer-2from
Conversation
… branch - Add conformance.md: DICOM 3.0 Conformance Statement (540 lines, from modular sections) - Replace config.md: full Configuration File Tags Specification (1046 lines, verified against DTD and code) - Add architecture.md: application lifecycle, job processing, DICOM services (from operator guide) - Replace command-line.md: accurate args table with correct binary name and --activate behavior - Replace installation.md, troubleshooting.md, drop-monitor.md, logs.md: from verified operator guide - Add actions/query-attributes.md: query attribute precedence and configuration reference - Update sidebar: add Architecture, Query Attributes, and Conformance Statement entries
…ocument in config reference - Add actions/setsequence.md: full documentation for new SetSequence action (replace, unique, nested DcmItem/DcmTag/DcmSequence, placeholder support, Query interaction) - Fix actions/settag.md: replace wrong type="Global|Unique" syntax block with accurate attribute table; add tagName attribute for private tags - Add SetSequence subsection to config.md configuration reference - Add SetSequence to sidebar
… licensing docs <ValidityPeriod> controls how long a failed job stays in the queue before being discarded — it has nothing to do with license expiry. Removed the "License Validity" section that misrepresented it as a license duration setting and removed it from the config.xml example in the licensing page.
- Main landing page: expand DP2 feature list to match Capacitor's level of detail - DP2 index.md: rewrite to accurately describe workflow engine, two job sources (printer driver + Drop Monitor), component table, and quick-start links
Add specific examples and explanations for how query attributes are handled before a query (request building), when a query returns a match, and when a query returns no matches or empty values.
Verified against source code (DicomPrinter.cpp, main.cpp, EventReporter.cpp): - All four General subsections are optional per DTD (?) not required - CheckingInterval default: 1 second (was: None) - SuspensionTime default: 15 minutes (was: None) - ValidityPeriod default: 5 days (was: None); clarify no relation to licensing - Verbosity default: 35 (was: None); fix description (20/2 values were wrong)
…XML syntax Hold and Suspend were described backwards: - Hold: job stays on disk, retried on next CheckingInterval scan (no timer) - Suspend: job held in memory, retried after SuspensionTime minutes from the failing action (not from workflow start) Also fix example XML: Query/Store use <ConnectionParameters> child elements, not inline calledAE/callingAE/host/port attributes; SetTag uses correct single-tag-per-element syntax.
Fix inaccuracies regarding 'Hold' and 'Suspend' behaviors. - 'Hold' does NOT automatically retry; it preserves the file on disk for manual intervention or service restart. - 'Suspend' is the mode that performs automatic retries using the 'SuspensionTime' interval.
…broken examples
Tag placeholders use exactMatch — they only substitute when the entire config
value is the placeholder. Mixing with static text silently leaves the
placeholder unreplaced (e.g. 'Study for #{PatientName}' does not expand).
Date placeholders use indexIn and work anywhere including mixed strings.
If/Switch condition values do not support any placeholder expansion.
- Add importance note and summary table clarifying where each type works
- Remove misleading 'combine static text with placeholder' examples for tags
- Fix broken Save archive example (E:\DICOM\#{Modality}\#{PatientID} doesn't work)
- Remove source code line reference (not appropriate for user docs)
- Remove broken If conditional placeholder example
- Fix query examples to use correct <ConnectionParameters> syntax
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Migrates human-verified documentation from the
docs-conformance-mdbranch of the dicom-printer-2 repo into the public VitePress site, replacing AI-generated stubs where better content exists.New pages
conformance.md) — DICOM 3.0 conformance statement assembled from modular sections, verified against codebasearchitecture.md) — application lifecycle, job processing pipeline, DICOM services internalsactions/query-attributes.md) — attribute precedence, all query types, configuration referenceactions/setsequence.md) — full documentation for the newly-implemented SetSequence action (Issue #53): attributes, nested DcmItem/DcmTag/DcmSequence, placeholder support, Query interactionReplaced with verified content
config.md) — 166-line AI stub → 1046-line spec verified against DTD and source codeDicomPrinter.exe), accurate--activatedescriptionFixes
type="Global|Unique"syntax block; replaced with accurate attribute table includingtagNamefor private tags<SetSequence>subsection with exampleSidebar
Notes
docs/dicom-printer-2(the existing AI-generated structure), preserving all pages not covered by verified contentquery.md,store.md,print.md, etc.) are still AI-generated and can be audited in follow-up work