IETM CONVERSION SERVICE
CONCEPT OF OPERATION
DEMONSTRATION REPORT
for the
DOD CALS IDE PROJECT
An MVP Joint Venture
May 1996
Submitted by
ManTech Advanced Technology Systems
West Virginia Technology Applications Operations Center
1000 Technology Drive, Suite 3310
Fairmont, West Virginia 26554
In support of
Contract DAAB10-94-D-0503-0048
and in compliance with
CDRL Sequence Number A026

|
______________________ |
______________________ |
|
Robert S. Kidwell |
Jack G. Richman |
|
Technical Director |
Project Manager |
|
DoD CALS IDE Project |
DoD CALS IDE Project |


1.0 DEMONSTRATION INTRODUCTION
2.0 CONVERSION DEMONSTRATION SETUP
3.0 CONCEPT OF OPERATION DEMONSTRATION
3.1 Determine Functional Requirements
3.3 Preliminary Document Analysis
3.4 Select Authoring/Viewing Software and DTD
3.5 Program Conformance Registration
3.6 Define Mapping Source to Target DTD
3.7 Layer 0 Conformance Validation
3.11 QA Content Reconciliation
3.12 Layer 1 Conformance Validation
3.14 Layer 2 Conformance Validation
3.16 Browser Testing and System QA
3.17 Layer 3 Conformance Validation
3.18 Layer 4 Conformance Validation
3.19 Layer 5 Conformance Validation
APPENDIX A: ETM/IETM CONVERSION PROJECT COSTING MATRIX
APPENDIX B: ETM/IETM CONVERSION PROJECT PROJECTED PRICING CHART
APPENDIX C: ETM/IETM CONVERSION PROJECT STEP SUMMARY TABLE
APPENDIX D: IETM CONFORMANCE ESCORT (ICE) DEMONSTRATION REPORT
APPENDIX E: MODIFIED MIL-D-87269 DTD
APPENDIX F: AUTOMATED TAGGING SCRIPTS


Figure 2.3-1 Configuration Management Baseline Control Directory Tree Structure
Figure 3.0-1 General Conversion Process


Table 3.2-1 Technical Manual Sampling


|
ASCII |
American Standard Code for Information Interchange |
|
CALS |
Continuous Acquisition and Life-cycle Support |
|
CDM |
Content Data Model |
|
CM |
Configuration Management |
|
CND |
Could Not Decide |
|
COTS |
Commercial-Off-The-Shelf |
|
CSL |
Computer System Laboratory |
|
DBMS |
Data Base Management System |
|
DNC |
Did Not Consider |
|
DoD |
Department of Defense |
|
DTD |
Document Type Definition |
|
EDD |
Electronic Display Device |
|
|
Electronic Mail |
|
ETM |
Electronic Technical Manuals |
|
FOSI |
Formatting Output Specification Instance |
|
GOTS |
Government-Off-The-Shelf |
|
GUI |
Graphical User Interface |
|
HCI |
Human Computer Interface |
|
HyTime |
Hypermedia/Time-Based Structuring Language |
|
IADS |
Interactive Authoring and Display System |
|
ICE |
IETM Conformance Escort |
|
IDE |
Integrated Data Environment |
|
IETM |
Integrated Electronic Technical Manuals |
|
LSAR |
Logistics Support Analysis Record |
|
MB |
Megabyte |
|
NSN |
National Stock Number |
|
OCR |
Optical Character Recognition |
|
PCX |
Picture Text |
|
PIC |
Picture Definition Files |
|
QA |
Quality Assurance |
|
SGML |
Standard Generalized Markup Language |
|
SOW |
Statement of Work |
|
TM |
Technical Manual |
|
TOC |
Table of Contents |
|
WWW |
World Wide Web |


The Resource critical information area of the Continuous Acquisition and Life-cycle Support (CALS) initiative provides technical information to weapons system operations and maintenance personnel. The relevant technologies deal with the authoring, migration, delivery, and maintenance of technical information for both new weapon systems and legacy weapon systems. A critical issue is how best to migrate the voluminous paper-form technical manuals on current weapon systems to interactive, electronic technical manuals that reduce the labor-intensity for the authoring, maintenance, and delivery of technical information.
It is well known that the volume of paper-based technical manuals, engineering drawings, and documentation associated with any complex amalgamation of weapon systems (i.e., a ship) can be measured by the tonnage. Converting these documents from paper to an electronic form has been shown to reduce (a) cost in producing the documents, (b) storage requirements, and (c) cost of maintaining and updating the electronic form once it has been converted.
ManTech has been contracted through the Integrated Data Environment (IDE) contract to design a standards-based approach for legacy data conversion to Electronic Technical Manuals (ETMs)/Integrated ETMs (IETMs) constructs. This type of approach would help avoid the proliferation of electronic formats and would facilitate data interchange among dissimilar automated systems. The result of this design has taken the shape of a Concept of Operation to be used by Conversion Services in the Department of Defense (DoD). This conversion service concept document has addressed the general conversion processes involved, techniques used, specifications and standards that may be required, possible risks involved, how to provide a projected cost for a conversion project, and other requirements associated with the conversion effort.
The goal was to define what general conversion processes and support activities would be required for a conversion service, and how they would function. The term process or processes was defined as a series of progressive and interdependent steps by which an end is attained. In this case, the end attained would be the completed ETM/IETM system.
The Concept of Operation report was written so that it can be adapted easily to any technical manual conversion project. The conversion processes were designed so that no matter what types of data the user starts with and what type of ETM/IETM desired, the general conversion process steps would be the same. The only differences between processes of the different class requirements would be how the process is accomplished, not what the process is.
The purpose of this report is to document in detail our proof of concept for the designed general conversion process and the overall conversion service organizational behavior.
The purpose of this demonstration is to use the class 2/3 constructs to demonstrate the defined concept of operation for ETM/IETM conversion. The demonstration focused on constructs that enable the user to browse through text and graphics using hypertext hotspots and to gain interactive presentation of maintenance information through the use of dialog-driven displays. This demonstration included estimated cost for conversion and the use of the general conversion process as defined in Section 3.0 of the IETM Conversion Service Concept of Operation developed for the DOD CALS IDE Project. This demonstration provides proof that the general conversion process as defined can work for all class conversion.
This report contains the steps our team performed during the conversion demonstration setup (Section 2.0) and the steps performed within each conversion process in order to demonstrate our concept design (Section 3.0). Section 3.0 includes a description of the process that was performed, steps that where taken, the man-hours used, suggested personnel for each process, issues that arose during the process, and the steps taken to resolve those issues. Section 4.0 contains our final conclusion to the demonstration itself, problems we encountered, how we resolved those problems, and suggestions to enhance the selected software and conversion concept design.


Prior to any conversion project, several managerial activities must take place. Quality Assurance (QA) and Configuration Management (CM) teams must be organized and procedures set in place to efficiently manage each individual conversion job. The project management must establish the conversion team and set up the accounting requirements to properly monitor the conversion budget.
In our demonstration, one additional activity took place prior to the start. As in all technical manual conversion projects, a technical manual is required. Our team developed a list of requirements that would demonstrate a wide variety of conversion efforts. We required our selected manual to have at a minimum text, tables, graphics, page combination (i.e., text/graphics, test/tables, all three), and a Table of Contents. This manual will also need to be limited in page count so that the entire manual could be converted in the given project time frame. Our team visited the West Virginia University Government Depository Library to locate such a manual.
A manual containing all of the above requirements was located and used for this demonstration. The manual chosen was the Technical Manual Organizational, Direct Support, and General Support Maintenance Manual including Repair Parts and Special Tools Lists (including Depot Maintenance Repair Parts and Special Tools) for the Night Vision Goggles AN/PVS-5 and AN/PVS-5A (NSN 5855-00-150-1820) TM 11-5855-238-24&P. This manual was chosen not only because it contained a wide multitude of graphics, tables, fonts, and text that could be considered possible problems when using automated conversion tools, but also becaused it exercised a number of possible conversion situations.
During the initial setup period, project management would begin filling out the costing matrix for the conversion project. It is important to establish and document as many requirements as possible prior to the start of an actual conversion project. The Statement of Work (SOW) should provide the functional requirements for the ETM/IETM and the contractual requirements that must be followed.
The costing matrix that would be completed is divided into three parts. Part one documents such areas as customer information, source media, and delivery media. Part two when completed will provide basic information about the conversion project itself. These two areas should be completed during the setup period. This information would aid in the development of the conversion team and establish requirements in the area of hardware and software that may need to be purchased.
Part three of the costing matrix may require further research in the areas of (a) the data within existing technical manual, (b) the functional requirements of the desired ETM/IETM, and (c) the complexity of the conversion effort. This along with the projected pricing chart may not be finished until after the first three conversion processes have been completed. If any software purchasing and/or DTD designing is required, the matrix and project cost documents would not be completed until after process four [Select Authoring/Viewing Software and DTD(s)/Schema(s)].
For our demonstration, part three of the costing matrix (Conversion Effort) and the projected pricing chart were not completed until after the ETM software and the automated conversion tools were selected. Paragraph 3.4 Select Software/DTD describes the selection of software and the reason for that selection. Appendix A contains the completed ETM/IETM Conversion Project Costing Matrix, and Appendix B contains the completed ETM/IETM Conversion Project Projected Pricing Chart. It is important to note that the price per unit and unit count are fictitious and can be changed using Microsoft Excel.
During the setup period, the Quality Assurance team would gather all standards and specifications required by the conversion project contract and Statement of Work. In addition to the required ETM/IETM documentation, the QA team would also prepare their Quality Assurance plan documenting the particular test requirements for the conversion project and the step-by-step procedures that will be followed during the life span of the contract. This may include special quality check matrices, project setups for the Conformance Validation procedures, and identifying all special materials required for the preparation and delivery of the final product.
The initial setup requirement for the Conformance Validation procedures would include the capability to access the World Wide Web (WWW). The validation procedures for levels 0 through 6 are maintained at location http://galaxy.mantech-wva.com/ice/qualify/int_page.html. When this location is entered into an Internet browser, the IETM Conformance Escort (ICE) Demonstration screen would be displayed. This IETM Conformance Demonstration will be used during the seven layers of conformance validation processes that occur throughout the conversion project. The steps taken during the validation processes are documented throughout Section 3.0, and the final report documenting the validation results is provided in Appendix D.
The ICE Demonstration provides information on a standard and modular methodology for (1) screening IETM programs, (2) interactive guidance for administering conformance testing of IETM deliverables, and (3) a method for measuring and reporting the degree of conformance within the architectural framework model.
During the setup period, the Configuration Management team would set up the directory structure to monitor and control the flow of work and baseline all data files and software generated during the conversion effort. The data and/or conversion code would pass through the QA department for the different stages of validation and verification prior to the baseline procedures by CM. Once QA is satisfied with the quality of information contained in the files, these files would be passed to CM to be placed in their appropriate baseline directory. The following figure is a sample DOS TREE structure for those baselines.

Figure 2.3-1 Configuration Management Baseline Control Directory Tree Structure
The Technical Manual Baseline (TMBL_ARM) main directory contains the electronic version of the technical manual. These data would either be the in-house converted files or the customer’s electronic files (Word, WordPerfect). The data would be placed in the respective sub-directory (text or graphic).
The Tag Data Baseline (TAG_DATA) was used as the working directory that contains the tagged text, graphic Bitmaps with their associated Picture Definition Files (PIC), and all style sheet files used for the developed ETM/IETM system. This working directory would also contain any automated tagging files such as the FastTag Louise and Inspect script files used for the automated tagging process and the C++ software developed to further enhance the automated process.
The Production Baseline (PRBL_ARM) main directory contained the actual ETM/IETM system (ARMY_ETM) and all conversion code (ARM_CODE) designed primarily for this conversion effort. The production baseline will not be occupied until the ETM/IETM system has passed all QA Validation and Verification check points.
The Customer Baseline (CUSBL_AR) main directory contained the delivered customer accepted ETM/IETM system (ARMY_DEL). Stored along with this delivery will be the developed conversion code (ARM_DLCD) used during the project. This code is being stored for future conversion efforts that may pertain to the specific TM.


When considering converting between Types or Classes of paper or electronic technical manuals, the conversion process is much more than simply a set of procedures for data translation. The conversion process must begin with an in-depth evaluation of the Type or Class of technical manual that is most suitable, both functionally and economically. The economical considerations are very important because, depending on the desired target data type, there can be significant differences in the level of expertise, the amount of time, and hence the cost required to carry out the conversion process. It is important to note that when converting to non-page-based electronic formats, even if the desired target data type consists of SGML files, the conversion service must consider how that data will be both authored and presented.
It is important to understand before any conversion process takes place that the philosophy of "one size fits all" does not apply in the ETM/IETM world. Every system has the possibilities of being different because of the functional requirements established by the customer, the data being converted, the environment the system will be used in, and the end-user's knowledge and capabilities using it.
The alternative to establishing precise conversion procedures for all different implementations is to define a general approach that deals with those aspects that does not depend on the format of the data or the electronic presentation system that is used. After detailed analysis, it has been determined that no matter what types of data the user starts with and what type of ETM/IETM system the user desires, the general conversion process steps are the same. The only differences between processes of the different class requirements are how the process is accomplished, not what the process is.
Using Figure 3.0-1 General Conversion Process as our guide to what processes and steps must take place in a conversion project, the following section documents how the processes and steps were performed. The following paragraphs will describe the steps our team had taken, any issues or problems that were encountered, and the solutions to those areas. Each conversion process also will contain a list of suggested personnel for that process and the length of time utilized by our team performing the actual work. Appendix C contains a summary table of the Steps, Suggested Personnel, Our Total Time, Problems encountered, and their solutions.

Figure 3.0-1 General Conversion Process
As stated above, every ETM or IETM system has the possibility of being different. The differences are due to the requirements established by the customer, the data being converted, the environment the system will be used in, and the end-user’s knowledge and capabilities using it. Defining the functional requirements and having all parties in full agreement on the design, conversion, and final implementation are the corner stone of any developmental project.
After establishing the management guidelines and the QA and CM team structures, our team began analyzing the SOW sub-task requirements for the type of system required. The SOW under Task 8, sub-task 4 requires that we must "demonstrate use of the ETM/IETM conversion service concept in conjunction with a selected defense program, and provide support for conversion of legacy data to class 2/class 3 constructs." However, because of the time constraints with this project, we performed the demonstration in-house by following the concept of operation design. In addition, it was documented in ManTech’s Management Plan that this sub-task would be using the ManTech defined ETM/IETM class definitions.
The following describes the functional requirements, as defined by our team, that were used in the design of our MB+/MC ETM system.
Recommended Personnel for this Process: Customer, Conversion Group
Our Time: 10 hours
The following describes the function requirements, as defined by our team, that were used in the design of our MB+/MC ETM system.
Design a hypermedia document that is frame-oriented where the text, tables, TOC, and graphics appear in separate windows. The data primitives will include text, tables, and graphics. The text will be SGML tagged with partial structure and content tagging. No HyTime will be included in this system. Redundant elements will be kept. The data will be stored in non-integrated files. The system will allow traversement through troubleshooting trees. No FOSI will be included. Hyperlinks will be limited to troubleshooting trees and stored within the SGML files. Links also will be used in the areas of tables, parts listings, and graphics.
In additional to the basic functional requirements for our ETM, we included several additional project requirements. These requirements are considered outside the boundaries for the basic MB+ ETM system:
Samples of the document, whether paper or electronic, are required at the onset of any conversion project to accurately gauge the quality and complexity of the product being converted. These samples were used in the preliminary document analysis process, DTD development/selection, and mapping process. The samples should include, at a minimum, examples of text, graphics, tables, and any other unique items contained within the document. Several pages from our selected government technical manual were gathered for our samples. The following table details the pages used and why they were selected:
Table 3.2-1 Technical Manual Sampling
|
Sample |
Reason |
|
Cover Page |
Large font, vertical and horizontal printing |
|
Table of Contents, pg. i |
Regular text mixed with table format on same page |
|
Chapter 1, pg. 1-1 |
Mixed fonts |
|
Chapter 2, pg. 2-2 |
Regular text mixed with table format on same page |
|
Chapter 3, pg. 3-2 |
Text and graphic on same page |
|
Chapter 4, pg. 4-3 |
Two columns of text |
|
Chapter 5, pg. 5-8 |
Two columns of text with graphic with in one column |
|
Appendix B, pg. B-3 |
Allocation Table |
|
Appendix C, pg. C-4 |
Graphic only |
|
Appendix C, pg. C-5 |
Graphic parts listing |
|
Appendix C, pg., C-28 |
NSN and Parts tables |
Recommended Personnel for this Process: Customer, Document Analyst
Our Time: 1 hour
The preliminary document analysis process is the activity that would identify, analyze, and address all issues involved with the document design. The process also provides the understanding of all uses of the information contained in the technical manual and identifies all components of information needed to support an organization in order for it to complete its mission.
At the begin of this process, the samples gathered were individually scanned and OCRed. After reviewing the contents of the resulting ASCII files, it was determined that all tables would need to be entered manually because of the enormous number of errors during the character recognition, (e.g., 5 became S, I became 1, 8 became B, columns were lost). The tables would be typed in using a Text editor (NotePad).
The other pages containing text only, graphics only, and text with graphics previewed sufficiently to allow the scan/OCR process to continue in these cases.
During the preliminary document analysis process, the team broke down the contents within the technical manual. These contents were listed and further broken down into elements and sub-elements. Once this step was completed, decisions on how they related to each other and how the elements would be represented were made. This information was used to determine the appropriate DTD and authoring/viewing software for our ETM system and to define the mapping requirements of source to selected DTD.
Recommended Personnel for this Process:
(Preliminary Scan/OCR: Data Entry)
(Preliminary Document Analysis: Conversion Group)
Our Time:
(Preliminary Scan/OCR: 15 minutes)
(Preliminary Document Analysis: 8 hours)
At this point of the conversion process, several major decisions must be made. The selection of the DTD or Scheme used in the creation of the ETM/IETM in conjunction with the authoring and viewing software is dependent on the results from the defined functional requirements and the preliminary document analysis.
Because the technical manual belonged to the Army and because an ETM system (IADS)existed already, we started our software research with them. We began reviewing first the functional requirements defined in 3.1 above, then the list of elements that made up the technical manual defined in 3.3. We then reviewed the functional capabilities of the Army’s IADS system version 2.2 and accompanying DTD. It was determined that the software paired up with the functional requirements defined. The DTD supplied with IADS was in accordance with ISO 8879, not MIL-D-87269.
Our team decided to try using the MIL-D-87269 DTD with IADS to see if they were compatible. We made several changes to the 269 DTD in the areas of Frames, Files, and Warnings. We were able to use the DESCINFO, TASK, and TABLE tags provided. Implementing these changes to the DTD resulted in a partial 269 compliant DTD. The results of the Layer 0 Conformance Validation process for this modified DTD are documented in paragraph 3.7 below.
It should be noted here that the IADS system is freeware and all software and documentation for this system was obtained via the World Wide Web (WWW). Our team contacted the IADS development group to inform them of our project and our intentions with using a MIL-D-87269 DTD. They made themselves available for any questions we might have while working with their products.
Much time was spent working with the MIL-D-87269 DTD and IADS. Several hours were spent modifying the DTD to include the Frame, File, and Warning/Alert elements from the IADS 8879 DTD. Time also was spent on hotspot and external calls. It was determined that we must use the calls from IADS versus the linking elements in 87269.
In using the IADS system, our tagged textual data will be stored in ASCII text SGML tagged files. The graphics will be stored as BITMAPS with their associated Picture Definition Files (PIC), which stores the links for the graphic hotspots.
Recommended Personnel for this Process: Conversion Group
Our Time: 39 hours
Now that all functional and contract requirements have been defined and the system software and DTD have been selected, QA registered and completed the IETM Qualification Screening and Profile Questionnaires. Using a World Wide Web (WWW) browser, QA entered the location address for the ICE Demonstration. The conformance validation test sets for levels 0 through 6 are maintained at location http://galaxy.mantech-wva.com/ice/qualify/int_page.html. When this location was entered into the browser, the IETM Conformance Escort (ICE) Demonstration frame was displayed.
To begin the registration process, QA would select the Register button to establish a profile record for the conversion project. Once this button has been selected, the User Registration for ICE frame was provided. QA would fill in the registration information: Name, Company/Agency/Organization, Who will be represented (developer, user, or independent), Military Branch, End Item Defense Program, Phone number, E-Mail address, and Primary Authoring and Presentation Software being used (if available). QA is given the option to store this information for public viewing or place this information under built in security. When all information has been entered, QA selected the Register Me button.
Now that the conversion project has been registered, QA would be provided with the IETM Qualifications Screening and Selection screen. This screening process allows for streamlining the conformance testing while maintaining a modular testing approach. The hotspot to begin the Qualifications Screening Process would be selected.
This selection took QA to the Authoring Development Profile Questionnaire. The questions contained on this frame involve the authoring system, DBMS, and the requirements for final delivery. When these questions were answered, QA selected the Submit button.
The Authoring Development Test Set Questionnaire was presented next. This questionnaire concentrated on the DTD selected. The Submit button again was selected upon completion of the questions.
The next frame that was presented was the Presentation Operation Profile Questionnaire. Selected questions about the operation of the presentation system were asked. When completed, QA selected the Submit button to continue with the profile.
To further define the profile of the program, the Presentation Operation Test Set Questionnaire asked QA to select all of the non-text primitives that will be included. When the selections had been made, the Submit button was selected.
At this point, the program was registered and QA exited the ICE Demonstration program. QA will return to this program during each Conformance Layer Validation process. The below paragraphs will describe the steps taken during each layer validation process. Appendix D contains a copy of the final report produced through the ICE Demonstration program.
Recommended Personnel for this Process: QA
Our Time: 10 minutes
To successfully carry out a conversion project, the conversion team must determine an exact mapping for every unique item that will change when going from the source to the target. This mapping must be done at the very beginning. If the authoring and presentation systems were properly selected after carefully studying the results from the Preliminary Document Analysis (3.3) phase, then there should be no significant surprises during the mapping stage. Note that the mapping should not be confined to paper analysis. Every unique mapping instance should be identified and manually performed using the authoring system, and then its appearance should be verified using the presentation system. In any case, the mapping process must, at the very least, provide detailed guidelines on all the information constructs identified during the Preliminary Document Analysis process (3.3). This mapping process will reveal the ultimate complexity of the conversion project.
Once the MIL-D-87269 DTD was modified, parsed, and tested with the IADS authoring and viewing software, our team began the mapping process. Descinfo, Task/Steps, Warnings/Alerts, and Table elements were used from the modified 269 DTD to map the source document. The document was divided into chapters, then by either description information or troubleshooting/maintenance steps.
Once data was labeled to what type of information was contained within each chapter, paragraph, etc., the tag elements were hand written on a copy of the document. This information will be used when programming the auto tagging software (3.13.1).
Recommended Personnel for this Process: Conversion Group
Our Time: 15 hours
This first layer (Data Structure Design) involves validating the developed and/or selected content specific layer for the IETM. Layer 0 follows the Content Data Model (CDM) approach from MIL-D-87269, and focuses on defining and/or developing a Content Specific Layer for the IETM from the architectural forms provided in the Generic Layer.
QA, using the same procedures to gain access to the ICE Demonstration, selected the Open button to gain access to the previously generated conversion project profile. The Open Previously Saved Qualification Profile frame was displayed and allowed QA to enter the Program Name supported by the IETM. This frame also allows a user to view other programs registered by selecting from a directory listing.
The IETM Conformance Test Series frame was presented next. This test series presented to QA were designed by the use of the questionnaire previously completed in paragraph 3.1.3 above. This frame explains the possible answers that will be allowed during the layer validation processes. The five possible answers are Pass, Partial, Fail, Did Not Consider (DNC), and Could Not Decide (CND). For layer 0, QA selected the MIL-D-87269 Test Suite hotspot.
The IETM Authoring Development Test Set Matrix was provided with selection buttons for the different layers that apply to the individual program. These buttons were determined by the answers provided during the registration process. At this time, QA was ready to perform the Layer 0 Conformance Validation process. QA selected the CSL DTD - Layer 0 button.
The Layer 0: Content Specific Layer DTD Test Set was developed using the requirements from MIL-D-87269. When QA completed this series of questions, the Submit button was selected and QA was provided the Layer 0: Content Specific Layer Test Set results. The results contained the answers to the Layer 0 questions and the percentages on partial, complete, and non-conformancy for the program. Our results are provided in Appendix D.
Recommended Personnel for this Process: QA, Document Analyst
Our Time: 10 minutes
Legacy technical manual data can exist in two categories: the data that exist only on paper and the data that exist in some electronic form. To get data into an electronic format, the paper data will require two levels of processing: text data capture and graphical data capture. Decisions made during the preliminary analysis and mapping phases may significantly affect the initial data capture and/or conversion process. Even when mapping to an exceedingly simple DTD, difficulties may be encountered because it is likely that not all the information constructs will be identified in the preliminary analysis phase (3.3).
The direction in which to proceed is determined here. If the TM is presented to the conversion service in an electronic form then the scan/OCR process is bypassed and the conversion team would go directly to the Tag and Link processes. In our demonstration, the TM was in paper form causing our conversion team to perform the scan/OCR processes.
Recommended Personnel for this Process: None required.
Our Time: Zero
There are several options to get information that resides on paper into an electronic format, including using a large Conversion Service Bureau, Scan/Converting the TM data, or Manually Re-entering the TM data. Each of these options has its advantages and disadvantages. The decision on how to transfer the paper information into digital should be made during the Preliminary Document Analysis phase(3.3). The reasoning behind this decision will be based on such items as quality and quantity of the existing data, project budget and time, the availability of hardware/software and experienced personnel, and possible required formats needed for further processing.
Our decision to scan/convert and manually re-enter the technical manual data was based on the size of the document and the quality of the printed pages. At this point in the conversion process, our team began the job of scanning in the selected technical manual. It was decided that each page of the TM would be scanned in full and stored in its own file. Graphic cropping, and table break outs would be handed after the scanning process had been completed.
Our team used a HP ScanJet IIcx scanner with vendor supplied DeskScan II scanning software. We determined during the Preliminary Document Analysis process that scanning at 300 bpi was sufficient and we would store each scanned image as a bitmap file. The total number of pages scanned was 67 at a storage size of 68 meg.
Recommended Personnel for this Process: Data Entry
Our Time: 1 hour
The process of converting the scanned raster data into a vector file can take on many forms. Optical Character Recognition (OCR) for text is the use of opto-electronic devices to obtain an electrical representation of printed characters on paper. These electrical representations are then manipulated in such a way as to generate computer images that can be analyzed and each image assigned a character. Symbol Recognition for graphics is similar to OCR where symbols from a database are used in the conversion of the raster graph to a vector format.
Prior to the OCR process, our QA team reviewed the scanned images using PaintBrush. During this review process, our QA team reviewed for poor images and areas that needed to be removed prior to the OCR process (i.e., West Virginia University Library stamp and change bars).
Upon QA approval, the character recognition process began using OmniPro. However, it was discovered that this software would not accept bitmap formatted files. Using PaintBrush, we converted all of the bitmap images to PCX formatted files. Once this had been completed, the OCR process began again.
The steps that were taken are as listed below:
For those pages that contained text with graphics or text with tables only, the text was selected for OCR. Tables where typed in manually using a text editor called NotePad. This was due to the poor results given by the OCR software when tables contained column division lines (which all of ours did).
When the above steps where completed for each of the scanned files, QA was notified to perform the Content Reconciliation validation process.
Recommended Personnel for this Process: Data Entry
Our Time: (Automated Conversion - 5.5 hours)
(Manual Conversion - 6 hours)
(Graphic touch up - 17.0 hours)
Full content reconciliation of newly converted technical manual information can be a long, arduous, and expensive process. However, it must be performed at this point before continuing with the conversion project. This would include performing validation by either direct letter to letter match or if work packages were developed during the preliminary analysis process (3.3), the newly reconstructed digitized data are consistent with the original packages designed.
During this process, our QA team examined the ASCII text files. Character-by-character validation against the original paper document was performed. The software used for this validation was Microsoft Word. This software was used because of the ease for word search and replacement, and the spell checking tool provided.
The QA team also reviewed the graphic BITMAP files to ensure each drawing was clear and any text contained within the drawing was correct. Problem areas that were identified during this step were part numbers and drawing titles that were original in script form. These items were recreated using PaintBrush.
Recommended Personnel for this Process: QA
Our Time: 8.5 hours
This layer validates the authoring system to ensure that it has the capability to encode information according to the hierarchical data structure, semantic rules, and attributes as defined in the content specific layer from Layer 0. The authoring system must also conform with both ISO 8879 (SGML), and applicable modules of ISO 10744 (HyTime), as specified by MIL-D-87269. Additionally, the authoring system must provide the capability to include the required content, style, and linkages and intelligence as specified by the IETM specification.
As in the Layer 0 Conformance Validation process, QA entered into the ICE Demonstration program and progressed to the IETM Conformance Test Series frame. After selecting the MIL-D-87269 hotspot, the IETM Authoring Development Test Set Matrix was again provided. At this point, QA selected the CSL Authoring - Layer 1 button.
The Layer 1: Content Specific Layer Authoring Test Set questionnaire was displayed for QA completion. This test set concentrates on the capabilities of the authoring system itself. When completed, the Submit button was selected. The Layer 1: Content Specific Layer Authoring Test Set results was displayed. Our results are provided in Appendix D.
Recommended Personnel for this Process: QA, Document Analyst
Our Time: 10 minutes
Conversion from an electronic file format to a tagged electronic file format may involve the steps of manually tagging the file, the use of COTS auto-tagging software and/or the use of in-house, customized, conversion software. The next step depends on how the files were originally processed and what the final ETM/IETM system will be.
In a conversion project, using an auto-tagger, writing conversion code, manually tagging the data by hand, or any combination of the three, will probably all be used. There is neither a defined order nor a defined limit on how many times these steps can be used. In fact, the COTS auto-tagging products on the market today do not provide the technology to do a complete conversion to any of the upper class constructs. Therefore, some sort of intervention either manually tagging and/or writing conversion code will be needed to complete the tagging process.
With all conversion projects, both automated and manual tagging will be required. The percentage of work for either will be dependent on the information within the document, how it was presented in the paper version, and how it will be presented in its electronic form. The goal of any conversion service group is to perform as much automated tagging as possible. This goal would shorten the conversion time and reduce possible typing errors. This reduction would ultimately reduce the cost of the project.
Auto-tagger/conversion software are programs that look for clues in keywords, formatting, etc. of a given document. With this in mind, the customization of the auto-tagger/conversion software would be the next step.
Customization of an auto-tagger or conversion software means two different things. Customizing conversion software means writing scripts to identify clues in the text, determine the mapping relationships, and replace the clues, if necessary, with the tags in the new corresponding DTD. The auto-tagger would need the clues identified and the mapping relationships stated for customization. The difference is that the auto-tagger would be more generic, for everyone’s needs, on its ability to identify and convert, but the conversion software could be more specific -- for the individual project needs. In other words, the algorithms between the auto-tagger and conversion software might be the same, but because the service is able to edit the conversion software, more tagging could be accomplished to meet the project needs.
Our team selected Avalanche FastTag for the automatic tagging of our document. Avalanche provided our team with a complete copy at no cost for a 90-day license period. Time was spent on familiarization of the software and the programming requirements. Several test runs using samples from our document were performed to understand the requirements and techniques needed to fully utilize this software.
Our team also utilized C coding scripts developed to further enhance the automated tagging process. The C scripts were used primarily to insert the hotspot/action tags within the text for appendices and figure callouts.
Once we had determined what was needed in the FastTag scripts, the actual programming began. This involved using the mapping layout defined above. The proper tagging elements were placed in the scripts, and the process of automatically tagging the document files began. Appendix E contains the FastTag Inspect and Louise files, and the C coding scripts used for our automated conversion effort.
Recommended Personnel for this Process: Document Analyst, Programmers, Technical Writers, Data Entry
Our Time: (Research - 48 hours)
(Actual Automated Tagging - 2 hours)
Manual tagging can occur throughout the tagging process, before and/or after either auto-tagging software or in-house conversion software. Its use depends on the pre-processing needed for the software and the post-processing needed for the final product. Manual tagging can be used exclusively for converting to a lower class ETM or not at all.
The manual tagging for our chosen document was performed on tables, in areas of frame division, and graphic hotspots and links. Manual tagging was also performed for trouble shooting links. The SGML tags for the tables and frame divisions were inserted into the files manually using the text editor NotePad after the automated tagging was performed. The graphic hotspots and links were accomplished using the IADS Viewimage Graphic editor.
Recommended Personnel for this Process: Document Analyst, Technical Writers, Data Entry
Our Time: 40 hours
This layer validates the requirements that apply to the IETMs and/or the interchange format of the IETM database. Other requirements at this layer might apply to the processes for reading IETM data, and/or extracting IETMs and/or View Packages from the IETM database.
As in the Layer 0 and Layer 1 Conformance Validation process, QA entered into the ICE Demonstration program and progressed to the IETM Conformance Test Series frame. After selecting the MIL-D-87269 hotspot, the IETM Authoring Development Test Set Matrix was again provided. At this point, QA selected the Instance Sto./Int. - Layer 2 button.
The Layer 2: Instance Storage/Interchange Test Set frame was displayed. These questions are testing the delivered output instance for the program. When completed, the Submit button was selected and the Layer 2: Instance Storage/Interchange Test Set results were displayed. Appendix D will provide the actual answers and results to the Layer 2 test set.
Recommended Personnel for this Process: QA, Document Analyst
Our Time: 10 minutes
The development of a view package in-house would be considered a full software development project in itself. The operation of the view package depends on the functional capabilities required for the specific conversion project. If this development process were required, project time and cost would be greatly increased.
Our conversion project demonstration requires us to follow the class 2/class 3 constructs. Keeping this in mind when we selected the authoring/viewing software, IADS provides a complete viewing package that follows the MIL-M-87268 requirements. Our team was not required to develop any view package software for our ETM system. However, paragraph 4.3 contains a list of enhancements for the selected view package that would increase the usability and provide greater viewing capabilities.
Recommended Personnel for this Process: Customer, Conversion Group
Our Time: None required
The Validation & Verification & Acceptance processes are tasks that would normally be shared by both the QA team and the customer. A consistent methodology, applicable for all Types or Classes, for conversion service validation, customer verification, and customer acceptance testing of converted TM information must exist. The conversion methodologies are based on the premise that the (to be converted) source data, whether on paper or in electronic form, were previously validated by the originator and both verified and accepted by the Customer.
Validation is the conversion service QA process in which an ETM/IETM or the data that constitute that ETM/IETM are compared in detail against the system supported by the ETM/IETM, or against other approved source data, to assure that the presented ETM/IETM data are technically accurate in all respects and conform to all requirements of the contract. Validation is the most important of the conversion service’s QA actions. This team would follow the defined set of procedures described in the Test Plan developed for the specific conversion project. Validation involves tests of the ETM/IETM information against the associated hardware by actual performance of the procedures by conversion service personnel using a Customer furnished Electronic Display Device (EDD) and other Customer approved support equipment in accordance with the validation plan and other contract requirements.
Verification and Acceptance testing would be performed by the customer using qualified personnel with a prescribed skill level, from the operating command or facility assigned to operate and maintain the system to which the ETM/IETM applies. These tests would ensure the suitability of the ETM/IETM for the intended maintenance environment, its usability by its intended users, and its capability with other customer systems.
When our conversion team was satisfied with the new ETM system, we passed the system to our QA department for final validation testing. A user id was established (gijoe) as the login for these tests. When QA selected the viewing package software and entered the user id, they were automatically placed at the Table of Contents for the technical manual and proceeded through the document. All hotspots were verified to ensure they were properly linked to their associated file, all custom buttons were tested to verify that they placed the user in the proper location, and all returns to the originating frame were validated. During these tests' appearances, ease of use, and display consistency where checked.
During this validation process, all discrepancies were documented and returned to the conversion team for correction. When all corrections were made, the system was again passed back to QA for re-testing. This stage was repeated until all problems were solved and QA was satisfied with the final product. At this point, all data files, style sheets, graphics with link files, and all software and conversion scripts where placed with CM for proper logging and storing in the Customer Production Baseline (PRBL_ARM) main directory.
Recommended Personnel for this Process: QA, CM, and Document Analyst
Our Time: 7 hours
The two distinct items under test in this layer are the Presentation System and the IETM Instance. The Presentation Layer isolates on both display and operating related requirements to specifically test for the correct interpretation, formatting, and display of Display Elements, Alert Elements, Graphic Elements, Process Elements, and technical Information (content, display, organization, and style) requirements. The interdependent relationship between the presentation system and the IETM instance is the process of interpreting the IETM.
As in the prior conformance validation process steps, QA accessed the WWW to gain entrance to the IETM Conformance Escort (ICE) Demonstration system and progress to the IETM Conformance Test Series frame. At this point, QA selected the MIL-M-87268 Test Suite option. The system placed QA at the IETM Conformance Test Set Matrix frame. This allowed QA to complete the Layer 3 through 6 conformance validation test sets.
For layer 3 validation, QA selected the Content Test Sets button at the layer 3 Presentation Operation, Authoring System, Technical Information cell. When selected, the Layer 3: Content Test Sets become available for QA selection. These test sets have been designed using the information provided during the Program Conformance Registration process above.
At this time, QA progressed through the General Content (General/Primitives) Test Sets, which included test sets for General Content, General Style, Graphics, Alerts, Procedural Information, Troubleshooting Information, Parts Information, and Descriptive Information. After each test set, QA was provided a report documenting the results of the individual test.
When the General Content Test Sets were completed, QA returned to the Test Set Matrix frame so that the Display Format/Functionality button could be selected. QA progressed through the Text, Graphics, GUI, Alerts, and Elements test sets. Once again, QA was provided with a report documenting the results after each individual test.
Upon completion of all layer 3 validation test sets, QA was ready to progress to the layer 4 Graphical User Interface and Technical Information Interaction Test Sets. The results of the layer 3 test sets are provided in Appendix D.
Recommended Personnel for this Process: QA, Document Analyst
Our Time: 1 hour
The Human-Computer Interface layer, Layer 4, validates requirements that pertain to the Common User Interface and Interaction Functions. Again, many requirements in this layer will require testing both the presentation system and the IETM instance simultaneously. Common User Interface requirements include user accessible services such as cursor movement, selection functions, menu functions, navigational functions, dialog control functions, audio control functions, etc. Interaction Functions pertain to those aspects of operation that involve a two-way interchange of information between the human and the computer.
The layer 4 test sets can be accessed immediately following the layer 3 conformance validation. After reviewing the final results from the layer 3 test sets, QA returned to the IETM Presentation Operation Test Set Matrix. The buttons for layer 4 were available for selection. Our QA selected the Graphical User Interface Test Set button first.
This selection allowed QA to complete the HCI Common GUI and HCI GUI Menu test sets. Again, as in the layer 3 test sets, a report displaying the results of each test set was displayed immediately following the completion of each individual test.
When QA progressed through the GUI test set, the Technical Information Interaction Test Set button was selected. This selection allowed QA to complete the Troubleshooting Interaction, Graphic Interaction, and Tables Interaction test sets. After reviewing the results, QA returned to the Presentation Operation Test Set Matrix frame so that layer 5 conformance validation could be completed. The results of the layer 4 test sets are provided in Appendix D.
Recommended Personnel for this Process: QA, Document Analyst
Our Time: 1 hour
The Test Sets at this layer pertain to hyperlinking requirements and conditional branching requirements. Because requirements in this layer apply to two distinct areas, individual tests will be run for each hyperlinking and conditional branching. Testing on the links will validate the requirements that allow the user to branch from the immediate technical information to other related information. The test performed on the conditional branching requirements will validate that the presentation system evaluates the pre-conditions correctly such that the right node or frame of the IETM is accessed.
While QA was located in the Presentation Operation Test Set Matrix frame, the Layer 5 Logic Flow Linking button was selected. This button allowed QA to perform the Linking Test Set. After all selections had been made and submitted, the final test set report was reviewed.
This report contains the answers to all of the layers’ test sets and the results of compliancy for the overall system. This report is provided in Appendix D.
Recommended Personnel for this Process: QA, Document Analyst
Our Time: 30 minutes
The layer 6 conformance validation test sets pertain to interfacing (calling, spawning, and/or linking) external software processes such as LSAR, diagnostics, etc. All external processes (nodes, etc.) referenced must exist, be accessible, and be able to be displayed. In the case of external data type (and external file entity), the SGML Notation definitions must be enabled. These SGML notations support external processes with external non-SGML data types. Processing of the external file entities is handled at presentation-time by the presentation system.
Our ETM system does not contain these external software links. For this reason, there were no layer 6 test sets that apply, and QA exited the ICE Demonstration system.
Recommended Personnel for this Process: QA, Document Analyst
Our Time: none
The list of deliverables will vary depending on the Type or Class of ETM/IETM being acquired and on the customer requirements. The customer will compile the list of desired deliverables for delivery by the conversion service. A schedule for these deliverables during the conversion process and/or upon completion of the conversion effort and acceptance testing would be developed and agreed to by both parties prior to the start of the project. This list will be included in the conversion project contract and mutually agreed to by both the customer and the conversion service. The media used for delivering the products will be in accordance with the requirements stated in the contract.
According to our ETM/IETM Conversion Project Costing Matrix (Appendix A), our conversion team would be required to deliver the newly generated ETM on a 3 1/2" 2.88 MB Cartridge Tape. The following items to be included on these tapes were defined in paragraph 3.1.2 Additional Conversion Project Requirements:
Once these tapes have been made, our QA team would verify that the contents where valid and complete. As part of the final QA tasking, QA would restore these tapes to an equivalent user system and run a final verification test on the software and data files to ensure that the contents performed properly. The main objective of this final validation is to ensure that the conversion service has provided, for support of the equipment involved, accurate and adequate ETMs/IETMs and/or ETM/IETM data. Once satisfied, the tapes would be delivered to the customer. Along with the tapes, setup, loading, and user instructions would be provided to aid the customer with their new ETM system.
Recommended Personnel for this Process: QA, and CM
Our Time: none


This section discusses the findings from our Concept of Operation demonstration along with the problems that were encountered and their solutions. We have also included a list of software enhancements for the IADS system.
As stated in paragraph 1.1 above, the purpose of this demonstration was to show the defined concept of operation for ETM/IETM conversion. Our demonstration primarily focused on the general conversion process as defined in Section 3.0 of the IETM Conversion Service Concept of Operation document.
As described above in Section 3.0 Concept of Operation Demonstration, our team followed the processes and steps in the order of design. We found no alterations were required in the sequence of those processes.
However, one additional process was added to the general conversion process. This new process has been named Program Conformance Registration. This new process was placed between the software/DTD selection and the mapping processes. The Program Conformance Registration allows the QA team to begin preparing for the level 0 through 6 validation processes by registering the conversion program using the WWW. By registering the program and completing the IETM Qualification Screening and Profile Questionnaires, the system sets up the process for streamlining the conformance testing while maintaining a modular testing approach. This also allows QA to view other programs that have registered and performed validation on their ETM/IETM systems. This process is fully described in paragraph 3.5 above.
The sections below discuss two areas that impacted our teams' effort and time in the conversion of the selected technical manual. They are the conversion of tables and graphics, and lack of familiarity with the software products.
One problem that has always existed for legacy conversion is the automated conversion of tables and graphics. Quality and style of these items play an important role in the automated conversion effort.
The quality will have an impact on the conversion process by way of time, skills, and software required to convert the data into a suitable format for ETM/IETM development. The end resulting factor for the quality of the initial data will aid in the determination of the final conversion schedule and cost. Note that the poorer the quality, the more time is required for conversion, and thus the higher the cost.
The style has no impact on the initial scan, but when text is OCRed, special characters, fonts (i.e., scriptive, bold, or small size), and bounders for tables caused many problems. These problems may require more time for conversion and thus increase the final cost of the conversion project.
In our effort to convert the selected technical manual we found that the tables and graphics were at medium quality. However, after scanning and OCRing, alterations were required. Tables had to retyped by hand due to the bounders and different size fonts within them. The graphics required retyping titles and part numbers because of scripting and font sizes used in the drawings. These additional tasks required more time then the actual tagging process.
A couple of software vendors are attempting to create table converting routines and graphic recognition applications that would lessen the time and effort currently required to generate the quality electronic versions.
As stated in the Concept of Operations document, to be successful, a business must employ highly qualified and motivated personnel. Besides the project manager who must maintain an in-depth knowledge in the ETM/IETM environment, several key areas of support must be filled with highly skilled personnel. All personnel assigned to a conversion project should, at a minimum, maintain a basic knowledge in ETM/IETM design and requirements. They must also be familiar with the ETM/IETM software package and automated conversion tools.
Our team contained the knowledge of ETM/IETM design and standards required. Where we were lacking was the familiarity with the selected ETM software package and automated conversion tools used during the conversion effort. Several man hours were spent gaining the knowledge required to efficiently use the ETM software and to fully understand the requirements and techniques needed to fully utilize the auto-tagging software. In a real conversion business, experienced programmers would provide the knowledge required for the conversion software. Some time may be required for the ETM/IETM software depending whether it had been used in the shop previously.
IADS is an Authoring/Viewing software system that is both developer and user friendly and can be utilized for almost all class2/class 3 defined electronic technical manuals. During our demonstration of the conversion processes and while working with the complete IADS system, we compiled a list of possible enhancements that would provide the ETM developer more functional capabilities at their disposal. They are as follows:


ETM/IETM CONVERSION PROJECT
COSTING MATRIX
|
Company Name: |
__U. S. Army______________________________________________ |
|
Address: |
__Washington, DC_________________________________________ |
|
__________________________________________________________ |
|
|
__________________________________________________________ |
|
POC: |
__G. I. Joe________________________ |
||
|
Telephone: |
__301-871-2769____ |
Fax: |
__301-871-2760____ |
|
Project Name: |
__Night Vision Goggles ETM Conversion______________________ |
||
|
Project Description: |
Convert hardcopy TM11-5855-238-24&P Night Vision Goggles |
||
|
AN/PVS-5 and AN/PVS-5A to electronic form using the attached |
|||
|
functional requirements. |
|||
|
Projected Start Date: |
_________________ |
Projected End Date: |
_________________ |
|
Standards/Specifications Required: |
_MIL-M-87268, MIL-D-87269, ISO 8879______________________ |
||
|
Document Classification: |
_N/A____________ |
||
|
Project Number (PN): |
_ARMY-0001_____ |
Source Media:
|
Paper: |
_____ |
Original |
__ü_ |
Photocopies |
|
__ü__ |
8 1/2" x 11" |
_____ |
8 1/2" x 14" |
|
|
_____ |
A3 |
_____ |
A4 210 x 297 mm |
|
|
_____ |
Other: __________ |
|||
|
Microfilm: |
_____ |
mm |
_____ |
reduction factor |
|
Microfiche: |
_____ |
_____ |
reduction factor |
|
|
Diskette: |
_____ |
5 1/4" 1.2 MB |
_____ |
3 1/2" 1.44 MB |
|
Cartridge Tape: |
_____ |
3 1/2" 2.88 MB |
_____ |
4 mm DAT |
|
Other: |
_____ |
1/2" 9-track |
_____ |
8 mm DAT |
|
_____ |
CD-ROM |
_____ |
Magneto-Optical |
|
|
_____ |
Quarter-Inch |
|||
|
Other Media: |
___________________________________________ |
If Electronic Source:
|
Tagged? |
_____ |
Yes |
_____ |
No |
|
If Yes: |
|||||
|
DTD Provided? |
_____ |
Yes |
_____ |
No |
|
|
Authoring Package: |
__________________ |
Version |
_____ |
||
|
If No: |
|||||
|
Text Format: |
_____ |
ASCII |
|||
|
_____ |
MS Word |
Version |
_____ |
||
|
_____ |
WP |
Version |
_____ |
||
|
_____ |
Other: __________ |
Version |
_____ |
||
|
Graphics |
Bitmap |
_____ |
TIFF |
Version |
_____ |
|
Format: |
_____ |
BMP |
Version |
_____ |
|
|
_____ |
CGM |
Version |
_____ |
||
|
_____ |
PCX |
Version |
_____ |
||
|
_____ |
JPEG |
Version |
_____ |
||
|
_____ |
Other: ____________ |
Version |
_____ |
||
|
Vector |
_____ |
CGM |
Version |
_____ |
|
|
_____ |
IGES |
Version |
_____ |
||
|
_____ |
STEP |
Version |
_____ |
||
|
_____ |
Other: ____________ |
Version |
_____ |
Delivery Media:
|
Diskette: |
_____ |
5 1/4" 1.2 MB |
_____ |
3 1/2" 1.44 MB |
|
Cartridge Tape: |
_ü__ |
3 1/2" 2.88 MB |
_____ |
4 mm DAT |
|
Other: |
_____ |
1/2" 9-track |
_____ |
8 mm DAT |
|
_____ |
CD-ROM |
_____ |
Magneto-Optical |
|
|
_____ |
Quarter-Inch |
|||
|
Other Media: |
___________________________________________ |
About the Conversion Project
|
Item |
Yes/No |
Description |
|
Consulting |
Partial |
Does the customer fully understand the task at hand? |
|
Partial |
Will we be required to walk the customer through the whole process? |
|
|
No |
Will we be required to travel to customer site to analyze the work environment? |
|
|
Design of ETM/IETM |
Yes |
Has the customer defined the functional requirements for the electronic document? |
|
Yes |
Are we required to consult the customer on the different functional possibilities? |
|
|
No |
Will we be required to define the appropriate system for the customer from the results of the above research? |
|
|
Yes |
Has the life-cycle of the system been considered in the selection of ETM/IETM system? |
|
|
Authoring and |
No |
Has the customer selected an authoring/presentation package? |
|
Presentation Package |
Yes |
Are we required to consult the customer on the selection of a authoring/presentation package? |
|
Partial |
Will the selected package contain a DTD for the type of documents being converted? |
|
|
No |
Will the customer provide us with the selected authoring/presentation package? |
|
|
Yes |
Will we be required to purchase the selected authoring/presentation package? |
|
|
Hardware |
Yes |
Must hardware be a considering factor on the above selection? |
|
List requirements: IBM PC compatible |
||
|
Subject Experts |
Yes |
Will they be required? |
|
Yes |
Will they be furnished by the customer? |
|
|
No |
Will we be required to furnish them? |
|
|
Types of Data |
Yes |
Normal Maintenance Task and Descriptive Information |
|
Yes |
Troubleshooting Information |
|
|
Yes |
Parts Information |
|
|
Maintenance |
Yes |
Will the customer maintain the data after conversion? |
|
No |
Will we be required to maintain the data after conversion and delivery? |
|
|
Yes |
Will we be required to store before/after data for the customer? |
|
|
Yes |
Will we be required to deliver maintenance software (authoring tools) with the data? |
|
|
Training |
Yes |
Will training of the use of the presentation system be required? |
|
Yes |
Will training for data maintenance be required (authoring tool)? |
|
|
Scheduling |
30 days |
How much time will be required for pre-job setup? |
|
No |
Will additional staffing be required to make the delivery date set by the customer? |
|
About the Conversion Effort
|
Item |
Yes/No |
Description |
|
DTD |
No |
Will the customer provide the DTD or stylesheet? (if yes, please attach) |
|
N/A |
If DTD provided, is documentation describing all of the ELEMENTS and ATTRIBUTES available? (if yes, please attach) |
|
|
Partial |
Do we have a DTD that will work well with the customer requirements? (if yes, please attach) MIL-D-87269 |
|
|
Yes |
Will the selected DTD need to be modified? |
|
|
Partial |
Will the selected DTD be usable in the selected authoring/presentation package? |
|
|
No |
Will we have to design a DTD to correspond with the customer requirements? |
|
|
Complexity and Mapping |
med |
What is the mapping complexity? (low, medium, high) |
|
Partial |
Will the customer supply mapping to source materials? (if yes, please attach) verbal help |
|
|
low |
What is the complexity of the text? (low, medium, high) |
|
|
med |
What is the complexity of the graphics? (low, medium, high) |
|
|
high |
What is the complexity of the tables? (low, medium, high) |
|
|
Tagging of paragraphs, heads |
No |
Will all tagging be converted directly from codes in the original document? |
|
Yes |
Will most tagging be converted directly from codes or from clearly defined appearance-based rules? |
|
|
Partial |
Will tagging be applied manually based on document appearance and guidelines developed during the preliminary document analysis process? |
|
|
Yes |
Will subject experts be used to aid in defining tagging requirements? |
|
|
N/A |
If pre-tagged using a proprietary system, are old tagging specifications and documentation available? (if yes, please attach) |
|
|
Other: |
||
|
FOSI/DSSSL |
No |
Will the ETM/IETM system be required to provide hard copy? |
|
Automated |
No |
Will the tagging be totally automated? |
|
Conversion |
Yes |
Will there be a requirement for human intervention (manual tagging)? |
|
Conversion Software |
Yes |
Will COTS products be available for automatic tagging? (if yes, please specify: _Avalanche FastTag) |
|
Yes |
Will software development be required? |
|
|
Conversion |
Yes |
Will low level conversion be performed in-house? (scan, data conversion) |
|
No |
Will a conversion service (Docucon, DCL) be used for low level conversion? |
|
|
269 |
What Content Data Model will be used? |
|
|
Text |
67 |
How many pages of text will be converted? |
|
Good |
What is the quality? |
|
|
Yes |
Will scanning and data conversion be required? |
|
|
Graphics |
16 |
How many graphics will be converted? |
|
Good |
What is the quality? |
|
|
0 |
How may call outs, hot spots, etc.? |
|
|
Yes |
Insert captions and placeholders, do not measure spacing. |
|
|
No |
Insert captions and placeholders, measure spacing. |
|
|
Yes |
Will scanning and cropping be required? (if yes, specify (300 dpi, 600 dpi, etc.): ____300_______________) |
|
|
Other: |
||
|
Tables |
Yes |
Will tables be included? |
|
22 |
How many tables will need to be linked? |
|
|
No |
Have the tables been built using a table editor in the source document? |
|
|
No |
Will the tables need to be set manually using the table editor in the target software package? |
|
|
Other: Manually converted using ASCII text editor |
||
|
Lists |
No |
Are lists already tagged with list codes in the source data? |
|
Yes |
If lists not marked in source, will they need to be converted automatically on a best-efforts basis? |
|
|
Yes |
Will lists be tagged manually? |
|
|
Other: |
||
|
TOC |
Yes |
Will a TOC be required? |
|
No |
Will the TOC need to be created using an automated table of contents facility? |
|
|
No |
Will the TOC be hard-coded? |
|
|
Other: TOC Linking to sections only |
||
|
Cross Reference |
No |
Will a cross reference be required? |
|
N/A |
Will the cross reference be internal or external? |
|
|
N/A |
Will automatic tagging be based on customer-supplied guidelines? (if yes, please attach) |
|
|
N/A |
Will cross-referencing locations be manual tagged? |
|
|
Other: |
||
|
Index |
No |
Will an index be required? |
|
N/A |
Will the original index be keyed (treated as cross-references)? |
|
|
N/A |
Will the index be produced through an automated algorithm? |
|
|
Other: |
||
|
Special Characters |
No |
Are there any special characters? |
|
N/A |
Will special characters be ignored? |
|
|
N/A |
Are there any foreign character sets? |
|
|
N/A |
Are there any scientific character sets? |
|
|
Other: |
||
|
Footnotes |
No |
Are there any footnotes? |
|
N/A |
Will they be inserted as regular text? |
|
|
N/A |
Will they be inserted inline and tagged as a footnote? |
|
|
Other: |
||
|
Math |
No |
Are there any formulas? |
|
N/A |
Will formulas be left out? |
|
|
N/A |
Will formulas be handled as images (referenced and cropped)? |
|
|
N/A |
Should only in -line math be inserted that can be done in text mode? |
|
|
N/A |
Will formulas be created using formula editor? |
|
|
N/A |
Will formulas be converted from existing formula structures? |
|
|
Other: |
||
|
Front and Back |
Yes |
Are there any front or back matter that needs to be include? |
|
Matter |
Yes |
Will they be entered as regular text? |
|
Other: |


|
LINE ITEM DESCRIPTION |
UNIT COST |
UNITS |
ESTIMATED UNITS |
TOTAL |
|
Conversion Project |
||||
|
Consulting |
$35.00 |
one time charge |
80 |
$2,800.00 |
|
Design |
$40.00 |
one time charge |
80 |
$3,200.00 |
|
Authoring/Presentation Package |
one time charge |
0 |
$- |
|
|
Hardware |
one time charge |
0 |
$- |
|
|
Subject Experts |
$35.00 |
per hour |
0 |
$- |
|
Maintenance |
$10.00 |
per storage unit |
1 |
|
|
$5,000.00 |
storage time |
1 |
||
|
$15.00 |
per hour maint. time |
20 |
$5,310.00 |
|
|
Training |
$1,000.00 |
per course dev. |
1 |
|
|
$35.00 |
per hour |
3 |
$1,105.00 |
|
|
Project Setup |
$500.00 |
one time charge |
1 |
$500.00 |
|
Setup for Special Items |
$1,000.00 |
one time charge |
1 |
$1,000.00 |
|
Review |
$1.00 |
per 1000 chars. |
324 |
$324.00 |
|
Cleanup |
$1.00 |
per 1000 chars. |
324 |
$324.00 |
|
Conversion Effort |
||||
|
DTD |
$35.00 |
per hour |
40 |
$1,400.00 |
|
Complexity/Mapping |
$35.00 |
per hour |
40 |
$1,400.00 |
|
Tagging |
$0.05 |
per tag |
0 |
|
|
FOSI/DSSSL Development |
$35.00 |
per hour |
0 |
$- |
|
Automated Conversion |
$15.00 |
per hour pre-setup |
4 |
|
|
$0.20 |
per 1000 chars. |
324 |
$124.80 |
|
|
Conversion Software Development |
$35.00 |
per hour |
20 |
$700.00 |
|
Out Side Conversion Work |
$- |
conversion service cost |
0 |
$- |
|
Text |
$0.40 |
per 1000 chars. |
324 |
$129.60 |
|
Graphics |
$1.00 |
per image |
16 |
|
|
$1.00 |
per link/hot spot |
220 |
$236.00 |
|
|
Tables/Lists Automated |
$3.00 |
per table/list |
0 |
|
|
Manual |
$15.00 |
per table/list |
22 |
|
|
$0.50 |
per reference |
240 |
$450.00 |
|
|
TOC |
$0.50 |
per reference |
100 |
$50.00 |
|
X-Ref/Index |
$0.50 |
per reference |
0 |
$- |
|
Special Characters |
$0.25 |
per character |
0 |
$- |
|
Footnotes |
$5.00 |
per footnote |
0 |
$- |
|
Math |
$7.00 |
per formula |
0 |
$- |
|
Front/Back Matter |
$5.00 |
per reference |
1 |
$5.00 |
|
Delivery Effort |
||||
|
Final Assembly |
$1,000.00 |
per delivery |
1 |
$1,000.00 |
|
Delivery Material |
$10.00 |
per material |
1 |
$10.00 |
|
Additional Charges |
||||
|
Travel |
$0.30 |
travel cost |
488 |
$146.40 |
|
$114.00 |
lodging |
1 |
$114.00 |
|
|
$38.00 |
per diem |
2 |
$76.00 |
|
|
(additional charges here) |
$- |
|||
|
Projected Cost Total |
$ 20,404.80 |


Conversion Process/Steps |
Personnel Used |
Total Hours |
Problems Encountered |
Solutions |
Determine Functional Requirements |
Customer, Conv. Group |
10 hours |
||
Gather Samples |
Customer, Doc. Analyst |
1 hour |
||
Prelim. Document Analysis |
Conv. Group |
8 hours 15 minutes |
||
Select Software and DTD |
Conversion Group |
39 hours |
see note 1 |
see note 1 |
Program Conformance Registration |
QA |
10 minutes |
||
Define Mapping |
Conversion Group |
15 hours |
||
Costing Matrix |
Customer, Conv. Group |
2 hours |
||
Layer 0 Conformance Validation |
QA, Doc. Analyst |
10 minutes |
||
Scan TM @ 300 bpi |
Data Entry |
1 hrs/67 pgs |
see note 2 |
see note 2 |
Crop Graphics |
Data Entry |
1.5 hrs/15 |
||
QA Scanned Data |
QA |
3 hrs |
||
Convert Text Data (OCR) |
Data Entry |
5.5 hrs/35 pgs |
||
Convert Text Data (Manual) |
Data Entry |
6 hrs/20 pgs |
||
Graphic Touch up |
Data Entry |
17 hours |
||
QA Content Reconciliation |
QA |
8.5 hours |
||
Layer 1 Conformance Validation |
QA, Doc. Analyst |
10 minutes |
||
Automated Tagging |
Doc. Analyst, Programmers,Tech. Writer, Data Entry |
2 hours actual processing time. |
||
Manual Tagging |
Doc. Analyst, Tech. Writer, Data Entry |
40 hours |
||
Layer 2 Conformance Validation |
QA, Doc. Analyst |
10 minutes |
||
View Package Development |
Customer, Conv. Group |
0 minutes |
This process not required. |
This process not required. |
Browser Testing and System QA |
QA, CM, Doc. Analyst |
7 hours |
||
Layer 3 Conformance Validation |
QA, Doc. Analyst |
1 hour |
|
|
Layer 4 Conformance Validation |
QA, Doc. Analyst |
1 hour |
|
|
Layer 5 Conformance Validation |
QA, Doc. Analyst |
30 minutes |
|
|
Layer 6 Conformance Validation |
QA, Doc. Analyst |
0 minutes |
This process not required. |
This process not required. |
Delivery Package Development |
QA, CM |
0 minutes |
This process not required. |
This process not required. |
Note 1: Time has been spent working with the MIL-D-87269 DTD and IADS. To this point we have had to modify the DTD to include the Frame, File, and Warning/Alert elements from the IADS 8879 DTD. Time was spent on hotspot and external calls. It was determined that we must use the calls from IADS vs. the linking element in 269. We were able to use the table structure from 269, so that remained the same.
Note 2: The character recognition process began using OmniPro. However, it was discovered that this software would not accept bitmap formatted files. Using PaintBrush, we converted all of the bitmap images to PCX formatted files.


Registration Information
Name = L. King
Company = Scan R Us
TestParty = 1st Party Tester (Developer of IETM)
Service = Army
Program = an_pvs5
Phone = 301-871-2769
E-Mail =
Authoring = IADS
Presentation = IADS
Secure = Off
Authoring Development
SGML_Output = Yes
DBMS = No
Authoring_System = Yes
Test Set Question
O-Level_DTD = Used_in_Instance
Presentation Operation
Conditional_Branching = No
External_Interface = No
Test Set Question
Tables = Yes
Graphics = Yes
Audio = No
LSA = No
Software = No
Layer 0: Content Specific Layer DTD Test Set
|
Req. Number: |
Verdict: |
MIL-D-87269 Requirement: |
|
1 |
Pass |
3.3 |
|
2 |
Pass |
3.3.3.1 |
|
3 |
Pass |
3.3.3.2 |
|
4 |
Pass |
3.3.3.3 |
|
5 |
Pass |
3.3.3.4 |
|
6 |
Pass |
3.3.3.4.1 |
|
7 |
Pass |
3.3.3.4.2 |
|
8 |
Pass |
3.3.3.4.3 |
|
9 |
Pass |
3.3.3.4.4(1) |
|
10 |
Pass |
3.3.3.4.4(2) |
|
11 |
Pass |
3.3.3.4.4(3) |
|
12 |
Pass |
3.3.3.4.5 |
|
13 |
Pass |
3.3.3.5 |
|
14 |
Pass |
3.3.3.5.1 |
|
15 |
Pass |
3.3.3.5.2 |
Conformance Report Summary:
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 1: Content Specific Layer Authoring Test Set
|
Req. Number: |
Verdict: |
MIL-D-87269 Requirement: |
|
1 |
Fail |
3.2.1.3 |
|
2 |
Pass |
3.2.3.4 |
|
3 |
Pass |
3.2.4 |
|
4 |
Pass |
3.2.3 |
|
5 |
Pass |
3.2.3.1 |
|
6 |
Partial |
3.2.3.2 |
|
7 |
Fail |
3.2.3.3 |
|
8 |
DNC |
3.2.3.4 |
|
9 |
Pass |
3.2.3.5 |
|
10 |
Pass |
3.2.4 |
|
11 |
Pass |
3.2.4.1 |
|
12 |
Pass |
3.1.3 |
|
13 |
Partial |
3.2.4.3 |
Conformance Report Summary:
|
Verdict Type |
Percentage |
|
Conformance |
66 % |
|
Partially Conformant |
16 % |
|
Non Conformant |
16 % |
|
Did Not Consider |
7 % |
|
Could Not Determine |
0 % |
Layer 2: Instance Storage/Interchange Test Set
|
Req. Number: |
Verdict: |
MIL-D-87269 Requirement: |
|
1 |
Pass |
3.3 |
|
2 |
Pass |
3.3.3 |
|
3 |
Partial |
3.3.3.1 |
|
4 |
Pass |
3.3.3.2 |
|
5 |
Pass |
3.3.3.3 |
|
6 |
Fail |
3.3.3.4 |
|
7 |
Fail |
3.3.3.4.1 |
|
8 |
Fail |
3.3.3.4.2 |
|
9 |
Fail |
3.3.3.4.3 |
|
10 |
Fail |
3.3.3.4.4(1) |
|
11 |
Fail |
3.3.3.4.4(2) |
|
12 |
Fail |
3.3.3.4.4(3) |
|
13 |
Fail |
3.3.3.4.5 |
|
14 |
Partial |
3.3.3.5 |
|
15 |
Pass |
3.3.3.5.1 |
|
16 |
Pass |
3.3.3.5.2 |
Conformance Report Summary:
|
Verdict Type |
Percentage |
|
Conformance |
37 % |
|
Partially Conformant |
12 % |
|
Non Conformant |
50 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: General Content Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level I Requirement: |
|
1 |
Pass |
3.1.1 |
|
6 |
Pass |
3.2.1.1(c) |
|
7 |
Pass |
3.2.1.1(d) |
|
16 |
Pass |
3.2.1.1(m) |
|
17 |
Pass |
3.2.1.2 |
|
18 |
Pass |
3.2.1.3 |
|
19 |
Pass |
3.2.1.4 |
|
20 |
Pass |
3.2.1.5 |
|
22 |
DNC |
3.2.1.7 |
Level I Conformance Report Summary
There are 9 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
11 % |
|
Could Not Determine |
0 % |
Layer 3: General Content Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level Requirement: |
|
2 |
Partial |
3.1.2 |
|
3 |
Pass |
3.2.1 |
|
4 |
Pass |
3.2.1.1(a) |
|
5 |
DNC |
3.2.1.1(b) |
|
8 |
Pass |
3.2.1.1(e) |
|
9 |
Pass |
3.2.1.1(f) |
|
10 |
Pass |
3.2.1.1(g) |
|
11 |
Pass |
3.2.1.1(h) |
|
12 |
Pass |
3.2.1.1(i) |
|
13 |
Pass |
3.2.1.1(j) |
|
14 |
DNC |
3.2.1.1(k) |
|
15 |
Pass |
3.2.1.1(l) |
|
21 |
Pass |
3.2.1.6 |
Level II Conformance Report Summary
There are 13 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
90 % |
|
Partially Conformant |
9 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
15 % |
|
Could Not Determine |
0 % |
Layer 3: General StyleTest Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level I Requirement: |
|
1 |
Pass |
3.3.1 |
|
3 |
Pass |
3.3.3(a) |
|
17 |
Pass |
3.3.4.5 |
|
18 |
Pass |
3.3.4.6 |
|
19 |
DNC |
3.3.4.7 |
|
22 |
Pass |
3.5.2.2.2 |
Level I Conformance Report Summary
There are 6 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
16 % |
|
Could Not Determine |
0 % |
Layer 3: General StyleTest Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level II Requirement: |
|
4 |
Pass |
3.3.3(b) |
Level II Conformance Report Summary
There are 1 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: General StyleTest Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level III Requirement: |
|
5 |
Pass |
3.3.3(c) |
|
6 |
Pass |
3.3.3(d) |
|
7 |
Pass |
3.3.3(e) |
|
8 |
Pass |
3.3.3(f) |
|
9 |
Pass |
3.3.3(g) |
|
10 |
Pass |
3.3.3(h) |
|
11 |
Pass |
3.3.4.1 |
|
12 |
Pass |
3.3.4.2 |
|
13 |
Pass |
3.3.4.3 |
|
14 |
Pass |
3.3.4.4 |
|
15 |
Pass |
3.3.4.4.1 |
|
16 |
Pass |
3.3.4.4.2 |
|
20 |
DNC |
3.3.4.7(1) |
|
21 |
DNC |
3.3.4.8 |
Level III Conformance Report Summary
There are 14 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
14 % |
|
Could Not Determine |
0 % |
Layer 3: General StyleTest Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level IV Requirement: |
|
2 |
DNC |
3.3.2 |
Level IV Conformance Report Summary
There are 1 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
0 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
100 % |
|
Could Not Determine |
0 % |
Layer 3: Graphics Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level II Requirement: |
|
1 |
DNC |
3.1.3 |
|
2 |
Pass |
3.1.3(1) |
|
3 |
Pass |
3.1.3(2) |
|
4 |
Pass |
3.1.3(3) |
|
5 |
Pass |
3.1.3(4) |
|
6 |
Pass |
3.1.3(5) |
|
7 |
DNC |
3.1.3(6) |
|
8 |
Pass |
3.1.3(7) |
|
9 |
Pass |
3.3.5.1 |
|
10 |
Pass |
3.3.5.2 |
|
11 |
Pass |
3.3.5.3 |
|
12 |
Pass |
3.3.5.4 |
|
13 |
Pass |
3.3.5.5 |
|
14 |
DNC |
3.3.5.6 |
|
18 |
Pass |
3.3.5.10 |
|
20 |
Partial |
3.3.5.12 |
|
24 |
Pass |
3.3.5.14.1(a) |
|
26 |
Pass |
3.3.5.14.1(c) |
|
28 |
Pass |
3.3.5.14.3 |
|
31 |
Partial |
3.3.5.15(b) |
|
32 |
Pass |
3.3.5.15(c) |
Level II Conformance Report Summary
There are 21 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
88 % |
|
Partially Conformant |
11 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
14 % |
|
Could Not Determine |
0 % |
Layer 3: Graphics Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level III Requirement: |
|
15 |
Pass |
3.3.5.7 |
|
16 |
Pass |
3.3.5.8 |
|
19 |
Pass |
3.3.5.11 |
|
21 |
DNC |
3.3.5.13 |
|
22 |
Pass |
3.3.5.14 |
|
23 |
Pass |
3.3.5.14.1 |
|
27 |
Pass |
3.3.5.14.2 |
|
29 |
Pass |
3.3.5.15 |
|
30 |
Pass |
3.3.5.15(a) |
|
37 |
Pass |
3.3.5.15(h) |
|
38 |
Pass |
3.3.5.15(i) |
|
39 |
DNC |
3.3.5.16 |
Level III Conformance Report Summary
There are 12 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
16 % |
|
Could Not Determine |
0 % |
Layer 3: Graphics Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level IV Requirement: |
|
17 |
DNC |
3.3.5.9 |
|
25 |
Pass |
3.3.5.14.1(b) |
|
33 |
Pass |
3.3.5.15(d) |
|
34 |
Pass |
3.3.5.15(e) |
|
35 |
Pass |
3.3.5.15(f) |
|
36 |
Pass |
3.3.5.15(g) |
Level IV Conformance Report Summary
There are 6 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
16 % |
|
Could Not Determine |
0 % |
Layer 3: Alerts Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level I Requirement: |
|
1 |
Pass |
3.2.2 |
|
2 |
Pass |
3.2.2(a) |
|
3 |
Pass |
3.2.2(b) |
|
4 |
Pass |
3.2.2(c) |
|
5 |
Pass |
3.2.2(d) |
|
6 |
Fail |
3.2.2.1 |
|
7 |
Pass |
3.2.2.1(1) |
|
9 |
Pass |
3.2.2.2(a) |
|
10 |
Pass |
3.2.2.2(b) |
|
11 |
Pass |
3.2.2.2(c) |
|
12 |
Pass |
3.2.2.2(d) |
|
13 |
Pass |
3.2.3 |
|
14 |
Pass |
3.2.4 |
Level I Conformance Report Summary
There are 13 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
92 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
7 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: Alerts Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level II Requirement: |
|
8 |
Pass |
3.2.2.2 |
|
15 |
Fail |
3.2.5 |
Level II Conformance Report Summary
There are 2 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
50 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
50 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: Procedural Information Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level Requirement: |
|
2 |
Pass |
3.6.1.2 |
|
5 |
Pass |
3.6.1.3.2(1) |
|
6 |
Partial |
3.6.1.3.3 |
|
7 |
Pass |
3.6.1.4.1 |
|
8 |
Pass |
3.6.1.4.2(1) |
|
10 |
Pass |
3.6.1.4.2.1 |
|
11 |
Pass |
3.6.1.4.2.2 |
|
12 |
Pass |
3.6.1.4.2.3 |
|
13 |
Pass |
3.6.1.4.2.4 |
|
14 |
Pass |
3.6.1.4.2.5 |
|
15 |
DNC |
3.6.1.4.2.6 |
|
16 |
Pass |
3.6.1.4.2.7 |
|
17 |
Pass |
3.6.1.4.2.8 |
|
18 |
Pass |
3.6.1.4.3 |
|
19 |
Pass |
3.6.1.4.3(a) |
|
20 |
Pass |
3.6.1.4.3(b) |
|
21 |
Pass |
3.6.1.4.3(c) |
|
22 |
Pass |
3.6.1.4.3(d) |
|
23 |
Pass |
3.6.1.4.3(e) |
|
24 |
Pass |
3.6.1.4.3(f) |
|
28 |
Pass |
3.6.1.5.2 |
|
31 |
Pass |
3.6.1.5.5 |
Level I Conformance Report Summary
There are 22 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
95 % |
|
Partially Conformant |
4 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
4 % |
|
Could Not Determine |
0 % |
Layer 3: Procedural Information Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level II Requirement: |
|
1 |
Pass |
3.6.1 |
|
30 |
Pass |
3.6.1.5.4 |
Level II Conformance Report Summary
There are 2 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: Procedural Information Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level III Requirement: |
|
3 |
Pass |
3.6.1.3.1 |
|
4 |
Pass |
3.6.1.3.2 |
|
25 |
Pass |
3.6.1.5 |
|
26 |
Pass |
3.6.1.5.1(1) |
|
27 |
Pass |
3.6.1.5.1(2) |
|
29 |
Pass |
3.6.1.5.3 |
Level III Conformance Report Summary
There are 6 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: Procedural Information Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level IV Requirement: |
|
9 |
Pass |
3.6.1.4.2(2) |
Level IV Conformance Report Summary
There are 1 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: Troubleshooting Information Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level I Requirement: |
|
1 |
Pass |
3.6.2 |
|
2 |
Pass |
3.6.2.1 |
|
3 |
Fail |
3.6.2.3 |
|
4 |
Fail |
3.6.2.3 |
|
5 |
Partial |
3.6.2.4 |
|
6 |
Fail |
3.6.2.5 |
|
7 |
Fail |
3.6.2.6 |
Level I Conformance Report Summary
There are 7 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
28 % |
|
Partially Conformant |
14 % |
|
Non Conformant |
57 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: Parts Information Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level I Requirement: |
|
1 |
Pass |
3.6.3 |
|
4 |
Pass |
3.6.3.1 |
|
5 |
Pass |
3.6.3.2 |
Level I Conformance Report Summary
There are 3 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: Parts Information Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level II Requirement: |
|
2 |
DNC |
3.6.3(1) |
|
3 |
Pass |
3.6.3(2) |
Level II Conformance Report Summary
There are 2 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
50 % |
|
Could Not Determine |
0 % |
Layer 3: Descriptive Information Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level II Requirement: |
|
1 |
Pass |
3.6.4 |
Level II Conformance Report Summary
There are 1 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: General Display Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level I Requirement: |
|
1 |
Pass |
3.4.2.1.1.1 |
Level I Conformance Report Summary
There are 1 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: General Display Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level III Requirement: |
|
2 |
Pass |
3.4.2.1.1.2 |
|
3 |
Pass |
3.4.2.1.1.3 |
|
4 |
Pass |
3.4.2.1.1.3.1 |
|
5 |
Pass |
3.4.2.1.1.4 |
|
6 |
Pass |
3.4.2.1.1.5 |
|
7 |
Pass |
3.4.2.1.1.6 |
|
8 |
Pass |
3.4.2.1.1.7 |
|
9 |
Pass |
3.4.2.3 |
|
10 |
Pass |
3.4.2.3(1) |
|
11 |
Pass |
3.4.2.3(2) |
|
12 |
Pass |
3.4.2.3(3) |
|
13 |
Pass |
3.4.2.3.1.1 |
|
14 |
Pass |
3.4.2.3.1.1(1) |
|
15 |
Pass |
3.5 |
Level III Conformance Report Summary
There are 14 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: GUI Display Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level I Requirement: |
|
1 |
Pass |
3.4.2.2.1 |
|
2 |
Pass |
3.4.2.2.2 |
|
3 |
Pass |
3.4.2.2.3 |
Level I Conformance Report Summary
There are 3 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: GUI Display Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level III Requirement: |
|
4 |
Pass |
3.4.2.2.4 |
Level III Conformance Report Summary
There are 1 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: Graphics Display Test Set
| Req. Number: 21 | DNC 3.5.1.7 |
Level I Conformance Report Summary
There are 1 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
0 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
100 % |
|
Could Not Determine |
0 % |
Layer 3: Graphics Display Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level III Requirement: |
|
1 |
Pass |
3.5.1 |
|
2 |
Pass |
3.5.1.1 |
|
3 |
Pass |
3.5.1.2 |
|
4 |
Pass |
3.5.1.2(a) |
|
5 |
Pass |
3.5.1.2(b) |
|
6 |
Fail |
3.5.1.2(c) |
|
7 |
Fail |
3.5.1.2(d) |
|
8 |
Pass |
3.5.1.2(e) |
|
9 |
Partial |
3.5.1.2(f) |
|
10 |
Pass |
3.5.1.2(g) |
|
11 |
Pass |
3.5.1.2(h) |
|
12 |
Pass |
3.5.1.2(i) |
|
13 |
Fail |
3.5.1.3 |
|
14 |
Fail |
3.5.1.3.1 |
|
15 |
Pass |
3.5.1.3.2 |
|
16 |
Pass |
3.5.1.3.3 |
|
17 |
Pass |
3.5.1.3.4 |
|
18 |
Pass |
3.5.1.4 |
|
19 |
Pass |
3.5.1.4.(1) |
|
20 |
Pass |
3.5.1.5 |
Level III Conformance Report Summary
There are 20 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
75 % |
|
Partially Conformant |
5 % |
|
Non Conformant |
20 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: Alerts Display Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level I Requirement: |
|
1 |
Pass |
3.5.1.6 |
|
2 |
Pass |
3.5.1.6(1) |
|
3 |
Pass |
3.5.1.6.1 |
|
4 |
Pass |
3.5.1.6.2 |
|
6 |
Pass |
3.5.1.6.3 |
|
7 |
Pass |
3.5.1.6.3(1) |
|
8 |
Pass |
3.5.1.6.3(2) |
|
10 |
Pass |
3.5.1.6.4 |
|
11 |
Pass |
3.5.1.6.5 |
|
12 |
Pass |
3.5.1.6.5(1) |
Level I Conformance Report Summary
There are 10 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: Alerts Display Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level IV Requirement: |
|
5 |
Pass |
3.5.1.6.2(1) |
|
9 |
Pass |
3.5.1.6.3(3) |
Level IV Conformance Report Summary
There are 2 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: Display Display Elements Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level I Requirement: |
|
8 |
Pass |
3.4.1.2 |
|
9 |
Pass |
3.4.1.2.2.1 |
|
19 |
Pass |
3.4.1.2.4.2.2 |
Level I Conformance Report Summary
There are 3 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 3: Display Display Elements Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level III Requirement: |
|
1 |
Pass |
3.4.1.2 |
|
2 |
Pass |
3.4.1.2(1) |
|
3 |
Pass |
3.4.1.2(2) |
|
4 |
Pass |
3.4.1.2(3) |
|
5 |
Fail |
3.4.1.2(4) |
|
6 |
Pass |
3.4.1.2(5) |
|
7 |
DNC |
3.4.1.2(6) |
|
10 |
Pass |
3.4.1.2.2.1(1) |
|
11 |
Pass |
3.4.1.2.2.1(2) |
|
12 |
Pass |
3.4.1.2.2.1(3) |
|
13 |
Pass |
3.4.1.2.2.1(4) |
|
14 |
Pass |
3.4.1.2.2.1(5) |
|
15 |
Pass |
3.4.1.2.4.2.1 |
|
16 |
Pass |
3.4.1.2.4.2.1(1) |
|
17 |
Pass |
3.4.1.2.4.2.1(2) |
Level III Conformance Report Summary
There are 16 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
93 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
6 % |
|
Did Not Consider |
6 % |
|
Could Not Determine |
0 % |
Layer 4: Common GUI Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level I Requirement: |
|
1 |
Pass |
3.4(1) |
|
2 |
Pass |
3.4(2) |
|
3 |
Pass |
3.4(3) |
|
4 |
Pass |
3.4(4) |
|
5 |
Pass |
3.4(5) |
|
6 |
Pass |
3.4(6) |
|
7 |
Pass |
3.4(7) |
|
8 |
Pass |
3.4(8) |
|
9 |
Pass |
3.4(9) |
|
10 |
Pass |
3.4(10) |
|
11 |
Pass |
3.4(11) |
|
12 |
Pass |
3.4(12) |
|
13 |
Pass |
3.4.1.1 |
|
14 |
Pass |
3.4.1.1.1 |
|
15 |
Fail |
3.4.1.1.1(1) |
|
16 |
Pass |
3.4.1.1.1(2) |
|
17 |
Pass |
3.4.1.1.1(3) |
|
18 |
Pass |
3.4.1.1.1(4) |
|
19 |
Pass |
3.4.1.1.1(5) |
|
20 |
Pass |
3.4.1.1.1(6) |
|
21 |
Pass |
3.4.1.1.3 |
|
25 |
Pass |
3.4.1.1.5 |
|
26 |
Pass |
3.4.1.3.6 |
|
27 |
Pass |
3.4.1.4 |
|
29 |
Pass |
3.4.2.4(1) |
|
30 |
Pass |
3.5.2.1(1.1) |
|
31 |
Pass |
3.5.2.1(1.2) |
|
32 |
Pass |
3.5.2.1(1.3) |
|
33 |
Pass |
3.5.2.1(1.4) |
|
34 |
Pass |
3.5.2.1(1.5) |
|
35 |
Pass |
3.5.2.1(1.6) |
|
50 |
Pass |
3.5.2.1(2.6) |
|
52 |
Pass |
3.5.2.1(2.8) |
Level I Conformance Report Summary
There are 33 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
96 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
3 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 4: Common GUI Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level II Requirement: |
|
23 |
Pass |
3.4.1.1.4 |
|
24 |
Pass |
3.4.1.1.4(1) |
|
44 |
Pass |
3.5.2.1(1.15) |
|
45 |
Pass |
3.5.2.1(2.1) |
|
46 |
Pass |
3.5.2.1(2.2) |
|
47 |
Pass |
3.5.2.1(2.3) |
|
48 |
Pass |
3.5.2.1(2.4) |
|
49 |
Pass |
3.5.2.1(2.5) |
|
51 |
Pass |
3.5.2.1(2.7) |
Level II Conformance Report Summary
There are 9 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 4: Common GUI Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level III Requirement: |
|
22 |
Pass |
3.4.1.1.3 |
|
28 |
Pass |
3.4.2.4 |
|
36 |
Pass |
3.5.2.1(1.7) |
|
37 |
Pass |
3.5.2.1(1.8) |
|
38 |
Pass |
3.5.2.1(1.9) |
|
39 |
Fail |
3.5.2.1(1.10) |
|
40 |
Pass |
3.5.2.1(1.11) |
|
41 |
Pass |
3.5.2.1(1.12) |
|
42 |
Pass |
3.5.2.1(1.13) |
|
43 |
Pass |
3.5.2.1(1.14) |
Level III Conformance Report Summary
There are 10 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
90 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
10 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 4: GUI Menu Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level I Requirement: |
|
1 |
Pass |
3.4.1.3 |
|
3 |
Pass |
3.4.1.3.4(1) |
|
6 |
Pass |
3.4.1.3.4.1(2) |
Level I Conformance Report Summary
There are 3 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 4: GUI Menu Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level III Requirement: |
|
2 |
Pass |
3.4.1.3.4 |
|
4 |
Pass |
3.4.1.3.4.1 |
|
5 |
Pass |
3.4.1.3.4.1(1) |
|
7 |
Pass |
3.4.1.3.4.2 |
|
8 |
Pass |
3.4.1.3.4.3 |
|
9 |
Pass |
3.4.1.3.4.4 |
|
10 |
Pass |
3.4.1.3.4.4(1) |
|
11 |
Pass |
3.4.1.3.4.5 |
|
12 |
Pass |
3.4.1.3.4.5(1) |
|
13 |
Pass |
3.4.1.3.4.6 |
|
14 |
Pass |
3.4.1.3.4.7 |
|
15 |
Pass |
3.4.1.3.5 |
|
16 |
Pass |
3.4.1.3.5(1) |
Level III Conformance Report Summary
There are 13 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 4: GUI Menu Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level I Requirement: |
|
1 |
Pass |
3.4.1.3 |
|
3 |
Pass |
3.4.1.3.4(1) |
|
6 |
Pass |
3.4.1.3.4.1(2) |
Level I Conformance Report Summary
There are 3 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 4: GUI Menu Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level III Requirement: |
|
2 |
Pass |
3.4.1.3.4 |
|
4 |
Pass |
3.4.1.3.4.1 |
|
5 |
Pass |
3.4.1.3.4.1(1) |
|
7 |
Pass |
3.4.1.3.4.2 |
|
8 |
Pass |
3.4.1.3.4.3 |
|
9 |
Pass |
3.4.1.3.4.4 |
|
10 |
Pass |
3.4.1.3.4.4(1) |
|
11 |
Pass |
3.4.1.3.4.5 |
|
12 |
Pass |
3.4.1.3.4.5(1) |
|
13 |
Pass |
3.4.1.3.4.6 |
|
14 |
Pass |
3.4.1.3.4.7 |
|
15 |
Pass |
3.4.1.3.5 |
|
16 |
Pass |
3.4.1.3.5(1) |
Level III Conformance Report Summary
There are 13 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 4: TroubleShooting Interaction Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level I Requirement: |
|
1 |
Fail |
3.6.2.2 |
|
2 |
Fail |
3.6.2.2(1) |
|
3 |
Fail |
3.6.2.2(2) |
|
4 |
Fail |
3.6.2.2(3) |
|
5 |
Fail |
3.6.2.6 |
|
6 |
Fail |
3.6.2.6(1) |
|
7 |
Fail |
3.6.2.6(2) |
Level I Conformance Report Summary
There are 7 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
0 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
100 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 4: Graphics Interaction Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level II Requirement: |
|
1 |
Pass |
3.4.2.2.5 |
|
2 |
Pass |
3.4.2.2.5(1) |
|
3 |
Pass |
3.4.2.2.6 |
|
5 |
Pass |
3.4.2.2.6.2 |
|
6 |
Pass |
3.4.2.2.6.3 |
|
7 |
Pass |
3.4.2.2.6.4 |
|
8 |
DNC |
3.4.2.6 |
|
9 |
DNC |
3.4.2.6(1) |
|
10 |
DNC |
3.4.2.7 |
|
11 |
DNC |
3.4.2.7(1) |
|
12 |
Pass |
3.5.2.2.3 |
Level II Conformance Report Summary
There are 11 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
36 % |
|
Could Not Determine |
0 % |
Layer 4: Graphics Interaction Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level III Requirement: |
|
4 |
Pass |
3.4.2.2.6.1 |
Level III Conformance Report Summary
There are 1 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 4: Tables Interaction Test Set
|
Req. Number: 1 |
Pass |
3.4.2.3.2 |
|
2 |
Pass |
3.4.2.3.3 |
|
3 |
Pass |
3.4.2.3.4 |
|
4 |
Pass |
3.4.2.3.4(1) |
|
5 |
Pass |
3.4.2.3.4(2) |
Level III Conformance Report Summary
There are 5 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 5: Linking Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level I Requirement: |
|
1 |
Pass |
3.1.5 |
|
5 |
Fail |
3.1.5.2 |
Level I Conformance Report Summary
There are 2 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
50 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
50 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 5: Linking Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level II Requirement: |
|
2 |
Pass |
3.1.5(1) |
|
3 |
Pass |
3.1.5(2) |
Level II Conformance Report Summary
There are 2 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 5: Linking Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level III Requirement: |
|
4 |
Pass |
3.1.5.1 |
Level III Conformance Report Summary
There are 1 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 5: Linking Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level I Requirement: |
|
1 |
Pass |
3.1.5 |
|
5 |
Fail |
3.1.5.2 |
Level I Conformance Report Summary
There are 2 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
50 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
50 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 5: Linking Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level II Requirement: |
|
2 |
Pass |
3.1.5(1) |
|
3 |
Pass |
3.1.5(2) |
Level II Conformance Report Summary
There are 2 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |
Layer 5: Linking Test Set
|
Req. Number: |
Verdict: |
MIL-M-87268 Level III Requirement: |
|
4 |
Pass |
3.1.5.1 |
Level III Conformance Report Summary
There are 1 Requirement(s) for Test Set
|
Verdict Type |
Percentage |
|
Conformance |
100 % |
|
Partially Conformant |
0 % |
|
Non Conformant |
0 % |
|
Did Not Consider |
0 % |
|
Could Not Determine |
0 % |


<!SGML "ISO 8879:1986"
CHARSET BASESET "ISO 646-1983//CHARSET International Reference Version
(IRV)//ESC 2/5 4/0" -- 2/5 was 2/8 --
DESCSET 0 9 UNUSED
9 2 9
11 2 UNUSED
13 1 13
14 18 UNUSED
32 95 32
127 1 UNUSED
BASESET "ISO Registration Number 100//CHARSET ECMA-94
Right Part of Latin Alphabet Nr. 1//ESC 2/13 4/1"
DESCSET 128 32 UNUSED
160 5 32
165 1 UNUSED
166 88 38
254 1 127
255 1 UNUSED
CAPACITY SGMLREF
TOTALCAP 175000
GRPCAP 70000
ATTCAP 50000
SCOPE DOCUMENT
SYNTAX
SHUNCHAR CONTROLS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
18 19 20 21 22 23 24 25 26 27 28 29 30 31 127 255
BASESET "ISO 646-1983//CHARSET International Reference Version
(IRV)//ESC 2/5 4/0"
DESCSET 0 128 0
FUNCTION RE 13
RS 10
SPACE 32
TAB SEPCHAR 9
NAMING LCNMSTRT ""
UCNMSTRT ""
LCNMCHAR "-."
UCNMCHAR "-."
NAMECASE GENERAL YES
ENTITY NO
DELIM GENERAL SGMLREF
SHORTREF NONE
NAMES SGMLREF
QUANTITY SGMLREF LITLEN 2048
NAMELEN 32
ATTCNT 80
GRPCNT 80
FEATURES
MINIMIZE DATATAG NO OMITTAG YES RANK NO
SHORTTAG NO
LINK SIMPLE NO IMPLICIT NO EXPLICIT NO
OTHER CONCUR NO SUBDOC NO FORMAL YES
APPINFO "HyTime"
>
<!-- IETM Content Model Generic Layer V.6.1. -->
<!DOCTYPE file [
<!NOTATION MIL-D-87269-a PUBLIC "-//USA-DOD//NOTATION Content Data Model Generic Layer//EN">
<!-- ENTITY % MIL-D-87269-a PUBLIC "-//USA-DOD//DTD Content Data Model Generic Layer//EN" -->
<!-- %MIL-D-87269-a; -->
<!-- MIL-M-28001 Math entities are listed as comments. If mathpac support is
required, place these entity definitions in the body of the TAG ENTITIES
group and provide the math.dtd
<!ENTITY % mathpac PUBLIC "-//USA-DOD//DTD SUP MIL-M-28001 MATHPACK
9110001//EN" >
%mathpac;
<!ENTITY % mathtxt "dfref | f ">
<!ENTITY % mathcon "df | dfg "> -->
<!-- TAG ENTITIES -->
<!ENTITY % text "text | text-alts">
<!ENTITY % table "table | table-alts">
<!ENTITY % graphic "graphic | graphic-alts | grphprim | grphprim-alts">
<!ENTITY % audio "audio | audio-alts">
<!ENTITY % video "video | video-alts">
<!ENTITY % process "process | process-alts">
<!ENTITY % dialog "dialog | dialog-alts">
<!ENTITY % link "link | hylink">
<!ENTITY % primitive "%text; | %table; | %graphic; | %audio; | %video; | %process; | %dialog; |
expression | assertion ">
<!ENTITY % binop "eq | ne | lt | gt | le | ge | and | or | xor | concat | substring | append | plus |
minus | times | divide | idivide | exponent | mod | remove | union | intersect |
set-diff | member | subset | disjoint | add | subsequence ">
<!ENTITY % unop "not | empty | size | head | tail | neg | remove | trunc | float | index | undef |
max | min">
<!ENTITY % value "boolean | string | sequence | set | real | integer | nil">
<!-- ATTRIBUTE ENTITIES -->
<!-- The Organization Level List contains the reference types for the Organization Level DTD. -->
<!ENTITY % orglvllist "system | descinfo | partinfo | task | partbase" >
<!-- The linkendlist is the entity directly referenced by the reftypes attribute of a link or a hylink.
It includes the standard types for the generic layer and uses an entity to include those for derived
DTDs. The default O-level DTD is included using the orglvllist entity. Targets for other DTDs
can be included with entities similiar to the orglvllist. This can lead to overruning the
capacity declarations in the SGML Declaration in which case the required adjustments should
be made (e.g., increase the capacity declaration or remove unused targets in the list). -->
<!ENTITY % linkendlist "(%orglvllist; | text | table | graphic | audio | video | para0 | process | dialog
| entry| THEORY)">
<!ENTITY % a.root
"HyTime NAME HyDoc
boslevel NUMBER #IMPLIED
id ID #IMPLIED
name CDATA #IMPLIED
type CDATA #IMPLIED
itemid CDATA #IMPLIED" >
<!-- ARCHITECTURAL FORMS AND CORRESPONDING ATTRIBUTE LIST ENTITIES -->
<!-- NOTE: MIL-D-87269 architectural forms begin with the
term "element" in lowercase to distinguish them from element type
definitions per the conventions of ISO 10744. Do not attempt
to uncomment these and use them as element type definitions. -->
<!-- element "NODE" - - (precond*, (%link;)*, ( NODE | NODE-ALTS |
NODE-SEQ | %primitive; )*, postcond*) -->
<!ENTITY % a.node
"id ID #IMPLIED
name CDATA #IMPLIED
type CDATA #IMPLIED
itemid CDATA #IMPLIED
cdm NAME #FIXED 'node'
ref IDREF #CONREF" >
<!-- element "NODE-ALTS" - - (NODE)+ -->
<!ENTITY % a.node-alts
"id ID #IMPLIED
cdm NAME #FIXED 'node-alts'
ref IDREF #CONREF" >
<!-- element "NODE-SEQ" - - (NODE | NODE-ALTS | IF-NODE | LOOP-NODE)+ -->
<!ENTITY % a.node-seq
"id ID #IMPLIED
cdm NAME #FIXED 'node-seq'
ref IDREF #CONREF" >
<!-- element "IF-NODE" - - (expression, NODE-SEQ, NODE-SEQ?) -->
<!ENTITY % a.if-node
"id ID #IMPLIED
cdm NAME #FIXED 'if-node'
ref IDREF #CONREF" >
<!-- element "LOOP-NODE" - - (assertion?, expression, assertion?, NODE-SEQ) -->
<!ENTITY % a.loop-node
"id ID #IMPLIED
cdm NAME #FIXED 'loop-node'
ref IDREF #CONREF" >
<!-- NOTATIONS for external non-SGML datatypes. -->
<!NOTATION cgmbin PUBLIC "ISO 8632/2//NOTATION Binary encoding//EN" >
<!NOTATION cgmchar PUBLIC "ISO 8632/2//NOTATION Character encoding//EN" >
<!NOTATION cgmclear PUBLIC "ISO 8632/2//NOTATION Clear Text encoding//EN" >
<!NOTATION fax PUBLIC "-//USA-DOD//NOTATION CCITT Group 4 Facsimile//EN" >
<!NOTATION faxtile PUBLIC "-//USA-DOD//NOTATION CCITT Group 4 Facsimile Type 2 Tiled
Raster//EN">
<!NOTATION iges PUBLIC "-//USA-DOD//NOTATION Initial Graphics Exchange
Specification//EN" >
<!-- NOTE: The following notation (bitmap) is used in the document instance example of
the Organizational Level DTD in this Guide. This commercial notation is not included in CALS
standards. The status and use of commercial data formats for MIL-D-87269 deliverables is
determined by the procuring agency. -->
<!NOTATION bitmap PUBLIC "+//ISBN 0-7923-9432-1::Graphic Notation//NOTATION
Microsoft Windows bitmap//EN" >
<!-- The following NOTATION declaration is used for external SGML document instances, e.g., to
break up data base files into smaller sets -->
<!NOTATION SGML PUBLIC
"+//ISO 8879:1986//NOTATION Standard Generalized Markup Language//EN">
<!-- To use the SGML entity for external references, declare an entity as follows:
<!ENTITY database3 system "database3.sgm" CDATA SGML>
-->
<!-- NOTE: Currently the external pointer attributes for the audio, video and
process element types have a type of CDATA. To ensure maximum portability of files,
future versions of the DTD should include NOTATION declarations for these types.
The external-ptr attribute value should be rewritten as a NOTATION reference
once the eligible notation formats are selected. -->
<!-- ELEMENT TEMPLATES -->
<!ELEMENT link - - (#PCDATA) >
<!ATTLIST link
id ID #IMPLIED
endtypes %linkendlist; #REQUIRED
linkends IDREFS #REQUIRED >
<!ELEMENT hylink - - (#PCDATA) >
<!ATTLIST hylink
Hytime NAME #FIXED 'ilink'
id ID #IMPLIED
anchrole CDATA #FIXED 'hotspot target #AGG'
linkends IDREFS #REQUIRED
reftype CDATA #FIXED 'linkends %linkendlist; #SEQ'
extra NAMES 'A A'
intra NAMES 'A A'
endterms IDREFS #IMPLIED
aggtrav NAMES agg >
<!ELEMENT nameloc - - (nmlist*) >
<!ATTLIST nameloc
HyTime NAME nameloc
id ID #REQUIRED
ordering (ordered|noorder) ordered
set (set|notset) notset
aggloc (aggloc|agglink|nagg) agglink >
<!ELEMENT nmlist - - (#PCDATA) -- lextype(NAMES) -->
<!ATTLIST nmlist
HyTime NAME nmlist
nametype (entity|element|unified) entity
obnames (obnames|nobnames) nobnames
docorsub ENTITY #IMPLIED
dtdorlpd -- lextype(DTD|LPD+) -- NAMES #IMPLIED >
<!-- Primitive Elements -->
<!ELEMENT text - O (precond*, (%link;)*, (#PCDATA | text-alts | text | property)+ ) >
<!ATTLIST text
%a.node; >
<!-- NOTE TO USER: If the use of element types from the entities for
mathtxt and mathcon are required, uncomment these entity definitions and
include %mathtxt and % mathcon in the text element type definition
content model. -->
<!-- ELEMENT text - - (precond*, (%link;)*, (#PCDATA | text-alts | text | property |
%mathtxt; | %mathcon;)+, hotspot? ) -->
<!ELEMENT text-alts - O (text)+ >
<!ATTLIST text-alts
%a.node-alts; >
<!ELEMENT table - O (precond*, (%link;)*, rowhddef*, colhddef*, entry*) >
<!ATTLIST table
%a.node; >
<!ELEMENT table-alts - O (table)+ >
<!ATTLIST table-alts
%a.node-alts; >
<!ELEMENT rowhddef - O (%text;) >
<!ATTLIST rowhddef
id ID #IMPLIED
ref IDREF #CONREF
row NUTOKEN #REQUIRED >
<!ELEMENT colhddef - O (%text;) >
<!ATTLIST colhddef
id ID #IMPLIED
ref IDREF #CONREF
colnum NUTOKEN #REQUIRED >
<!ELEMENT entry - O ((%link;)* , ( %text; | %graphic;)) >
<!ATTLIST entry
id ID #IMPLIED
ref IDREF #CONREF
colnum NUTOKEN #REQUIRED
row NUTOKEN #REQUIRED >
<!ELEMENT graphic - O (precond*, (%link;)*, (%graphic;)+, assertion*) >
<!ATTLIST graphic
%a.node;
minsize NUTOKENS #IMPLIED --height and width in inches --
penshape CDATA #IMPLIED
penpatt CDATA #IMPLIED
transfrm NUTOKENS #IMPLIED
window NMTOKENS #IMPLIED >
<!ELEMENT graphic-alts - O (graphic)+ >
<!ATTLIST graphic-alts
%a.node-alts; >
<!ELEMENT grphprim - O (precond*, (%link;)*, (%text;)) >
<!ATTLIST grphprim
%a.node;
coding NOTATION (cgmchar | cgmbin | cgmclear | fax | faxtile | iges | bitmap) 'cgmbin'
minsize NUTOKENS #IMPLIED -- height and width in inches --
penshape CDATA #IMPLIED
penpatt CDATA #IMPLIED
transfrm NUTOKENS #IMPLIED
x-location NMTOKEN #IMPLIED
y-location NMTOKEN #IMPLIED
window NMTOKENS #IMPLIED
external-ptr ENTITY #IMPLIED
picid NUTOKEN #IMPLIED >
<!ELEMENT grphprim-alts - O (grphprim)+ >
<!ATTLIST grphprim-alts
%a.node-alts; >
<!ELEMENT audio - O (precond*, (%link;)*) >
<!ATTLIST audio
%a.node;
external-ptr ENTITY #REQUIRED >
<!ELEMENT audio-alts - O (audio+) >
<!ATTLIST audio-alts
%a.node-alts; >
<!ELEMENT video - O (precond*, (%link;)*) >
<!ATTLIST video
%a.node;
external-ptr ENTITY #REQUIRED >
<!ELEMENT video-alts - O (video+) >
<!ATTLIST video-alts
%a.node-alts; >
<!ELEMENT process - O (precond*, (%link;)*, parameter*) >
<!ATTLIST process
%a.node;
external-ptr ENTITY #REQUIRED >
<!ELEMENT process-alts - O (process+) >
<!ATTLIST process-alts
%a.node-alts;>
<!ELEMENT parameter - - (expression) >
<!ATTLIST parameter
mode (in | out | in-out) 'in' >
<!-- Dialog Elements -->
<!ELEMENT dialog - O (precond*, (%link;)*, (%text;)?, (%dialog; | fillin | menu | selection)+ ) >
<!ATTLIST dialog
%a.node;
agent CDATA #IMPLIED >
<!ELEMENT dialog-alts - O (dialog)+ >
<!ATTLIST dialog-alts
%a.node-alts; >
<!ELEMENT fillin - O ((%link;)*, prompt, property, (%text;)?, generic-range?) >
<!ATTLIST fillin
id ID #IMPLIED
ref IDREF #CONREF >
<!ELEMENT generic-range - - (set | sequence | num-range) >
<!ELEMENT num-range - - (low-bound, high-bound) >
<!ELEMENT low-bound - - (integer | real) >
<!ELEMENT high-bound - - (integer | real) >
<!ELEMENT menu - O ((%link;)*, prompt, choice+) >
<!ATTLIST menu
id ID #IMPLIED
ref IDREF #CONREF
select (single | multiple) 'single' >
<!ELEMENT prompt - O (%text; | %graphic;) >
<!ATTLIST prompt
id ID #IMPLIED
ref IDREF #CONREF >
<!ELEMENT choice - O ((%text; | %graphic;), (assertion+ | %dialog;) ) >
<!ATTLIST choice
id ID #IMPLIED
ref IDREF #CONREF
default (yes | no) 'no' >
<!ELEMENT selection - O (((%link;), (assertion+ | %dialog;))+,
(text | table | graphic)) >
<!ATTLIST selection
id ID #IMPLIED
ref IDREF #CONREF >
<!-- Context Filtering Elements -->
<!ELEMENT precond - O (expression) >
<!ATTLIST precond
id ID #IMPLIED
ref IDREF #CONREF >
<!ELEMENT postcond - O (assertion) >
<!ATTLIST postcond
id ID #IMPLIED
ref IDREF #CONREF >
<!ELEMENT expression - O ((expression, (%binop;), expression)
| ((%unop;), expression) | property | (%value;)) >
<!ATTLIST expression
id ID #IMPLIED
ref IDREF #CONREF >
<!ELEMENT assertion - O (property, expression) >
<!ATTLIST assertion
id ID #IMPLIED
ref IDREF #CONREF >
<!ELEMENT (eq, ne, lt, gt, le, ge, and, or, xor, concat,
substring, append, plus, minus, times, divide, idivide ) - O EMPTY >
<!ELEMENT (exponent, mod, union, intersect, set-diff, member, subset, disjoint, subsequence,
not, empty, size, head, tail, neg, trunc, float, undef, max, min) - O EMPTY >
<!ELEMENT add - O (index-value)? >
<!ELEMENT remove - O (index-value, index-value?)? >
<!ELEMENT index - O (index-value, index-value?) >
<!ELEMENT index-value - O (#PCDATA) >
<!ELEMENT property - O (#PCDATA) >
<!ATTLIST property
id ID #IMPLIED
ref IDREF #CONREF
type CDATA #REQUIRED
value-type CDATA 'general'
dialog-ref IDREF #IMPLIED >
<!ELEMENT (boolean, string, real, integer) - - (#PCDATA) >
<!ELEMENT (set, sequence) - - (%value;)* >
<!ELEMENT nil - O EMPTY >
<!-- DOCTYPE file [ -->
<!-- IETM CONTENT DATA MODEL 6.1
Content Specific DTD 15 March 1995. Created from 10 November 1993 version -->
<!-- ENTITY % MIL-D-87269-a PUBLIC "-//USA-DOD//DTD Content Data Model Generic Layer//EN" >
%MIL-D-87269-a; -->
<!-- Content Layer Entities -->
<!ENTITY % sub-prims "%text;|%table;|%graphic;|%audio;|%video;|%process;|%dialog;" >
<!ENTITY % system "system | system-alts" >
<!ENTITY % descinfo "descinfo | descinfo-alts" >
<!ENTITY % task "task | task-alts" >
<!ENTITY % reqcond "reqcond | reqcond-alts" >
<!ENTITY % input "input | input-alts" >
<!ENTITY % person "person | person-alts" >
<!ENTITY % equip "equip | equip-alts" >
<!ENTITY % refmat "refmat | refmat-alts" >
<!ENTITY % expend "expend | expend-alts" >
<!ENTITY % consum "consum | consum-alts" >
<!ENTITY % alert "alert | alert-alts" >
<!ENTITY % step "step | step-alts" >
<!ENTITY % follow-on "follow-on | follow-on-alts" >
<!ENTITY % partinfo "partinfo | partinfo-alts" >
<!ENTITY % partbase "partbase | partbase-alts" >
<!ENTITY % connection "connection | connection-alts" >
<!ENTITY % attach-part "attach-part | attach-part-alts" >
<!ENTITY % location "location | location-alts" >
<!ENTITY % faultinf "faultinf | faultinf-alts" >
<!ENTITY % test "test | test-alts" >
<!ENTITY % outcome "outcome | outcome-alts" >
<!ENTITY % fltstate "fltstate | fltstate-alts" >
<!ENTITY % fault "fault | fault-alts" >
<!ENTITY % rect "rect | rect-alts" >
<!ENTITY % para0 "para0 | para0-alts" >
<!-- Main Elements -->
<!ELEMENT file - - (version+, frame+ ) >
<!ATTLIST file
%a.root;
frametag CDATA #IMPLIED
title CDATA #IMPLIED
style CDATA #IMPLIED
help CDATA #IMPLIED
index CDATA #IMPLIED
hide (yhidepnl | nhidepnl) "nhidepnl"
loc (TOP | BTM | LFT | RGT) "RGT"
hgap NUMBER #IMPLIED
vgap NUMBER #IMPLIED
depth NUMBER #IMPLIED
ht NUMBER #IMPLIED
wt NUMBER #IMPLIED
xofs NUMBER #IMPLIED
yofs NUMBER #IMPLIED
domain CDATA #IMPLIED >
<!-- <!ELEMENT file - - (button | frame)+ >
<!ATTLIST file
frametag CDATA #IMPLIED
title CDATA #IMPLIED
style CDATA #IMPLIED
help CDATA #IMPLIED
index CDATA #IMPLIED
hide (yhidepnl | nhidepnl) "nhidepnl"
loc (TOP | BTM | LFT | RGT) "RGT"
hgap NUMBER #IMPLIED
vgap NUMBER #IMPLIED
depth NUMBER #IMPLIED
ht NUMBER #IMPLIED
wt NUMBER #IMPLIED
xofs NUMBER #IMPLIED
yofs NUMBER #IMPLIED
domain CDATA #IMPLIED >
-->
<!ELEMENT system - O (precond*, (%link;)*, (%system;)*,
(%descinfo;)*, (%task;)*, (%partinfo;)*,
(%faultinf;)* ) >
<!ATTLIST system
%a.node;
version IDREF #REQUIRED
status (u | a) 'a' >
<!ELEMENT system-alts - O (system)+ >
<!ATTLIST system-alts
%a.node-alts; >
<!ELEMENT version - O (%text;)? >
<!ATTLIST version
%a.node;
revision NMTOKEN #REQUIRED
revdate NUMBERS #REQUIRED
changeno NUMBER #REQUIRED
chgdate NUMBERS #REQUIRED
deleted NMTOKENS #IMPLIED >
<!-- Asynchronous elements -->
<!ENTITY % async "bold | undl | italic | sub | sup | symbol" >
<!ELEMENT bold - - (#PCDATA) -(bold) >
<!ELEMENT undl - - (#PCDATA) -(undl) >
<!ELEMENT italic - - (#PCDATA) -(italic) >
<!ELEMENT sub - - (#PCDATA) -(sub, sup) >
<!ELEMENT sup - - (#PCDATA) -(sup, sub) >
<!ELEMENT symbol - - (#PCDATA) -(symbol) >
<!-- Use the symbol tag around entities that are only
displayable by using the symbol font in your
stylesheet. -->
<!--Description Elements -->
<!ELEMENT descinfo - O (precond*, (%link;)*, para-seq+, postcond*) >
<!ATTLIST descinfo
%a.node;
version IDREF #REQUIRED
status (u | a) 'a' >
<!ELEMENT descinfo-alts - O (descinfo)+ >
<!ATTLIST descinfo-alts
%a.node-alts; >
<!ELEMENT para0 - O (precond*, (%link;)*, (%sub-prims;)+, para-seq?, postcond*) >
<!ATTLIST para0
%a.node;
version IDREF #REQUIRED
status (u | a) 'a' >
<!ELEMENT para0-alts - O (para0)+ >
<!ATTLIST para0-alts
%a.node-alts; >
<!ELEMENT para-seq - O (title*, (%descinfo; | para0 | para0-alts | if-para | loop-para)+) >
<!ATTLIST para-seq
%a.node-seq; >
<!ELEMENT if-para - O (expression, para-seq, para-seq?) >
<!ATTLIST if-para
%a.if-node; >
<!ELEMENT loop-para - O (assertion?, expression, assertion?, para-seq) >
<!ATTLIST loop-para
%a.loop-node; >
<!-- Task Elements -->
<!ELEMENT task - O (precond*, (%link;)*, (%input;)*, step-seq, (%follow-on;)*, postcond*) >
<!ATTLIST task
%a.node;
version IDREF #REQUIRED
status (u | a) 'a'
esttime NUTOKEN #IMPLIED
operability CDATA #IMPLIED
servicedes CDATA #IMPLIED >
<!ELEMENT task-alts - O (task)+ >
<!ATTLIST task-alts
%a.node-alts; >
<!ELEMENT input - O (precond*, (%link;)*, (%alert;)*, (%reqcond;)*, (%person;)+, (%refmat;)*,
(%equip;)*, (%expend;)*, (%consum;)* ) >
<!ATTLIST input
%a.node;
version IDREF #REQUIRED
status (u | a) 'a' >
<!ELEMENT input-alts - O (input)+ >
<!ATTLIST input-alts
%a.node-alts; >
<!ELEMENT reqcond - O (precond*, (%link;)*, (%text;)?, (expression, (%task; | %step;),
assertion*), postcond*) >
<!ATTLIST reqcond
%a.node;
version IDREF #REQUIRED
status (u | a) 'a' >
<!ELEMENT reqcond-alts - O (reqcond)+ >
<!ATTLIST reqcond-alts
%a.node-alts; >
<!ELEMENT refmat - O (precond*, (%link;)*, (%text;)? ) >
<!ATTLIST refmat
%a.node;
version IDREF #REQUIRED
status (u | a) 'a'
desig CDATA #REQUIRED >
<!ELEMENT refmat-alts - O (refmat)+ >
<!ATTLIST refmat-alts
%a.node-alts; >
<!ELEMENT expend - O (precond*, (%link;)*, (%partbase;)?, (%expend;)* ) >
<!ATTLIST expend
%a.node;
version IDREF #REQUIRED
status (u | a) 'a'
quantity NUTOKEN #REQUIRED >
<!ELEMENT expend-alts - O (expend)+ >
<!ATTLIST expend-alts
%a.node-alts; >
<!ELEMENT person - O (precond*, (%link;)*, (%text;)? ) >
<!ATTLIST person
%a.node;
version IDREF #REQUIRED
status (u | a) 'a'
quantity NUTOKEN #REQUIRED >
<!ELEMENT person-alts - O (person)+ >
<!ATTLIST person-alts
%a.node-alts; >
<!ELEMENT equip - O (precond*, (%link;)*, (%equip;)*, (%text;)?, (%partbase;)) >
<!ATTLIST equip
%a.node;
version IDREF #REQUIRED
status (u | a) 'a'
quantity NUTOKEN #REQUIRED >
<!ELEMENT equip-alts - O (equip)+ >
<!ATTLIST equip-alts
%a.node-alts; >
<!ELEMENT consum - O (precond*, (%link;)*, (%partbase;)?, (%consum;)* ) >
<!ATTLIST consum
%a.node;
version IDREF #REQUIRED
status (u | a) 'a'
govstd CDATA #IMPLIED
mfgcode CDATA #IMPLIED
milspec CDATA #IMPLIED
quantity NUTOKEN #REQUIRED
unit-of-measure NMTOKEN #IMPLIED >
<!ELEMENT consum-alts - O (consum)+ >
<!ATTLIST consum-alts
%a.node-alts; >
<!ELEMENT alert - O (para)+ >
<!ATTLIST alert
id ID #IMPLIED
idref IDREF #CONREF
type (warning|caution|note) "warning"
icon CDATA #IMPLIED >
<!ELEMENT para - O (#PCDATA) +(%async;) >
<!--ELEMENT alert - O (precond*, (%link;)*, (%text;)+, (%graphic;)* ) -->
<!--ATTLIST alert
%a.node;
version IDREF #REQUIRED
status (u | a) 'a' -->
<!ELEMENT alert-alts - O (alert)+ >
<!ATTLIST alert-alts
%a.node-alts; >
<!ELEMENT step - O (precond*, (%link;)*, (%alert;)*, (%sub-prims;)*, step-seq?, postcond* ) >
<!ATTLIST step
%a.node;
version IDREF #REQUIRED
status (u | a) 'a'
esttime NUTOKEN #IMPLIED >
<!ELEMENT step-alts - O (step)+ >
<!ATTLIST step-alts
%a.node-alts; >
<!ELEMENT step-seq - O (title*, (step | step-alts | if-step | loop-step | task | task-alts)+ ) >
<!ATTLIST step-seq
%a.node-seq; >
<!ELEMENT if-step - O (expression, step-seq, step-seq?) >
<!ATTLIST if-step
%a.if-node; >
<!ELEMENT loop-step - O (assertion?, expression, assertion?, step-seq) >
<!ATTLIST loop-step
%a.loop-node; >
<!ELEMENT follow-on - O (precond*, (%link;)*, (%text;)?, (expression, (%task; | %step;),
assertion*), postcond* ) >
<!ATTLIST follow-on
%a.node;
version IDREF #REQUIRED
status (u | a) 'a' >
<!ELEMENT follow-on-alts - O (follow-on)+ >
<!ATTLIST follow-on-alts
%a.node-alts; >
<!-- Parts Information -->
<!ELEMENT partinfo - O (precond*, (%link;)*, (%partinfo;)*, (%partbase;)+, (%connection;)*,
(%attach-part;)*, (%text;)?, (%graphic;)*, (%location;)* ) >
<!ATTLIST partinfo
%a.node;
version IDREF #REQUIRED
status (u | a) 'a'
indexnum NUTOKENS #IMPLIED
lru NUTOKEN #IMPLIED
mtbf CDATA #IMPLIED
refdes NMTOKEN #IMPLIED
unitsper NUTOKEN #IMPLIED
usablon NUTOKENS #IMPLIED
wuc CDATA #IMPLIED >
<!ELEMENT partinfo-alts - O (partinfo)+ >
<!ATTLIST partinfo-alts
%a.node-alts; >
<!ELEMENT partbase - O (precond*, (%link;)*, (%partbase;)*, (%text;)?, (%location;)* ) >
<!ATTLIST partbase
%a.node;
version IDREF #REQUIRED
status (u | a) 'a'
cage NUTOKENS #REQUIRED
fsc CDATA #REQUIRED
partnum CDATA #REQUIRED
smr CDATA #REQUIRED
nsn CDATA #IMPLIED
pmic CDATA #IMPLIED
replvl CDATA #IMPLIED
cac NUTOKEN #IMPLIED
qpei NUTOKEN #IMPLIED
hci (Y1 | N1) "N1"
lox (Y2 | N2) "N2"
esds (Y3 | N3) "N3"
qec (Y4 | N4) "N4"
magnetic (Y5 | N5) "N5"
procure (Y6 | N6) "N6" >
<!ELEMENT partbase-alts - O (partbase)+ >
<!ATTLIST partbase-alts
%a.node-alts; >
<!ELEMENT connection - O (precond*, (%link;)*, (%partinfo;)+ ) >
<!ATTLIST connection
%a.node;
version IDREF #REQUIRED
status (u | a) 'a' >
<!ELEMENT connection-alts - O (connection)+ >
<!ATTLIST connection-alts
%a.node-alts; >
<!ELEMENT attach-part - O (precond*, (%link;)*, (%partinfo;)+ ) >
<!ATTLIST attach-part
%a.node;
version IDREF #REQUIRED
status (u | a) 'a' >
<!ELEMENT attach-part-alts - O (attach-part)+ >
<!ATTLIST attach-part-alts
%a.node-alts; >
<!ELEMENT location - O (precond*, (%link;)*) >
<!ATTLIST location
%a.node;
version IDREF #REQUIRED
status (u | a) 'a'
location-x NUTOKENS #IMPLIED
location-y NUTOKENS #IMPLIED
location-z NUTOKENS #IMPLIED >
<!ELEMENT location-alts - O (location)+ >
<!ATTLIST location-alts
%a.node-alts; >
<!ELEMENT faultinf - O (precond*, (%link;)*, (%test;)+, (%fault;)* ) >
<!ATTLIST faultinf
%a.node;
version IDREF #REQUIRED
status (u | a) 'a' >
<!ELEMENT faultinf-alts - O (faultinf)+ >
<!ATTLIST faultinf-alts
%a.node-alts; >
<!ELEMENT test - O (precond*, (%link;)*, (%task;), (%outcome;)+ ) >
<!ATTLIST test
%a.node;
version IDREF #REQUIRED
status (u | a) 'a'
agent CDATA #IMPLIED
range CDATA #IMPLIED >
<!ELEMENT test-alts - O (test)+ >
<!ATTLIST test-alts
%a.node-alts; >
<!ELEMENT outcome - O (precond*, (%link;)*, expression, ((%fltstate;) | ((%test; | %fault;),
(%fltstate;)? ) ) ) >
<!ATTLIST outcome
%a.node;
version IDREF #REQUIRED
status (u | a) 'a' >
<!ELEMENT outcome-alts - O (outcome)+ >
<!ATTLIST outcome-alts
%a.node-alts; >
<!ELEMENT fltstate - O (precond*, (%link;)*, (%fault;)+ ) >
<!ATTLIST fltstate
%a.node;
version IDREF #REQUIRED
status (u | a) 'a'
weight NUTOKENS #IMPLIED >
<!ELEMENT fltstate-alts - O (fltstate)+ >
<!ATTLIST fltstate-alts
%a.node-alts; >
<!ELEMENT fault - O (precond*, (%link;)*, (%rect; | %fltstate; )+,
(%system;)+ ) >
<!ATTLIST fault
%a.node;
version IDREF #REQUIRED
status (u | a) 'a'
mtbf CDATA #IMPLIED >
<!ELEMENT fault-alts - O (fault)+ >
<!ATTLIST fault-alts
%a.node-alts; >
<!ELEMENT rect - O (precond*, (%link;)*, (%task;)+, (%fault;)+, (%system;), (%test;)* ) >
<!ATTLIST rect
%a.node;
version IDREF #REQUIRED
status (u | a) 'a'
action (swap | maint) #REQUIRED
agent CDATA #IMPLIED >
<!ELEMENT rect-alts - O (rect)+ >
<!ATTLIST rect-alts
%a.node-alts; >
<!-- Frame elements from IADS DTD -->
<!ELEMENT frame - O ( (%system;)+| idxcls | contcls | struccls)
+(button, hotspot, bold) >
<!ATTLIST frame
%a.node
label CDATA #REQUIRED
title CDATA #IMPLIED
help CDATA #IMPLIED
showno (yshowno | nshowno) "yshowno"
hidemenu (yhidmnu | nhidmnu) "nhidmnu"
next CDATA #IMPLIED
previous CDATA #IMPLIED
style CDATA #IMPLIED
index CDATA #IMPLIED
image CDATA #IMPLIED
hide (yhidepnl | nhidepnl) "nhidepnl"
loc (TOP | BTM | LFT | RGT) "RGT"
hgap NUMBER #IMPLIED
vgap NUMBER #IMPLIED
depth NUMBER #IMPLIED
ht NUMBER #IMPLIED
wt NUMBER #IMPLIED
xofs NUMBER #IMPLIED
yofs NUMBER #IMPLIED >
<!ELEMENT button - O EMPTY >
<!ATTLIST button
pos NUMBER #REQUIRED
show (nshow | yshow) "yshow"
label CDATA #IMPLIED
type (msg | frame | pic | next | prev | note | exit
| program | search | index | help | bookmark
| report | print | back) "msg"
link CDATA #IMPLIED
bitmap (ybitmap | nbitmap) "nbitmap"
bitfile CDATA #IMPLIED >
<!ELEMENT hotspot - - (#PCDATA | action)+ -(hotspot)>
<!ELEMENT action - - CDATA >
<!ELEMENT tmno - - (#PCDATA)
+(%async;) >
<!ELEMENT idxcls - - (title?, para*, (illusndx | tablendx
| tocndx | viewndx | randlist | seqlist), graphic*)>
<!ATTLIST idxcls
tmno CDATA #IMPLIED >
<!ELEMENT contcls - - (brkboxu | desc | dimentbl | errormsg | errorrpt
| glossary | howtouse | icdtbl | idinfo | initcond
| maint | mtoetb | mntalloc | notice | oper | pmcstab
| refdestb | requirtb | safesum | signal | subj
| subtask | suplytab | task | theory | tooleqp
| torqtbl | troblsht | tstpoint )>
<!ATTLIST contcls
tmno CDATA #IMPLIED >
<!ELEMENT struccls - - (book | package | appendix )>
<!ATTLIST struccls
tmno CDATA #IMPLIED >
<!ELEMENT title - - (#PCDATA) +(%async;) >
<!ATTLIST title
titleid CDATA #IMPLIED >
<!ELEMENT subtitle - - (#PCDATA) +(%async;)>
]>


#####################################################################################
# File: inspec.ins
# Developed by: Linda King
# Bart Spearen
# Purpose: This file was created for the Avalanche FastTAG version 2.4 to convert and tag
# the technical manual TM 11-5855-238-24&P Night Vision Goggles to an Interactive
# Electronic Technical Manual. This work was done under Task 8 of the DOD CALS IDE
# Project.
#
#####################################################################################
# INSPEC file for testing FastTag
name: default_runtxt # call it this if nothing else matches
name: default_table # call this is a table object is found
category: table
name: chap_heading1 # 'Chapter' title heading
title exists: Y
title attributes: all caps
body exists: N
name: chap_heading2 # sub chapter title heading
minimum number of lines before: 1
title attributes: all caps
body exists: N
name: sect_heading1 # 'Section' title header object
keyword: /Section/
maximum number of lines: 1
minimum number of lines before: 1
name: sect_heading2 # sub section title header object
title exists: Y
number: /[0-9]+\-[0-9]+\.#/
title form: /.*#/
maximum number of lines: 2
minimum number of lines before: 1
name: bullets # bullet object
first line indent: 5-15
minimum number of lines before: 1
minimum number of lines: 1
name: paragraphs # paragraph object
alignment: L
minimum number of lines before: 1
minimum number of lines: 1
name: steps # step object
keyword: /\(/
number: /[0-9]+/
body exists: Y
first line indent: 5-20
minimum number of lines before: 1
name: caution # CAUTION object
keyword: /CAUTION/
body exists: Y
name: warning # WARNING object
keyword: /WARNING/
body exists: Y
name: note # NOTE object
keyword: /NOTE/
body exists: Y
#####################################################################################
# File: louis.lou
# Developed by: Linda King
# Bart Spearen
# Purpose: This file was created for the Avalanche FastTAG version 2.4 to convert and tag
# the technical manual TM 11-5855-238-24&P Night Vision Goggles to an Interactive
# Electronic Technical Manual. This work was done under Task 8 of the DOD CALS IDE
# Project.
#
#####################################################################################
# LOUISE file for Running Test
start # Places tags needed in front of document and initializes variables needed in other functions below
{
printline "<file id = 'goggles'>";
printline "<version id='rev1' revision='chg1' revdate='041696' changeno='01' chgdate='041696'>";
printline;
s = 0;
sect = 0;
p = 0;
task = 0;
step = 0;
linecount = 0;
noteid = 0;
cautionid = 0;
warningid = 0;
section_number = 0;
section_title = "";
put_para_frame = @insert_para_frame;
}
default_runtxt # Used if an object of text is undefined
{
printline;
print "#########";
OUTPUT BODY;
printline "#########";
printline;
}
default_table # Used if an object is defined as an table
{
printline;
printline "/*****TABLE*********/";
printline "/*****TABLE*********/";
printline;
}
chap_heading1 # places the title defined in comment quotes for the SGML parser
{
print "<!-- ";
OUTPUT TITLE;
print " --> ";
printline;
}
chap_heading2 # places the body defined in comment quotes for the SGML parser
{
print "<!-- ";
OUTPUT BODY;
print " --> ";
printline;
}
sect_heading1 # Used if a new section object is found
{
frame_title = substr(KEYWORD, 1, length(KEYWORD));
frame_body = substr(BODY, 1, length(BODY));
if(match(BODY, /[Tt][Rr][Oo][Uu][Bb]/) < 20 && match(BODY, /[Tt][Rr][Oo][Uu][Bb]/) != 0)
task = 1; # Checks to see if the phrase 'troub' is found within the body object
IF (s == 1 && task == 0) # Section already defined and 'troub' is not found
{
sect = sect + 1;
printline "</para-seq></descinfo>"; # close current section frame
printline "</system></frame>";
linecount = 5;
printline;
printline "<frame id='sect" | sect | "' label='sect" | sect | "' "; # start new frame
print "title=' ";
OUTPUT KEYWORD;
print " ";
OUTPUT BODY;
print " ' style='frame.sty'> ";
printline "<system id='iads" |sect| "' version='rev1'>";
printline;
print "<descinfo version='rev1'> ";
p = 0;
}
ELSE IF(s == 0 && task == 0) # No section defined yet and 'troub' is not found
{
sect = sect + 1;
printline "<frame id='sect" | sect | "' label='sect" | sect | "' "; # start new frame
print " title=' ";
OUTPUT KEYWORD;
print " ";
OUTPUT BODY;
print " ' style='frame.sty'>";
printline "<system id='iads" |sect| "' version='rev1'>";
printline;
print "<descinfo version='rev1'> ";
s = 1;
p = 0;
}
ELSE IF(s == 1 && task == 1) # Section already defined and 'troub' found
{
sect = sect + 1;
printline "</step-seq></task>"; # Close current frame
printline "</system></frame>";
printline;
linecount = 5;
printline "<frame id='sect" | sect | "' label='sect" | sect | "' "; # Start new frame
print "title=' ";
OUTPUT KEYWORD;
print " ";
OUTPUT BODY;
print " ' style='frame.sty'> ";
printline "<system id='iads" |sect| " ' version='rev1'>";
printline;
print "<task version='rev1'> ";
p = 0;
}
ELSE IF(s == 0 && task == 1) # Section is not defined and 'troub' is found
{
sect = sect + 1;
printline "<frame id='sect" | sect | "' label='sect" | sect | "' "; # Start new frame
print " title=' ";
OUTPUT KEYWORD;
print " ";
OUTPUT BODY;
print " ' style='frame.sty'>";
printline "<system id='iads" |sect| "' version='rev1'>";
printline;
print "<task version='rev1'>";
s = 1;
p = 0;
}
linecount = linecount + LINE_COUNT;
}
sect_heading2 #Used if within a section and an paragraph object is defined
{
IF (p == 1 && task == 0) # If paragraph is defined and not in a troubleshooting section
{
printline "</para-seq>"; #close current paragraph sequence
printline;
printline "<para-seq>"; #start new paragraph sequence
}
ELSE IF(p == 0 && task == 0) #if paragraph is not defined and not in a troubleshooting section
{
printline "<para-seq>"; #Start new paragraph sequence
p = 1;
}
ELSE IF(p == 1 && task == 1) # if paragraph is defined and in a troubleshooting section
{
printline "</step-seq>"; # close current paragraph sequence
printline;
printline "<step-seq>"; #start new paragraph sequence
}
ELSE IF(p == 0 && task == 1) #if paragraph is not defined and in a troubleshooting section
{
printline "<step-seq>"; #start new paragraph sequence
p = 1;
}
printline "<title>"; # place these tags in all sequences
OUTPUT NUMBER;
print " ";
OUTPUT TITLE;
print "</title> ";
printline;
linecount = linecount + LINE_COUNT;
section_title = substr(TITLE, 1, length(TITLE));
if(NUMBER == 0)
section_number = 1;
else
section_number = substr(NUMBER, 1, length(NUMBER));
}
bullets #Used if bullets are found in the text
{
linecount = linecount + LINE_COUNT;
IF(task != 0) # Is the text in a troubleshooting section?
{
print "<step version='rev1'><text>";
OUTPUT BODY;
printline "</text></step> ";
}
ELSE
{
print "<para0 version='rev1'><text>";
OUTPUT BODY;
printline "</text></para0> ";
}
printline;
IF(linecount >= 25)
call $put_para_frame;
}
paragraphs # Used for single paragraphs
{
if(task == 0) # Is the text in a troubleshooting section?
{
print "<para0 version='rev1'><text>";
OUTPUT BODY;
printline "</text></para0> ";
}
else
{
print "<step version='rev1'><text>";
OUTPUT BODY;
printline "</text></step> ";
}
printline;
linecount = linecount + LINE_COUNT;
if(linecount >= 25)
call $put_para_frame;
}
note #Used for notes
{
noteid = noteid + 1;
print "<!-- ";
OUTPUT KEYWORD;
print " --> ";
print "<step version='rev1'> <alert type = 'note' id = 'noteid" | noteid | "'> <para> ";
OUTPUT BODY;
print "</para> </alert> </step>";
}
warning #Used for warnings
{
warningid = warningid + 1;
print "<!-- ";
OUTPUT KEYWORD;
print " --> ";
print "<step version='rev1'> <alert type = 'warning' id = 'warningid" |warningid|"'> <para> ";
OUTPUT BODY;
print "</para> </alert> </step>";
}
caution # Used for cautions
{
cautionid = cautionid + 1;
print "<!-- ";
OUTPUT KEYWORD;
print " --> ";
print "<step version='rev1'> <alert type = 'caution' id = 'cautionid"|cautionid|"'> <para> ";
OUTPUT BODY;
print "</para> </alert> </step>";
}
steps # Used in numbered steps are found
{
printline;
if(task ==1) #In a troubleshooting section?
{
print " <step version='rev1'> <text>";
OUTPUT KEYWORD;
OUTPUT NUMBER;
OUTPUT BODY;
print "</text> </step>";
}
else if(task == 0)
{
print "<para0 version='rev1'><text>";
OUTPUT KEYWORD;
OUTPUT NUMBER;
OUTPUT BODY;
printline "</ text></para0> ";
}
printline;
linecount = linecount + LINE_COUNT;
if(linecount >= 25)
call $put_para_frame;
}
finish #Used when finishing off a file
{
if(task == 0) #In a troubleshooting section??
{
printline "</para-seq> ";
printline "</descinfo>";
}
else
{
printline "</step-seq> ";
printline "</task>";
}
printline "</system>";
printline "</frame>";
printline "</file> ";
}
insert_para_frame #Used when the linecount of a frame exceeds a line limit (currently 25)
{
sect = sect + 1;
if(task == 1) #In a troubleshooting section??
{
printline;
printline "<step version = 'rev1'><text><bold> Continue . . . </bold> </text></step>";
printline "</step-seq></task>"; #End current frame
printline "</system></frame>";
printline;
printline "<frame id = 'sect" |sect| "' label = 'sect" |sect| "' "; #Start new frame
printline "title=' " |frame_title| " " |frame_body| " ' style='frame.sty'> ";
printline "<system id = 'iads" |sect| "' version = 'rev1'>";
printline;
printline "<task version = 'rev1' > <step-seq>";
printline "<title> " | section_number | " " | section_title | " (cont.) </title>";
}
else
{
printline;
printline "<para0 version='rev1'><text><bold> Continued . . . . </bold></text></para0>";
printline "</para-seq></descinfo>";
printline "</system></frame>";
printline;
printline "<frame id = 'sect" |sect| "' label = 'sect" |sect| "' ";
print "title=' " |frame_title| " " |frame_body| " ' style='frame.sty'> ";
printline "<system id = 'iads" |sect| "' version = 'rev1'>";
printline;
printline "<descinfo version = 'rev1' > <para-seq>";
printline "<title> " | section_number | " " | section_title | " (cont.) </title>";
}
linecount = 1;
}
//*******************************************************************
// File Name: tagging.cpp
// Developers: Bart Spearen
// Linda King
// Purpose: This is a conversion script that will identify phrases in
// an ASCII text file and place SGML start and end 'hotspot' tags
// around the phrases.
// Date: 5/14/96
//*******************************************************************
#include <stdio.h>
#include <iostream.h>
#include <string.h>
#include <malloc.h>
// Global Character Strings
char HOTSPOT_TAG[] = "<hotspot>";
char BEGIN_TAGS[] = "<action><?display ";
char PICTURE[] = "picture= \"";
char END_PICTURE[] = ".pic\">";
char TEXT[] = "text= \"";
char END_TEXT[] = "\">";
char FRAME[] = "!";
char FRAME_END[] = "\.ide!";
char END_TAGS[] = "</action></hotspot>";
// Enumerations
enum Bool {FALSE, TRUE};
typedef enum {PIC, TXT, FRM} Type;
// Prototypes
void vPlaceBeginTags(FILE *, char cString[], char *, int );
void vPlaceMiddleTags(FILE *, char cString[], Type, char *);
void vPlaceEndTags(FILE *, char cRight[]);
void main()
{
FILE *fInput = NULL, *fOutput = NULL;
char cInput_Name[80], *cOutput_Name = NULL, *cPath = NULL, charac;
char cLeft[] = "(", cRight[] = ")";
char cString[80], *cString_Found, *point;
char cFig[] = "fig", cApp[] = "app", cPara[] = "para";
int j = 0;
Bool Path_Found = FALSE;
memset(cString, NULL, 80); // Setting memory to NULL
memset(cInput_Name, NULL, 80);
cout << "File name: \n"; // Asking user for input file name
gets(cInput_Name);
if((fInput = fopen(cInput_Name, "r")) != NULL) //Open input file
{
if((cOutput_Name = (char *)calloc(1, strlen(cInput_Name)+ 1)) != NULL) // allocate memory for output file name
{
strcpy(cOutput_Name, cInput_Name); // Copy input file name so that
cPath = cOutput_Name; // a similar output name can be
// constructed below.
while(j++ < strlen(cOutput_Name))
cPath++;
j = 0;
while(j < strlen(cOutput_Name) ) // Looking for path.....
{
if(strncmp(cPath, "\\", 1) == 0 )
{
memset(cPath + 1, '_', 1);
Path_Found = TRUE;
break;
}
else
cPath--;
j++;
}
if(!Path_Found) // No path found change name
memset(cPath, '_', 1);
j = 0;
}
if((fOutput = fopen(cOutput_Name, "w")) != NULL) // open output file
{
while(!feof(fInput))
{
charac = getc(fInput);
if(!feof(fInput))
{
if((strncmp(&charac, "a", 1) == 0) || // Looking for the letter 'A'
(strncmp(&charac, "A", 1) == 0))
{
j = 1;
memset(cString, NULL, 80);
memset(cString, charac, 1);
while((strpbrk(cString," ") == NULL) && j < 80) // Looking for the first space after the letter 'A'
cString[j++] = getc(fInput); // Copying phrase
if(((cString_Found = strstr(cString, "Appen")) == cString) || // checking to see
((cString_Found = strstr(cString, "appen")) == cString)) // if phrase copied is 'appen'
{
cString[j++] = getc(fInput);
while((strpbrk(cString," ") == NULL) && j < 80) // Looking for next space after word that starts with 'appen'
cString[j++] = getc(fInput);
vPlaceBeginTags(fOutput, cString, cString_Found, 0); // Place beginning tags
vPlaceMiddleTags(fOutput, cString, FRM, cApp); // Place middle tags
vPlaceEndTags(fOutput, NULL); // Place end tags
}
else
fputs(cString, fOutput);
}
else if((strncmp(&charac, "f", 1) == 0) || // Looking for the letter 'F'
(strncmp(&charac, "F", 1) == 0))
{
j = 1;
memset(cString, NULL, strlen(cString));
memset(cString, charac, 1);
while((strpbrk(cString," ") == NULL) && j < 80) // finding the first space after the letter
cString[j++] = getc(fInput); // copying everthing between letter and space
if(((cString_Found = strstr(cString, "figu")) == cString) || // checking for the phrase 'figu'
((cString_Found = strstr(cString, "Figu")) == cString))
{
cString[j++] = getc(fInput);
while((strchr(&cString[j - 1], ' ') == NULL) && j < 80) // Looking for the first space after
cString[j++] = getc(fInput); // the next phrase after the phrase 'figu'
cString[strlen(cString) - 1] = NULL;
vPlaceBeginTags(fOutput, cString, cString_Found, 0); // place beginning tags
vPlaceMiddleTags(fOutput, cString, PIC, cFig); // place middle tags
vPlaceEndTags(fOutput, NULL); // place end tags
}
else
fputs(cString, fOutput);
}
else if(strncmp(&charac, cLeft, 1) == 0) // Looking for '('
{
putc(charac, fOutput);
j = 1;
memset(cString, NULL, 80);
memset(cString, charac, 1);
while((strpbrk(cString,cRight) == NULL) && j < 80) // Looking for ')' within 80 characters of '('
cString[j++] = getc(fInput);
if((cString_Found = strstr(cString, cFig)) != NULL) // Looking for 'fig'
{
vPlaceBeginTags(fOutput, cString, cString_Found, 1);
vPlaceMiddleTags(fOutput, cString, PIC, cFig);
vPlaceEndTags(fOutput, cRight);
}
else if((cString_Found = strstr(cString, cApp)) != NULL) // Looking for 'app'
{
vPlaceBeginTags(fOutput, cString, cString_Found, 1);
vPlaceMiddleTags(fOutput, cString, FRM, cApp);
vPlaceEndTags(fOutput, cRight);
}
else if((cString_Found = strstr(cString, cPara)) != NULL) // Looking for 'para'
{
vPlaceBeginTags(fOutput, cString, cString_Found, 1);
vPlaceMiddleTags(fOutput, cString, TXT, cPara);
vPlaceEndTags(fOutput, cRight);
}
else
{
point = &cString[1];
fputs(point, fOutput);
}
}
else
putc(charac, fOutput);
}
}
fclose(fOutput); // closing output file
}
else
cout << "ERROR Output";
fclose(fInput); // closing input file
}
else
cout << "ERROR Input";
if(cOutput_Name) // freeing memory
{
memset(cOutput_Name, NULL, strlen(cOutput_Name));
free(cOutput_Name);
}
point = NULL;
memset(cInput_Name, NULL, 80);
cString_Found = NULL;
memset(cString, NULL, 80);
}
//*********************************************************
// Function: vPlaceBeginTags
// Arguments: Out (FILE *) - pointer to Output file
// text[] (char) - character array of entire phrase
// Found (char *) - character pointer to phrase to be found
// index (int ) - tells what position of text[] to copy to file
// Returns: Void
//*********************************************************
void vPlaceBeginTags(FILE *Out, char text[], char *Found, int index)
{
if(index != 0)
text[strlen (text) - 1] = NULL;
while((text + index) != Found)
putc(text[index++], Out);
fputs(HOTSPOT_TAG, Out);
fputs(&text[index], Out);
fputs(BEGIN_TAGS, Out);
}
//**********************************************************
//*********************************************************
// Function: vPlaceEndTags
// Arguments: Out (FILE *) - pointer to Output file
// cRight[] (char) - character to be placed at end of phrase
// Returns: Void
//*********************************************************
void vPlaceEndTags(FILE *Out, char cRight[])
{
fputs(END_TAGS, Out);
fputs(cRight, Out);
}
//***********************************************************
//*********************************************************
// Function: vPlaceMiddleTags
// Arguments: Out (FILE *) - pointer to Output file
// cString[] (char) - inner phrase string found from breaking down bigger string
// type (Type) - Tells what type of phrase that is found
// text (char *) - string passed that is determined by type of phrase found
// Returns: Void
//*********************************************************
void vPlaceMiddleTags(FILE *Out, char cString[], Type type, char *text)
{
char *point;
switch (type) {
case PIC: // 'Picture' phrase found
fputs(PICTURE, Out);
fputs(text, Out);
point = strrchr(cString, ' ');
fputs(++point, Out);
fputs(END_PICTURE, Out);
break;
case TXT: // 'Appendix' phrase found
fputs(TEXT, Out);
fputs(text, Out);
point = strrchr(cString, ' ');
fputs(++point, Out);
fputs(END_TEXT, Out);
break;
case FRM:
fputs(TEXT, Out); // 'para' phrase found
fputs(FRAME, Out);
fputs(text, Out);
point = strrchr(cString, ' ');
fputs(++point, Out);
fputs(FRAME_END, Out);
fputs(text, Out);
fputs(point, Out);
fputs(END_TEXT, Out);
break;
default:
break;
}
}

