SDL-S1000D Training

159

Transcript of SDL-S1000D Training

Page 1: SDL-S1000D Training
Page 2: SDL-S1000D Training

S1000D Training Workshop

Page 3: SDL-S1000D Training

Overview of S1000D

The information contained in this presentation was gleaned and/or copied from the S1000D International specification for

technical publications, Issue 4.0,1 2009-05-12.

Information was also gleaned from The Aerospace Industries Association, A Recommendation to

the Department of Defense to Adopt the S1000D – the International Specification for Technical Documentation,

April 25,2008

Page 4: SDL-S1000D Training

Overview of S1000D

Information in this training covers the following:

• A brief history and the benefits of S1000D

• Discussion of the S1000D data types and associated codes:Data ModulesInformation Control NumbersData Module Requirements ListPublication ModulesData Dispatch Notes

• Applicability

• Business Rules

Page 5: SDL-S1000D Training

“S1000D is an international specification for producing technical publications. It is co-owned by the European Association of Aerospace Industries (ASD), the Aerospace Industries Association (AIA) and the Air Transport Association (ATA).

Although its roots are in the aviation industry, the specification supports any type of air, land or sea system or machinery that requires maintenance, operation and configuration to parts and supplies.”

Aerospace Industries Association, A Recommendation to the Department of Defense to Adopt the S1000

What is S1000D?

Overview of S1000D

Page 6: SDL-S1000D Training

“Amongst many S1000D working groups, the U.S.-based U.S. Specification Management Group (USSMG) and the international Technical Publication Specification Maintenance Group (TPSMG) have taken the lead in developing and maintaining the S1000D specification.”

“To assist the USSMG in defining and submitting U.S. interests toward the specification, the U.S. Specification Implementation Group (USSIG) was established under the USSMG to recommend detailed technical solutions, perform feasibility reviews, submit change proposals, and advise USSMG on a course forward.”

“AIA manages the USSMG and the USSIG.”

Aerospace Industries Association, A Recommendation to the Department of Defense to Adopt the S1000

Overview of S1000D

Page 7: SDL-S1000D Training

Why was S1000D developed?

In the 1980s, documentation for military projects in Europe used various national specifications, making data interchange between nations difficult.

During this same period, civil aviation was successfully using ATA S100 to deliver and interchange information internationally.

To ease interchange between nations, the AeroSpace and Defence Industries Association of Europe (ASD) (formerly AECMA) developed the S1000D specification; derived from ATA S100, it was widely adopted in Europe by military projects.

Overview of S1000D

Page 8: SDL-S1000D Training

Why has S1000D continued to evolve?

Documentation for military projects in the various U.S. joint services were written to various standards, making interchange difficult and often requiring each service to support multiple military specifications.

Documentation for military variants of commercial aircraft had to be converted into various mil-specs from civil aviation standards.

Overview of S1000D

Page 9: SDL-S1000D Training

“The most important factor in the development and oversight of S1000D is that it is an industry specification. Industry is the primary advocate for developing government-procured systems, and it is industry that sees the benefit in developing documentation in S1000D”

“Hundreds of individual DoD contractors that specialize in life cycle technical documentation have volunteered tens of thousands of hours over seven years to shape S1000D into a specification that can support all services and their equipment.”

Overview of S1000D

Page 10: SDL-S1000D Training

The Benefits of S1000D

“Most experts will agree that the single greatest benefit offered by S1000D is the ability to re-use data.

With S1000D, specific data modules are created (containing text and/or graphics), and then stored in the Common Source Database (CSDB).

You can then reuse and redistribute that very same data module in many other different projects or publications.”

So, why use S1000D and what are the benefits?

Page 11: SDL-S1000D Training

For instance, output is controlled by a publication module (PM) that organizes data modules (DM) and multiple publication modules can reference the same data module.

Content is reusable across systems, configurations, and delivery formats.

The Benefits of S1000D

Page 12: SDL-S1000D Training

Why use a CSBD? Because the spec calls for it!

It uses a Common Source Database (CSDB)

The Benefits of S1000D

Page 13: SDL-S1000D Training

S1000D Training Workshop

The Business Rules

Page 14: SDL-S1000D Training

Business Rules

Business rules are decisions that are made by a project or an organization on how to implement S1000D.

Business rules cover all aspects of S1000D and are not limited to authoring or illustrating.

Throughout the specification, business rule decision points have, wherever possible, been identified. However, in many cases, they have been marked as "None identified". Projects and organizations must decide whether certain business rules decisions must be made in these cases.

Page 15: SDL-S1000D Training

Business Rules

S1000D recognizes that a number of decisions related to its implementation are made not only on a project level but often also on an organizational level (eg national Ministries or Departments of Defense (MoD or DoD), international consortia such as Civil Aviation Working Group (CAWG), etc).

The structure and content of business rules between projects and various organizations can differ considerably.

In support of the business rule categories, a layered model of business rules is introduced.

Page 16: SDL-S1000D Training

S1000D Training Workshop

S1000D Data Modules

Page 17: SDL-S1000D Training

Data Modules

Data Modules are defined in the S1000D issues as:

“The smallest self contained information unit within a technical publication.”

Data modules (DMs) focus on fulfilling a single self-contained purpose.

Page 18: SDL-S1000D Training

Data modules (DMs) focus on fulfilling a single self-contained purpose.

For example, a DM may contain a:

• Procedure

• Description of Function• Fault isolation• Illustrated Parts Data

Data Modules

Page 19: SDL-S1000D Training

Data Module Types

• Descriptive

• Procedural

• Illustrated Parts Data

• Fault Isolation

• Wiring Diagram

• Maintenance Scheduling

• Crew/operator

• Technical Information Repository

• Business Rules Exchange (BREX)

• Container

New in 4.0 are:

• Checklist• Learning• SCORM Content Package

Data modules types identify a purpose for the data. The types are:

Page 20: SDL-S1000D Training

Data Module Codes

Each data module has unique data module code (DMC) that indicates to what component it applies and the information it contains and conveys.

“The data module code is the standardized and structured identifier of a data module.

The data module code is used to manage data modules in the CSDB, to retrieve them or to gain access to them in an electronic environment.”

Page 21: SDL-S1000D Training

Data Module Codes

Page 22: SDL-S1000D Training

Data Module Codes

“S1000D does for technical data what inventory control mechanisms do for parts management:

Data becomes a configuration item that must be created, tracked, modified and distributed.

The rigor applied to data management ought to come from some type of neutral source in much the same way Universal Product Codes (UPC) provide standardized barcodes for tracking inventory.

S1000D is an industry specification for the life cycle maintenance of air, land, and sea vehicles, but it can also apply to any technical system that requires parts management, operation, and life cycle maintenance.”

Page 23: SDL-S1000D Training

DMC-S1000DBIKE-AAA-D00-00-00-00AA-00PA-D_004-00_EN-US.xml

Model Identification Code “The model identification code identifies the Product to which the data applies ...”

The following is a sample DM xml file. The DMC is highlighted in grey.

Data Module Codes (DMCs)

Page 24: SDL-S1000D Training

DMC-S1000DBIKE-AAA-D00-00-00-00AA-00PA-D_004-00_EN-US.xml

Model Identification Code

The following is a sample DM xml file. The DMC is highlighted in grey.

Data Module Codes (DMCs)

System Difference CodeThe system difference code identifies alternative

versions of the system and subsystem/subsubsystem

Page 25: SDL-S1000D Training

DMC-S1000DBIKE-AAA-D00-00-00-00AA-00PA-D_004-00_EN-US.xml

Model Identification Code

The following is a sample DM xml file. The DMC is highlighted in grey.

Data Module Codes (DMCs)

System Difference Code

Standard Numbering System

The standard numbering system is comprised of 4-5 numbers identifying the system, subsystem, and sub-subsystem.

In the case where it is necessary to indicate the type of SNS used, an

additional single alphanumeric character is placed in front of the SNS. The

character is called the materiel item category code.

In this example it is indicated by D in the System Code.

Page 26: SDL-S1000D Training

DMC-S1000DBIKE-AAA-D00-00-00-00AA-00PA-D_004-00_EN-US.xml

Model Identification Code

The following is a sample DM xml file. The DMC is highlighted in grey.

Data Module Codes (DMCs)

System Difference Code

Standard Numbering System

The materiel item category code is used to indicate different SNS coding

structures that are applicable to an individual project at the system,

subsystem and sub-subsystem level within the SNS.

Page 27: SDL-S1000D Training

DMC-S1000DBIKE-AAA-D00-00-00-00AA-00PA-D_004-00_EN-US.xml

Model Identification Code

The following is a sample DM xml file. The DMC is highlighted in grey.

Data Module Codes (DMCs)

System Difference Code

Standard Numbering System

“The unit or assembly is two or four alphanumeric characters. It is a sequential

number starting from 01 or 0001. The use of four characters provides

identification for units in complex systems.”

Unit or Assembly

Page 28: SDL-S1000D Training

DMC-S1000DBIKE-AAA-D00-00-00-00AA-00PA-D_004-00_EN-US.xml

Model Identification Code

The following is a sample DM xml file. The DMC is highlighted in grey.

Data Module Codes (DMCs)

System Difference Code

Standard Numbering System

Unit or Assembly

Disassembly Code / Disassembly Code Variant

“The disassembly code identifies the breakdown

condition of an assembly to which maintenance information

applies.” (2 alphanumeric characters - 00)

“The disassembly code variant designates alternative

items of equipment or components differing slightly in design, but not enough to

warrant a change of the system difference code.”

(1-3 alphanumeric characters - AA)

Page 29: SDL-S1000D Training

DMC-S1000DBIKE-AAA-D00-00-00-00AA-00PA-D_004-00_EN-US.xml

Model Identification Code

Data Module Codes (DMCs)

System Difference Code

Standard Numbering System

Unit or Assembly

Disassembly Code / Disassembly Code Variant

Information Code / Information Code Variant

The following is a sample DM xml file. The DMC is highlighted in grey.

“The information code identifies the type of

information within a data module.”

(3 alphanumeric characters – 00P)

The information code variant identifies any

variation in the activity defined by the information

code(1 alphanumeric character – A)

Page 30: SDL-S1000D Training

DMC-S1000DBIKE-AAA-D00-00-00-00AA-00PA-D_004-00_EN-US.xml

Model Identification Code

Data Module Codes (DMCs)

System Difference Code

Standard Numbering System

Unit or Assembly

Disassembly Code / Disassembly Code Variant

Information Code / Information Code Variant

The following is a sample DM xml file. The DMC is highlighted in grey.

Item Location Code

“The item location code indentifies the

situation to which the information is

applicable, eg wherethe maintenance task will be carried out in terms of a Product.”

Page 31: SDL-S1000D Training

<dmIdent><dmCode modelIdentCode="S1000DBIKE" systemDiffCode="AAA" systemCode="D00" subSystemCode="0" subSubSystemCode="0" assyCode="00" disassyCode="00" disassyCodeVariant="AA" infoCode="00P" infoCodeVariant="A" itemLocationCode="D"/><language countryIsoCode="US" languageIsoCode="en"/><issueInfo issueNumber="004" inWork="00"/></dmIdent>

Element Tags in the XML for the DMC

In the document, the DMC is stored within the <dmCode> element. The data in the xml file indicating the DMC in

<dmCode> for the example above is (highlighted in grey):

DMC-S1000DBIKE-AAA-D00-00-00-00AA-00PA-D_004-00_EN-US.xml

Page 32: SDL-S1000D Training

Model Identification Code

System Difference Code

Standard Numbering System

Assembly Code

Information Code / Information Code Variant

Item Location Code

Disassembly Code / Disassembly Code Variant

The remainder of the codes (within dmIdent) are part of the XML filename.

Issue Number

Data Module Codes (DMCs)

For every release of a

data module, the issue

number must be incremented

by one.

DMC-S1000DBIKE-AAA-D00-00-00-00AA-00PA-D_004-00_EN-US.xml

Page 33: SDL-S1000D Training

Model Identification Code

System Difference Code

Standard Numbering System

Assembly Code

Information Code / Information Code Variant

Item Location Code

Disassembly Code / Disassembly Code Variant

Issue Number

In Work

Data Module Codes (DMCs)

The remainder of the codes (within dmIdent) are part of the XML filename.

The inwork number is used to track drafting of changed

information during the information generation process.

DMC-S1000DBIKE-AAA-D00-00-00-00AA-00PA-D_004-00_EN-US.xml

Page 34: SDL-S1000D Training

<dmIdent><dmCode modelIdentCode="S1000DBIKE" systemDiffCode="AAA" systemCode="D00" subSystemCode="0" subSubSystemCode="0" assyCode="00" disassyCode="00" disassyCodeVariant="AA" infoCode="00P" infoCodeVariant="A" itemLocationCode="D"/><language countryIsoCode="US" languageIsoCode="en"/><issueInfo issueNumber="004" inWork="00"/></dmIdent>

Element Tags in the XML for the DMC

The data in the xml file indicating the issue number and in work codes:

DMC-S1000DBIKE-AAA-D00-00-00-00AA-00PA-D_004-00_EN-US.xml

Page 35: SDL-S1000D Training

Data Module Codes (DMCs)

Model Identification Code

System Difference Code

Standard Numbering System

Assembly Code

Information Code / Information Code Variant

Item Location Code

Disassembly Code / Disassembly Code Variant

Issue Number

In Work

The remainder of the codes (within dmIdent) are part of the XML filename.

DMC-S1000DBIKE-AAA-D00-00-00-00AA-00PA-D_004-00_EN-US.xml

Language and Country codes

Language: two alpha characters from International Standards Organisation (ISO)

specifying the language.

Country: two alpha characters from ISO to denote the country where the language is

spoken.

Page 36: SDL-S1000D Training

<dmIdent><dmCode modelIdentCode="S1000DBIKE" systemDiffCode="AAA" systemCode="D00" subSystemCode="0" subSubSystemCode="0" assyCode="00" disassyCode="00" disassyCodeVariant="AA" infoCode="00P" infoCodeVariant="A" itemLocationCode="D"/><language countryIsoCode="US" languageIsoCode="en"/><issueInfo issueNumber="004" inWork="00"/></dmIdent>

Element Tags in the XML for the DMC

The data in the xml file indicating the language and country codes:

DMC-S1000DBIKE-AAA-D00-00-00-00AA-00PA-D_004-00_EN-US.xml

Page 37: SDL-S1000D Training

Element Tags in the XML for the DMC

The basic structure or hierarchy of the elements in the DM is shown to the right.

The data module code information is contained in the Data Module Address section. The code is metadata, it is not data that is displayed in the publication itself.

Page 38: SDL-S1000D Training

Element Tags in the XML for the DMC

<dmIdent><dmCode modelIdentCode="S1000DBIKE" systemDiffCode="AAA" systemCode="D00" subSystemCode="0" subSubSystemCode="0" assyCode="00" disassyCode="00" disassyCodeVariant="AA" infoCode="00P" infoCodeVariant="A" itemLocationCode="D"/><language countryIsoCode="US" languageIsoCode="en"/><issueInfo issueNumber="004" inWork="00"/></dmIdent>

Page 39: SDL-S1000D Training

Workshop Exercise

Defining the DMCs

Page 40: SDL-S1000D Training

XML and the DMC

Specify the data module code considering the following XML:

<dmIdent><dmCode modelIdentCode="S1000DLIGHTING" systemDiffCode="AAA" systemCode="D00" subSystemCode="0" subSubSystemCode="0" assyCode="00" disassyCode="00" disassyCodeVariant="AA" infoCode="056" infoCodeVariant="A" itemLocationCode="A"/> <language countryIsoCode="US" languageIsoCode="en"/> <issueInfo issueNumber="007" inWork="00"/></dmIdent>

Page 41: SDL-S1000D Training

XML and the DMC

Specify the XML filename in which this data appears:

<dmIdent><dmCode modelIdentCode="S1000DLIGHTING" systemDiffCode="AAA" systemCode="D00" subSystemCode="0" subSubSystemCode="0" assyCode="00" disassyCode="00" disassyCodeVariant="AA" infoCode="056" infoCodeVariant="A" itemLocationCode="A"/> <language countryIsoCode="US" languageIsoCode="en"/> <issueInfo issueNumber="007" inWork="00"/></dmIdent>

Page 42: SDL-S1000D Training

The D in the systemCode indicates: ________________________

The 00 in the system and subsystem codes indicate: _____________________________________________________

XML and the DMC

Refer to the S1000D International specification for technical publications, Issue 4.0, 2008-08-01 and interpret the following:

systemCode="D00" subSystemCode="0" subSubSystemCode="0“

Page 43: SDL-S1000D Training

Defining the Data Module Codes

Below is an example for the lab that follows—assume that you are asked to create a DMC that contains a procedure for draining the gas tank on the Jeep Wrangle as part of routine servicing.

In addition, note that your Business Rules specify that the MIC is JEEP and the SDC is defined as 01 for the Wrangler, 02 for the Liberty, and 03 for the Commander and that other codes should be obtained from the specification.

MIC SDC System Subsystem & sub-subsystem

Unit Assembly

DC DCV IC ICV ILC

JEEP 01 12 10 00 00 00 200 0 A

Page 44: SDL-S1000D Training

Defining the Data Module Codes

MIC SDC System Subsystem & sub-subsystem

Unit Assembly

DC DCV IC ICV ILC

Using the Business Rules and other information provided previously and create a DMC for the procedure to disassemble and remove the brakes on the Jeep Liberty. This is to be done as part of an examination and check for proper functioning.

Page 45: SDL-S1000D Training

S1000D Training Workshop

S1000D Information Control Numbers

Page 46: SDL-S1000D Training

Illustrations and Multimedia

Illustrations and multimedia are identified by a unique Information Control Number (ICN).

Illustrations are typically• Vector line drawings (CGM)• Raster images (CCITT Grp/4, TIFF)• Photos and other artwork (JPEG, GIF, PNG)

Multimedia can be of any type defined and supported by the project’s business rules.

Page 47: SDL-S1000D Training

ICN-S1000DBIKE-AAA-D000000-0-U8025-00502-A-004-01.CGM

Model Identification Code

System Difference Code

Standard Numbering System

Information Control Number (ICN)

The following is a sample Model Identication Code based ICN.

Assembly Code

Responsible Partner Company Code

Orginator Code (NCAGE)

Unique Identifier

Information Variant Code

Issue Number

Security Classification

Page 48: SDL-S1000D Training

Model Identification Code

System Difference Code

Standard Numbering System

Information Control Number (ICN)

Assembly Code

The ModelIC, SDC, SNS and Assembly Code is the same as that for the Data Module.

ICN-S1000DBIKE-AAA-D000000-0-U8025-00502-A-004-01.CGM

Page 49: SDL-S1000D Training

ICN-S1000DBIKE-AAA-D000000-0-U8025-00502-A-004-01.CGM

Information Control Number (ICN)

The Responsible Partner Company Code is the company or organization responsible for the illustration independent of its use in the data module.

Format: 1 character, defined by the project.

Example: In the example of the bike data’s ICN (shown above) the Responsible Partner Company Code is represented by 0.

Page 50: SDL-S1000D Training

ICN-S1000DBIKE-AAA-D000000-0-U8025-00502-A-004-01.CGM

ICN – Originator Code

The Originator Code specifies the originator of the illustration. It is used as a status element in the identification and status section of the data module. characters.

Format: 5 alphanumeric characters NCAGE code

Example: In the example of the bike data’s ICN shown above, the Originator Code is represented by U8025

Page 51: SDL-S1000D Training

ICN – Unique Identifier

The Unique Identifier starts from 00001 for each originating company.

• The identifier must be unique for each originator code. • For each model identification code, the identifier must be unique

for each originating company.

Format: 5 digits

Example: In the example of the bike data’s ICN shown above, the Information Sequential Number is represented by 00502

ICN-S1000DBIKE-AAA-D000000-0-U8025-00502-A-004-01.CGM

Page 52: SDL-S1000D Training

ICN-S1000DBIKE-AAA-D000000-0-U8025-00502-A-004-01.CGM

ICN – Variant Code

The Variant Code identifies the variants of a basic illustration. A variant is a supplemental scaled, cropped, rotated, mirrored, and/or annotated basic illustration.

Format: 1 alpha character The variant A identifies a basic illustration and B identifies the variant.

Example: In the example of the bike data’s ICN shown above, the Variant Code is represented by A.

Page 53: SDL-S1000D Training

ICN-S1000DBIKE-AAA-D000000-0-U8025-00502-A-004-01.CGM

ICN –Issue Number

The Issue Number starts from 001 for each basic illustration and is incremented each time the illustration is updated.

Format: 3 digits

Example: In the example of the bike data’s ICN shown above, the Issue Number is represented by 004 .

Page 54: SDL-S1000D Training

ICN-S1000DBIKE-AAA-D000000-0-U8025-00502-A-004-01.CGM

ICN – Security Classification

The Security Classification identifies the security classification of the illustration. The same classes as the data modules must be used. The illustration, multimedia object or other data has its individual security classification independent of where it is used. If an illustration is reclassified, it is given a new issue number.

Format: 2 numeric characters

Example: In the example of the bike data’s ICN shown above, the Security Classification is represented by 1.

Page 55: SDL-S1000D Training

ICN – Unique Identifier

Note that these two graphics were supplied by the same originator (identified by the NCAGE code S7282) and have the same MIC, SDC, and the SNS.

However, they can be differentiated by the Unique Identifier.

Page 56: SDL-S1000D Training

ICN – CAGE code based

The CAGE code based ICN is illustrated to the right. It is comprised of five parts whereas the

Model Identification Code based ICN is ten parts.

It is similar to the Model Identification Code based ICN except it starts with

the Originator code.

Page 57: SDL-S1000D Training

Workshop Exercise

Defining a CAGE Code Based ICN

Page 58: SDL-S1000D Training

Defining the Information Control Number

ICN-S1000DBIKE-AAA-D000000-0-U8025-00502-A-004-1.CGM

Using the Model Identification Code based ICN above, create the CAGE code based ICN for the same module.

Page 59: SDL-S1000D Training

S1000D Training Workshop

S1000D Applicability

Page 60: SDL-S1000D Training

What is Applicability?

It provides the mechanism to identify the context for which a data module or parts of a data module is valid.

The term Applicability refers to a set of rules and directives used to determine if a particular piece of content is applicable to the end user.

The S1000D applicability model supports simple to very complex implementations.

Page 61: SDL-S1000D Training

Applicability

Suppose a master data module contains the information for all deliveries for all customers.

When publishing, the data module can be filtered on data tagged for applicability so that the publication is appropriate to the delivery, and specific for the customer.

Page 62: SDL-S1000D Training

Applicability Demo

Applicability is demonstrated using LiveContent.

Page 63: SDL-S1000D Training

The applicability mechanism is supported by:

• the applicability annotation within data modules• three specific data module types

S1000D Applicability

Page 64: SDL-S1000D Training

The three specific data module types are:

• the Applicability Cross-reference Table (ACT) data module• the Conditions Cross-reference Table (CCT) data module• the Products Cross-reference Table (PCT) data module

Although not prohibited, these data modules are not intended to be displayed to the end user.

S1000D Applicability

Page 65: SDL-S1000D Training

The ACT Data Module is used to declare product attributes.

These are attributes that are not likely to change during the product life cycle. They are typically set at manufacturing time.

For example:• Manufacturers serial number• Aircraft registration number• Model number

ACT Data Module

ACT Data Module

Page 66: SDL-S1000D Training

ACT Data Module

Reference to the ACT is in the Data Module’s status section, for example:

<applicCrossRefTableRef>

<dmRef xlink:type="simple" xlink:actuate="onRequest" xlink:show="replace" xlink:href="URN:S1000D:DMC-S1000DBIKE-AAA-D00-00-00-00AA-00WA-D"> <dmRefIdent>

<dmCode modelIdentCode="S1000DBIKE" systemDiffCode="AAA" systemCode="D00" subSystemCode="0" subSubSystemCode="0" assyCode="00" disassyCode="00" disassyCodeVariant="AA" infoCode="00W" infoCodeVariant="A" itemLocationCode="D"/></dmRefIdent>

</dmRef><

/applicCrossRefTableRef>

The infoCode 00W specifies the Attribute Cross Reference Table.

Page 67: SDL-S1000D Training

CCT Data Module

The CCT Data Module is used to declare conditions that affect the applicability of the data, such as:

• Technical• Operational• Environmental

For example: • Icy conditions yes or no• Pre or post Service Bulletin SB1• Combat situation yes or no• Temperature• Wind speed

CCT Data Module

Page 68: SDL-S1000D Training

PCT Data Module

The PCT Data Module is a repository for defining product instances.

• More a product database• Defines attributes and conditions for an actual instance

For example:Car 1 Car 2 License plate PR-XG-63 License plate AL-32-22 Model: V40 Model: Daffodil Year: 1998 Year: 1964 Manufacturer: Volvo Manfacturer: DAF

PCT Data Module

An instance is a single physical occurrence of the product.

Page 69: SDL-S1000D Training

ACT Data Module

Consider the following contents of an ACT data module:

ACT=application cross reference table

Page 70: SDL-S1000D Training

ACT Data Module

“One of the attributes is serialno

another attribute is Model

another is version...”

“The following is a list of attributes...”

continued...

Page 71: SDL-S1000D Training

ACT Data Module-con’t

Identifies the CCT

continued...

by its DMC

Identifies the PCT by its DMC

Page 72: SDL-S1000D Training

Identifies the CCT

Identifies the PCT

The infocode 00Q specifies a Conditions Cross Reference Table

The infocode 00P specifies a Product Cross Reference Table

ACT Data Module-con’t

Page 73: SDL-S1000D Training

The DM and Cross Reference Tables

So, the ACT is identified in the Data Module...

... and the CCT and PCT are defined in the ACT:

Data Module<applicCrossRefTableRef>

<dmRef xlink:type="simple" xlink:actuate="onRequest" xlink:show="replace" xlink:href="URN:S1000D:DMC-S1000DBIKE-AAA-D00-00-00-00AA-00WA-D"> <dmRefIdent>

<dmCode modelIdentCode="S1000DBIKE" systemDiffCode="AAA" systemCode="D00" subSystemCode="0" subSubSystemCode="0" assyCode="00" disassyCode="00" disassyCodeVariant="AA" infoCode="00W" infoCodeVariant="A" itemLocationCode="D"/></dmRefIdent>

</dmRef><

/applicCrossRefTableRef>

Attribute Cross Reference Table

Conditions Cross

Reference Table

Product Cross

Reference Table

Page 74: SDL-S1000D Training

We’ve seen that the Brook trekker and Mountain storm have already been established as a model and Mk1 and Mk9 have been established as versions.

S1000D Applicability within DMs

Assume that you want to test for the Mk1 Brook trekker or the Mk9 Mountain storm.

Page 75: SDL-S1000D Training

<assert> use for a single test which resolves to a boolean True or False

<evaluate> use as a means to group a set of assertions using the operators and or or

These elements groupings can be nested, resulting in very complex expressions.

The test consists of the following elements:

S1000D Applicability

Test for the Mk1 Brook trekker or the Mk9 Mountain storm.

Page 76: SDL-S1000D Training

<assert> contains the following components:

• The attribute applicPropertyIdent containing the identifier of

a product attribute or condition to test.

•The attribute applicPropertyValues containing the values and ranges to test against

S1000D Applicability—assert

<assert applicPropertyIdent=“model”applicPropertyType=“prodattr” applicPropertyValues=“Mountain storm”/>

<assert applicPropertyIdent=“version”applicPropertyType=“prodattr” applicPropertyValues=“Mk1”/>

Page 77: SDL-S1000D Training

S1000D Applicability

In this example, the test is for the model Mountain Storm version Mk1.

<assert applicPropertyIdent=“model”applicPropertyType=“prodattr” applicPropertyValues=“Mountain storm”/>

<assert applicPropertyIdent=“version”applicPropertyType=“prodattr” applicPropertyValues=“Mk1”/>

Page 78: SDL-S1000D Training

S1000D Applicability

<assert applicPropertyIdent=“model”applicPropertyType=“prodattr” applicPropertyValues=“Mountain storm”/>

<assert applicPropertyIdent=“version”applicPropertyType=“prodattr” applicPropertyValues=“Mk1”/>

<evaluate andOr="and">

</evaluate>

Wrap the <assert> tags with <evaluate> tags to group the assertions, and specify if both need to be true (boolean “and”) or if only one has to be true (boolean “or”) for the assertions to be true.

Page 79: SDL-S1000D Training

<applic>

<displayText><simplePara>Mountain bicycle and (Mountain stormMk1 or Brook trekker Mk9)</simplePara></displayText>

<evaluate andOr="and"><assert applicPropertyIdent="type" applicPropertyType="prodattr"applicPropertyValues="Mountain bicycle"/><evaluate andOr="or"><evaluate andOr="and">

<assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Mountainstorm"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk1"/></evaluate>

<evaluate andOr="and"><assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Brooktrekker"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk9"/>

</evaluate></evaluate></evaluate></applic>

These and operators specify to test for model AND version for each of the bicycles.

Starting from the inside evaluate expressions...

S1000D Applicability within DMs

Page 80: SDL-S1000D Training

DMC-S1000DBIKE-AAA-D00-00-00-00AA-941A-D_006-00_EN-US.xml

The first and tests for the model Mountain Storm and version MK1.

The second tests for model Brook trekker and version Mk9.

<applic>

<displayText><simplePara>Mountain bicycle and (Mountain stormMk1 or Brook trekker Mk9)</simplePara></displayText>

<evaluate andOr="and"><assert applicPropertyIdent="type" applicPropertyType="prodattr"applicPropertyValues="Mountain bicycle"/><evaluate andOr="or"><evaluate andOr="and">

<assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Mountainstorm"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk1"/></evaluate>

<evaluate andOr="and"><assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Brooktrekker"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk9"/>

</evaluate></evaluate></evaluate></applic>

S1000D Applicability within DMs

Page 81: SDL-S1000D Training

DMC-S1000DBIKE-AAA-D00-00-00-00AA-941A-D_006-00_EN-US.xml

The outside “or”denotes if either of the evaluate annotations are 'true' then the entire applicability results in the Boolean value of 'true'.

This applicability annotation tests for either a "Mountain storm Mk1" or a "Brook trekker Mk9”.

S1000D Applicability within DMs

<applic>

<displayText><simplePara>Mountain bicycle and (Mountain stormMk1 or Brook trekker Mk9)</simplePara></displayText>

<evaluate andOr="and"><assert applicPropertyIdent="type" applicPropertyType="prodattr"applicPropertyValues="Mountain bicycle"/><evaluate andOr="or"><evaluate andOr="and">

<assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Mountainstorm"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk1"/></evaluate>

<evaluate andOr="and"><assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Brooktrekker"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk9"/>

</evaluate></evaluate></evaluate></applic>

Page 82: SDL-S1000D Training

<applic>

<displayText><simplePara>Mountain bicycle and (Mountain stormMk1 or Brook trekker Mk9)</simplePara></displayText>

<evaluate andOr="and"><assert applicPropertyIdent="type" applicPropertyType="prodattr"applicPropertyValues="Mountain bicycle"/><evaluate andOr="or"><evaluate andOr="and">

<assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Mountainstorm"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk1"/></evaluate>

<evaluate andOr="and"><assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Brooktrekker"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk9"/>

</evaluate></evaluate></evaluate></applic>

Computable assert annotation

The attribute in the assert statement in the DM (DataModule) is matched to the attribute in the assign statement in the PCT (Products Cross-Reference Table):

Page 83: SDL-S1000D Training

<applic>

<displayText><simplePara>Mountain bicycle and (Mountain stormMk1 or Brook trekker Mk9)</simplePara></displayText>

<evaluate andOr="and"><assert applicPropertyIdent="type" applicPropertyType="prodattr"applicPropertyValues="Mountain bicycle"/><evaluate andOr="or"><evaluate andOr="and">

<assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Mountainstorm"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk1"/></evaluate>

<evaluate andOr="and"><assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Brooktrekker"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk9"/>

</evaluate></evaluate></evaluate></applic>

Computable assert annotation

The attribute in the assert statement in the DM (DataModule) is matched to the attribute in the assign statement in the PCT (Products Cross-Reference Table):

Page 84: SDL-S1000D Training

In the data module:

<evaluate andOr="and"> <assert applicPropertyIdent="model" applicPropertyType="prodattr" applicPropertyValues="Mountain storm"/> <assert applicPropertyIdent="version“ applicPropertyType="prodattr" applicPropertyValues="Mk1"/></evaluate>

Computable assert annotation

For example – where the result = true

In the PCT:

<product><assign applicPropertyIdent=“serialno” applicPropertyType="prodattr“ applicPropertyValue=“1B07001”//><assign applicPropertyIdent="model“”applicPropertyType="prodattr“ applicPropertyValue="Mountain storm"/><assign applicPropertyIdent=“version” applicPropertyType="prodattr“ applicPropertyValue="Mk1"/><assign applicPropertyIdent=“SB-S001” applicPropertyType="prodattr“ applicPropertyValue=“Pre"/></product>

Page 85: SDL-S1000D Training

In the data module:

<evaluate andOr="and"> <assert applicPropertyIdent="model" applicPropertyType="prodattr" applicPropertyValues="Mountain storm"/> <assert applicPropertyIdent="version“ applicPropertyType="prodattr" applicPropertyValues="Mk9"/></evaluate>

Computable assert annotation

For example – where the result = false

In the PCT:

<product><assign applicPropertyIdent=“serialno” applicPropertyType="prodattr“ applicPropertyValue=“1B07001”//><assign applicPropertyIdent="model“”applicPropertyType="prodattr“ applicPropertyValue="Mountain storm"/><assign applicPropertyIdent=“version” applicPropertyType="prodattr“ applicPropertyValue="Mk1"/><assign applicPropertyIdent=“SB-S001” applicPropertyType="prodattr“ applicPropertyValue=“Pre"/></product>

Page 86: SDL-S1000D Training

S1000D Applicability within DMs

<applic>

<displayText><simplePara>Mountain bicycle and (Mountain stormMk1 or Brook trekker Mk9)</simplePara></displayText>

<evaluate andOr="and"><assert applicPropertyIdent="type" applicPropertyType="prodattr"applicPropertyValues="Mountain bicycle"/><evaluate andOr="or"><evaluate andOr="and">

<assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Mountainstorm"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk1"/></evaluate>

<evaluate andOr="and"><assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Brooktrekker"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk9"/>

</evaluate></evaluate></evaluate></applic>

Where does the data within the <applic> ... </applic> tags appear in the DM?

To specify applicability for the data module enter the markup as shown in the identification and status section of the data module.

Page 87: SDL-S1000D Training

<applic>

<displayText><simplePara>Mountain bicycle and (Mountain stormMk1 or Brook trekker Mk9)</simplePara></displayText>

<evaluate andOr="and"><assert applicPropertyIdent="type" applicPropertyType="prodattr"applicPropertyValues="Mountain bicycle"/><evaluate andOr="or"><evaluate andOr="and">

<assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Mountainstorm"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk1"/></evaluate>

<evaluate andOr="and"><assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Brooktrekker"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk9"/>

</evaluate></evaluate></evaluate></applic>

S1000D Applicability within DMs

Page 88: SDL-S1000D Training

S1000D Applicability within DMs

The applicability information has the same construct whether applied to the whole data module or a part of the content.

To apply to the whole data module, enter it as previously described in the DM’s status section.

However, when defined for use for part of the content, surround the <applic> tags with <referencedApplicGroup> ... </referencedApplicGroup> tags.

This says that it will be referenced in the content section of the DM and it is not to be applied to the whole DM.

Page 89: SDL-S1000D Training

In addition, add an id attribute to the <applic> tag. The id is used in the content section of the DM to identify and target the applicability test to use.

For example: <applic id=“appl-001”>

S1000D Applicability within DMs

Use this ID in the DM’s content section to “target” use of this applicability test.

Page 90: SDL-S1000D Training

S1000D Applicability within DMs

<applic>

<displayText><simplePara>Mountain bicycle and (Mountain stormMk1 or Brook trekker Mk9)</simplePara></displayText>

<evaluate andOr="and"><assert applicPropertyIdent="type" applicPropertyType="prodattr"applicPropertyValues="Mountain bicycle"/><evaluate andOr="or"><evaluate andOr="and">

<assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Mountainstorm"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk1"/></evaluate>

<evaluate andOr="and"><assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Brooktrekker"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk9"/>

</evaluate></evaluate></evaluate></applic>

Add <referencedApplicGroup>

Add </referencedApplicGroup>

Add the id attributefor example:<applic id=“appl-001”>

Page 91: SDL-S1000D Training

<applic>

<displayText><simplePara>Mountain bicycle and (Mountain stormMk1 or Brook trekker Mk9)</simplePara></displayText>

<evaluate andOr="and"><assert applicPropertyIdent="type" applicPropertyType="prodattr"applicPropertyValues="Mountain bicycle"/><evaluate andOr="or"><evaluate andOr="and">

<assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Mountainstorm"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk1"/></evaluate>

<evaluate andOr="and"><assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Brooktrekker"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk9"/>

</evaluate></evaluate></evaluate></applic>

<referencedApplicGroup><applic id=“appl-001”>

<displayText><simplePara>Mountain bicycle and (Mountain stormMk1 or Brook trekker Mk9)</simplePara></displayText>

<evaluate andOr="and"><assert applicPropertyIdent="type" applicPropertyType="prodattr"applicPropertyValues="Mountain bicycle"/><evaluate andOr="or"><evaluate andOr="and">

<assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Mountainstorm"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk1"/></evaluate>

<evaluate andOr="and"><assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Brooktrekker"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk9"/>

</evaluate></evaluate></evaluate></applic></referencedApplicGroup>

S1000D Applicability within DMs

This specifies that the applicability test is only to be applied in the content section

where and when the applicability id is specified.

Page 92: SDL-S1000D Training

<referencedApplicGroup><applic id=“appl-001”>

<displayText><simplePara>Mountain bicycle and (Mountain stormMk1 or Brook trekker Mk9)</simplePara></displayText>

<evaluate andOr="and"><assert applicPropertyIdent="type" applicPropertyType="prodattr"applicPropertyValues="Mountain bicycle"/><evaluate andOr="or"><evaluate andOr="and">

<assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Mountainstorm"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk1"/></evaluate>

<evaluate andOr="and"><assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Brooktrekker"/>

<assert applicPropertyIdent="version"applicPropertyType="prodattr" applicPropertyValues="Mk9"/>

</evaluate></evaluate></evaluate></applic></referencedApplicGroup>

S1000D Applicability within DMs

To reference the applicability id in the

content section of the DM......use the applicRefId

attribute—for example, applicRefId=“appl-001”

(refer to the example in your notes)

Page 93: SDL-S1000D Training

S1000D Applicability – Textual Assert

In addition to computable assert annotations as discussed, you can add textual assert annotations.

For instance, the assert annotation in the DM reads:

<assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Brook trekker"/>

Note that the textual assert annotation contains no computable components. Since it is not computable the result is a Boolean value of true.

Page 94: SDL-S1000D Training

S1000D Applicability – Textual Assert

In addition to computable assert annotations as discussed, you can add textual assert annotations.

For instance, the assert annotation in the DM reads:

<assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Brook trekker"/>

Note that the textual assert annotation contains no computable components. Since it is not computable the result is a Boolean value of true.

The Applicability Cross Reference Table (ACT) is referenced—if the product attribute declaration from ACT reads:

<productAttribute id="model" valuePattern="."><name>Model name</name><displayName>Model:</displayName><descr>Model of the bike</descr><enumeration applicPropertyValues="Brook trekker|Mountain storm"/></productAttribute>

Page 95: SDL-S1000D Training

S1000D Applicability – Textual Assert

In addition to computable assert annotations as discussed, you can add textual assert annotations.

For instance, the assert annotation in the DM reads:

<assert applicPropertyIdent="model"applicPropertyType="prodattr" applicPropertyValues="Brook trekker"/>

The human readable format is:

"Model: Brook trekker”

The Applicability Cross Reference Table (ACT) is referenced—if the product attribute declaration from ACT reads:

<productAttribute id="model" valuePattern="."><name>Model name</name><displayName>Model:</displayName><descr>Model of the bike</descr><enumeration applicPropertyValues="Brook trekker|Mountain storm"/></productAttribute>

The Applicability Cross Reference Table (ACT) is referenced—if the product attribute declaration from ACT reads:

<productAttribute id="model" valuePattern="."><name>Model name</name><displayName>Model:</displayName><descr>Model of the bike</descr><enumeration applicPropertyValues="Brook trekker|Mountain storm"/></productAttribute>

Page 96: SDL-S1000D Training

Workshop Exercise

Applicability

Page 97: SDL-S1000D Training

Applicability Exercise

Consider the following and indicate the appropriate boolean value result.

<assert> annotation in the data module:

<assert applicPropertyIdent="serialno"applicPropertyType="prodattr"applicPropertyValues="1B070643~1B070799"/>

<assign> annotation from PCT:

<assign applicPropertyIdent="serialno"applicPropertyType="prodattr" applicPropertyValue="1B070642"/>

Boolean value result: true false

Page 98: SDL-S1000D Training

Applicability Exercise

Consider the following and indicate the appropriate boolean value result.

<assert> annotation in the data module:

<assert applicPropertyIdent="serialno"applicPropertyType="prodattr"applicPropertyValues="1B070640|1B070642~1B070720|1B070722|1B070730~1B070799"/>

<assign> annotation from PCT:

<assign applicPropertyIdent="serialno"applicPropertyType="prodattr" applicPropertyValue="1B070642"/>

Boolean value result: true false

Page 99: SDL-S1000D Training

Textual assert annotation

Indicate the values in the data module for a result of readable text: Road Conditions: Icy

<assert> annotation in the data module:

<assert applicPropertyIdent=“_____________"applicPropertyType="prodattr" applicPropertyValues=“_______________"/>

product attribute declaration from ACT:

<productAttribute id=“conditions" valuePattern="."><name>Road Conditions</name><descr>Weather/road Conditions</descr><enumeration applicPropertyValues=“icy|dry"/></productAttribute>

Page 100: SDL-S1000D Training

The Publication Module

S1000D Training Workshop

Page 101: SDL-S1000D Training

Publication Module (PM)

The publication module (PM) defines the content and the structure of a publication.

It contains one or more references to:

• the data modules• the illustration data modules• other publication modules• legacy technical publications

Page 102: SDL-S1000D Training

Publication Modules

Publication Model Concept

Final DeliverablePublication Module

<pmRef> - reference to a Publication Module, Pub A

<pmRef> - reference to a Publication Module, Pub B

<dmRef> - reference to a Data Module

<dmRef> - reference to a Data Module

<dmRef> - reference to a Data Module

<dmRef> - reference to a Data Module

<pmRef>

<dmRef> <dmRef> <dmRef> <dmRef> <dmRef> <dmRef>

<dmRef> <dmRef>

<dmRef>

<dmRef> <dmRef> <dmRef> <dmRef> <dmRef> <dmRef>

Pub A Pub B Pub C

Page 103: SDL-S1000D Training

Publication Model Concept

Publication Modules

Final DeliverablePublication Module

<pmRef> - reference to a Publication Module, Pub A<pmRef> - reference to a Publication Module, Pub B

<dmRef> - reference to a Data Module<dmRef> - reference to a Data Module<dmRef> - reference to a Data Module<dmRef> - reference to a Data Module

<pmRef>

<dmRef> <dmRef> <dmRef> <dmRef> <dmRef> <dmRef>

<dmRef>

<dmRef> <dmRef>

<dmRef> <dmRef> <dmRef> <dmRef> <dmRef> <dmRef>

Pub A Pub B Pub C

Final DeliverablePublication Module

Legacy Data <externalPubRef>– legacy

data

In addition to the first publication deliverable, suppose a second that shares some of the data:

Page 104: SDL-S1000D Training

Publication Module Code

The Publication Module Code (PMC) is a standardized and structured identifier of a publication module or a final delivered publication. The PMC is part of the unique identifier of the publication module.

Page 105: SDL-S1000D Training

Publication Module Code

Use <pmref> to reference the PM.

The element <pmRef> contains details of the destination publication module that is referred from some other S1000D context, such as a data module, another publicationmodule etc. (refer to the example in your notes)

Page 106: SDL-S1000D Training

Publication Module (PM)

The Publication Module (PM) is similar to a Data Module in that it has:

• an identifier and status section <identAndStatusSection>• a content section <content>

The content section contains the references to data modules, legacy technical publications or other publication modules in the order and the structure the publication is to be delivered.

Page 107: SDL-S1000D Training

The element <pm> contains a definition of the content and structure of a publication.

Example:

<pm><identAndStatusSection><pmAddress>... </pmAddress><pmStatus>...</pmStatus></identAndStatusSection><content>...</content></pm>

Publication Module (PM)

Page 108: SDL-S1000D Training

There is an identAndStatusSection

Publication Module (PM)

Example:

<pm><identAndStatusSection><pmAddress>... </pmAddress><pmStatus>...</pmStatus></identAndStatusSection><content>...</content></pm>

Example:

<pm><identAndStatusSection><pmAddress>... </pmAddress><pmStatus>...</pmStatus></identAndStatusSection><content>...</content></pm>

<pmAddress> <pmIdent>

<identExtension> <pmCode> <language> <issueInfo>

</pmIdent><pmAddressItems>

<issueDate><pmTitle>

</pmAddressItems></pmAddress>

With a <pmAddress>

Page 109: SDL-S1000D Training

Example:

<pm><identAndStatusSection><pmAddress>... </pmAddress><pmStatus>...</pmStatus></identAndStatusSection><content>...</content></pm>

Example:

<pm><identAndStatusSection><pmAddress>... </pmAddress><pmStatus>...</pmStatus></identAndStatusSection><content>...</content></pm>

Publication Module (PM)

<pmStatus><security securityClassification= ... /><responsiblePartnerCompany><enterpriseName>...</enterpriseName></responsiblePartnerCompany><applic><displayText><simplePara>...</simplePara></displayText></applic><qualityAssurance><unverified/></qualityAssurance></pmStatus>

and a <pmStatus>

Page 110: SDL-S1000D Training

Example:

<pm><identAndStatusSection><pmAddress>... </pmAddress><pmStatus>...</pmStatus></identAndStatusSection><content>...</content></pm>

Example:

<pm><identAndStatusSection><pmAddress>... </pmAddress><pmStatus>...</pmStatus></identAndStatusSection><content>...</content></pm>

There is the <content> which contains reference(s) to the contents of the publication.

Publication Module (PM)

<content><pmEntry><dmRef>...</dmRef></pmEntry></content>

The references are to data modules, other publication modules, and/or external publications.

Page 111: SDL-S1000D Training

Example:

<pm><identAndStatusSection><pmAddress>... </pmAddress><pmStatus>...</pmStatus></identAndStatusSection><content>...</content></pm>

Publication Module (PM)

There is the <content> which contains reference(s) to the contents of the publication.

The references are to data modules, other publication modules, and/or external publications.

The dmRef contains the details of the data module

<content><pmEntry><dmRef>...</dmRef></pmEntry></content>

Page 112: SDL-S1000D Training

<content><pmEntry> <dmRef> <dmRefIdent>

<dmCode modelIdentCode="S1000DBIKE" systemDiffCode="AAA"systemCode="D00" subSystemCode=“0" subSubSystemCode="0"assyCode="00" disassyCode="00" disassyCodeVariant="AA"infoCode=“00P" infoCodeVariant="A" itemLocationCode="D" /><issueInfo issueNumber="004" inWork="00"/>

</dmRefIdent>...

<content><pmEntry> <dmRef> <dmRefIdent>

<dmCode modelIdentCode="S1000DBIKE" systemDiffCode="AAA"systemCode="D00" subSystemCode=“0" subSubSystemCode="0"assyCode="00" disassyCode="00" disassyCodeVariant="AA"infoCode=“00P" infoCodeVariant="A" itemLocationCode="D" /><issueInfo issueNumber="004" inWork="00"/>

</dmRefIdent>...

DMC-S1000DBIKE-AAA-D00-00-00-00AA-00PA-D_004-00_EN-US.xml

The <dmRef> below is a reference to:

Publication Module (PM)

Page 113: SDL-S1000D Training

<content><pmEntry><pmRef>...</pmRef></pmEntry></content>

In addition to the <dmRef>, the <content> may include a <pmRef> — for example:

contains details of the publication module

Publication Module (PM)

Page 114: SDL-S1000D Training

<content><pmEntry> <pmRef> <pmRefIdent> <pmCode modelIdentCode=“BICYCLEXXXAAA“ pmIssuer=“XYENT" pmNumber="00001" pmVolume="02"/> </pmRefIdent>...

<content><pmEntry> <pmRef> <pmRefIdent> <pmCode modelIdentCode=“BICYCLEXXXAAA“ pmIssuer=“XYENT" pmNumber="00001" pmVolume="02"/> </pmRefIdent>...

The <pmRef> below is a reference to:

PMC-BICYCLEXXXAAA-XYENT-00001-02

Publication Module (PM)

Page 115: SDL-S1000D Training

<content><pmEntry>

<externalPubRef><externalPubRefIdent><externalPubCode pubCodingScheme ... </externalPubCode><externalPubTitle>...</externalPubTitle></externalPubRefIdent>

</externalPubRef>...

In addition to referencing a data module, <dmRef> and/or another publication module, <pmRef>, the <content> may also include a reference a non-S10000D publication or document, <externalPubRef>.

Publication Module (PM)

Page 116: SDL-S1000D Training

Pub Updates and Version Control

• Updates of publications are due to updates in the data modules that the publication module(PM) references, or to the PM itself.

• The S1000D specification requires that the publication module be reissued if there are any updates to the publication.

• Updates can be either in the form of a change or a new issue.

Page 117: SDL-S1000D Training

Pub Updates and Version Control

• A consecutive three digit number is issued to indicate every issue of a PM. The initial issue of a publication must be numbered 001.

• An optional attribute can be used to number the drafts/revisions or changes to the PM issue or a DM that is referenced in the PM. The attribute is a two digit sequential number.

• A value of attribute type of the issueInfo, it describes the type of update for a new issue of the publication module. It is related only to the issue number.

Page 118: SDL-S1000D Training

Workshop Exercise

Publication Module

Page 119: SDL-S1000D Training

Defining the Publication Module Code

Create a PMC that meets the following requirements:

This is publication number 16, the second volume of a three volume documentation set for the Jeep Cherokee. The

issuing authority is Chrysler.

Page 120: SDL-S1000D Training

Publication Module (PM) <dmRef>

Complete the following XML to reference the data module:

DMC-S1000DLIGHTING-AAA-D00-00-00-00AA-056A-A_007-00_EN-US.xml<dmRef><dmRefIdent>

<dmCode modelIdentCode="________" systemDiffCode="_____" systemCode="____" subSystemCode="__" subSubSystemCode="__" assyCode=" ____"  disassyCode=" ____"  disassyCodeVariant=" ____"  infoCode="______" infoCodeVariant="__" itemLocationCode="__" /> <issueInfo issueNumber="______" inWork="____"/>

</dmRefIdent>

<dmRefAddressItems>

<dmTitle><techName>____________</techName><infoName>________________________</infoName></dmTitle>

</dmRefAddressItems></dmRef>

Page 121: SDL-S1000D Training

The Data Dispatch Note

S1000D Training Workshop

Page 122: SDL-S1000D Training

Data Interchange

S1000D provides standard ways to transfer data modules using an S1000D CSDB interchange (transfer) package.

The transfer package consists of one Data Dispatch Note (DDN), and at least one of the following data categories:

• one or more data modules, associated illustrations, multimedia and other data• one or more CSDB Status List (CSL)• one or more Data Module Requirement List (DMRL)• one or more COMment forms (COM) and associated attachments• one or more Publication Modules (PM)

Page 123: SDL-S1000D Training

S1000D provides standard ways to transfer data modules using an S1000D CSDB interchange (transfer) package.

The transfer package consists of one Data Dispatch Note (DDN), and at least one of the following data categories:

• one or more data modules, associated illustrations, multimedia and other data• one or more CSDB Status List (CSL)• one or more Data Module Requirement List (DMRL)• one or more COMment forms (COM) and associated attachments• one or more Publication Modules (PM)

Data Interchange

This is the actual data you want to send—the DM(s), ICN(s) and/or

other data

Page 124: SDL-S1000D Training

S1000D provides standard ways to transfer data modules using an S1000D CSDB interchange (transfer) package.

The transfer package consists of one Data Dispatch Note (DDN), and at least one of the following data categories:

• one or more data modules, associated illustrations, multimedia and other data• one or more CSDB Status List (CSL)• one or more Data Module Requirement List (DMRL)• one or more COMment forms (COM) and associated attachments• one or more Publication Modules (PM)

To ensure that all CSDB are built up without divergence, it

is recommended that each agency/company produces and exchanges a periodic reference listing of all data modules that it has issued for interchange.

Data Interchange

Page 125: SDL-S1000D Training

S1000D provides standard ways to transfer data modules using an S1000D CSDB interchange (transfer) package.

The transfer package consists of one Data Dispatch Note (DDN), and at least one of the following data categories:

• one or more data modules, associated illustrations, multimedia and other data• one or more CSDB Status List (CSL)• one or more Data Module Requirement List (DMRL)• one or more COMment forms (COM) and associated attachments• one or more Publication Modules (PM)

Data Interchange

The DMRL is used to identify the required data

modules for a project.

Page 126: SDL-S1000D Training

Data Interchange

S1000D provides standard ways to transfer data modules using an S1000D CSDB interchange (transfer) package.

The transfer package consists of one Data Dispatch Note (DDN), and at least one of the following data categories:

• one or more data modules, associated illustrations, multimedia and other data• one or more CSDB Status List (CSL)• one or more Data Module Requirement List (DMRL)• one or more COMment forms (COM) and associated attachments• one or more Publication Modules (PM)

Contains comments and reports on issues raised on data modules or publication modules during the

verification process and the in-service phase of the Product

Page 127: SDL-S1000D Training

S1000D provides standard ways to transfer data modules using an S1000D CSDB interchange (transfer) package.

The transfer package consists of one Data Dispatch Note (DDN), and at least one of the following data categories:

• one or more data modules, associated illustrations, multimedia and other data• one or more CSDB Status List (CSL)• one or more Data Module Requirement List (DMRL)• one or more COMment forms (COM) and associated attachments• one or more Publication Modules (PM)

Data Interchange

(I hope this one is obvious)

Page 128: SDL-S1000D Training

Data Dispatch Note

The DDN defines the sender, receiver and content of the dispatch.

A data delivery list (DDL) is optionally included in the DDN. This lists all file names of the dispatched data together with their control numbers and issue numbers as additional options.

Page 129: SDL-S1000D Training

Data Dispatch Note

MI-SSSSS-RRRRR-YYYY-NNNNN

Model Identifier

Sender NCAGE

Receiver NCAGE

Year

Sequential numberper year

The DDN defines the sender, receiver and content of the dispatch. The DDN is identified by a CONTROLNUMBER in the format:

Page 130: SDL-S1000D Training

Data Dispatch Note

For example:

MI-SSSSS-RRRRR-YYYY-NNNNN

Model Identifier

Sender NCAGE

Receiver NCAGE

Year

DDN-S1000DBIKE-U8025-I9005-2003-00002.XML

seqNumber Contains a sequence number of the comment, related to senderIdent and yearOfDateIssue

modelIdentCode Identifies the Product to which the data applies

senderIdent Contains the CAGE code of the sender of the comment

receiverIdent Contains the CAGE code of the receiver of the comment

yearOfDateIssue Contains the year (YYYY) when the issue was made public

Sequential numberper year

Page 131: SDL-S1000D Training

Workshop Exercise

Data Dispatch Note

Page 132: SDL-S1000D Training

Data Dispatch Note

<ddnCode senderIdent="______________" yearOfDataIssue="_____________"modelIdentCode="___________"receiverIdent="___________" seqNumber="_____________" />

DDN-S1000DBIKE-U8025-I9005-2003-00002.XML

Use the sample DDN for this exercise and fill in the blanks below.

Page 133: SDL-S1000D Training

Business Rules

S1000D Training Workshop

Page 134: SDL-S1000D Training

Business Rules

The S1000D spec outlines requirements for business rules as a foundation for each project to maintain consistency across the departments and individuals who are part of the project.

Business rules are decisions that are made by a project or an organization on how to implement S1000D. Business rules cover all aspects of S1000D and are not limited to authoring or illustrating.

They can also address issues that are not defined in S1000D such as rules related to how S1000D interfaces with other standards, specifications and business processes that are related to its implementation.

Refer to Chap 2.5 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Page 135: SDL-S1000D Training

Business Rules

Throughout the specification, in particular the authoring chapters, business rule decision points have, wherever possible, been identified.

However, in many cases, they have been marked as "None identified".

Projects and organizations must still decide for themselves whether certain business rules decisions must be made in these cases.

Refer to Chap 2.5 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Page 136: SDL-S1000D Training

Ten different business rule categories have been identified.

These categories are defined to ensure that business rules developers consider all major business rules decisions within S1000D.

Business Rules

Refer to Chap 2.5, page 3 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Page 137: SDL-S1000D Training

Business Rules

Refer to Chap 2.5, page 3 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Ten different business rule categories have been identified.

Page 138: SDL-S1000D Training

Business Rules

Refer to Chap 2.5, page 3 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Business rule category 1: General serve as overall decisions (business rules) for the implementation of

S1000D

Ten different business rule categories have been identified.

Page 139: SDL-S1000D Training

Business Rules

Refer to Chap 2.5, page 4 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Business rule category 2: Product definition covers the data module coding strategy related to how the Product is broken down (eg physical or functional).

Ten different business rule categories have been identified.

Page 140: SDL-S1000D Training

Business Rules

Refer to Chap 2.5, page 4 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Business rule category 3: Maintenance philosophy and concepts of operation

cover the types of information that a project or an organization requires.

Ten different business rule categories have been identified.

Page 141: SDL-S1000D Training

Business Rules

Refer to Chap 2.5, page 5 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Business rule category 4: Securitycovers all security issues. They include

security classifications, copyrightmarkings, use or disclosure restrictions, destruction instructions and any other

data restrictions.

Ten different business rule categories have been identified.

Page 142: SDL-S1000D Training

Business Rules

Refer to Chap 2.5, page 6 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Business rule category 5: Business processcover how technical publications development is

coordinated with other disciplines within an organization or within the project level at that organization or the

project as a whole.

Ten different business rule categories have been identified.

Page 143: SDL-S1000D Training

Business Rules

Refer to Chap 2.5, page 7 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Business rule category 6: Data creationgives information about the creation of text, illustrations and multimedia objects. The data creation business rules

include rules for creating textual data and rules for creating graphics, 3D content and multimedia objects

Ten different business rule categories have been identified.

Page 144: SDL-S1000D Training

Business Rules

Refer to Chap 2.5, page 8 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Business rule category 7: Data exchangeCovers the rules for how data must be exchanged between partners and customers. This includes for

example the use of data dispatch notes and howdata module requirement lists as well as CSDB status

lists are used.

Ten different business rule categories have been identified.

Page 145: SDL-S1000D Training

Business Rules

Refer to Chap 2.5, page 9 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Ten different business rule categories have been identified. Business rule category 8: Data integrity and management

enforce the referential integrity within the CSDB.Closely coupled with the data exchange business rules, they

cover how data is managed by both the creator and the customer

Page 146: SDL-S1000D Training

Business Rules

Refer to Chap 2.5, page 9 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Ten different business rule categories have been identified. Business rule category 9: Legacy data conversion, management and handling

include but are not limited to: − conversion rules (including mapping

between elements and attributes of source and target specifications)

− rules for inclusion of legacy information in a technical publication

Page 147: SDL-S1000D Training

Business Rules

Refer to Chap 2.5, page 10 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Ten different business rule categories have been identified.

Business rule category 10: Data outputspecify the output formats for S1000D data. These formats can include page-oriented (eg paper) formats, IETP formats, multimedia

formats and SCORM Formats.

Page 148: SDL-S1000D Training

Business Rules

The top level of the business rules (S1000D BR) are those developed and defined in the

S1000D spec.

The layers under, are in a hierarchy whereby “the

business rules in the lower ("children") layers must adopt or must be conformant to the business rules of the higher

(their "parent") layer.”

Refer to Chap 2.5.1 pgs 13 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Page 149: SDL-S1000D Training

Business Rules

As a minimum requirement, the higher layers are

responsible for informing the lower layers on their business

rules.

For example, organizations must provide information to

projects, which organizational business rules must be

followed and which decision points are up to the projects.

Refer to Chap 2.5.1 pgs 12-14 in S1000D International specification for technical publications, Issue 4.0, 2008-08-01

Page 150: SDL-S1000D Training

Example Business Rules Conflicts

“Problems can occur in the project layers when the same Product is

used in different projects.

Consider an engine that is used in different airframes where one

airframe manufacturer imposes different rules than another.

Another example is when a given Product is used for both civil and military use, which can mean data

rewrites.”

Engine A

Airframe A

Airframe B

Airframe C

Page 151: SDL-S1000D Training

Example Business Rules Conflicts

Business Rules AFM CUse 2.3 DTDDo not use <techstd>Titles in uppercase ...

Business Rules AFM BUse 1.9 DTD<techstd> is to contain.....Illustrate as CG4Use OxfordEnglish

Business Rules AFM AUse 1.8 DTDDo not use <techstd>Do not use step leve 4-5Illustrate as CGMUse Webster’s English

Engine A

Airframe AAirframe BAirframe C

Page 152: SDL-S1000D Training

“Before any authoring or implementation of S1000D begins on a project, all

stakeholders who have their own business rules must reach consensus on the

business rules to be deployed for that project.”

Example Business Rules Conflicts

Business Rules AFM CUse 2.3 DTDDo not use <techstd>Titles in uppercase ...

Business Rules AFM BUse 1.9 DTD<techstd> is to contain.....Illustrate as CG4Use OxfordEnglish

Business Rules AFM AUse 1.8 DTDDo not use <techstd>Do not use step leve 4-5Illustrate as CGMUse Webster’s English

Page 153: SDL-S1000D Training

“When projects are presented with conflicting business rules from multiple customers or parent organizations, projects must resolve these conflicts. These conflicts must be resolved by:

• coordinating a change or waiver to the conflicting rules with one or more of the customers or parent organizations

• producing data modules to comply with each set of rules.”

Example Business Rules Conflicts

Business Rules AFM CUse 2.3 DTDDo not use <techstd>Titles in uppercase ...

Business Rules AFM BUse 1.9 DTD<techstd> is to contain.....Illustrate as CG4Use OxfordEnglish

Business Rules AFM AUse 1.8 DTDDo not use <techstd>Do not use step leve 4-5Illustrate as CGMUse Webster’s English

Page 154: SDL-S1000D Training

Business Rules (BREX)

Business Rules EXchange mechanism (BREX) is a means to communicate the business rules that have been developed and agreed upon within a project.

To facilitate unambiguous description of the business rules, a BREX data module can be used and is stored in the CSDB.

Page 155: SDL-S1000D Training

Business Rules (BREX)

A sample BREX from the USAF

Page 156: SDL-S1000D Training

Business Rules (BREX)

snsCode for system is 05

Subsystem for:

general aircraft is 0standard practices, airframe is 1ground handling is 2safety and protectice devices is 3

Page 157: SDL-S1000D Training

References

Page 158: SDL-S1000D Training

Thank you!

S1000D Training Workshop

Page 159: SDL-S1000D Training