fhir2.base.template 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (224) hide show
  1. package/.github/.index.db +0 -0
  2. package/.github/.index.json +4 -0
  3. package/.github/workflows/.index.db +0 -0
  4. package/.github/workflows/.index.json +4 -0
  5. package/.github/workflows/add_issues.yml +61 -0
  6. package/.index.db +0 -0
  7. package/.index.json +4 -0
  8. package/README.md +4 -0
  9. package/cache.ini +7 -0
  10. package/config/.index.db +0 -0
  11. package/config/.index.json +4 -0
  12. package/config/_config.yml +6 -0
  13. package/config.json +390 -0
  14. package/content/.index.db +0 -0
  15. package/content/.index.json +4 -0
  16. package/content/assets/.index.db +0 -0
  17. package/content/assets/.index.json +4 -0
  18. package/content/assets/css/.index.db +0 -0
  19. package/content/assets/css/.index.json +4 -0
  20. package/content/assets/css/bootstrap-fhir.css +5312 -0
  21. package/content/assets/css/bootstrap-glyphicons.css +2 -0
  22. package/content/assets/css/cqf.css +186 -0
  23. package/content/assets/css/hl7.css +63 -0
  24. package/content/assets/css/jquery-ui.css +523 -0
  25. package/content/assets/css/jquery-ui.structure.min.css +5 -0
  26. package/content/assets/css/jquery-ui.theme.min.css +5 -0
  27. package/content/assets/css/prism-fhirpath.css +38 -0
  28. package/content/assets/css/prism.css +143 -0
  29. package/content/assets/css/project.css +812 -0
  30. package/content/assets/css/pygments-manni.css +66 -0
  31. package/content/assets/css/xml.css +2 -0
  32. package/content/assets/fonts/.index.db +0 -0
  33. package/content/assets/fonts/.index.json +4 -0
  34. package/content/assets/fonts/OpenSans-CondBold-webfont.eot +0 -0
  35. package/content/assets/fonts/OpenSans-CondBold-webfont.svg +1403 -0
  36. package/content/assets/fonts/OpenSans-CondBold-webfont.ttf +0 -0
  37. package/content/assets/fonts/OpenSans-CondBold-webfont.woff +0 -0
  38. package/content/assets/fonts/OpenSans-CondLight-webfont.eot +0 -0
  39. package/content/assets/fonts/OpenSans-CondLight-webfont.svg +1830 -0
  40. package/content/assets/fonts/OpenSans-CondLight-webfont.ttf +0 -0
  41. package/content/assets/fonts/OpenSans-CondLight-webfont.woff +0 -0
  42. package/content/assets/fonts/glyphiconshalflings-regular.eot +0 -0
  43. package/content/assets/fonts/glyphiconshalflings-regular.otf +0 -0
  44. package/content/assets/fonts/glyphiconshalflings-regular.svg +175 -0
  45. package/content/assets/fonts/glyphiconshalflings-regular.ttf +0 -0
  46. package/content/assets/fonts/glyphiconshalflings-regular.woff +0 -0
  47. package/content/assets/ico/.index.db +0 -0
  48. package/content/assets/ico/.index.json +4 -0
  49. package/content/assets/ico/favicon.png +0 -0
  50. package/content/assets/ico/icon-fhir-114.png +0 -0
  51. package/content/assets/ico/icon-fhir-144.png +0 -0
  52. package/content/assets/ico/icon-fhir-57.png +0 -0
  53. package/content/assets/ico/icon-fhir-72.png +0 -0
  54. package/content/assets/ico/noun_copy to clipboard_1669410.png +0 -0
  55. package/content/assets/images/.index.db +0 -0
  56. package/content/assets/images/.index.json +4 -0
  57. package/content/assets/images/001.svg +269 -0
  58. package/content/assets/images/download.png +0 -0
  59. package/content/assets/images/dragon.png +0 -0
  60. package/content/assets/images/external.png +0 -0
  61. package/content/assets/images/fcp-logo.png +0 -0
  62. package/content/assets/images/fhir-logo-www.png +0 -0
  63. package/content/assets/images/hl7-logo-header.png +0 -0
  64. package/content/assets/images/icon_arrow_down.png +0 -0
  65. package/content/assets/images/icon_arrow_up.png +0 -0
  66. package/content/assets/images/lang-ar.png +0 -0
  67. package/content/assets/images/lang-de.png +0 -0
  68. package/content/assets/images/lang-en.png +0 -0
  69. package/content/assets/images/lang-es.png +0 -0
  70. package/content/assets/images/lang-fr.png +0 -0
  71. package/content/assets/images/lang-ja.png +0 -0
  72. package/content/assets/images/lang-kr.png +0 -0
  73. package/content/assets/images/lang-nl.png +0 -0
  74. package/content/assets/images/lang-pt.png +0 -0
  75. package/content/assets/images/lang-pt_BR.png +0 -0
  76. package/content/assets/images/lang-ru.png +0 -0
  77. package/content/assets/images/lang-zh-TW.png +0 -0
  78. package/content/assets/images/lang-zh.png +0 -0
  79. package/content/assets/images/link.svg +1 -0
  80. package/content/assets/images/logo_ansinew.jpg +0 -0
  81. package/content/assets/images/search.png +0 -0
  82. package/content/assets/images/stripe.png +0 -0
  83. package/content/assets/images/target.png +0 -0
  84. package/content/assets/js/.index.db +0 -0
  85. package/content/assets/js/.index.json +4 -0
  86. package/content/assets/js/anchor-hover.js +2 -0
  87. package/content/assets/js/anchor.min.js +6 -0
  88. package/content/assets/js/bootstrap.min.js +6 -0
  89. package/content/assets/js/clipboard-btn.js +30 -0
  90. package/content/assets/js/clipboard.min.js +7 -0
  91. package/content/assets/js/direction-management.js +6 -0
  92. package/content/assets/js/fhir-table-scripts.js +186 -0
  93. package/content/assets/js/fhir.js +2 -0
  94. package/content/assets/js/flags.js +7 -0
  95. package/content/assets/js/html5shiv.js +8 -0
  96. package/content/assets/js/jquery-3.7.0.min.map +1 -0
  97. package/content/assets/js/jquery-ui.min.js +6 -0
  98. package/content/assets/js/jquery.js +2 -0
  99. package/content/assets/js/lang-redirects.js +14 -0
  100. package/content/assets/js/mermaid-init.js +12 -0
  101. package/content/assets/js/mermaid.js +2029 -0
  102. package/content/assets/js/prism-fhirpath.js +67 -0
  103. package/content/assets/js/prism.js +238 -0
  104. package/content/assets/js/readme.txt +1 -0
  105. package/content/assets/js/respond.min.js +6 -0
  106. package/content/assets/js/tabs.js +20 -0
  107. package/content/assets/js/topofpage.js +20 -0
  108. package/content/assets/js/window-hash.js +5 -0
  109. package/content/assets/js/xml.js +2 -0
  110. package/content/searchform.html +141 -0
  111. package/data/.index.db +0 -0
  112. package/data/.index.json +4 -0
  113. package/ig.ini +2 -0
  114. package/includes/.index.db +0 -0
  115. package/includes/.index.json +4 -0
  116. package/includes/fragment-base-navtabs.html +85 -0
  117. package/includes/fragment-css.html +1 -0
  118. package/includes/fragment-feedback_form.html +66 -0
  119. package/includes/fragment-footer.html +4 -0
  120. package/includes/fragment-header.html +1 -0
  121. package/includes/fragment-igTable.html +3 -0
  122. package/includes/fragment-intro.html +15 -0
  123. package/includes/fragment-language.html +22 -0
  124. package/includes/fragment-modelType.html +13 -0
  125. package/includes/fragment-notes.html +14 -0
  126. package/includes/fragment-pageTable.html +19 -0
  127. package/includes/fragment-pagebegin.html +141 -0
  128. package/includes/fragment-pageend.html +78 -0
  129. package/includes/fragment-profile-navtabs.html +121 -0
  130. package/includes/fragment-resourceTable.html +116 -0
  131. package/includes/fragment-simpletable.html +35 -0
  132. package/includes/template-page-md.html +54 -0
  133. package/includes/template-page.html +29 -0
  134. package/layouts/.index.db +0 -0
  135. package/layouts/.index.json +4 -0
  136. package/layouts/layout-canonical-testing.html +63 -0
  137. package/layouts/layout-canonical.html +51 -0
  138. package/layouts/layout-changehistory.html +19 -0
  139. package/layouts/layout-codesystem.html +50 -0
  140. package/layouts/layout-examplescenario.html +54 -0
  141. package/layouts/layout-ext.html +283 -0
  142. package/layouts/layout-instance-base.html +42 -0
  143. package/layouts/layout-instance-format.html +39 -0
  144. package/layouts/layout-profile-definitions.html +54 -0
  145. package/layouts/layout-profile-examples.html +42 -0
  146. package/layouts/layout-profile-format.html +41 -0
  147. package/layouts/layout-profile-history.html +23 -0
  148. package/layouts/layout-profile-mappings.html +29 -0
  149. package/layouts/layout-profile-testing.html +60 -0
  150. package/layouts/layout-profile.html +418 -0
  151. package/layouts/layout-questionnaire.html +90 -0
  152. package/layouts/layout-valueset.html +59 -0
  153. package/liquid/.index.db +0 -0
  154. package/liquid/.index.json +4 -0
  155. package/liquid/ActivityDefinition.liquid +418 -0
  156. package/liquid/Library.liquid +431 -0
  157. package/liquid/Measure.liquid +8 -0
  158. package/liquid/PlanDefinition.liquid +450 -0
  159. package/liquid/datarequirement.html +42 -0
  160. package/liquid/default-list.html +3 -0
  161. package/liquid/default.html +3 -0
  162. package/liquid/direct-reference-code.html +14 -0
  163. package/liquid/knowledge-artifact-metadata-extensions.html +22 -0
  164. package/liquid/knowledge-artifact-metadata.html +22 -0
  165. package/liquid/logic-definition.html +21 -0
  166. package/liquid/measure-identifier.html +20 -0
  167. package/liquid/measure-logic.html +24 -0
  168. package/liquid/measure-metadata-extensions.html +11 -0
  169. package/liquid/measure-metadata.html +19 -0
  170. package/liquid/measure-population-criteria-extensions.html +30 -0
  171. package/liquid/measure-population-criteria-population.html +59 -0
  172. package/liquid/measure-population-criteria-stratifier.html +26 -0
  173. package/liquid/measure-population-criteria.html +14 -0
  174. package/liquid/measure-supplementaldata.html +38 -0
  175. package/liquid/narrative-end.html +3 -0
  176. package/liquid/narrative-start.html +3 -0
  177. package/liquid/parameter.html +14 -0
  178. package/liquid/period.html +4 -0
  179. package/liquid/related-artifact.html +47 -0
  180. package/liquid/row-content.html +1 -0
  181. package/liquid/row-end.html +1 -0
  182. package/liquid/row-header.html +5 -0
  183. package/liquid/row-new.html +4 -0
  184. package/liquid/row-start.html +1 -0
  185. package/liquid/section-header.html +3 -0
  186. package/liquid/type-primitive.html +0 -0
  187. package/liquid/version.html +3 -0
  188. package/package/.index.db +0 -0
  189. package/package/.index.json +4 -0
  190. package/package/package.json +10 -0
  191. package/package-list.json +32 -0
  192. package/package.json +10 -0
  193. package/scripts/.index.db +0 -0
  194. package/scripts/.index.json +4 -0
  195. package/scripts/ant.xml +231 -0
  196. package/scripts/createArtifactSummary.xslt +135 -0
  197. package/scripts/groupings.txt +28 -0
  198. package/scripts/handleIssues.xslt +44 -0
  199. package/scripts/onGenerate.data.xslt +31 -0
  200. package/scripts/onGenerate.final.xslt +153 -0
  201. package/scripts/onGenerate.genJson.xslt +113 -0
  202. package/scripts/onGenerate.getVersions.xslt +25 -0
  203. package/scripts/onGenerate.group.xslt +95 -0
  204. package/scripts/onGenerate.groupSort.xslt +73 -0
  205. package/scripts/onGenerate.qa.xslt +33 -0
  206. package/scripts/onLoad.xslt +466 -0
  207. package/scripts/plantuml.jar +0 -0
  208. package/scripts/processPages.xslt +154 -0
  209. package/translations/.index.db +0 -0
  210. package/translations/.index.json +4 -0
  211. package/translations/stringsArtifacts-ar.po +282 -0
  212. package/translations/stringsArtifacts-es.po +282 -0
  213. package/translations/stringsArtifacts-fr.po +282 -0
  214. package/translations/stringsArtifacts-nl.po +282 -0
  215. package/translations/stringsArtifacts-pt.po +282 -0
  216. package/translations/stringsArtifacts-ru.po +282 -0
  217. package/translations/stringsArtifacts.json +60 -0
  218. package/translations/stringsBase-ar.po +562 -0
  219. package/translations/stringsBase-es.po +562 -0
  220. package/translations/stringsBase-fr.po +564 -0
  221. package/translations/stringsBase-nl.po +564 -0
  222. package/translations/stringsBase-pt.po +564 -0
  223. package/translations/stringsBase-ru.po +564 -0
  224. package/translations/stringsBase.json +116 -0
@@ -0,0 +1,135 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://hl7.org/fhir">
3
+ <xsl:output method="xml" encoding="utf-8" indent="yes" omit-xml-declaration="yes"/>
4
+ <xsl:param name="columns" select="3"/>
5
+ <xsl:param name="version"/>
6
+ <xsl:param name="globals"/>
7
+ <xsl:template match="f:ImplementationGuide">
8
+ <!-- Include a note in the output with breadcrumbs back to this script -->
9
+ <xsl:comment>DO NOT EDIT THIS FILE - It is generated by https://github.com/HL7/ig-template-base/blob/master/scripts/createArtifactSummary.xslt and any changes made will be overwritten</xsl:comment>
10
+ <xsl:text>{% assign lang = page.path | split: "/" | first %}</xsl:text>
11
+ <div class="markdown-toc">
12
+ <p>{{site.data.stringsBase[lang]['Contents']}}:</p>
13
+ <ul>
14
+ <xsl:if test="$globals='Y'">
15
+ <li>
16
+ <a href="#globals">{{site.data.stringsBase[lang]['Globals']}}</a>
17
+ </li>
18
+ </xsl:if>
19
+ <xsl:for-each select="f:definition/f:grouping">
20
+ <li>
21
+ <a href="#{position()}">{{site.data.stringsArtifacts[lang]['<xsl:value-of select="@name"/>Name']}}</a>
22
+ </li>
23
+ </xsl:for-each>
24
+ </ul>
25
+ </div>
26
+ <div>
27
+ <p>{{site.data.stringsBase[lang]['ArtifactsIntro']}}</p>
28
+ <xsl:if test="$globals='Y'">
29
+ <a name="globals">
30
+ <xsl:value-of select="' '"/>
31
+ </a>
32
+ <h3>{{site.data.stringsBase[lang]['GlobalProfiles']}}</h3>
33
+ {% assign globals = "globals-table-" | append: lang | append: ".xhtml" %}
34
+ {% include {{globals}} %}
35
+ </xsl:if>
36
+ <xsl:for-each select="f:definition/f:grouping">
37
+ <xsl:variable name="relevantResources">
38
+ <xsl:for-each select="f:resource[f:extension[@url='http://hl7.org/fhir/StructureDefinition/implementationguide-page']][not(f:extension[@url='http://hl7.org/fhir/StructureDefinition/tools-alternateVersion'] or $version) or (f:extension[@url='http://hl7.org/fhir/StructureDefinition/tools-alternateVersion']/f:valueCode/@value=$version)]|
39
+ parent::f:definition/f:resource[f:extension[@url='http://hl7.org/fhir/StructureDefinition/implementationguide-page']][f:package/@value=current()/@id or f:groupingId/@value=current()/@id][not(f:extension[@url='http://hl7.org/fhir/StructureDefinition/tools-alternateVersion'] or $version) or (f:extension[@url='http://hl7.org/fhir/StructureDefinition/tools-alternateVersion']/f:valueCode/@value=$version)]">content</xsl:for-each>
40
+ </xsl:variable>
41
+ <xsl:if test="$relevantResources">
42
+ <a name="{position()}">
43
+ <xsl:value-of select="' '"/>
44
+ </a>
45
+ <h3>{{site.data.stringsArtifacts[lang]['<xsl:value-of select="@name"/>Name']}} </h3>
46
+ <xsl:apply-templates select="."/>
47
+ </xsl:if>
48
+ </xsl:for-each>
49
+ </div>
50
+ </xsl:template>
51
+ <xsl:template match="f:grouping">
52
+ <xsl:text>{% capture grouping_desc %}{{site.data.stringsArtifacts[lang]['</xsl:text>
53
+ <xsl:value-of select="@name"/>
54
+ <xsl:text>Desc']}}{% endcapture %}
55
+ {{ grouping_desc | markdownify}}</xsl:text>
56
+ <xsl:variable name="showDescriptions" select="count(parent::f:definition/f:resource[f:groupingId/@value=current()/@id]/f:description/@value)!=0"/>
57
+ <table class="grid">
58
+ <col style="width:20%"/>
59
+ <tbody>
60
+ <xsl:for-each select="parent::f:definition/f:resource[f:groupingId/@value=current()/@id]">
61
+ <tr>
62
+ <td style="column-width:30%">
63
+ <a href="{f:extension[@url='http://hl7.org/fhir/StructureDefinition/implementationguide-page']/f:valueUri/@value}" title="{f:reference/f:reference/@value}">
64
+ <xsl:choose>
65
+ <xsl:when test="f:name">
66
+ <span title="{f:reference/f:reference/@value}">
67
+ <xsl:text>{% if false %}</xsl:text>
68
+ <xsl:for-each select="f:name/f:extension[@url='http://hl7.org/fhir/StructureDefinition/translation']">
69
+ <xsl:text>&#xa;{% elsif lang=='</xsl:text>
70
+ <xsl:value-of select="f:extension[@url='lang']/f:valueCode/@value"/>
71
+ <xsl:text>' %}</xsl:text>
72
+ <xsl:value-of select="f:extension[@url='content']/f:valueString/@value"/>
73
+ </xsl:for-each>
74
+ <xsl:text>&#xa;{% else %}</xsl:text>
75
+ <xsl:value-of select="f:name/@value"/>
76
+ <xsl:text>&#xa;{% endif %}</xsl:text>
77
+ </span>
78
+ </xsl:when>
79
+ <xsl:otherwise>
80
+ <xsl:value-of select="f:reference/f:reference/@value"/>
81
+ </xsl:otherwise>
82
+ </xsl:choose>
83
+ </a>
84
+ </td>
85
+ <xsl:if test="$showDescriptions">
86
+ <td>
87
+ <xsl:text>{% capture desc %}</xsl:text>
88
+ <xsl:text>{% if false %}</xsl:text>
89
+ <xsl:for-each select="f:description/f:extension[@url='http://hl7.org/fhir/StructureDefinition/translation']">
90
+ <xsl:text>&#xa;{% elsif lang=='</xsl:text>
91
+ <xsl:value-of select="f:extension[@url='lang']/f:valueCode/@value"/>
92
+ <xsl:text>' %}</xsl:text>
93
+ <xsl:value-of select="f:extension[@url='content']/f:valueString/@value"/>
94
+ </xsl:for-each>
95
+ <xsl:text>&#xa;{% else %}</xsl:text>
96
+ <xsl:value-of select="f:description/@value"/>
97
+ <xsl:text>&#xa;{% endif %}</xsl:text>
98
+ <xsl:text>{% endcapture %}
99
+ {{ desc | markdownify}}</xsl:text>
100
+ </td>
101
+ </xsl:if>
102
+ </tr>
103
+ </xsl:for-each>
104
+ </tbody>
105
+ </table>
106
+ </xsl:template>
107
+ <xsl:template match="f:grouping" mode="first">
108
+ <tr>
109
+ <xsl:apply-templates select=".|following-sibling::f:grouping[position() &lt; $columns]" mode="next"/>
110
+ <xsl:if test="count(following-sibling::f:grouping) &lt; ($columns - 1)">
111
+ <xsl:call-template name="emptycell">
112
+ <xsl:with-param name="cells" select="$columns - 1 - count(following-sibling::f:grouping)"/>
113
+ </xsl:call-template>
114
+ </xsl:if>
115
+ </tr>
116
+ <tr colspan="3">
117
+ <td>&#160;</td>
118
+ </tr>
119
+ </xsl:template>
120
+ <xsl:template match="f:grouping" mode="next">
121
+ <td style="column-width:30%">
122
+ <a href="{translate(concat('#',name/@value), ' ', '_')}">
123
+ <xsl:number/>. <xsl:value-of select="f:name/@value"/> &#160;&#160;&#160;&#9654;</a>
124
+ </td>
125
+ </xsl:template>
126
+ <xsl:template name="emptycell">
127
+ <xsl:param name="cells"/>
128
+ <td/>
129
+ <xsl:if test="$cells &gt; 1">
130
+ <xsl:call-template name="emptycell">
131
+ <xsl:with-param name="cells" select="$cells - 1"/>
132
+ </xsl:call-template>
133
+ </xsl:if>
134
+ </xsl:template>
135
+ </xsl:stylesheet>
@@ -0,0 +1,28 @@
1
+ <grouping xmlns="http://hl7.org/fhir" id="-req-actordefinition" name="ActorDefinition"/>
2
+ <grouping xmlns="http://hl7.org/fhir" id="-req-requirements" name="Requirements"/>
3
+ <grouping xmlns="http://hl7.org/fhir" id="-dyn-capabilitystatement" name="CapabilityStatement"/>
4
+ <grouping xmlns="http://hl7.org/fhir" id="-dyn-operationdefinition" name="OperationDefinition"/>
5
+ <grouping xmlns="http://hl7.org/fhir" id="-dyn-messagedefinition" name="MessageDefinition"/>
6
+ <grouping xmlns="http://hl7.org/fhir" id="-dyn-searchparameter" name="SearchParameter"/>
7
+ <grouping xmlns="http://hl7.org/fhir" id="-ka-activitydefinition" name="ActivityDefinition"/>
8
+ <grouping xmlns="http://hl7.org/fhir" id="-ka-plandefinition" name="PlanDefinition"/>
9
+ <grouping xmlns="http://hl7.org/fhir" id="-ka-measure" name="Measure"/>
10
+ <grouping xmlns="http://hl7.org/fhir" id="-ka-library" name="Library"/>
11
+ <grouping xmlns="http://hl7.org/fhir" id="-str-graphdefinition" name="GraphDefinition"/>
12
+ <grouping xmlns="http://hl7.org/fhir" id="-str-logicalmodel" name="LogicalModel"/>
13
+ <grouping xmlns="http://hl7.org/fhir" id="-str-questionnaire" name="Questionnaire"/>
14
+ <grouping xmlns="http://hl7.org/fhir" id="-str-abstractprofile" name="AbstractProfile"/>
15
+ <grouping xmlns="http://hl7.org/fhir" id="-str-profile" name="ResourceProfile"/>
16
+ <grouping xmlns="http://hl7.org/fhir" id="-str-datatype" name="DataType"/>
17
+ <grouping xmlns="http://hl7.org/fhir" id="-str-extension" name="Extension"/>
18
+ <grouping xmlns="http://hl7.org/fhir" id="-term-valueset" name="ValueSet"/>
19
+ <grouping xmlns="http://hl7.org/fhir" id="-term-codesystem" name="CodeSystem"/>
20
+ <grouping xmlns="http://hl7.org/fhir" id="-term-namingsystem" name="NamingSystem"/>
21
+ <grouping xmlns="http://hl7.org/fhir" id="-map-structuremap" name="StructureMap"/>
22
+ <grouping xmlns="http://hl7.org/fhir" id="-map-conceptmap" name="ConceptMap"/>
23
+ <grouping xmlns="http://hl7.org/fhir" id="-test-testplan" name="TestPlan"/>
24
+ <grouping xmlns="http://hl7.org/fhir" id="-test-testscript" name="TestScript"/>
25
+ <grouping xmlns="http://hl7.org/fhir" id="-ex-examplescenario" name="ExampleScenario"/>
26
+ <grouping xmlns="http://hl7.org/fhir" id="-ex-example" name="Example"/>
27
+ <grouping xmlns="http://hl7.org/fhir" id="-ex-examplesup" name="ExampleSupporting"/>
28
+ <grouping xmlns="http://hl7.org/fhir" id="-other" name="Other"/>
@@ -0,0 +1,44 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!--
3
+ - A helper-transform that supports reporting issues.
4
+ -->
5
+ <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:f="http://hl7.org/fhir" xmlns="http://hl7.org/fhir" exclude-result-prefixes="f">
6
+ <xsl:output method="text" encoding="UTF-8"/>
7
+ <xsl:template name="raiseError">
8
+ <xsl:param name="code"/>
9
+ <xsl:param name="details"/>
10
+ <xsl:param name="location"/>
11
+ <xsl:call-template name="raiseIssue">
12
+ <xsl:with-param name="severity">error</xsl:with-param>
13
+ <xsl:with-param name="code" select="$code"/>
14
+ <xsl:with-param name="details" select="$details"/>
15
+ <xsl:with-param name="location" select="$location"/>
16
+ </xsl:call-template>
17
+ </xsl:template>
18
+ <xsl:template name="raiseWarning">
19
+ <xsl:param name="code"/>
20
+ <xsl:param name="details"/>
21
+ <xsl:param name="location"/>
22
+ <xsl:call-template name="raiseIssue">
23
+ <xsl:with-param name="severity">warning</xsl:with-param>
24
+ <xsl:with-param name="code" select="$code"/>
25
+ <xsl:with-param name="details" select="$details"/>
26
+ <xsl:with-param name="location" select="$location"/>
27
+ </xsl:call-template>
28
+ </xsl:template>
29
+ <xsl:template name="raiseIssue">
30
+ <xsl:param name="severity"/>
31
+ <xsl:param name="code"/>
32
+ <xsl:param name="details"/>
33
+ <xsl:param name="location"/>
34
+ <xsl:text>&#xa;{"severity":"</xsl:text>
35
+ <xsl:value-of select="$severity"/>
36
+ <xsl:text>","code":"</xsl:text>
37
+ <xsl:value-of select="$code"/>
38
+ <xsl:text>","details":{"text":"</xsl:text>
39
+ <xsl:value-of select="$details"/>
40
+ <xsl:text>"},"location":["</xsl:text>
41
+ <xsl:value-of select="$location"/>
42
+ <xsl:text>"]}&#xa;,</xsl:text>
43
+ </xsl:template>
44
+ </xsl:stylesheet>
@@ -0,0 +1,31 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!--
3
+ - Spits out a data file containing information about each resource for use in rendering resource pages
4
+ -->
5
+ <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:f="http://hl7.org/fhir" xmlns="http://hl7.org/fhir" exclude-result-prefixes="f">
6
+ <xsl:output method="text" encoding="UTF-8"/>
7
+ <xsl:variable name="baseUrl" select="substring-before(/f:ImplementationGuide/f:url/@value, 'ImplementationGuide')"/>
8
+ <xsl:template match="/f:ImplementationGuide">
9
+ <xsl:text>{</xsl:text>
10
+ <xsl:apply-templates select="f:definition/f:resource"/>
11
+ <xsl:text>}</xsl:text>
12
+ </xsl:template>
13
+ <xsl:template match="@*|node()"/>
14
+ <xsl:template match="f:definition/f:resource">
15
+ <xsl:variable name="type" select="substring-before(f:reference/f:reference/@value, '/')"/>
16
+ <xsl:variable name="id" select="f:extension[@url='http://hl7.org/fhir/StructureDefinition/implementationguide-page']/f:valueUri/@value"/>
17
+ <xsl:if test="position()!=1">,</xsl:if>
18
+ <xsl:value-of select="concat('&quot;', $id, '&quot;:{&quot;type&quot;:&quot;', $type, '&quot;')"/>
19
+ <xsl:if test="f:exampleBoolean/@value='true' or f:exampleCanonical">
20
+ <xsl:text>,"example":true</xsl:text>
21
+ </xsl:if>
22
+ <xsl:for-each select="f:exampleCanonical">
23
+ <xsl:variable name="refId" select="substring-after(@value, $baseUrl)"/>
24
+ <xsl:for-each select="ancestor::f:ImplementationGuide/f:definition/f:resource[f:reference/f:reference/@value=$refId]">
25
+ <xsl:variable name="page" select="f:extension[@url='http://hl7.org/fhir/StructureDefinition/implementationguide-page']/f:valueUri/@value"/>
26
+ <xsl:value-of select="concat(',&quot;exampleOf&quot;:{&quot;name&quot;:&quot;', f:name/@value, '&quot;,&quot;url&quot;:&quot;', $page, '&quot;}')"/>
27
+ </xsl:for-each>
28
+ </xsl:for-each>
29
+ <xsl:text>}</xsl:text>
30
+ </xsl:template>
31
+ </xsl:stylesheet>
@@ -0,0 +1,153 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!--
3
+ - This is a cleanup script that does a few things:
4
+ - - ensures that the 'root' page is the generated "toc.xml" page
5
+ - - ensures that somewhere in the list of pages is the generated "artifacts.xml" page
6
+ - - places a list of all artifacts (ordered by order of table of contents) as pages beneath artifacts.xml
7
+ - - strips the igpublisher-spreadsheet extensions, if any
8
+ - If dealing with a multi-version IG, it will be run against both IG versions.
9
+ -->
10
+ <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://hl7.org/fhir" exclude-result-prefixes="html f">
11
+ <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes" omit-xml-declaration="yes"/>
12
+ <xsl:variable name="noRootToc" select="/f:ImplementationGuide/f:definition/f:parameter[f:code/@value='noRootToc']/f:value/@value"/>
13
+ <xsl:variable name="artifactsOnRoot" select="/f:ImplementationGuide/f:definition/f:parameter[f:code/@value='artifactsOnRoot']/f:value/@value"/>
14
+ <xsl:template match="@*|node()">
15
+ <xsl:copy>
16
+ <xsl:apply-templates select="@*|node()"/>
17
+ </xsl:copy>
18
+ </xsl:template>
19
+ <xsl:template match="f:extension[@url='http://hl7.org/fhir/StructureDefinition/igpublisher-spreadsheet']"/>
20
+ <xsl:template match="f:translations"/>
21
+ <xsl:template match="f:grouping">
22
+ <xsl:if test="parent::f:definition/f:resource/f:groupingId[@value=current()/@id]">
23
+ <xsl:copy>
24
+ <xsl:apply-templates select="@*|node()"/>
25
+ </xsl:copy>
26
+ </xsl:if>
27
+ </xsl:template>
28
+ <xsl:template match="f:definition">
29
+ <!-- If we've defined the groups, then we sort based on the groups, then alphabetically -->
30
+ <xsl:choose>
31
+ <xsl:when test="f:grouping[starts-with(@id, '-')] or groups/f:grouping[starts-with(@id, '-')]">
32
+ <xsl:copy>
33
+ <xsl:apply-templates select="node()[not(self::f:resource or self::f:page or self::f:parameter or self::f:template)]"/>
34
+ <xsl:for-each select="f:grouping">
35
+ <xsl:choose>
36
+ <xsl:when test="starts-with(@id, '-')">
37
+ <xsl:for-each select="parent::f:definition/f:resource[f:groupingId/@value=current()/@id]">
38
+ <xsl:sort select="f:extension[@url='http://hl7.org/fhir/tools/StructureDefinition/resource-sort']/f:valueInteger/@value"/>
39
+ <xsl:sort select="f:name/@value"/>
40
+ <xsl:sort select="f:reference/f:reference/@value"/>
41
+ <xsl:apply-templates select="."/>
42
+ </xsl:for-each>
43
+ </xsl:when>
44
+ <xsl:otherwise>
45
+ <xsl:for-each select="parent::f:definition/f:resource[f:groupingId/@value=current()/@id]">
46
+ <xsl:apply-templates select="."/>
47
+ </xsl:for-each>
48
+ </xsl:otherwise>
49
+ </xsl:choose>
50
+ </xsl:for-each>
51
+ <xsl:apply-templates select="f:resource[not(f:groupingId)]"/>
52
+ <xsl:apply-templates select="f:page|f:parameter|f:template"/>
53
+ </xsl:copy>
54
+ </xsl:when>
55
+ <xsl:otherwise>
56
+ <xsl:copy>
57
+ <xsl:apply-templates select="@*|node()"/>
58
+ </xsl:copy>
59
+ </xsl:otherwise>
60
+ </xsl:choose>
61
+ </xsl:template>
62
+ <xsl:template match="f:ImplementationGuide/f:definition/f:page">
63
+ <xsl:copy>
64
+ <xsl:choose>
65
+ <xsl:when test="$noRootToc='true' or (f:nameUrl/@value='toc.html' and f:generation/@value='html')">
66
+ <xsl:apply-templates select="@*|node()"/>
67
+ </xsl:when>
68
+ <xsl:otherwise>
69
+ <nameUrl xmlns="http://hl7.org/fhir" value="toc.html"/>
70
+ <title xmlns="http://hl7.org/fhir" value="Table of Contents">
71
+ <xsl:for-each select="parent::f:definition/f:translations/f:translation[@name='TableOfContents']/@*[not(local-name(.)='name')]">
72
+ <extension url="http://hl7.org/fhir/StructureDefinition/translation">
73
+ <extension url="lang">
74
+ <valueCode value="{local-name(.)}"/>
75
+ </extension>
76
+ <extension url="content">
77
+ <valueString value="{.}"/>
78
+ </extension>
79
+ </extension>
80
+ </xsl:for-each>
81
+ </title>
82
+ <generation xmlns="http://hl7.org/fhir" value="html"/>
83
+ <page xmlns="http://hl7.org/fhir">
84
+ <xsl:apply-templates select="@*|node()[not(self::f:page)]"/>
85
+ </page>
86
+ <xsl:apply-templates select="f:page"/>
87
+ </xsl:otherwise>
88
+ </xsl:choose>
89
+ <xsl:choose>
90
+ <xsl:when test="$artifactsOnRoot='true'">
91
+ <xsl:call-template name="artifactPages"/>
92
+ </xsl:when>
93
+ <xsl:otherwise>
94
+ <xsl:if test="not(descendant-or-self::f:page[f:nameUrl/@value='artifacts.html'])">
95
+ <page xmlns="http://hl7.org/fhir">
96
+ <nameUrl value="artifacts.html"/>
97
+ <title value="Artifacts Summary">
98
+ <xsl:for-each select="ancestor::f:definition/f:translations/f:translation[@name='ArtifactsSummary']/@*[not(local-name(.)='name')]">
99
+ <extension url="http://hl7.org/fhir/StructureDefinition/translation">
100
+ <extension url="lang">
101
+ <valueCode value="{local-name(.)}"/>
102
+ </extension>
103
+ <extension url="content">
104
+ <valueString value="{.}"/>
105
+ </extension>
106
+ </extension>
107
+ </xsl:for-each>
108
+ </title>
109
+ <generation value="html"/>
110
+ <xsl:call-template name="artifactPages"/>
111
+ </page>
112
+ </xsl:if>
113
+ </xsl:otherwise>
114
+ </xsl:choose>
115
+ </xsl:copy>
116
+ </xsl:template>
117
+ <xsl:template match="f:page[f:nameUrl/@value='artifacts.html']">
118
+ <xsl:copy>
119
+ <xsl:apply-templates select="@*|node()"/>
120
+ <xsl:if test="not($artifactsOnRoot='true')">
121
+ <xsl:call-template name="artifactPages"/>
122
+ </xsl:if>
123
+ </xsl:copy>
124
+ </xsl:template>
125
+ <xsl:template name="artifactPages">
126
+ <xsl:for-each select="/f:ImplementationGuide/f:definition/f:grouping">
127
+ <xsl:if test="not(following-sibling::f:grouping[@id=current()/@id])">
128
+ <xsl:for-each select="parent::f:definition/f:resource[f:extension[@url='http://hl7.org/fhir/StructureDefinition/implementationguide-page']][f:groupingId/@value=current()/@id]">
129
+ <xsl:variable name="id" select="substring-after(f:reference/f:reference/@value, '/')"/>
130
+ <page xmlns="http://hl7.org/fhir">
131
+ <nameUrl value="{f:extension[@url='http://hl7.org/fhir/StructureDefinition/implementationguide-page']/f:valueUri/@value}"/>
132
+ <title value="{f:name/@value}">
133
+ <xsl:copy-of select="f:name/f:extension"/>
134
+ </title>
135
+ <generation value="generated"/>
136
+ <xsl:for-each select="f:extension[@url='http://hl7.org/fhir/tools/StructureDefinition/contained-resource-information']">
137
+ <page xmlns="http://hl7.org/fhir">
138
+ <xsl:variable name="url" select="concat(f:extension[@url='type']/f:valueCode/@value, '-', $id, '_', f:extension[@url='id']/f:valueId/@value, '.html')"/>
139
+ <nameUrl value="{$url}"/>
140
+ <xsl:for-each select="f:extension[@url='title']/f:valueString">
141
+ <title value="{@value}">
142
+ <xsl:copy-of select="f:extension"/>
143
+ </title>
144
+ </xsl:for-each>
145
+ <generation value="generated"/>
146
+ </page>
147
+ </xsl:for-each>
148
+ </page>
149
+ </xsl:for-each>
150
+ </xsl:if>
151
+ </xsl:for-each>
152
+ </xsl:template>
153
+ </xsl:stylesheet>
@@ -0,0 +1,113 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xsl:stylesheet version="1.0" xmlns:f="http://hl7.org/fhir" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
3
+ <xsl:output method="text" encoding="UTF-8"/>
4
+ <xsl:template match="f:ImplementationGuide">
5
+ <xsl:variable name="releaselabel">
6
+ <xsl:call-template name="getParameter">
7
+ <xsl:with-param name="name">releaselabel</xsl:with-param>
8
+ </xsl:call-template>
9
+ </xsl:variable>
10
+ <xsl:if test="not($releaselabel)">
11
+ <xsl:message terminate="yes">IG must include a definition parameter with a code of 'releaselabel'. Value can be 'CI build' or some other status.</xsl:message>
12
+ </xsl:if>
13
+ <xsl:variable name="copyrightyear">
14
+ <xsl:call-template name="getParameter">
15
+ <xsl:with-param name="name">copyrightyear</xsl:with-param>
16
+ </xsl:call-template>
17
+ </xsl:variable>
18
+ <xsl:if test="not($copyrightyear)">
19
+ <xsl:message terminate="yes">IG must include a definition parameter with a code of 'copyrightyear'. Value can be '2020+' or some similar value.</xsl:message>
20
+ </xsl:if>
21
+ <xsl:variable name="excludexml">
22
+ <xsl:call-template name="getBoolean">
23
+ <xsl:with-param name="property" select="'excludexml'"/>
24
+ </xsl:call-template>
25
+ </xsl:variable>
26
+ <xsl:variable name="excludejson">
27
+ <xsl:call-template name="getBoolean">
28
+ <xsl:with-param name="property" select="'excludejson'"/>
29
+ </xsl:call-template>
30
+ </xsl:variable>
31
+ <xsl:variable name="excludettl">
32
+ <xsl:call-template name="getBoolean">
33
+ <xsl:with-param name="property" select="'excludettl'"/>
34
+ </xsl:call-template>
35
+ </xsl:variable>
36
+ <xsl:variable name="excludelogbinaryformat">
37
+ <xsl:call-template name="getBoolean">
38
+ <xsl:with-param name="property" select="'excludelogbinaryformat'"/>
39
+ </xsl:call-template>
40
+ </xsl:variable>
41
+ <xsl:variable name="excludemap">
42
+ <xsl:call-template name="getBoolean">
43
+ <xsl:with-param name="property" select="'excludemap'"/>
44
+ </xsl:call-template>
45
+ </xsl:variable>
46
+ <xsl:variable name="excludeflags">
47
+ <xsl:call-template name="getParameter">
48
+ <xsl:with-param name="name" select="'excludeflags'"/>
49
+ </xsl:call-template>
50
+ </xsl:variable>
51
+ <xsl:variable name="shownav">
52
+ <xsl:call-template name="getBoolean">
53
+ <xsl:with-param name="property" select="'shownav'"/>
54
+ </xsl:call-template>
55
+ </xsl:variable>
56
+ <xsl:variable name="openehr">
57
+ <xsl:call-template name="getBoolean">
58
+ <xsl:with-param name="property" select="'openehr'"/>
59
+ </xsl:call-template>
60
+ </xsl:variable>
61
+ <xsl:variable name="fcp">
62
+ <xsl:call-template name="getParameter">
63
+ <xsl:with-param name="name" select="'fcp-approved-specification'"/>
64
+ </xsl:call-template>
65
+ </xsl:variable>
66
+ <xsl:variable name="fmm">
67
+ <xsl:call-template name="getParameter">
68
+ <xsl:with-param name="name" select="'fmm-definition'"/>
69
+ </xsl:call-template>
70
+ </xsl:variable>
71
+ <xsl:value-of select="concat('{&#xa;',
72
+ ' &quot;releaselabel&quot;:&quot;', $releaselabel, '&quot;,&#xa;',
73
+ ' &quot;copyrightyear&quot;:&quot;', $copyrightyear, '&quot;,&#xa;',
74
+ ' &quot;shownav&quot;:&quot;', $shownav, '&quot;,&#xa;',
75
+ ' &quot;excludexml&quot;:&quot;', $excludexml, '&quot;,&#xa;',
76
+ ' &quot;excludejson&quot;:&quot;', $excludejson, '&quot;,&#xa;',
77
+ ' &quot;excludettl&quot;:&quot;', $excludettl, '&quot;,&#xa;',
78
+ ' &quot;excludelogbinaryformat&quot;:&quot;', $excludelogbinaryformat, '&quot;,&#xa;',
79
+ ' &quot;excludemap&quot;:&quot;', $excludemap, '&quot;,&#xa;',
80
+ ' &quot;excludeflags&quot;:&quot;', $excludeflags, '&quot;,&#xa;',
81
+ ' &quot;openehr&quot;:&quot;', $openehr, '&quot;,&#xa;',
82
+ ' &quot;fcpspec&quot;:&quot;', $fcp, '&quot;,&#xa;',
83
+ ' &quot;fmm-definition&quot;:&quot;', $fmm, '&quot;&#xa;}')"/>
84
+ </xsl:template>
85
+ <xsl:template name="getParameter">
86
+ <xsl:param name="name"/>
87
+ <xsl:choose>
88
+ <xsl:when test="f:definition/f:parameter[f:code/@value=$name]">
89
+ <xsl:value-of select="f:definition/f:parameter[f:code/@value=$name]/f:value/@value"/>
90
+ </xsl:when>
91
+ <xsl:otherwise>
92
+ <xsl:value-of select="f:definition/f:extension[@url='http://hl7.org/fhir/tools/StructureDefinition/ig-parameter'][f:extension[@url='code']/f:valueString/@value=$name]/f:extension[@url='value']/f:valueString/@value"/>
93
+ </xsl:otherwise>
94
+ </xsl:choose>
95
+ </xsl:template>
96
+ <xsl:template name="getBoolean">
97
+ <xsl:param name="property"/>
98
+ <xsl:variable name="boolean">
99
+ <xsl:call-template name="getParameter">
100
+ <xsl:with-param name="name" select="$property"/>
101
+ </xsl:call-template>
102
+ </xsl:variable>
103
+ <xsl:choose>
104
+ <xsl:when test="starts-with(translate($boolean, 'y', 'Y'), 'Y') or starts-with(translate($boolean, 't', 'T'), 'T')">y</xsl:when>
105
+ <xsl:when test="$boolean='' or starts-with(translate($boolean, 'n', 'N'), 'N') or starts-with(translate($boolean, 'f', 'F'), 'F')">N</xsl:when>
106
+ <xsl:otherwise>
107
+ <xsl:message terminate="yes">
108
+ <xsl:value-of select="concat('Unrecognized value ' + $boolean, ' for parameter ' + $property + ' - should have been Y if present')"/>
109
+ </xsl:message>
110
+ </xsl:otherwise>
111
+ </xsl:choose>
112
+ </xsl:template>
113
+ </xsl:stylesheet>
@@ -0,0 +1,25 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xsl:stylesheet version="1.0" xmlns:f="http://hl7.org/fhir" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
3
+ <xsl:output method="text" encoding="UTF-8"/>
4
+ <xsl:template match="f:ImplementationGuide">
5
+ <xsl:text>R5=Y&#xa;</xsl:text>
6
+ <xsl:if test="f:fhirVersion/@value[starts-with(., '6.')]">R6=Y&#xa;</xsl:if>
7
+ <xsl:if test="f:fhirVersion/@value[starts-with(., '5.')]">R5=Y&#xa;</xsl:if>
8
+ <xsl:if test="f:fhirVersion/@value[starts-with(., '4.')]">R4=Y&#xa;</xsl:if>
9
+ <xsl:if test="f:fhirVersion/@value[starts-with(., '3.')]">R3=Y&#xa;</xsl:if>
10
+ <xsl:if test="f:fhirVersion/@value[starts-with(., '1.4')]">R2B=Y&#xa;</xsl:if>
11
+ <xsl:if test="f:fhirVersion/@value[starts-with(., '1.0')]">R2=Y&#xa;</xsl:if>
12
+ <xsl:value-of select="concat('igVersion=', f:version/@value, '&#xa;')"/>
13
+ <xsl:if test="f:definition/f:parameter[f:code/@value='i18n-lang']|f:definition/f:extension[@url='http://hl7.org/fhir/tools/StructureDefinition/ig-parameter'][f:extension[@url='code']/f:valueString/@value='i18n-lang']/f:extension[@url='value']/f:valueString/@value">
14
+ <xsl:text>langs=</xsl:text>
15
+ <xsl:for-each select="f:definition/f:parameter[f:code/@value='i18n-default-lang']/f:code/f:valueString/@value|f:definition/f:extension[@url='http://hl7.org/fhir/tools/StructureDefinition/ig-parameter'][f:extension[@url='code']/f:valueString/@value='i18n-default-lang']/f:extension[@url='value']/f:valueString/@value">
16
+ <xsl:value-of select="concat(., ';')"/>
17
+ </xsl:for-each>
18
+ <xsl:for-each select="f:definition/f:parameter[f:code/@value='i18n-lang']/f:code/f:valueString/@value|f:definition/f:extension[@url='http://hl7.org/fhir/tools/StructureDefinition/ig-parameter'][f:extension[@url='code']/f:valueString/@value='i18n-lang']/f:extension[@url='value']/f:valueString/@value">
19
+ <xsl:value-of select="concat(., ';')"/>
20
+ </xsl:for-each>
21
+ <xsl:text>&#xa;</xsl:text>
22
+ </xsl:if>
23
+ <xsl:if test="f:definition/f:parameter[f:code/@value='globals-in-artifacts']/f:value/@value='true'">globals=Y</xsl:if>
24
+ </xsl:template>
25
+ </xsl:stylesheet>