38
S1000D User Forum 2012 June 18-21, 2012 S1000D Applicability Introduction Glenn Handrahan, IDSI June 18, 2012

S1000D Applicability Introductions1000d.org/Downloads/Documents/2012_UF/S1000D...thinks you’re an idiot. When you try to apply applicability to your marriage, as a husband you mentally

Embed Size (px)

Citation preview

S1000D User Forum 2012 June 18-21, 2012

S1000D Applicability Introduction

Glenn Handrahan, IDSI June 18, 2012

Applicability – What is it? • allows the technical author to specify which data is

appropriate in what situations • provides the mechanism to identify the context for which

a data module or parts of a data module are valid • Implemented at:

– Publish Time – Display Time

• Effectivity

Applicability Alternative • Complete the development of PMs/DMs/ICNs

for a specific configuration • Make copy of CSDB • Create a new CSDB • Change DMCs to reflect new configuration

– Duplication; increases DMs to manage – Destroys life cycle management chain – Nightmare

S1000D Applicability Chapters • Chapter 3.9.5.3 Data Modules

– Covers applic concept, the model, etc. – Subchapters address specifics of ACT/PCT/CCT

• Chapter 4.14 Information management – Static vs. filtered view – Structure – Referencing

• Chapter 7.8 Information processing – How S1000D Publishing systems and/or Viewers must

process applicability statements – Evaluation rules

Why Applicability? • Data Overload for End User

– Multiple Configuration Levels – Different Change Types – Operational conditions

• Which procedure or part of the procedure do I follow? {I’m so confused!}

• The right configuration for each given condition must be clearly conveyed to the end user.

Applicability – End User

• allows an end user to select a configuration for a situation

• provides the end user with just the content needed to perform a task

• Provided as: – Individual configuration specific manuals – Selectable IETMs

Applicability Life Cycle • Planning – inputs from all data

sources to identify attributes about the Product and an initial set of conditions (BRs)

• Authoring – whole DM vs. inline. Build evaluate/assert statements using Product attributes from ACT and conditions from CCT.

• Product evolution – new attributes / conditions warrant CM of ACT and CCT. Existing applic statements may need to be updated.

• In service life – Maintain PCT as the Product configuration changes

• Filtering – at publish time? At display time?

• Question – How to QA?

Applicability Objective

• Permit automatic processing of the content by the publishing system based on applicability statements coded into data modules – Applicability Cross-reference Table (ACT – 00WA) – Conditions Cross-reference Table (CCT- 00QA) – Products Cross-reference Table (PCT – 00PA)

ACT, CCT, PCT • Applicability Cross-reference Table (ACT)

– used to declare attributes about your Product such as model, series, and serial number – serves as the central point of reference for applicability declarations including CCT and PCT

• Conditions Cross-reference Table (CCT) – used to declare any condition that can affect applicability of data such as temperature, wind speed

and sandy conditions – can be technical, operational, environmental, or any type that can affect technical data.

• Products Cross-reference Table (PCT) – a data module defining Product instances and associating values to product attributes and conditions

for each product instance – a product instance is an actual physical product, such as a Brook trekker Mk9 bicycle with serial

number 1B070643

ACT, CCT, PCT

ACT Example

CCT Example

PCT Example

ACT, CCT, PCT Referencing Scheme

Referencing Examples • PMs and DMs (<identAndStatusSection>)

• ACT

Applicability Methods • Whole Data Module applicability • Content applicability

– Inline. More granular, accomplished via referencing • Applicability Branches

– Human readable • <displayText>

– Computable applicability annotation • <assert> • <evaluate> • <expression> {process data module only}

WHOLE DM APPLICABILITY

Handyman Bike Shop

Publish Bike Technical Manual

BIKE DMs

Publish Time!

PM

IETP PM

Handyman Bike Shop

Mountain bicycle Road bicycle

Simple Whole DM Applicability <productAttribute id="type"> <name>Type</name> <displayName>Bike type: Mountain or Road</displayName> <descr>Type of bike</descr> <enumeration applicPropertyValues="Mountain bicycle|Road bicycle"></enumeration> </productAttribute>

ACT

<product id="BIKE1"> <assign applicPropertyIdent="type" applicPropertyType="prodattr" applicPropertyValue="Mountain bicycle"/> </product> <product id="BIKE2"> <assign applicPropertyIdent="type" applicPropertyType="prodattr" applicPropertyValue="Road bicycle"/> </product>

PCT

<applic> <displayText> <simplePara>All Bikes</simplePara> </displayText> </applic>

Common DMs human readable <applic>

<displayText> <simplePara>Mountain bicycle</simplePara> </displayText> <assert applicPropertyIdent=“type" applicPropertyType=“productattr” applicPropertyValues="Mountain bicycle "/> </applic>

defines each product attribute or condition values that apply to the DM

Mountain bicycle specific DMs

Whole DM

Applies to both Bikes

Applies to BIKE1

Applies to BIKE2

Publish Time!

PM

ACT

CCT

PCT

IETP PM

Handyman Bike Shop Mountain bicycle

Division

Mk1 Mk9 Mk1 Mk9

Brook trekker Mountain storm

model

version

ACT <productAttributeList> <productAttribute id="type"> <name>Type</name> <displayName/> <descr>Type of bike</descr> <enumeration applicPropertyValues="Mountain bicycle|Road bicycle"></enumeration> </productAttribute> <productAttribute id="model" valuePattern=".*"> <name>Model</name> <displayName/> <descr>Model of the bike</descr> <enumeration applicPropertyValues="Brook trekker|Mountain storm"/> </productAttribute> <productAttribute id="version" valuePattern="Mk(1|9)"> <name>Version</name> <displayName/> <descr>Version of the bike</descr> <enumeration applicPropertyValues="Mk1|Mk9"/> </productAttribute> </productAttributeList>

PCT <product id="MBBT1"> <assign applicPropertyIdent="type" applicPropertyType="prodattr" applicPropertyValue="Mountain bicycle"/> <assign applicPropertyIdent="model" applicPropertyType="prodattr" applicPropertyValue="Brook trekker"/> <assign applicPropertyIdent="version" applicPropertyType="prodattr" applicPropertyValue="Mk1"/> </product> <product id="MBBT9"> <assign applicPropertyIdent="type" applicPropertyType="prodattr" applicPropertyValue="Mountain bicycle"/> <assign applicPropertyIdent="model" applicPropertyType="prodattr" applicPropertyValue="Brook trekker"/> <assign applicPropertyIdent="version" applicPropertyType="prodattr" applicPropertyValue="Mk9"/> </product> <product id="MBMS1"> <assign applicPropertyIdent="type" applicPropertyType="prodattr" applicPropertyValue="Mountain bicycle"/> <assign applicPropertyIdent="model" applicPropertyType="prodattr" applicPropertyValue="Mountain storm"/> <assign applicPropertyIdent="version" applicPropertyType="prodattr" applicPropertyValue="Mk1"/> </product> <product id="MBMS9"> <assign applicPropertyIdent="type" applicPropertyType="prodattr" applicPropertyValue="Mountain bicycle"/> <assign applicPropertyIdent="model" applicPropertyType="prodattr" applicPropertyValue="Mountain storm"/> <assign applicPropertyIdent="version" applicPropertyType="prodattr" applicPropertyValue="Mk9"/> </product>

Constructing Applicability Statements

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

<applic> <displayText> <simplePara>All Bikes</simplePara> </displayText> </applic>

Common DMs

contains computable statement

For the DM to be applicable, the result of the <evaluate> statement must be Boolean “true”

Model and version specific DMs

Complex Whole DM Examples

Evaluate “How to”

Mountain storm model AND

Mk1 version

Brook trekker model AND

Mk9 version

OR

Mountain bicycle AND

Applies to both Models

Applies to Brook trekker

Applies to Mtn. storm

Publish Time!

PM

ACT

CCT

PCT

IETP PM

Mk1

Mk9

Mk1

Mk9

When you’ve been married for twenty five years and are an S1000D developer, you try to apply S1000D to everyday life.

Don’t be an idiot and apply S1000D applicability to your marriage. Only use applicability in S1000D technical publications.

When you try out the assert / evaluate statements on your wife, she thinks you’re an idiot.

When you try to apply applicability to your marriage, as a husband you mentally develop assert / evaluate statements and logically solve them.

When you try to apply S1000D to everyday life, you think it’s a good idea to apply applicability to your marriage.

CONTENT/REFERENCED/INLINE APPLICABILITY

Inline Applic

identAndStatusSection Applies to Brook trekker

Mk1

Mk9

content

Still need this….

Inline Examples

Publish Time Applicability

Display Time Applicability

Applicability BRs

• 30 – 40 Applicability BRs • The project or the organization using the

human readable branch of applicability must decide whether the element <displayText> is populated by the technical author or generated from the computable branch or some other source.

Easy Questions?????