Rules and Standards

CAA V5 XML Naming Rules

Standard names for public CAA V5 XML entities
Technical Article

Abstract

As CAA V5 introduces a number of different programming entities, naming conventions have been developed in order to avoid name collisions inside and outside the CAA environment, and to make things clearer for its developers. This article describes these naming conventions for XML entities.


General Principles

The following general principles have been established when choosing rules for CAA V5 names:

  1. Brand-based prefixes. A prefix [1] is used for most entities that may collide with other entities of the same nature, but developed outside the Dassault Systèmes (DS) Group. It denotes the DS origin of the entity. Other entity suppliers, and in particular CAA partners, are expected not to begin their names with DS reserved prefixes. Prefixes are based on DS brand names, because of their perennity : V5 is the default prefix for all DS cross-brands resources (CAT for CATIA, ENOV for ENOVIA, DELM for DELMIA)
  2. Aliases for frameworks. All frameworks are assigned a short 3-letter alias with first letter capitalized (e.g., V5Dialog-> Dlg) [2]. This alias is used as a shortcut for the framework name for building other framework related names. It is referred to as <FWAlias> in the remaining of this document. Framework aliases will be defined in the framework's identity card. Trigrams are typically used to name entities that are associated to frameworks (eg modules). Since all modules from all frameworks are merged at runtime into common repositories (e.g., RuntimeView), trigrams provides a mean of avoiding conflicts. For a given framework FW, the same trigram applies to the framework and to its associated FW.tst and FW.edu frameworks.
  3. English. Names are based on American English words.

[Top

Global Rule

Entity Name Entity Nature Naming Rule Metrics
1-All All V5<EntityName>
  • Name length should not exceed 27 characters
  • Names are composed using [A-Z][a-z][0-9] symbol range. Other symbols (such as \, -, /, ; _and the like) are forbidden
Nb of deviations / Nb of entities

[Top]

Entities Associated with a Directory

The entity and the directory that contain it must have the same name.

Note: V5 can be replaced by other valid prefixes (such as CAA, CAT, ENOV, and DELM) in the patterns below.

Entity Name Entity Nature Directory Naming Rule Notes Metrics
1-XML Schema repository Physical grouping of XML Schema. V5<FWName>/CNext/resources/xsd/ If the naming rule based on the framework name is not used for file name in this directory, then a subdirectory unique to the particular application should be used. Nb of deviations / Nb of entities
2-XML instance documents repository Physical grouping of XML document instances. V5<FWName>/CNext/resources/xml/ If the naming rule based on the framework name is not used for file name in this directory, then a subdirectory unique to the particular application should be used.
 
This directory should be used to store pre-defined XML instance documents, like examples of XML files complying to a specific XML schema. This directory must not be used to generate XML files.
Nb of deviations / Nb of entities
3-XML transform scripts repository Physical grouping of XML transform scripts. V5<FWName>/CNext/resources/xsl/ If the naming rule based on the framework name is not used for file name in this directory, then a subdirectory unique to the particular application should be used. Nb of deviations / Nb of entities
4 - WSDL declaration files repository Physical grouping of WSDL declaration files. V5<FWName>/CNext/resources/wsdl/ If the naming rule based on the framework name is not used for file name in this directory, then a subdirectory unique to the particular application should be used.

 

Examples of such directories:

CATMathematics/CNext/resources/xsd/
CATMathematics/CNext/resources/xml/
CATMathematics/CNext/resources/xsl/
CATMathematics/CNext/resources/wsdl/

 

Entity Name Entity Nature Directory Naming Rule Notes Metrics
5-XML Namespaces Physical and logical grouping of XML Schemas, WSDL declarations, etc. in a naming structure. http://dassaultsystemes.com/<fwkname>[/<suffix>] <fwkname> is the name of the framework in lowercase letters.
The optional <suffix> is an extra name, a descriptive noun or noun phrase, in mixed case with the first letter of each word capitalized.
A namespace is a logical identifier, used as an hint by the XML processor to locate actual resources. The URL notation recommended here helps to assign unique names to namespaces. The URL does not have to be an actual Internet URL: copy-pasting such an URL in an Internet browser is not likely to lead to actual pages. 
For a use by another company than Dassault Systèmes, the http://dassaultsystemes.com/ prefix must be replaced by another one, for example one reflecting the author's company.
Nb of deviations / Nb of entities

For example, the following element declaration show the use of an XML schema namespace in a framework called CATMathematics, with the '/Matrices' suffix to group matrix-related type and element definitions.
<xsd:schema targetNamespace="http://dassaultsystemes.com/catmathematics/Matrices"
            xmlns="http://dassaultsystemes.com/catmathematics/Matrices"
            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            elementFormDefault="qualified">

[Top]

Entities Associated with a File

One of the main purposes of the naming rules is to insure the uniqueness of the files. As regards the XML document files, uniqueness of XML instances, schemas, transform scripts, must be done at the framework scope.

Entity Name Entity Nature Entity and File Naming Rule Notes Metrics
6-XML Schema Standard XML Schema declaration <fwkname><Name>.xsd The name should be a descriptive noun or noun phrase, in mixed case with the first letter of each word capitalized.
<fwkname> is the name of the framework in lowercase letters.
Nb of deviations / Nb of entities

Example:

Entity Name Entity Nature Entity and File Naming Rule Notes Metrics
7-XMLinstance document Standard XML document <fwkname><Name>.xml The name should be a descriptive noun or noun phrase, in mixed case with the first letter of each word capitalized.
<fwkname> is the name of the framework in lowercase letters.
Nb of deviations / Nb of entities

 

Example:

Entity Name Entity Nature Entity and File Naming Rule Notes Metrics
8-XMLtransform script Standard XML transform script <fwkname><Name>.xsl The name should be a descriptive noun or noun phrase, in mixed case with the first letter of each word capitalized.
<fwkname> is the name of the framework in lowercase letters.
Nb of deviations / Nb of entities

 

Example:

 

 

Entity Name Entity Nature Entity and File Naming Rule Notes Metrics
7-XMLinstance document Standard XML document <fwkname><Name>.xml The name should be a descriptive noun or noun phrase, in mixed case with the first letter of each word capitalized.
<fwkname> is the name of the framework in lowercase letters.
Nb of deviations / Nb of entities
8-XMLtransform script Standard XML transform script <fwkname><Name>.xsl The name should be a descriptive noun or noun phrase, in mixed case with the first letter of each word capitalized.
<fwkname> is the name of the framework in lowercase letters.
Nb of deviations / Nb of entities
9- Web Services messages and portTypes declarations Standard WSDL declaration file <fwkname><Name>Declarations.wsdl The name should be a descriptive noun or noun phrase, in mixed case with the first letter of each word capitalized except for the first letter (to keep elements named by a simple noon in lower case).
WSDL declaration files must import XML schemas declaration files they depend on.
<fwkname> is the name of the framework in lowercase letters.
Nb of deviations / Nb of entities
10- Web Services bindings and services declarations Standard WSDL service file <fwkname><Name>Services.wsdl The name should be a descriptive noun or noun phrase, in mixed case with the first letter of each word capitalized except for the first letter (to keep elements named by a simple noon in lower case).
WSDL services files must import WSDL declaration files they depend on.
<fwkname> is the name of the framework in lowercase letters.
Nb of deviations / Nb of entities

[Top]


References

[1] CAA V5 Naming Rules
[2] Trigrams for Frameworks
[3] CAA V5 XML Coding Rules
[Top]

History

Version: 1.0 [Sep 2001] Document created
[Top]

Copyright © 2001, Dassault Systèmes. All rights reserved.