This wiki has undergone a migration to Confluence found Here
<meta name="googlebot" content="noindex">

Difference between revisions of "FHIR IG PackageList doco"

From HL7Wiki
Jump to navigation Jump to search
Line 64: Line 64:
  
 
where [xxxx] is the repository name.
 
where [xxxx] is the repository name.
 +
 +
= Template =
 +
 +
{
 +
  "package-id" : "id",
 +
  "title" : "title",
 +
  "canonical" : "url",
 +
  "introduction" : "md",
 +
  "list" : [{
 +
  "version" : "current",
 +
  "desc" : "Continuous Integration Build (latest in version control)",
 +
  "path" : "http://build.fhir.org/ig/HL7/xxx",
 +
  "status" : "ci-build",
 +
  "current" : true
 +
  },{
 +
  "version" : "version", 
 +
  "date" : "date",
 +
  "desc" : "desc", 
 +
  "changes" : "link",
 +
  "path" : "url", 
 +
  "status" : "status", 
 +
  "sequence" : "sequence"
 +
  }]
 +
}

Revision as of 05:35, 22 November 2018

This page documents the FHIR package-list.json format. Each FHIR IG has a package-list.json file published at [canonical]/package-list.json, whch can be used by tools to fetch packages, or process/present/etc the publication history for an implementation guide.

Format

The package-list.json is a json file (!)

Base Object

The file contains a single Base object:

 {
   "package-id" : "[id]", // mandatory
   "title" : "[title]", // mandatory
   "canonical" : "[canonical]", // mandatory
   "introduction" : "[intro]", // optional
   "list" : [
     1..* Publication objects (see below)
   ]
 }

Doco:

  • id: The NPM package id for the IG
  • title: a human readable name for the IG
  • canonical: the URL at which this package-list.json will be published
  • intro: an optional commonmark markdown describing the purpose and contents of the IG

Publication Object

 {
   version" : "[version]",   // mandatory
   "date" : "[date]",    // mandatory, except for ci-build entry
   "desc" : "[desc]",   // mandatory
   "path" : "[path]",   // mandatory
   "changes" : "[changes]", // optional
   "status" : "[status]",   // mandatory
   "sequence" : "[sequence]",   // mandatory, except for ci-build entry
   "current" : [?current]   // optional, default false
  }

Doco:

  • version: the stated version of the IG for the publication
  • date: the date at which the publication was made [yyyy-mm-dd]
  • path: where the publication is found. Usually at [canonica]/version or similar (absolute URL)
  • desc: a text description of the publication (e.g. reason for publication)
  • changes: a link within the published spec that details the changes in this version (relative URL to path)
  • status: the status of the publication - one of 'draft', 'ballot', 'trial-use', or 'normative'
  • sequence: which group to publish this as part of (typically, 'STU 1' etc). Groups all the ballot publications and the final publication for the ballot sequence
  • current: true if this version should be listed in the current versions summary at the top of the history page. True for the CI-Build, and the version currently posted to the canonical URL

Note: the order of publication entries matters. The list should be ordered, with the ci-build entry first, then grouped by sequence and then from most recent to oldest in each sequence

CI Build

The first entry SHALL be a reference to the CI build. This has current = true, no date, 'current' for the version, etc:

 {
   "version" : "current",
   "desc" : "Continuous Integration Build (latest in version control)",
   "path" : "http://build.fhir.org/ig/HL7/[xxxx]",
   "status" : "ci-build",
   "current" : true
 }

where [xxxx] is the repository name.

Template

{
 "package-id" : "id",
 "title" : "title", 
 "canonical" : "url", 
 "introduction" : "md",
 "list" : [{
  "version" : "current",
  "desc" : "Continuous Integration Build (latest in version control)",
  "path" : "http://build.fhir.org/ig/HL7/xxx",
  "status" : "ci-build",
  "current" : true
 },{
  "version" : "version",  
  "date" : "date", 
  "desc" : "desc",   
  "changes" : "link",
  "path" : "url",   
  "status" : "status",   
  "sequence" : "sequence"
 }]
}