Catalog Modeler |
Catalog ArchitectureGlobal and internal view of catalog documents |
|
Technical Article |
AbstractThis article details the global view and the internal view of the Catalog architecture. |
Users often need a way of storing and classifying the many objects they have at their disposal, whether they be screws, ball bearings or computer parts. These objects may number tens of thousands, each with its own specific characteristics such as shape, color, size, diameter, length, etc. To facilitate fast and easy retrieval of such objects and avoid time-wasting redesign, Version 5 offers the possibility of creating catalogs.
A catalog is a V5 document and is in the form of a tree structure made up of:
This external catalog view is internally described by three object types:
This article presents the Catalog Architecture in the first paragraph to place the Catalog document in the V5 architecture, and so explains how you can you integrate in this architecture.
The rest of the article is to describe the internal view of the Catalog document:
Before reading it, it is important to already be familiar with the basic Catalog notions, see the referenced article [1], and with the basic Knowledge notions, see the referenced Knowledge home page [2]
The Catalog architecture is the following [Fig.1]: a common API, two different user interfaces (CATIA and ENOVIA) and two storage modes (file and data base). You can use the same API to work on CATIA catalogs (file based) or on Enovia catalogs (stored in data base).
The Catalog API is defined in the ComponentsCatalogsInterfaces framework. There are several domains coveraged by these interfaces:
A catalog is made up of chapters, keywords and descriptions.
The root container of the catalog document implements the CATICatalogChapterFactory interface. As usual, to retrieve the root
container of a document, use the CATInit interface and its GetRootContainer
method.
All the chapters, created by the CATICatalogChapterFactory are in the same root container.
The description has a link to an object (_ReferencedObject
)
which can be
This object can be retrieved by the GetObject
method of the CATICatalogDescription interface. In the chapter's
case, see the "Description" sub-section in the Catalog Overview
article [1] to have details about this method.
The keyword has a name (_Name
) and has a type (_Type
).
The type is a knowledge type [2]. For the keyword value see the next paragraph.
Prototype/Instance Mechanism for Descriptions
This mechanism [3] enables to kept on the reference description, at least, the keywords default value. Although the reference description is not visible by CAA API the default values are accessible through the chapter API.
The keyword value management is the following:
The QueryResult object does not appear in Fig.2 because it does not exist in a catalog document. It is a temporary object to filter a chapter. This object is used in three cases:
GetObject
method on a CATICatalogDescription interface returns such object,The QueryResult object has a chapter behavior (it implements CATICatalogChapter). Its descriptions are a sub-set of the filtered chapter's descriptions. Notice its link to the filtered chapter (the red arrow).
A Part family is a set of descriptions coming from the design table of a document (only Part document are now integrated).
The family is a chapter and its keywords come at least from the headers of its design tables [2]. Those keywords are automatically created when you add a Part family in a chapter. You can also add keywords on such family.
_KeywordValue:
The keyword of the chapter. The keyword values
are the default values._KeywordValue:
The keyword values are those of one row of the design table
if the keywords come from the design table, otherwise it is the value
of the keyword set by CAA API or by the end user through the Catalog
Editor._ReferencedObject
: It has a link to the resolved part (part updated with the
appropriate configuration of the design table if the resolution has been launched)Another way of creating descriptions in a chapter is using persistent queries. It is a query done on an external chapter (chapter from an another catalog).
The chapter has keywords but in opposite to the Part family case, it is only end user keywords.
_KeywordValue
: The keyword of the chapter. The values of
these keywords are those that you set using the CATICatalogPersistentQuery
interface. ResolveQuery
method)_KeywordValue:
As usual, the keywords of the chapter can be valuated_ReferencedObject:
The external description The keyword value management is the following:
[Top]
This article describes the catalog architecture and the internal view of a catalog document.
[Top]
[1] | Catalog Overview |
[2] | Feature Modeler Overview |
[3] | Knowledge Home Page |
[Top] |
Version: 1 [Aug 2002] | Document created |
[Top] |
Copyright © 2002, Dassault Systèmes. All rights reserved.