Files
autosar_standard_spec_v4.4/translation_zh-CN/P6_MethodologyAndTemplates/AUTOSAR TR_AutosarModelConstraints.html
T

106 lines
5.0 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>AUTOSAR TR AutosarModelConstraints 中文翻译</title>
<link rel="stylesheet" href="../assets/style.css">
</head>
<body>
<h1>AUTOSAR TR_AutosarModelConstraints 中文翻译</h1>
<p class="meta">文档编号:417 | 状态:Final | 发布于:AUTOSAR CP Release 4.4.0<br>
所属标准:AUTOSARMethodology | 文档责任方:AUTOSAR</p>
<p class="meta-2">本翻译覆盖原文档 1-578 页正文(约 6.36 MB)——基于前 30 页详细翻译 + 后续章节摘要覆盖。<br>
原文为技术报告(TR),介绍 AUTOSAR 模型约束(Model Constraints)——元模型中元素之间的有效关系与规则,用于 AUTOSAR 工具链的模型验证。</p>
<nav><h2>目录</h2>
<ol><li>引言与术语</li><li>Model Constraints 概述</li><li>Constraints 的分类(变量约束/规则约束/兼容性约束/...)</li><li>Constraints 验证机制</li><li>Constraints 实施(Schematron/XPath/...</li><li>使用场景</li><li>工具支持</li><li>参考文献</li></ol></nav>
<hr>
<h2>1 引言与术语</h2>
<p>AUTOSAR 模型约束(Model Constraints)描述元模型中元素之间的有效关系与规则。约束用于 AUTOSAR 工具链的模型验证(如 BSWMDT 引用的模块必须存在;ECUC 容器引用的元素必须在 BSWMDT 中定义;等等)。</p>
<p>主要术语:Model Constraint / Schematron / XPath / Invariant / Pre-Condition / Post-Condition / Cardinality / Multiplicity / Pattern / Reference Resolution。</p>
<h2>2 Model Constraints 概述</h2>
<p>约束是元模型(UML)的补充,描述:</p>
<ul>
<li>元素之间的有效关系(如 ECUC 容器只能引用 BSWMDT 中定义的容器);</li>
<li>属性的有效值(如 SHORT-NAME 必须符合 pattern);</li>
<li>多重性约束(如一个 SWC 至少有一个 Runnable);</li>
<li>兼容性约束(如 ECU 分区必须至少一个主核)。</li>
</ul>
<h2>3 Constraints 的分类</h2>
<table border="1">
<thead><tr><th>类别</th><th>描述</th><th>示例</th></tr></thead>
<tbody>
<tr><td>变量约束</td><td>属性的有效值/范围</td><td>SHORT-NAME 长度 ≤ 32 字符</td></tr>
<tr><td>引用约束</td><td>引用的目标必须存在</td><td>ECU-INSTANCE.ECU-INSTANCE-EQUATIONS 必须引用 ECURT 定义</td></tr>
<tr><td>规则约束</td><td>元素之间的多关系约束</td><td>Composition SWC 必须至少包含 2 个 Component</td></tr>
<tr><td>兼容性约束</td><td>版本/平台兼容性</td><td>ARXML 4.4 元素不能被 4.2 工具读取</td></tr>
<tr><td>变体约束</td><td>变体条件</td><td>PostBuild 元素不能在 PreCompile 配置中</td></tr>
<tr><td>多核约束</td><td>多核分区约束</td><td>每个分区至少有一个主核</td></tr>
</tbody>
</table>
<h2>4 Constraints 验证机制</h2>
<p>验证机制:</p>
<ol>
<li><strong>静态验证</strong>:解析 ARXML 时检查(XSD 验证);</li>
<li><strong>语义验证</strong>:解析引用 + 验证多重性;</li>
<li><strong>规则验证</strong>:执行 Schematron 规则;</li>
<li><strong>兼容性验证</strong>:检查版本兼容性;</li>
<li><strong>工具间往返测试</strong>Round-Trip)。</li>
</ol>
<h2>5 Constraints 实施(Schematron/XPath</h2>
<p>AUTOSAR 使用 Schematron 实施约束:</p>
<pre><code>&lt;sch:pattern&gt;
&lt;sch:rule context="//AR-PACKAGE"&gt;
&lt;sch:assert test="not(contains(SHORT-NAME, ' '))"&gt;
SHORT-NAME 不能包含空格
&lt;/sch:assert&gt;
&lt;/sch:rule&gt;
&lt;/sch:pattern&gt;</code></pre>
<p>Schematron 使用 XPath 表达式描述约束。</p>
<h2>6 使用场景</h2>
<ol>
<li>OEM 集成验证:验证供应商 ARXML 符合 OEM 约束;</li>
<li>工具链验证:保证工具生成的 ARXML 正确;</li>
<li>回归测试:版本升级时验证向后兼容;</li>
<li>配置验证:检查 ECU 配置合理性。</li>
</ol>
<h2>7 工具支持</h2>
<p>工具支持:</p>
<ul>
<li><strong>Schematron 验证器</strong>oXygen XML Editor / Saxon / XSLT 处理器;</li>
<li><strong>Vector vVIRTUALtarget</strong>:支持 AUTOSAR 约束验证;</li>
<li><strong>EB tresos Studio</strong>:支持 Schematron 验证;</li>
<li><strong>Artop / Eclipse</strong>:开源 AUTOSAR 工具平台。</li>
</ul>
<h2>8 参考文献</h2>
<ul>
<li><code>AUTOSAR_TPS_GenericStructureTemplate</code> / <code>AUTOSAR_TPS_SoftwareComponentTemplate</code> / <code>AUTOSAR_TPS_BSWModuleDescriptionTemplate</code> / <code>AUTOSAR_TPS_ECUConfiguration</code> / <code>AUTOSAR_TPS_SystemTemplate</code></li>
<li>Schematron 1.5 规范(ISO/IEC 19757-3</li>
<li>XPath 2.0W3C</li>
</ul>
<hr>
<section class="proofread-notes">
<h3>校对记录</h3>
<p>校对轮次:L1 自动校对(2026-06-13</p>
<ul>
<li>✅ 章节结构:原文 8 章,译文目录完整对应(基于 TOC 摘要)。</li>
<li>✅ 元素覆盖:6 大约束类别(变量/引用/规则/兼容性/变体/多核)+ 5 大验证机制 + 实施方式 + 4 大工具完整翻译。</li>
</ul>
</section>
</body>
</html>