├── images └── CRF.png ├── examples ├── acrf.pdf ├── bcrf.pdf ├── logo.png ├── define.pdf ├── Test Trial acrf.pdf ├── Test Trial bcrf.pdf ├── Test Trial book.pdf ├── Test Trial spec.pdf ├── Test Trial, SDTM-IG3.2.pdf └── Test Trial bcrf.html ├── LICENSE ├── files ├── cdisc-xml.php ├── cdisc-xml.html ├── cdisc xml.html └── crf_1_3_2.xsl ├── README.md └── CRF_renditions.md /images/CRF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jmangori/CDISC-ODM-XML-CRF-SDTM-Annotations/HEAD/images/CRF.png -------------------------------------------------------------------------------- /examples/acrf.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jmangori/CDISC-ODM-XML-CRF-SDTM-Annotations/HEAD/examples/acrf.pdf -------------------------------------------------------------------------------- /examples/bcrf.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jmangori/CDISC-ODM-XML-CRF-SDTM-Annotations/HEAD/examples/bcrf.pdf -------------------------------------------------------------------------------- /examples/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jmangori/CDISC-ODM-XML-CRF-SDTM-Annotations/HEAD/examples/logo.png -------------------------------------------------------------------------------- /examples/define.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jmangori/CDISC-ODM-XML-CRF-SDTM-Annotations/HEAD/examples/define.pdf -------------------------------------------------------------------------------- /examples/Test Trial acrf.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jmangori/CDISC-ODM-XML-CRF-SDTM-Annotations/HEAD/examples/Test Trial acrf.pdf -------------------------------------------------------------------------------- /examples/Test Trial bcrf.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jmangori/CDISC-ODM-XML-CRF-SDTM-Annotations/HEAD/examples/Test Trial bcrf.pdf -------------------------------------------------------------------------------- /examples/Test Trial book.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jmangori/CDISC-ODM-XML-CRF-SDTM-Annotations/HEAD/examples/Test Trial book.pdf -------------------------------------------------------------------------------- /examples/Test Trial spec.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jmangori/CDISC-ODM-XML-CRF-SDTM-Annotations/HEAD/examples/Test Trial spec.pdf -------------------------------------------------------------------------------- /examples/Test Trial, SDTM-IG3.2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jmangori/CDISC-ODM-XML-CRF-SDTM-Annotations/HEAD/examples/Test Trial, SDTM-IG3.2.pdf -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Jørgen Mangor Iversen 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /files/cdisc-xml.php: -------------------------------------------------------------------------------- 1 | importStyleSheet($xsl); // attach the xsl rules 42 | 43 | // XSLT parameters 44 | $proc->setParameter('', "parmdisplay", $_POST["parmdisplay"]); 45 | $proc->setParameter('', "parmname", $_POST["parmname"]); 46 | $proc->setParameter('', "parmlogo", "$logo"); 47 | $proc->setParameter('', "parmstudy", $_POST["parmstudy"]); 48 | $proc->setParameter('', "parmversion", $_POST["parmversion"]); 49 | $proc->setParameter('', "parmstatus", $_POST["parmstatus"]); 50 | $proc->setParameter('', "parmlang", $_POST["parmlang"]); 51 | $proc->setParameter('', "parmcdash", $_POST["parmcdash"]); 52 | $proc->setParameter('', "parmoids", $_POST["parmoids"]); 53 | $proc->setParameter('', "nCodeListItemDisplay", $_POST["nCodeListItemDisplay"]); 54 | $proc->setParameter('', "displayMethodsTable", $_POST["displayMethodsTable"]); 55 | $proc->setParameter('', "displayCommentsTable", $_POST["displayCommentsTable"]); 56 | $proc->setParameter('', "displayPrefix", $_POST["displayPrefix"]); 57 | $proc->setParameter('', "displayLengthDFormatSD", $_POST["displayLengthDFormatSD"]); 58 | 59 | // Do the transformation 60 | echo $proc->transformToXML($xml); 61 | ?> 62 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | #### Table of Contents 2 | * [About The Project](#About_The_Project) 3 | * [Built With](#Built_With) 4 | * [Versions](#Versions) 5 | * [Getting Started](#Getting_Started) 6 | * [Installation](#Installation) 7 | * [Client side rendition](#Client_side) 8 | * [Server side rendition](#Server_side) 9 | * [crf_1_3_2.xsl](#crf_1_3_2_xsl) 10 | * [Usage](#Usage) 11 | * [Roadmap](#Roadmap) 12 | * [License](#License) 13 | * [Contact](#Contact) 14 | * [Acknowledgements](#Acknowledgements) 15 | 16 | # About The Project 17 | This project is to exploit the CDISC ODM standard as [a single source of truth](https://en.wikipedia.org/wiki/Single_source_of_truth) definition of a CRF specification, allowing 18 | 19 | * Visual inspection of a CRF design directly from an ODM-xml file 20 | * Documentation of the link between the CRF questions and the collected data points through SDTM annotations of the CRF Forms 21 | * Creation of [acrf](/examples/acrf.pdf) and [bcrf](/examples/bcrf.pdf) submission documents including link targets from define-xml 22 | * Elimination of the labor intensive task of manually moving text boxes of SDTM annotations around on the [acrf](/examples/acrf.pdf) document 23 | * Elimination of the even more labor intensive task of identifying CRF page numbers on the [acrf](/examples/acrf.pdf) document for referencing from define-xml, by replacing them with targets for the links from define.xml 24 | * Encouraging ODM-xml files to be used as an import specification to eCRF software 25 | 26 | The solution is an XML translating style sheet allowing any valid ODM-xml file to be both human and machine readable, without changing the content. 27 | 28 | See the [CRF_renditions.md](CRF_renditions.md) document for details of the style sheet itself. 29 | 30 | ## Built With 31 | The main component is an XSLT translating style sheet applied to any ODM-xml file of your own. The result is a webpage displaying the CRF Forms, Questions, data to be collected, and SDTM annotations. The webpage can be printed from the browser, also as a PDF file. 32 | 33 | The secondary component is an HTML file used to link the XML file to the XSL style sheet. The HTML file will run in modern browsers, NOT Internet Explorer. Two versions exist; one showing files residing on a web server, one uploading files and applying a `php` program. Both version apply the same style sheet to the same ODM-xml file, resulting in the same CRF rendition. 34 | 35 | ## Versions 36 | This project covers ODM version 1.3.2 only. Other version of ODM-xml files are not expected to work. ODM version 1.0.0 and ODM version 1.1.0 files have been tested, and they don't work. 37 | 38 | Transformations are done using **** creating HTML 4. 39 | 40 | # Getting Started 41 | Check out examples of [acrf](/examples/acrf.pdf) and [bcrf](/examples/bcrf.pdf) documents to see the results. 42 | 43 | Try a [live version](https://try2.info/cdisc-xml/cdisc-xml.html) to test your own ODM file, or my supplied [example](/examples/CDISC_ODM_1.3.2_example.xml) ODM file. 44 | 45 | ## Installation 46 | Download the files from the [files](/files) folder and place them in the same folder on your web server. 47 | 48 | To set up the style sheet, you have to decide whether to perform the transformations on the client or on a server. 49 | 50 | ### Client side rendition 51 | The `cdisc xml.html` (no hyphen) file must be placed on a web server in the same folder as your ODM-xml file and the `crf_1_3_2.xsl` translating style sheet. Other XSL/XSLT files can be used as well, particular `define2-0-0.xsl` for displaying define-xml. This file must be obtained from [CDISC](https://www.cdisc.org/). When adding you own XSL/XSLT files to your server, simply add them as an `
262 | Please allow up to 20 seconds for a large XML file to render. 263 |
264 |
265 | Add an optional company name and an optional image file of the company logo to be part of the generated CRF pages. 266 |
267 | 268 |
269 |
270 |   271 |
272 |
273 |

Selection

274 |
275 |
276 | XML file 277 |
278 |
279 | 280 |
281 |
282 | Naming template 283 |
284 |
285 | <Asset name> [CRF|SDTM|ADaM] Version <version number> <status>.xml 286 |
287 |
288 | XSL Style Sheet 289 |
290 |
291 | 297 |
298 | 299 |
300 |
301 |   302 |
303 |
304 |

Parameters for the CRF

305 |
306 |
307 | ODM-XML display type 308 |
309 |
310 | 311 | 312 |
    313 |
  • 314 | 315 | 316 |
  • 317 |
318 | 319 | 320 |
321 | 322 | 323 |
324 | 325 | 326 |
327 |
328 | Company Name 329 |
330 |
331 | 332 |
333 |
334 | Company Logo (image file) 335 |
336 |
337 | 338 |
339 | 342 | 345 |
346 | 347 |
348 |
349 |   350 |
351 |
352 |

Parameters for Define-xml v 2.1

353 |
354 |
355 | Number of CodeListItems to display 356 |
357 |
358 | 359 | 360 |
361 |
362 | Display Methods table 363 |
364 |
365 | 366 |
367 |
368 | Display Comments table 369 |
370 |
371 | 372 |
373 |
374 | Display Prefixes ([Comment], [Method], [Origin]) 375 |
376 |
377 | 378 |
379 |
380 | Display Length, DisplayFormat and Significant Digits 381 |
382 |
383 | 384 |
385 |
386 | 387 |
388 |   389 |
390 |
391 |

Display

392 |
393 |
394 |   395 |
396 |
397 | 398 |
399 |
400 | 401 |

Creating PDF documents

402 | In all browsers, print the HTML renditions as PDF documents to disk as either SDTM annotated CRF specification, define.pdf, acrf.pdf or bcrf.pdf submission documents, etc. 403 |
404 | Please note: 405 |
    406 |
  • Headers and footers, portrait versus landscape, and other document properties can be controlled within the printing dialog of your browser.
  • 407 |
  • Background color(s) requires printing of background graphics to be part of PDF documents.
  • 408 |
  • The on-screen buttons of the HTML rendition are not included in PDF documents created by printing to a PDF file.
  • 409 |
  • The TOC/visit matrix will work correctly as navigation links within the PDF documents.
  • 410 |
  • All SDTM annotations on SDTM annotated CRF documents have link targets available from define-xml, when Orgin is set to SDTM variable name as Named Destination.
  • 411 |
412 | 413 | 414 | 415 | -------------------------------------------------------------------------------- /files/crf_1_3_2.xsl: -------------------------------------------------------------------------------- 1 | 2 | 23 | 32 | 38 | 39 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | <xsl:call-template name="identifier"/> 70 | <xsl:text> </xsl:text> 71 | <xsl:value-of select="$parmversion"/> 72 | <xsl:text> </xsl:text> 73 | <xsl:value-of select="$parmstatus"/> 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 130 | 131 | 132 | 133 | 134 | 135 | 138 | 139 |

140 | 141 | 142 | 143 | 144 |

145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 |

188 | 189 | 190 | 191 | 192 |

193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 217 | 220 | 223 | 233 | 234 | 235 | 236 | 237 | 238 | 239 |
209 | 210 | 211 | 212 | 215 | 216 | 218 | 219 | 221 | 222 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 |
240 | 241 |
242 | 243 | 245 | 246 | 247 | 248 | 249 | 254 | 255 | 256 | 264 | 269 | 274 | 275 | 276 | 281 | 282 | 283 | 288 | 289 | 294 | 295 |
250 | 253 | 257 | 263 | 265 | 268 | 270 | 273 | 277 | 280 | 284 | 287 | 290 | 293 |
296 |
297 | 298 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | Standard 306 | 307 | 308 | 309 | 310 | 311 | 312 | 313 | 314 | 315 | 316 | 317 |

CRF Book

318 | 319 | 320 |

Standard

321 |
322 | 323 |

Study

324 |
325 | 326 |

CRF Specification for

327 | 328 |

329 |
330 | 331 |

Status:

332 |
333 | 334 |

335 |
336 | 337 |

Protocol Name:

338 |
339 |
340 | 341 | 342 | 343 | 344 |

345 | Creation date: 346 | time: 347 |

348 |
349 | 350 |

351 | Valid from date: 352 | time: 353 |

354 |
355 |

356 |

357 | 358 | 359 | data:image/png;base64, 360 | 361 | 362 |

363 |
364 | 365 | 366 | 367 | 368 | 369 | 370 | 373 | 374 | 375 | 376 | 377 | 378 | 379 | 386 | 387 | 388 | 389 |
371 |

Table of Contents

372 |
380 | 381 | 382 | 383 | 384 |

385 |

390 |
391 | 392 | 393 | 394 | 395 | 396 | 397 | 400 | 401 | 402 | 403 | 404 | 405 | 406 | 407 | 422 | 423 | 424 | 425 | 426 | 427 | 428 | 429 | 430 | 431 | 432 | 443 | 444 | 445 | 455 | 456 | 457 | 458 | 459 |
398 |

Visit Matrix

399 |
Event/
Form
408 | 409 | 410 | 411 | 412 | # 413 | 414 | 415 | 416 | 417 | 418 | 419 | 420 | 421 |
433 | 434 | 435 | 436 | 437 | 440 | [] 441 | 442 | 446 | 447 | 448 | 449 | 450 | 451 | 452 | 453 | 454 |
460 |
461 | 462 | 463 | 464 | 465 | 466 | 467 | 468 | 469 | 470 | 471 | 472 | 486 | 491 | 494 | 499 | 500 | 501 | 504 | 507 | 510 | 511 | 512 |
473 | 474 | 475 | 476 | 477 | 478 | 479 | 480 | data:image/png;base64, 481 | 482 | 483 | 484 | 485 | 487 | 488 | 489 | 490 | 492 | 493 | 495 | 496 | 497 | 498 |
502 | Site 503 | 505 | Subject identifier 506 | 508 | 509 |

513 | 514 | 515 |
516 | 517 | 518 |
519 | 520 | 521 | 522 | 523 | 524 | 525 | 526 | 527 | 529 | 530 | # 531 | 532 | 533 | 534 |
FormDef OID = 535 |
536 |
537 |
538 | 539 | 540 | 543 | 544 | 545 | 547 | 548 | 549 | 550 | 551 | 552 | 553 | 554 | 555 | 556 | 557 | 558 |
559 | 560 | Ref 561 | CRF Question 562 | Data Collected 563 | 564 | SDTM Annotations 565 | 566 | 567 | 568 | 569 | 570 | 588 | 589 | 590 |
591 | 592 |
593 |
594 | 595 | 596 | 597 | 598 | 599 | 600 | # 601 | 602 | 603 | 604 | 605 | 606 | 607 | 608 | 609 | 610 | 611 | 612 | ItemGroupDef OID = 613 | 614 | 615 | 616 | 617 | 618 | 619 | 620 | 621 | 622 | 623 | 624 | . 625 | 626 | # 627 | 628 | 629 | 630 | 631 | 632 | 633 |
634 | ItemDef OID = 635 |
636 |
637 | 638 | 639 | 640 | 641 | 642 | 643 | 644 | 645 | 646 | 647 | 648 | 649 |

650 | PROMPT: 651 | 652 |

653 |
654 | 655 |

656 |
657 | 661 |
662 | 663 | 664 | 665 | 666 |
667 | CodeList OID = 668 |
669 |
670 | 671 | 672 | 676 | 677 | 678 | 679 |
680 |
681 |
682 | 683 | 684 | 685 | 686 | 687 | 688 | 689 | 690 | 691 | 692 | 693 | 694 | 704 |
705 |
706 | 707 | 708 | 709 | 710 | 711 | 712 | 713 | 714 | 715 |
721 |
722 |
723 | 724 | 725 | Integer 726 | 727 | 728 | 729 | Floating point (.) 730 | 731 | 732 | 733 | Date 734 |

735 | Always collect dates as DD-MMM-YYYY and store dates as ISO8601 in SDTM 736 |

737 |
738 | 739 | 740 | Time 741 |

742 | Always collect times as HH:MM and store times as ISO8601 in SDTM 743 |

744 |
745 | 746 | 747 | Text 748 | 749 | 750 | 751 | 752 | 753 | 754 | 755 | 756 | 757 |
764 |
765 | 766 | 767 | 768 | 769 | UNKNOWN DATA TYPE 770 | 771 | 772 | 773 |
774 | 775 | 776 | 777 | 778 |
779 | 780 | 781 | 782 | 783 | 784 | 792 |
793 |
794 | 795 | 796 | 797 | 801 | 802 |
798 | CDASH: 799 | 800 |
803 |
804 |
805 | 806 | 807 | 808 | 809 | 810 | 811 | 812 | 813 | 814 | 815 | 816 | 817 | 818 | 819 | 820 | 821 | 822 | 823 | . 824 | 825 | 826 | , 827 |
828 |
829 |
830 | 831 | 832 | 833 | 834 | 835 | 836 | 837 | 838 | , 839 |
840 |
841 |
842 | 843 | 844 |
845 | 846 | 847 | 848 | 849 | 852 | 853 | 854 | 855 | 856 | , 857 |
858 | 859 | 860 | 861 |
862 | 863 | 864 | 865 | 866 | 867 | 868 | 869 | 870 | 871 | 872 | 873 | 874 | 875 | 876 | 877 | 878 |
879 |
880 | 881 | 882 | 883 | 884 | 885 | 886 | 887 | 888 | 889 | 890 | 891 | 892 | 893 | 894 | 895 | 896 | 897 | 898 | # 899 | 900 | 901 | 902 | 903 | 904 | 905 | 906 | 907 | 908 | 909 | 910 | 911 | 912 | 913 | 914 | 915 | 916 | 917 | 918 | 919 | 920 | 921 | 922 | . 923 |
924 | 925 | 926 | 927 |
928 | 929 | 930 | 931 | 932 | 933 | 934 | 935 | 936 | 937 | 938 | 939 | 940 |
941 |
942 | 943 | 944 | 945 | 946 | 947 | 948 | 949 | 950 | 951 | 952 | 953 | 954 | 955 | 956 | 957 | 958 | 959 | 960 | 961 | 962 | 963 | 964 | 965 | 966 | 967 | 968 | 969 | 970 | 971 | 972 | 973 | 974 | 975 | 976 | 977 | 978 | 979 | 980 | 981 | 982 | 983 | 984 | 985 | 986 | 987 | 988 | 989 | 990 | 991 | 992 | 993 | Implementation note 994 | 995 | 996 | 997 | 998 | 999 | 1000 | 1001 | 1002 |

1003 | 1004 | 1005 | 1006 | 1007 | 1008 | 1009 | 1010 | 1011 | 1012 | 1013 | 1014 | 1015 | 1016 | 1017 | 1018 | 1019 | 1020 | 1021 | 1022 | 1029 | 1030 | 1031 | 1032 | 1033 | 1034 | 1035 | 1036 | 1037 |
Question implementation note(s)
QuestionNote
1023 | 1024 | 1025 | 1026 | 1027 | 1028 |
1038 | 1039 | 1040 | 1041 | 1042 | 1043 | 1044 | 1046 |

1047 | 1048 | 1049 | 1050 | 1051 | 1052 | 1053 | 1054 |
Form implementation note
1055 | 1056 | 1057 | 1058 | 1059 | -------------------------------------------------------------------------------- /examples/Test Trial bcrf.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Test Trial 5 | 6 | 7 | 8 | 9 | 10 | 11 | 47 | 48 | 49 |
52 |

Study

53 |

CRF Specification for Test Trial

54 |

Selection of CRF forms available at CDISC

55 |

Protocol Name:

56 |

57 | Creation date: 2022-07-07 58 | time: 10:54:53

59 |

My Company

60 |

61 |

62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 |

Visit Matrix

Event/
Form
ScreeningVisit 1Death
Subject eligibility
Demographics
Background Heart Failure Maintenance Medications Part 1
Background Heart Failure Maintenance Medications Part 2
Prior Psoriasis Treatments
Body Sites of Psoriasis Involvement at Baseline
Adverse Events
ECG Test Results
Death
129 |

130 | 131 | 132 | 133 | 136 | 139 | 142 | 145 | 148 | 151 | 154 | 157 | 160 | 161 |

Table of Contents

134 | Adverse Events

135 |
137 | Background Heart Failure Maintenance Medications Part 1

138 |
140 | Background Heart Failure Maintenance Medications Part 2

141 |
143 | Body Sites of Psoriasis Involvement at Baseline

144 |
146 | Death

147 |
149 | Demographics

150 |
152 | ECG Test Results

153 |
155 | Prior Psoriasis Treatments

156 |
158 | Subject eligibility

159 |
162 | 163 |

164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 180 | 182 | 183 | 184 | 185 | 186 | 189 | 191 | 192 | 193 | 194 | 196 | 199 | 203 | 204 | 205 | 206 | 207 | 210 | 212 | 213 | 214 | 215 | 217 | 220 | 224 | 225 | 226 |

RefCRF QuestionData Collected
1.1Does the subject meet all inclusion criteria and none of the exclusion criteria? 178 |

179 |
181 | SUPPIE.QVAL,
SUPPDM.QNAM=IEYN, SUPPDM.QLABEL='All inclusion/exclusion criteria met'
2.1Seq. no. 187 | Integer 188 | 190 | IE.IESPID
2.2Inclusion criteria not met

Tick all that apply

195 |
197 |









198 |
200 | IE.IETESTCD,
IE.IETEST=TI.IETEST, IE.IECAT=TI.IECAT. 201 |
If failed inclusion criteria, IE.IEORRES=N, IE.IESTRESC=N. 202 |
If failed exclusion criteria, IE.IEORRES=Y, IE.IESTRESC=Y
3.1Seq. no. 208 | Integer 209 | 211 | IE.IESPID
3.2Exclusion criteria met

Tick all that apply

216 |
218 |









219 |
221 | IE.IETESTCD,
IE.IETEST= TI.IETEST, IE.IECAT=TI.IECAT. 222 |
If failed inclusion criteria, IE.IEORRES=N, IE.IESTRESC=N. 223 |
If failed exclusion criteria, IE.IEORRES=Y, IE.IESTRESC=Y
227 | 228 |

229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 247 | 249 | 250 | 251 | 252 | 253 | 256 | 258 | 259 | 260 | 261 | 262 | 265 | 267 | 268 | 269 | 270 | 271 | 274 | 276 | 277 | 278 |

RefCRF QuestionData Collected
1.1Birth Date 243 | Date

244 | Always collect dates as DD-MMM-YYYY and store dates as ISO8601 in SDTM. 245 |

246 |
248 | DM.BRTHDTC,
Partial dates are to be recorded according to ISO 8601
1.2Sex 254 |



255 |
257 | DM.SEX
1.3Ethnicity 263 |



264 |
266 | DM.ETHNIC
1.4Race 272 |






273 |
275 | DM.RACE
279 | 280 |

281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 298 | 300 | 301 | 302 | 303 | 304 | 307 | 309 | 310 | 311 | 312 | 313 | 316 | 318 | 319 | 320 | 321 | 322 | 325 | 327 | 328 | 329 | 330 | 331 | 334 | 336 | 337 | 338 | 339 | 340 | 343 | 345 | 346 | 347 | 348 | 349 | 352 | 354 | 355 | 356 | 357 | 358 | 361 | 363 | 364 | 365 | 366 | 367 | 370 | 372 | 373 | 374 | 375 | 376 | 379 | 381 | 382 | 383 |
Indicate whether the listed class/type of background heart failure medication was prescribed to the subject (see the study protocol for details)

RefCRF QuestionData Collected
1.1Were any angiotensin-converting enzyme (ACE) inhibitors taken? 296 |

297 |
299 | CM.CMOCCUR,
CM.CMCAT='Heart Failure Maintenance Medication', CM.CMPRESP='Y', CM.CMTRT='ARBs'
1.2If No, provide reason for not prescribing ARBs 305 |



306 |
308 | CM.CMREASND,
CMCAT='Heart Failure Maintenance Medication', CMPRESP='Y', CMTRT='ARBs'
1.3Were any angiotensin receptor/neprilysin inhibitors (ARNIs) taken? 314 |

315 |
317 | CM.CMOCCUR,
CMCAT='Heart Failure Maintenance Medication', CMPRESP='Y', CMTRT='ARNIs'
1.4If No, provide reason for not prescribing ARNIs 323 |





324 |
326 | CM.CMREASND,
CMCAT='Heart Failure Maintenance Medication', CMPRESP='Y', CMTRT='ARNIs'
1.5Were any aldosterone antagonists taken? 332 |

333 |
335 | CM.CMOCCUR,
CMCAT='Heart Failure Maintenance Medication', CMPRESP='Y', CMTRT='Aldosterone Antagonists'
1.6If No, provide reason for not prescribing aldosterone antagonists 341 |



342 |
344 | CM.CMREASND,
CMCAT='Heart Failure Maintenance Medication', CMPRESP='Y', CMTRT='Aldosterone Antagonists'
1.7Was any hydralazine taken? 350 |

351 |
353 | CM.CMOCCUR,
CMCAT='Heart Failure Maintenance Medication', CMPRESP='Y', CMTRT='Hydralazine'
1.8If No, provide reason for not prescribing hydralazine 359 |



360 |
362 | CM.CMREASND,
CMCAT='Heart Failure Maintenance Medication', CMPRESP='Y', CMTRT='Hydralazine'
1.9Were any diuretics taken? 368 |

369 |
371 | CM.CMOCCUR,
CMCAT='Heart Failure Maintenance Medication', CMPRESP='Y', CMTRT='Diuretics'
1.10If No, provide reason for not prescribing diuretics 377 |



378 |
380 | CM.CMREASND,
CMCAT='Heart Failure Maintenance Medication', CMPRESP='Y', CMTRT='Diuretics'
384 | 385 |

386 | 387 | 388 | 389 | 390 | 391 | 392 | 393 | 394 | 395 | 396 | 397 | 398 | 399 | 400 | 403 | 405 | 406 | 407 | 408 | 409 | 412 | 414 | 415 | 416 | 417 | 418 | 421 | 423 | 424 | 425 | 426 | 427 | 430 | 432 | 433 | 434 | 435 | 436 | 439 | 441 | 442 | 443 | 444 | 445 | 450 | 452 | 453 | 454 | 455 | 456 | 459 | 461 | 462 | 463 | 464 | 465 | 470 | 472 | 473 | 474 | 475 | 476 | 479 | 481 | 482 | 483 | 484 | 485 | 488 | 490 | 491 | 492 |
List the specific background heart failure medications used. Include all heart failure medications that are to be continued. When a subject has frequent changes in the dose and schedule for oral diuretics, the dosing information can be recorded as PRN

RefCRF QuestionData Collected
1.1What was the medication name? 401 | Text 402 | 404 | CM.CMTRT
1.2What was the individual dose of the medication per administration? 410 | Integer 411 | 413 | CM.CMDOSE
1.3What is the unit of the medication per administration? 419 |








420 |
422 | CM.CMDOSU,
CM.CMCAT='ANTIPSORIATIC'
1.4What was the frequency of the medication? 428 |

429 |
431 | CM.CMDOSFRQ
1.5What was the route of administration of the medication? 437 |



438 |
440 | CM.CMROUTE,
CM.CMCAT='ANTIPSORIATIC'
1.6Start Date 446 | Date

447 | Always collect dates as DD-MMM-YYYY and store dates as ISO8601 in SDTM. 448 |

449 |
451 | CM.CMSTDTC
1.7Is the medication ongoing? 457 |






458 |
460 | CM.CMENRTPT
1.8End Date 466 | Date

467 | Always collect dates as DD-MMM-YYYY and store dates as ISO8601 in SDTM. 468 |

469 |
471 | CM.CMENDTC,
CM.CMCAT='ANTIPSORIATIC'
2.1If applicable, was the medication given at the recommended regimen? 477 |

478 |
480 | SUPPCM.QVAL,
SUPPCM.QNAM='CMRRGYN', SUPPCM.QLABEL='Was medication given at recom. regimen'
2.2If applicable, why was the medication not given at the recommended regimen? 486 | Text 487 | 489 | SUPPCM.QVAL,
SUPPCM.QVAL='CMRRGREA', SUPPCM.QLABEL='Why the medication not given at regimen'
493 | 494 |

495 | 496 | 497 | 498 | 499 | 500 | 501 | 502 | 503 | 504 | 505 | 506 | 507 | 508 | 511 | 513 | 514 | 515 | 516 | 517 | 520 | 522 | 523 | 524 | 525 | 526 | 529 | 531 | 532 | 533 | 534 | 535 | 538 | 540 | 541 | 542 | 543 | 544 | 547 | 549 | 550 | 551 | 552 | 553 | 556 | 558 | 559 | 560 | 561 | 562 | 565 | 567 | 568 | 569 | 570 | 571 | 576 | 578 | 579 | 580 | 581 | 582 | 585 | 588 | 589 | 590 | 591 | 592 | 597 | 599 | 600 | 601 | 602 | 603 | 606 | 608 | 609 | 610 |

RefCRF QuestionData Collected
1.1Has the subject had any psoriasis treatments before the study start? 509 |

510 |
512 | CM.CMOCCUR,
CMCAT='ANTIPSORIATIC', CMTRT='ANTIPSORIATIC', CMPRESP='Y', CMSTRF='BEFORE'
1.2What is the subcategory for the treatment? 518 |


519 |
521 | CM.CMSCAT,
CMCAT='ANTIPSORIATIC'
1.3What was the name of the treatment? 527 | Text 528 | 530 | CM.CMTRT,
CMCAT='ANTIPSORIATIC'
1.4What was the route of administration of the medication? 536 |



537 |
539 | CM.CMROUTE,
CM.CMCAT='ANTIPSORIATIC'
1.5If the treatment was systemic, what was the individual dose? 545 | Text 546 | 548 | CM.CMDOSTXT,
CMCAT='ANTIPSORIATIC', CMDOSE if all values of CMDOSTXT are numeric
1.6What is the unit of the medication per administration? 554 |








555 |
557 | CM.CMDOSU,
CM.CMCAT='ANTIPSORIATIC'
2.1If the medication was a biologic, what device was used for drug administration? 563 |




564 |
566 | SUPPCM.QVAL,
SUPPCM.QNAM='SPDEVID', SUPPCM.QLABEL='Device Identifier'
3.1Start Date 572 | Date

573 | Always collect dates as DD-MMM-YYYY and store dates as ISO8601 in SDTM. 574 |

575 |
577 | CM.CMSTDTC,
CMCAT='ANTIPSORIATIC'
3.2Is the medication ongoing? 583 |

584 |
586 | CM.CMENRTPT,
CMCAT='ANTIPSORIATIC', If Yes, CMENRTPT='ONGOING'. 587 |
If No, CMENRF=blank
3.3End Date 593 | Date

594 | Always collect dates as DD-MMM-YYYY and store dates as ISO8601 in SDTM. 595 |

596 |
598 | CM.CMENDTC,
CM.CMCAT='ANTIPSORIATIC'
4.1What was the reason for treatment discontinuation? 604 |


605 |
607 | SUPPCM.QVAL,
SUPPCM.QNAM='CMRSDISC', SUPPCM.QLABEL='Reason for treatment discontinuation'
611 | 612 |

613 | 614 | 615 | 616 | 617 | 618 | 619 | 620 | 621 | 622 | 623 | 624 | 625 | 626 | 627 | 630 | 632 | 633 | 634 | 635 | 636 | 639 | 641 | 642 | 643 | 644 | 645 | 648 | 650 | 651 | 652 |
CRF Instructions: Use one page per affected area

RefCRF QuestionData Collected
1.1What was the location of psoriasis lesion involvement? 628 |







629 |
631 | QS.QSLOC,
QSTESTCD='LESIDENT',QSTEST='Lesion Identification'
1.2If applicable, what was the laterality of the anatomical location? 637 |


638 |
640 | QS.QSLAT,
QSTESTCD='LESIDENT', QSTEST='Lesion Identification'
1.3If applicable, what was the directionality of the anatomical location? 646 |


647 |
649 | QS.QSDIR,
QSTESTCD='LESIDENT', QSTEST='Lesion Identification'
653 | 654 |

655 | 656 | 657 | 658 | 659 | 660 | 661 | 662 | 663 | 664 | 665 | 666 | 667 | 668 | 671 | 673 | 674 | 675 | 676 | 677 | 680 | 682 | 683 | 684 | 685 | 686 | 689 | 691 | 692 | 693 | 694 | 695 | 698 | 700 | 701 | 702 | 703 | 704 | 709 | 711 | 712 | 713 | 714 | 715 | 718 | 721 | 722 | 723 | 724 | 725 | 730 | 732 | 733 | 734 | 735 | 736 | 739 | 741 | 742 | 743 | 744 | 745 | 748 | 750 | 751 | 752 | 753 | 754 | 757 | 759 | 760 | 761 | 762 | 763 | 766 | 768 | 769 | 770 | 771 | 772 | 775 | 777 | 778 | 779 | 780 | 781 | 784 | 786 | 787 | 788 | 789 | 790 | 793 | 795 | 796 | 797 | 798 | 799 | 802 | 804 | 805 | 806 | 807 | 808 | 811 | 813 | 814 | 815 | 816 | 817 | 820 | 822 | 823 | 824 | 825 | 826 | 829 | 831 | 832 | 833 | 834 | 835 | 838 | 840 | 841 | 842 | 843 | 844 | 847 | 849 | 850 | 851 | 852 | 853 | 856 | 858 | 859 | 860 | 861 | 862 | 865 | 867 | 868 | 869 |

RefCRF QuestionData Collected
1.1Were any adverse events experienced? 669 |

670 |
672 | NOT SUBMITTED
1.2AE Group ID 678 | Text 679 | 681 | AE.AEGRPID
1.3What is the adverse event term? 687 | Text 688 | 690 | AE.AETERM
2.1AE Identifier 696 | Integer 697 | 699 | AE.AESPID
2.2What is the date the adverse event started? 705 | Date

706 | Always collect dates as DD-MMM-YYYY and store dates as ISO8601 in SDTM. 707 |

708 |
710 | AE.AESTDTC,
Partial dates are stored according to ISO8601
2.3Is the adverse event still ongoing? 716 | Text 717 | 719 | AE.AEENTPT,
If Yes, AE.AEENTPT=ONGOING. 720 |
If No, AE.AEENTPT=BEFORE
2.4End date 726 | Date

727 | Always collect dates as DD-MMM-YYYY and store dates as ISO8601 in SDTM. 728 |

729 |
731 | AE.AEENDTC,
Partial dates are stored according to ISO8601
2.5What is the toxicity grade of the adverse event? 737 |





738 |
740 | AE.AETOXGR
2.6Is the adverse event serious? 746 |

747 |
749 | AE.AESER
2.7Congenital Anomaly or Birth Defect 755 |

756 |
758 | AE.AESCONG
2.8Significant Disability 764 |

765 |
767 | AE.AESDISAB
2.9Death 773 |

774 |
776 | AE.AESDTH
2.10Hospitalization 782 |

783 |
785 | AE.AESHOSP
2.11Life Threatening 791 |

792 |
794 | AE.AESLIFE
2.12Occurs with Overdose 800 |

801 |
803 | AE.AESOD
2.13Other Medically Important Event 809 |

810 |
812 | AE.AESMIE
2.14Concomitant or Additional Treament Given 818 |

819 |
821 | AE.AECONTRT
2.15Is this event related to study treatment? 827 |

828 |
830 | AE.AEREL
2.16Relationship to Non-Study Treatment 836 |





837 |
839 | AE.AERELNST
2.17What was the outcome of this adverse event? 845 |





846 |
848 | AE.AEOUT
2.18What action was taken with study treatment? 854 |






855 |
857 | AE.AEACN
3.1Is this event a dose limiting toxicity? 863 |

864 |
866 | SUPPAE.QVAL,
SUPPAE.QNAM=AEDLTOXF, SUPPAE.QLABEL='Dose Limiting Toxicity'
870 | 871 |

872 | 873 | 874 | 875 | 876 | 877 | 878 | 879 | 880 | 881 | 882 | 883 | 884 | 885 | 888 | 890 | 891 | 892 | 893 | 894 | 899 | 901 | 902 | 903 | 904 | 905 | 910 | 912 | 913 | 914 | 915 | 916 | 919 | 921 | 922 | 923 | 924 | 925 | 928 | 930 | 931 | 932 |

RefCRF QuestionData Collected
1.1Was the ECG performed? 886 |

887 |
889 | NOT SUBMITTED
2.1What was the ECG date? 895 | Date

896 | Always collect dates as DD-MMM-YYYY and store dates as ISO8601 in SDTM. 897 |

898 |
900 | EG.EGSTDTC,
Date and time are to be combined into one variable according to ISO 8601
2.2What was the ECG time? 906 | Time

907 | Always collect times as HH:MM and store times as ISO8601 in SDTM. 908 |

909 |
911 | EG.EGSTDTC,
Date and time are to be combined into one variable according to ISO 8601
2.3What was the result of the ECG? 917 |

918 |
920 | EG.EGORRES
3.1Was the ECG clinically significant? 926 |

927 |
929 | SUPPEG.QVAL,
SUPPEG.QNAM='EGCLSIG', SUPPEG.QLABEL='ECG clinically significant'
933 | 934 |

935 | 936 | 937 | 938 | 939 | 940 | 941 | 942 | 943 | 944 | 945 | 946 | 947 | 948 | 951 | 953 | 954 | 955 | 956 | 957 | 962 | 964 | 965 | 966 | 967 | 968 | 973 | 975 | 976 | 977 | 978 | 979 | 982 | 984 | 985 | 986 | 987 | 988 | 991 | 993 | 994 | 995 | 996 | 997 | 1000 | 1002 | 1003 | 1004 | 1005 | 1006 | 1009 | 1011 | 1012 | 1013 |

RefCRF QuestionData Collected
1.1Were any death detail assessments collected? 949 |

950 |
952 | NOT SUBMITTED
2.1Collection Date 958 | Date

959 | Always collect dates as DD-MMM-YYYY and store dates as ISO8601 in SDTM. 960 |

961 |
963 | DD.DDDTC
3.1Death Date 969 | Date

970 | Always collect dates as DD-MMM-YYYY and store dates as ISO8601 in SDTM. 971 |

972 |
974 | DD.DTHDTC
4.1What is the primary cause of death? 980 | Text 981 | 983 | DD.DDORRES,
DD.DDTESTCD='DIAGPRIM', DD.DDTEST='Primary Diagnosis'
4.2What is the secondary cause of death? 989 | Text 990 | 992 | DD.DDORRES,
DD.DDTESTCD='DIAGSEC', DD.DDTEST='Secondary Diagnosis'
4.3What is the location of death? 998 |


999 |
1001 | DD.DDORRES,
DD.DDTESTCD='LOCDTH', DD.DDTEST='What is the location of death'
4.4Was the death witnessed? 1007 | Text 1008 | 1010 | DD.DDORRES,
DD.DDTESTCD='DTHWIT', DD.DDTEST='Was Death Witnessed'
1014 | 1015 | 1016 | --------------------------------------------------------------------------------