Annex A (normative): Checker rules
Concept
Checker rules are semantic and syntactic requirements that shall be applied to both parts of ASAM OpenMATERIAL 3D (material and geometry). ASAM OpenMATERIAL 3D defines a basic set of rules that apply to the entire standard, as well as specific rules for the two parts of ASAM OpenMATERIAL 3D. Rules consist of a name, a UID (a unique identifier of the rule), and a description that specifies the requirements.
The UID is a string that encapsulates a sequence of concepts that identify a rule across different domains.
The concepts are ordered and separated by the separation character :
.
The concepts for a rule UID are:
-
Emanating entity: A domain name for the entity (organization or company) that declares the rule UID. For ASAM OpenMATERIAL 3D, it is
asam.net
. -
Standard: A short string that represents the standard or the domain to which the rule is applied. For ASAM OpenMATERIAL 3D, there are three different standard strings:
-
xom
: General rules applicable for both parts or not categorizable because they are in-between. -
xom-geo
: Rules that only apply to the geometry part of ASAM OpenMATERIAL 3D. -
xom-mat
: Rules that only apply to the material part of ASAM OpenMATERIAL 3D.
-
-
Definition setting: The version of the standard or the domain to which the rule appears or is applied for the first time, for example,
1.0.0
. -
Rule full name: The full name of the rule, as dot-separated, snake_lower_case string. The full name of a rule is composed of the rule set and the rule name, a unique string inside the categorization. The rule set can be nested, meaning that it can be defined as an arbitrary sequence of dot-separated names. The name is the snake_case string after the last dot of the full name.
The following is a visual description of a rule UID:
<emanating-entity>:<standard>:x.y.z:rule_set.rule_name
Third party rule UID creators (that is, emanating entities different from ASAM) should still fill all the concepts above. If that is not possible, concepts shall be left blank. Separation by : is still required (for example, example.com:::rulename is valid).
|
UIDs are designed to be queried, for example, implementations may use UNIX pattern matching.
Read the ASAM Quality Checker Framework documentation to see detailed information on how and which checks are implemented. |
A.1 General rules
A.1.1 General
valid_json_document
- UID
-
asam.net:xom:1.0.0:general.valid_json_document
- Description
-
ASAM OpenMATERIAL 3D files with the file extensions .xoma, .xomm, .xomp, or .xompt shall be valid JSON documents.
A.2 Geometry
A.2.1 XOMA
vehicle_class_data_defined
- UID
-
asam.net:xom-geo:1.0.0:xoma.vehicle_class_data_defined
- Description
-
If an asset is of type 'vehicle', the property 'vehicleClassData' must be set in the metadata.
human_class_data_defined
- UID
-
asam.net:xom-geo:1.0.0:xoma.human_class_data_defined
- Description
-
If an asset is of type 'human', the property 'humanClassData' must be set in the metadata.