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

Difference between revisions of "Publishing Package Artifact Definition"

From HL7Wiki
Jump to navigation Jump to search
 
(7 intermediate revisions by the same user not shown)
Line 2: Line 2:
 
[[:Category:SAIF Artifact Definition|Return to Artifact List]]
 
[[:Category:SAIF Artifact Definition|Return to Artifact List]]
  
=Publishing Package - initial layout only=
+
=Publishing Package=
Alternate considerations:
+
Alternate considerations for the title include:
 
*<big><b>Publication Package</b></big>
 
*<big><b>Publication Package</b></big>
 
*<big><b>Publishing Grouper</b></big>
 
*<big><b>Publishing Grouper</b></big>
Line 10: Line 10:
 
== Definition and Purpose ==
 
== Definition and Purpose ==
 
<!-- At a high level, what is this artifact and why is it needed?  Should ideally be only a few sentences -->
 
<!-- At a high level, what is this artifact and why is it needed?  Should ideally be only a few sentences -->
 
+
A mechanism by which to define a package that organizes and documents a set of SAIF artifacts for publication.  Its purpose is to support balloting and distribution of specifications using SAIF artifacts, and includes a means of documenting the package itself, over and above the documentation inherent in each of the artifacts that it is packaging. The packaging occurs by reference to SAIF artifacts that are stored elsewhere.  The package is not a "container."
 +
<!--
 
'''NOTES:'''
 
'''NOTES:'''
  
Line 30: Line 31:
 
MIF ballot:
 
MIF ballot:
 
:*says realmNamespace is "Mandatory",  
 
:*says realmNamespace is "Mandatory",  
:*:'''OBSERVATION:''' but it is optional in the schemas (at least in mif:package/packageLocation)
+
:*:'''OBSERVATION:''' but it is optional in the schemas (at least in mif:package/mif:packageLocation and  mif:staticModel/mif:packageLocation)
 
:*:
 
:*:
 
:*also says that packageLocation/@artifact - "Identifies the type of artifact represented. Applies to all "Definition" artifacts. The set of artifacts is controlled by HL7's Publishing work group in consultation with Modeling & Methodology and Tooling."
 
:*also says that packageLocation/@artifact - "Identifies the type of artifact represented. Applies to all "Definition" artifacts. The set of artifacts is controlled by HL7's Publishing work group in consultation with Modeling & Methodology and Tooling."
 
:*:'''OBSERVATION:''' Clearly, it does '''not apply to the DEFN file for CorePrinciples''', because it is not a "DC" and therefore its package location is (I believe):
 
:*:'''OBSERVATION:''' Clearly, it does '''not apply to the DEFN file for CorePrinciples''', because it is not a "DC" and therefore its package location is (I believe):
 
:*::'''<mif:packageLocation root="DEFN" realmNamespace="UV" name="v3modelcoreprinciples"/>'''
 
:*::'''<mif:packageLocation root="DEFN" realmNamespace="UV" name="v3modelcoreprinciples"/>'''
 
+
-->
 
== SAIF Matrix Location ==
 
== SAIF Matrix Location ==
 
 
<!-- Where does this artifact fit into the SAIF matrix?  Delete those rows and columns that do not apply and provide qualification if appropriate -->
 
<!-- Where does this artifact fit into the SAIF matrix?  Delete those rows and columns that do not apply and provide qualification if appropriate -->
 +
This artifact is '''"Level-independent"''' because it is may be used to package artifacts at any level.
 
'''Row(s)'''
 
'''Row(s)'''
 
* Conceptual (CIM)
 
* Conceptual (CIM)
Line 52: Line 53:
  
 
== Audience ==
 
== Audience ==
 +
<!-- Who will be the consumers of this artifact type and what will they do with it? Select from or add to the following lists.-->
 +
Briefly, publication packages may be assembled '''for any target audience'''.
  
<!-- Who will be the consumers of this artifact type and what will they do with it? Select from or add to the following lists.-->
 
 
Health Care Community Audiences:
 
Health Care Community Audiences:
 
*General public <!-- as health care participants -->
 
*General public <!-- as health care participants -->
Line 67: Line 69:
  
 
== Applicability ==
 
== Applicability ==
 
 
<!-- Under what circumstances does this artifact type need to be created?  Are there circumstances where this artifact should not exist?  Why? -->
 
<!-- Under what circumstances does this artifact type need to be created?  Are there circumstances where this artifact should not exist?  Why? -->
Text
+
This artifact provides a convenient way to assemble and document artifacts for publication.  Therefore it will be created wherever and whenever a Work Group, project team, or HL7 publishers wish to publish SAIF artifacts for whatever purpose.
  
<i>Rationale</i>: More text
+
:<i>Rationale</i>: Is designed as an aid for publication and will be core vehicle for the HL7 publishing software.
  
 
== Requirements, Relationships and Content ==
 
== Requirements, Relationships and Content ==
 
 
<!-- What are the needs that this particular artifact was created to satisfy and why are those needs important.  (Should not be more than 10-15.) -->
 
<!-- What are the needs that this particular artifact was created to satisfy and why are those needs important.  (Should not be more than 10-15.) -->
# Some requirement
+
# Provide a means for uniquely identifying the package to be published.
## <i>Rationale</i>Some reason
+
## <i>Rationale</i> Seems obvious.
# Some other requirement
+
# Provide a means to "include", by reference, a specific SAIF artifact, or an identifiable sub-component of that artifact for publication.
## <i>Rationale</i>Some other reason
+
## <i>Rationale</i> The purpose is to publish SAIF artifacts and doing it by reference allows multiple such packages to include a given artifact without having to alter the content of the artifact itself. In some cases, it may be useful to, for example, include a single identified "class" from an information model.
 +
# Provide a means for grouping (a sub-package, if you will) artifact references or other groups within the package.
 +
## <i>Rationale</i> Such grouping allows the package to have a hierarchical structure (chapters, sections, etc. in order to facilitate understanding of the content.
 +
# Provide ability to add documentation (with mark-up) that precedes and follows each group and reference in the package, including the package itself.
 +
## <i>Rationale</i> Anticipate the need for "preceding" and "following" text that supplements the information in the components themselves.
 +
# Include contextual data such as copyrights, authorship, responsibility, etc. to support publication.
 +
## <i>Rationale</i> Handle the meta-data for the publication itself. 
 
=== Relationships and traceability ===
 
=== Relationships and traceability ===
 
 
<!-- What are the other artifacts to which this artifact must or may be required to relate?  (Express those relationships that are "many-to-one" - that is where many of this artifact type will usually relate to one of the other artifact type.) How do they relate?  Why is the relationship important?  
 
<!-- What are the other artifacts to which this artifact must or may be required to relate?  (Express those relationships that are "many-to-one" - that is where many of this artifact type will usually relate to one of the other artifact type.) How do they relate?  Why is the relationship important?  
  
 
Follow with a bullet list of artifacts that may or must relate to this artifact, where many of the listed artifact type will relate to one of this artifact type.   
 
Follow with a bullet list of artifacts that may or must relate to this artifact, where many of the listed artifact type will relate to one of this artifact type.   
 
  -->
 
  -->
* Some relationship
+
* Each "publishing package" may '''"replace"''' or be '''replaced by''' other "publishing package(s)".
** <i>Rationale</i>: Reason for relationship
+
** <i>Rationale</i>: Permit tracing sequence of such packages.
* Some other relationship
+
* Each "publishing package" SHALL have one or more '''"item references"''' to SAIF artifacts all, or part, of whose definitions will be "included" in the package. (Note that this may include reference to other publishing packages, as well.)
** <i>Rationale</i>: Reason for other relationship
+
** <i>Rationale</i>: Core relationship defined in requirement 2, above.
  
 
<b>Artifact types that may or must relate to this artifact types:</b>
 
<b>Artifact types that may or must relate to this artifact types:</b>
* Many-related Artifact Type
+
* '''ANY SAIF Artifact Type''' may be referenced for inclusion in such a package.
* Another Many-related Artifact Type
 
  
 
=== Content ===
 
=== Content ===
 
 
<!-- What elements or components are required to be part of this artifact, and what is their hierarchical structure?  How?  Why is the content important? (These can be expresses as a hierarchical set of content element names, with a brief phrase to describe each.) -->
 
<!-- What elements or components are required to be part of this artifact, and what is their hierarchical structure?  How?  Why is the content important? (These can be expresses as a hierarchical set of content element names, with a brief phrase to describe each.) -->
* <b>Content element name</b> - Brief Description
+
* <b>Publishing package identifier</b> - Data to uniquely identify this package.
* <b>Another content element name</b> - Brief Description
+
*:
** <b>Sub-element name</b> - Brief Description
+
* <b>Package meta-data</b> - Information on copyrights, authorship, etc.
* <b>Another content element name</b> - Brief Description
+
*:
 +
* <b>Package annotations</b> - Material such as a preface or appendices for the package.
 +
*:
 +
* <b>Content item</b> (0..*) - A reference to a SAIF artifact (or part thereof) for inclusion:.
 +
** <b>Item preceding text</b> - Marked-up text to precede the item
 +
**:
 +
** <b>Item reference</b> (1..1) - A direct reference to a SAIF Artifact or to an identifiable element in that artifact
 +
**:
 +
** <b>Item following text</b> - Marked-up text to follow the item
 +
**:
 +
* <b>Content group</b> (0..*) - A group of elements for inclusion.
 +
** <b>Group preceding text</b> - Marked-up text to preced the group
 +
**:
 +
** <b>Defined Group</b> the things that make up this group and may include:
 +
*** '''''Another "Content group"''''' (0..*) or
 +
***:
 +
*** '''''A "Content item"''''' (0..*)
  
 
== Artifact Technology ==
 
== Artifact Technology ==
 +
Instances of this artifact type will be '''created, maintained and used''' as a file that conforms to the [http://www.hl7.org/v3ballot/html/infrastructure/mif/mif.html HL7 Model Interchange Format] (MIF).
  
<!-- What technological/standard solution has been selected for use in creating this artifact and why? -->
+
The '''underlying technology''' (as of April 2011) is:
Text here
+
*'''[http://gforge.hl7.org/gf/project/pubdb/frs/ HL7 Publication Database]''' (Access) plus '''XSLT Transforms''' - As noted in the [[Artifact Domain Artifact Definition#Artifact Technology|technology section of the Domain Artifacts definition]], the content and structure of the artifacts fopr a particular domain is captured in that domain's [http://gforge.hl7.org/gf/project/pubdb/frs/ publication database] (Access). The publishing process takes the XML extract of that content and transforms it to define an instance of "Publishing Package" for that domain for use in a ballot or Normative Edition.
  
 +
*'''XML-editor of choice''' with no special support for reviewing markup except by rapid transform to "final form", which is available through current [http://gforge.hl7.org/gf/project/xmlpublishing/frs/ V3 Publishing Tools].
 
=== Rationale ===
 
=== Rationale ===
 
 
<!-- What's the justification for selecting the chosen technology? -->
 
<!-- What's the justification for selecting the chosen technology? -->
* Some reason
+
* The whole of the HL7 specification management and publication process is based on the notion of producing "processable" content files in MIF that can be used to publish the ballot.  The publishing package is central to publishing, and such artifacts are created automatically during that process.
* Some other reason
 
 
 
 
=== Alternatives ===
 
=== Alternatives ===
 
 
<!-- What other technical solutions might have been possible that were discarded, what did they offer and why were they not chosen? -->
 
<!-- What other technical solutions might have been possible that were discarded, what did they offer and why were they not chosen? -->
 
<b>Some technology</b>
 
* Some pro or con
 
* Some other pro or con
 
  
 
== Content Constraints ==
 
== Content Constraints ==
 
 
<!-- What are the formal rules about how the artifact can be constructed, including any extensions and constraints for the selected technology as well as the rationale for those rules.  These are rules that can reasonably be enforced or validated by tools. -->
 
<!-- What are the formal rules about how the artifact can be constructed, including any extensions and constraints for the selected technology as well as the rationale for those rules.  These are rules that can reasonably be enforced or validated by tools. -->
# Some rule
+
# "Item references" used in these files must be complete references to the MIF "package location" for the artifact in question, and references to specific content in the model (if any)  SHALL be an "XPath" statement pointing to the element in question. 
## <i>Rationale</i>: Some reason
+
## <i>Rationale</i>: MIF specification.
# Some other rule
+
# Textual markup in the documentation sections of the publishing package must conform to the xHtml sub-set distributed with the HL7 [http://gforge.hl7.org/gf/project/mif-schemas/frs/ MIF Schemas]
## <i>Rationale</i>: Some other reason
+
## <i>Rationale</i>: MIF specification.
  
 
== Content Guidelines ==
 
== Content Guidelines ==
 
 
<!-- What are the informal guidelines about how the artifact content.  I.e. What constitutes good practice?  These guidelines should be used in the evaluation of artifact instances but generally can't be enforced or validated by tools. -->
 
<!-- What are the informal guidelines about how the artifact content.  I.e. What constitutes good practice?  These guidelines should be used in the evaluation of artifact instances but generally can't be enforced or validated by tools. -->
# Some rule
 
## <i>Rationale</i>: Some reason
 
# Some other rule
 
## <i>Rationale</i>: Some other reason
 
  
 
== Publishing Representation(s) ==
 
== Publishing Representation(s) ==
 
 
<!-- How will this artifact be shared and published as part of specifications? -->
 
<!-- How will this artifact be shared and published as part of specifications? -->
# Some text
+
# These packages are used by the [http://gforge.hl7.org/gf/project/xmlpublishing/frs/ V3 Publishing Tools] to manage and create the published displays of HL7 content.
## <i>Rationale</i>: Some rationale
+
## <i>Rationale</i>: Primary vehicle for structuring published content.
# Some other text
+
# Documentation included in thsi package is rendered as HTML
## <i>Rationale</i>: Some other rationale
 
  
 
== Publishing Constraints ==
 
== Publishing Constraints ==
 
 
<!-- What are the constraints imposed by the publishing process on how artifacts are constructed and submitted to HL7and what are the reasons behind such constraints? -->
 
<!-- What are the constraints imposed by the publishing process on how artifacts are constructed and submitted to HL7and what are the reasons behind such constraints? -->
# Some rule
 
## <i>Rationale</i>: Some reason
 
# Some other rule
 
## <i>Rationale</i>: Some other reason
 
 
 
== Tooling Considerations ==
 
== Tooling Considerations ==
 
 
<!-- What tooling features are required or "nice to have" to allow successful development, publication or other use of the artifact? -->
 
<!-- What tooling features are required or "nice to have" to allow successful development, publication or other use of the artifact? -->
# Nice-to-have|Required: Some feature
 
## <i>Rationale</i>: Some rationale
 
# Nice-to-have|Required: Some other feature
 
## <i>Rationale</i>: Some other rationale
 
 
 
== Development Process Considerations ==
 
== Development Process Considerations ==
 
 
 
<!-- This section is optional.  It identifies thoughts or guidance around how the artifact will be used.  This may include development process, guidance on how many of this type of artifact are likely to exist within a domain or topic, etc. -->
 
<!-- This section is optional.  It identifies thoughts or guidance around how the artifact will be used.  This may include development process, guidance on how many of this type of artifact are likely to exist within a domain or topic, etc. -->
 
# Some text
 
## <i>Rationale</i>: Some rationale
 
# Some other text
 
## <i>Rationale</i>: Some other rationale
 
 
 
== Governance Process Considerations ==
 
== Governance Process Considerations ==
 
 
 
<!-- This section is optional.  It identifies anticipated or existing governance processes that control or impact the development and adoption of this type of artifact.  -->
 
<!-- This section is optional.  It identifies anticipated or existing governance processes that control or impact the development and adoption of this type of artifact.  -->
 
# <b>Governance Process name</b> - Some process description
 
## <i>Rationale</i>: Some rationale
 
# <b>Another Governance Process name</b> - Process description
 
## <i>Rationale</i>: Some other rationale
 
 
 
== Issues ==
 
== Issues ==
 
 
 
<!-- This section is optional. It identifies any outstanding issues (methodology or otherwise) that need to be resolved/answered as part of the guidelines -->
 
<!-- This section is optional. It identifies any outstanding issues (methodology or otherwise) that need to be resolved/answered as part of the guidelines -->
 
* Some issue
 
* Some other issue
 

Latest revision as of 17:25, 21 April 2011

Return to Artifact List

Publishing Package

Alternate considerations for the title include:

  • Publication Package
  • Publishing Grouper
  • Publication Grouper

Definition and Purpose

A mechanism by which to define a package that organizes and documents a set of SAIF artifacts for publication. Its purpose is to support balloting and distribution of specifications using SAIF artifacts, and includes a means of documenting the package itself, over and above the documentation inherent in each of the artifacts that it is packaging. The packaging occurs by reference to SAIF artifacts that are stored elsewhere. The package is not a "container."

SAIF Matrix Location

This artifact is "Level-independent" because it is may be used to package artifacts at any level. Row(s)

  • Conceptual (CIM)
  • Logical (PIM)
  • Implementable (PSM)

Column(s)

  • Enterprise/Business
  • Information
  • Computational
  • Engineering
  • Technical

Audience

Briefly, publication packages may be assembled for any target audience.

Health Care Community Audiences:

  • General public
  • Health care practitioners
  • Health system administrators
  • Health care policy makers

Health Care Information Technology (IT) Audiences:

  • System designers and architects
  • System purchasers
  • Programmers/implementers
  • System vendor management

Applicability

This artifact provides a convenient way to assemble and document artifacts for publication. Therefore it will be created wherever and whenever a Work Group, project team, or HL7 publishers wish to publish SAIF artifacts for whatever purpose.

Rationale: Is designed as an aid for publication and will be core vehicle for the HL7 publishing software.

Requirements, Relationships and Content

  1. Provide a means for uniquely identifying the package to be published.
    1. Rationale Seems obvious.
  2. Provide a means to "include", by reference, a specific SAIF artifact, or an identifiable sub-component of that artifact for publication.
    1. Rationale The purpose is to publish SAIF artifacts and doing it by reference allows multiple such packages to include a given artifact without having to alter the content of the artifact itself. In some cases, it may be useful to, for example, include a single identified "class" from an information model.
  3. Provide a means for grouping (a sub-package, if you will) artifact references or other groups within the package.
    1. Rationale Such grouping allows the package to have a hierarchical structure (chapters, sections, etc. in order to facilitate understanding of the content.
  4. Provide ability to add documentation (with mark-up) that precedes and follows each group and reference in the package, including the package itself.
    1. Rationale Anticipate the need for "preceding" and "following" text that supplements the information in the components themselves.
  5. Include contextual data such as copyrights, authorship, responsibility, etc. to support publication.
    1. Rationale Handle the meta-data for the publication itself.

Relationships and traceability

  • Each "publishing package" may "replace" or be replaced by other "publishing package(s)".
    • Rationale: Permit tracing sequence of such packages.
  • Each "publishing package" SHALL have one or more "item references" to SAIF artifacts all, or part, of whose definitions will be "included" in the package. (Note that this may include reference to other publishing packages, as well.)
    • Rationale: Core relationship defined in requirement 2, above.

Artifact types that may or must relate to this artifact types:

  • ANY SAIF Artifact Type may be referenced for inclusion in such a package.

Content

  • Publishing package identifier - Data to uniquely identify this package.
  • Package meta-data - Information on copyrights, authorship, etc.
  • Package annotations - Material such as a preface or appendices for the package.
  • Content item (0..*) - A reference to a SAIF artifact (or part thereof) for inclusion:.
    • Item preceding text - Marked-up text to precede the item
    • Item reference (1..1) - A direct reference to a SAIF Artifact or to an identifiable element in that artifact
    • Item following text - Marked-up text to follow the item
  • Content group (0..*) - A group of elements for inclusion.
    • Group preceding text - Marked-up text to preced the group
    • Defined Group the things that make up this group and may include:
      • Another "Content group" (0..*) or
      • A "Content item" (0..*)

Artifact Technology

Instances of this artifact type will be created, maintained and used as a file that conforms to the HL7 Model Interchange Format (MIF).

The underlying technology (as of April 2011) is:

  • XML-editor of choice with no special support for reviewing markup except by rapid transform to "final form", which is available through current V3 Publishing Tools.

Rationale

  • The whole of the HL7 specification management and publication process is based on the notion of producing "processable" content files in MIF that can be used to publish the ballot. The publishing package is central to publishing, and such artifacts are created automatically during that process.

Alternatives

Content Constraints

  1. "Item references" used in these files must be complete references to the MIF "package location" for the artifact in question, and references to specific content in the model (if any) SHALL be an "XPath" statement pointing to the element in question.
    1. Rationale: MIF specification.
  2. Textual markup in the documentation sections of the publishing package must conform to the xHtml sub-set distributed with the HL7 MIF Schemas
    1. Rationale: MIF specification.

Content Guidelines

Publishing Representation(s)

  1. These packages are used by the V3 Publishing Tools to manage and create the published displays of HL7 content.
    1. Rationale: Primary vehicle for structuring published content.
  2. Documentation included in thsi package is rendered as HTML

Publishing Constraints

Tooling Considerations

Development Process Considerations

Governance Process Considerations

Issues