Figure 2: Form for choosing IR to browse.
Since IRs contain re-usable building blocks for constructing APs (as was discussed in Section 1), STEP AP developers frequently need to search existing IR documents for information relevant to their industrial application. These documents have traditionally been available in paper form or electronically as PostScript, ASCII, or word processor-specific files. None of these formats provide a convenient way for AP developers to search for concepts across all of the existing IRs. They also fail to represent the IR document structure or the relationships between EXPRESS constructs in the IRs. Therefore, the traditional media for disseminating IR documents are not very useful to STEP AP developers. The APIB gateway's browser provides a way of disseminating IRs that should be far more useful to AP developers than either paper or the usual electronic formats.
Suppose the user chooses to view IRs using the APIB browser. A CGI script is invoked and generates a web page as shown in Figure 2. This web page contains a form consisting of a set of radio buttons for each IR in the APIB and a Browse button. The web page also contains a link back to the APIB home page. This form allows the user to choose one of the IRs in the APIB to browse. The CGI script obtained the names of the IRs in the form by querying the APIB.
Figure 3: Form for choosing section of IR Part 101 to browse.
Now suppose the user chooses Part 101: Draughting[ISO101] and clicks the Browse button. Another CGI script will generate a web page as shown in Figure 3. This web page contains a form for choosing a section of Part 101 to browse. The form contains a collection of radio buttons corresponding to the major sections of a STEP IR document. The first four radio buttons represent sections whose names are common to all IRs. The three schema names, however, are specific to Part 101 and had to be obtained by means of an APIB query. An IR document also contains several appendices, but the APIB Gateway does not yet support browsing them. This capability will be added in the near future.
When the user clicks Browse in the form in Figure 3, a CGI script generates a web page containing the text of the IR document section chosen. This is accomplished in the following three steps:
Note that this is the first time in the sample user session where the SGML-to-HTML translator was used. Heretofore, all of the APIB queries resulted in lists of names rather than raw SGML data.
Figure 4: Portion of schema web page specifying EXPRESS declaration.
Suppose now that the user chooses to view the draughting_element_schema from among the choices given in the form in Figure 3. The resulting web page that gets generated represents the content of this schema. This web page begins with an EXPRESS declaration for the schema. Figure 4 shows the EXPRESS declaration for the draughting_element_schema. This schema contain external references to objects in three other schemas: geometry_schema, support_resource_schema, and presentation_definition_schema. To make it easy for the user to view these referenced schemas, the web page includes a form next to the EXPRESS declaration with a pull-down list containing the schemas referenced. These schema names were obtained by querying the APIB for the schemas referenced by draughting_element_schema. The user can choose a schema name from the pull-down list and click a button to view that particular schema.
In addition to an EXPRESS declaration, the web page contains other documentation about the schema such as introductory text, fundamental concepts and assumptions, and some definitions of terminology used. These items (not shown in Figure 4) correspond to subsections of the schema's clause in the IR document.
The bulk of the schema's content, however, consists of the types, entities, functions, and rules that make up an EXPRESS model. The user can view any of the schema's objects by selecting the object name from a pull-down list in a form on the web page. The draughting_element_schema has entities and types, but no rules or functions. Therefore, this schema has the two forms for viewing objects as shown in Figure 5.
Figure 5: Forms for choosing entities and types for draughting_element_schema.
Suppose the user chooses to view the entity dimension_curve_directed_callout. A CGI script generates a web page containing the portion of the IR describing that entity. To obtain this information, the CGI script issues an APIB query for the entity definition for the entity named ``dimension_curve_directed_callout''. Since no two entities in STEP are allowed to have the same name, the APIB query result is a single entity definition clause from draughting_element_schema. Because the entity definition contains SGML-tagged text from the APIB, the query result must be run through the SGML-to-HTML translator so it can be displayed as a web page. Figure 6 shows the beginning of this web page. The web page begins with a definition of the entity, followed by a link to a figure, followed by an EXPRESS specification (partially shown in Figure 6). Clicking on the figure link spawns a viewer to view the graphic. The CGI-generated web page also contains informative text not shown in Figure 6.
Figure 6: Beginning of web page for entity dimension_curve_directed_callout.