Skip to content

Add PCIM named requirements model and JSON extraction - #137

Open
eldonmetz wants to merge 1 commit into
masterfrom
pcim-requirements-modeling
Open

eldonmetz wants to merge 1 commit into
masterfrom
pcim-requirements-modeling

Conversation

@eldonmetz

Copy link
Copy Markdown
Contributor

The PCIM supplement needs stable requirement identifiers and machine-readable metadata so downstream tools can trace conformance checks to specification text. This change adds an initial 33 named requirements covering profile actors, DEV-51, DEV-52, DEV-19, and shared HL7 message constraints.

  • Document semantic AsciiDoc conventions, identifier ranges, normative content, verification guidance, and conformance-result mapping in a new Volume 1 appendix.
  • Add a Python extractor for requirements and trace JSON, with identifier and required-metadata validation.
  • Add Gradle tasks for extraction, validation, and a reproducible review fixture; connect extraction to the documentation build and validation to check.
  • Include the JSON review fixture and modeling plan, which reconciles the original estimate with the initial 33-requirement scope and remaining backlog.

This is the initial modeling batch. Additional artifact types described in the appendix, including deprecated requirements, use cases, transactions, and ReqIF, are not implemented by this extractor.

Validation

  • git diff --cached --check passed before commit.
  • Python --check-only validated all 33 requirement identifiers.
  • Regenerated the requirements fixture with --omit-commit; it matched the checked-in fixture byte for byte.
  • Generated requirement-trace JSON successfully.
  • ./gradlew --offline check asciidoctor passed.
  • ./gradlew --offline asciidoctor --rerun-tasks completed successfully and regenerated the JSON artifacts. The render reported invalid-part diagnostics, a section-order warning, an empty-table warning, PDF formatting diagnostics, and Java/Gradle compatibility warnings. Successful task completion does not establish a clean visual render.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant