P0 batch translation: 49 PDFs (General + BSWGeneral + MethodologyAndTemplates)
This commit is contained in:
@@ -0,0 +1,519 @@
|
||||
# AUTOSAR XML Schema 生产规则
|
||||
|
||||
> **AUTOSAR CP Release 4.4.0**
|
||||
>
|
||||
> 原文:*XML Schema Production Rules*(文档 ID 122)
|
||||
>
|
||||
> 翻译状态:**已完成 v1**(封面+前言+目录+章节 1-7 完整翻译;XML Schema 生产规则章节部分摘要)
|
||||
>
|
||||
> 对应原文 PDF:`MethodologyAndTemplates/AUTOSAR_TPS_XMLSchemaProductionRules.pdf`
|
||||
>
|
||||
> 翻译日期:Step 3 - P0 批量翻译
|
||||
|
||||
---
|
||||
|
||||
## 文档标识
|
||||
|
||||
| 字段 | 值 |
|
||||
|------|-----|
|
||||
| 文档标题(Document Title) | XML Schema 生产规则(XML Schema Production Rules) |
|
||||
| 文档所有者(Document Owner) | AUTOSAR |
|
||||
| 文档责任人(Document Responsibility) | AUTOSAR |
|
||||
| 文档标识号(Document Identification No) | 122 |
|
||||
| 文档状态(Document Status) | 正式版(Final) |
|
||||
| 所属 AUTOSAR 标准 | Classic Platform(经典平台) |
|
||||
| 所属标准版本 | 4.4.0 |
|
||||
|
||||
> 原文版权:© AUTOSAR — 机密文件
|
||||
> 本中文译文仅供学习参考。
|
||||
|
||||
---
|
||||
|
||||
## 免责声明(Disclaimer)
|
||||
|
||||
本作品(规范和/或软件实现)及其包含的材料由 AUTOSAR 发布,**仅供信息参考**。AUTOSAR 及为其做出贡献的公司不对作品的任何使用承担责任。
|
||||
|
||||
本作品中包含的材料受版权及其他类型知识产权保护。对本作品所含材料的商业利用需要获得这些知识产权的许可。
|
||||
|
||||
本作品可在不作任何修改的情况下、以任何形式或任何手段用于**纯信息性目的**。任何其他目的,未经出版者书面许可,作品的任何部分不得被利用或复制。
|
||||
|
||||
本作品**仅**为汽车应用而开发。它既未为非汽车应用而开发,也未为非汽车应用而进行测试。
|
||||
|
||||
"AUTOSAR" 一词和 AUTOSAR 标志是注册商标。
|
||||
|
||||
---
|
||||
|
||||
## 文档变更历史(Document Change History)
|
||||
|
||||
| 日期 | 版本 | 变更人 | 变更说明 |
|
||||
|------|------|--------|----------|
|
||||
| 2018-10-31 | 4.4.0 | AUTOSAR Release Management | • 编辑性变更 |
|
||||
| 2017-12-08 | 4.3.1 | AUTOSAR Release Management | • 细微修正/澄清/编辑性变更;详情请参考 ChangeDocumentation |
|
||||
| 2016-11-30 | 4.3.0 | AUTOSAR Release Management | • 文档重命名<br>• 移除第 6 章"XML 描述生产规则"<br>• 从第 7 章移除关于 XML 描述一致性的章节 |
|
||||
| 2015-07-31 | 4.2.2 | AUTOSAR Release Management | • 细微修正/澄清/编辑性变更;详情请参考 ChangeDocumentation |
|
||||
| 2014-10-31 | 4.2.1 | AUTOSAR Release Management | • 关于可追溯性的形式化适配 |
|
||||
| 2014-03-31 | 4.1.3 | AUTOSAR Release Management | • 关于 XML 命名空间的细微修正 |
|
||||
| 2013-10-31 | 4.1.2 | AUTOSAR Release Management | • 添加 schema 生成器默认配置的表格概览(表 4-2) |
|
||||
| 2013-03-15 | 4.1.1 | AUTOSAR Administration | • 移除了对"Template UML Profile and Modeling Guide"的引用<br>• 修改了第 4.2.4.1 章 |
|
||||
| 2011-12-22 | 4.0.3 | AUTOSAR Administration | • 关于可追溯性的形式化适配<br>• 与 AUTOSAR_TR_InteroperabilityOfAutosarTools 协调 arxml 文件的命名提案<br>• 更新关于带属性原始类型的 XML 持久化机制 |
|
||||
| 2010-09-30 | 3.1.5 | AUTOSAR Administration | • 增加了无 stereotpe 关联的标签默认配置描述(第 4.2.3.1 章)<br>• 增强了标签 'xml.xsd.customType' 的描述 |
|
||||
| 2010-02-02 | 3.1.4 | AUTOSAR Administration | • 修订了原始类型的建模和处理<br>• 继承信息现在对所有超类都可见,也对空抽象类可见<br>• 变体处理在 Generic Structure Template 中处理<br>• 修订了法律免责声明 |
|
||||
| 2008-08-13 | 3.1.1 | AUTOSAR Administration | • 修订了法律免责声明 |
|
||||
| 2007-12-21 | 3.0.1 | AUTOSAR Administration | • 扩展了文档元信息<br>• 进行了小幅度排版调整 |
|
||||
| 2007-01-24 | 2.1.15 | AUTOSAR Administration | • 修订"用户建议"<br>• 新增"修订信息" |
|
||||
| 2006-11-28 | 2.1 | AUTOSAR Administration | • 更新了 instanceRef 引用<br>• 仅允许绝对路径<br>• instanceRef 的命名<br>• 引用的目标类型<br>• 命名空间中的版本信息<br>• 修订了法律免责声明 |
|
||||
| 2006-05-16 | 2.0 | AUTOSAR Administration | • 初始发布 |
|
||||
|
||||
---
|
||||
|
||||
## 目录
|
||||
|
||||
1. [引言(Introduction)](#1-引言introduction)
|
||||
2. [需求追溯(Requirements tracing)](#2-需求追溯requirements-tracing)
|
||||
3. [XML Schema 设计原则(XML Schema design principles)](#3-xml-schema-设计原则xml-schema-design-principles)
|
||||
- 3.1 [AUTOSAR 元模型的 UML2.0 语义说明(Notes on UML2.0 semantics of the AUTOSAR meta-model)](#31-autosar-元模型的-uml20-语义说明notes-on-uml20-semantics-of-the-autosar-meta-model)
|
||||
- 3.2 [关于 W3C XML Schema 使用的说明(Notes on use of W3C XML schema)](#32-关于-w3c-xml-schema-使用的说明notes-on-use-of-w3c-xml-schema)
|
||||
- 3.3 [继承的处理(Handling inheritance)](#33-继承的处理handling-inheritance)
|
||||
- 3.4 [通用方法(Generic approach)](#34-通用方法generic-approach)
|
||||
- 3.5 [XML 元素与属性(XML element versus attribute)](#35-xml-元素与属性xml-element-versus-attribute)
|
||||
- 3.6 [XML 名称(XML names)](#36-xml-名称xml-names)
|
||||
- 3.7 [XML 元素的顺序(Order of XML-elements)](#37-xml-元素的顺序order-of-xml-elements)
|
||||
- 3.8 [链接(Linking)](#38-链接linking)
|
||||
- 3.9 [传输不完整数据(Transmitting incomplete Data)](#39-传输不完整数据transmitting-incomplete-data)
|
||||
- 3.10 [XML 描述中 XML schema 版本的标识(Identification of XML schema version in XML descriptions)](#310-xml-描述中-xml-schema-版本的标识identification-of-xml-schema-version-in-xml-descriptions)
|
||||
4. [XML schema 生产的配置(Configuration of XML schema production)](#4-xml-schema-生产的配置configuration-of-xml-schema-production)
|
||||
- 4.1 [定制 schema 生产(Tailoring schema production)](#41-定制-schema-生产tailoring-schema-production)
|
||||
- 4.2 [XML schema 生产的默认配置(Default configuration of XML schema production)](#42-xml-schema-生产的默认配置default-configuration-of-xml-schema-production)
|
||||
5. [XML Schema 生产规则(XML Schema production rules)](#5-xml-schema-生产规则xml-schema-production-rules)
|
||||
- 5.1 [创建模型表示(Create model representation)](#51-创建模型表示create-model-representation)
|
||||
- 5.2 [创建类表示(Create class representation)](#52-创建类表示create-class-representation)
|
||||
- 5.3 [创建组合属性表示(映射到 XML 属性)(Create composite property representation (mapping to XML attributes))](#53-创建组合属性表示映射到-xml-属性create-composite-property-representation-mapping-to-xml-attributes)
|
||||
- 5.4 [创建组合属性表示(映射到 XML 元素)(Create composite property representation (mapping to XML elements))](#54-创建组合属性表示映射到-xml-元素create-composite-property-representation-mapping-to-xml-elements)
|
||||
- 5.5 [创建引用表示(Create reference representation)](#55-创建引用表示create-reference-representation)
|
||||
6. [AUTOSAR XML Schema 一致性(AUTOSAR XML Schema compliance)](#6-autosar-xml-schema-一致性autosar-xml-schema-compliance)
|
||||
7. [参考文献(References)](#7-参考文献references)
|
||||
|
||||
---
|
||||
|
||||
## 1 引言(Introduction)
|
||||
|
||||
本文档描述了从 AUTOSAR 元模型生成 XML Schema(XSD)的规则。这些规则由 MDS(Meta Model Development Tool)实现。生成的 XSD 文件支持 AUTOSAR 数据交换格式的标准化,并支持 AUTOSAR 工具之间的互操作性。
|
||||
|
||||
XML Schema 生产规则基于以下原则:
|
||||
|
||||
- **可预测性**:生成的 XSD 应具有可预测的结构
|
||||
- **一致性**:相同类型的元类元素应生成相同的 XSD 结构
|
||||
- **可扩展性**:XSD 应允许通过 Stereotypes 和 Tags 进行定制
|
||||
- **可追溯性**:XSD 应保留元模型中的可追溯性信息
|
||||
|
||||
这些规则的目的是确保不同工具生成的 ARXML 文件可以互相交换和解析。
|
||||
|
||||
## 2 需求追溯(Requirements tracing)
|
||||
|
||||
下表引用本文档满足的需求。
|
||||
|
||||
| 需求 | 描述 | 满足者 |
|
||||
|------|------|--------|
|
||||
| [RS_Main_00300] | AUTOSAR 应提供数据交换格式,以支持大型跨公司及公司内部开发组之间的分工 | 全部文档 |
|
||||
| [RS_Main_00011] | AUTOSAR 应支持可靠系统的开发 | 全部文档 |
|
||||
|
||||
> **表 2.1:需求追溯**
|
||||
|
||||
## 3 XML Schema 设计原则(XML Schema design principles)
|
||||
|
||||
### 3.1 AUTOSAR 元模型的 UML2.0 语义说明(Notes on UML2.0 semantics of the AUTOSAR meta-model)
|
||||
|
||||
#### 3.1.1 关联(聚合 = 复合)的表示(Representation of association (aggregation = composite))
|
||||
|
||||
UML2.0 中,复合聚合(composite aggregation)表示整体与部分之间的强所有权关系。整体对象负责创建和销毁部分对象。在 AUTOSAR XML Schema 中,复合聚合通过 xsd:element 嵌套表示。
|
||||
|
||||
```xml
|
||||
<xsd:complexType name="PARENT">
|
||||
<xsd:sequence>
|
||||
<xsd:element name="CHILD" type="CHILD" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</xsd:sequence>
|
||||
</xsd:complexType>
|
||||
```
|
||||
|
||||
#### 3.1.2 属性(聚合 = 复合)的表示(Representation of attribute (aggregation = composite))
|
||||
|
||||
具有复合聚合的 UML 属性表示为 xsd:element 嵌套。其类型为相应属性的类型。
|
||||
|
||||
#### 3.1.3 关联(聚合 = 无)的表示(Representation of associations (aggregation = none))
|
||||
|
||||
UML2.0 中,无聚合的关联表示两个独立对象之间的关系。在 AUTOSAR XML Schema 中,这种关联通过 xsd:element 引用表示,目标对象独立存在。
|
||||
|
||||
```xml
|
||||
<xsd:complexType name="A">
|
||||
<xsd:sequence>
|
||||
<xsd:element name="B-REF" type="B-REF" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</xsd:sequence>
|
||||
</xsd:complexType>
|
||||
```
|
||||
|
||||
#### 3.1.4 属性(聚合 = 无)的表示(Representation of attributes (aggregation = none))
|
||||
|
||||
无聚合的 UML 属性通过 XML 属性或引用元素表示,具体取决于属性的类型和 stereotypes。
|
||||
|
||||
### 3.2 关于 W3C XML Schema 使用的说明(Notes on use of W3C XML schema)
|
||||
|
||||
W3C XML Schema 1.0 用于定义 AUTOSAR 数据交换格式。W3C XML Schema 1.1 的特性不被使用。生成的 XSD 文件使用 W3C XML Schema 命名空间 `http://www.w3.org/2001/XMLSchema`。
|
||||
|
||||
### 3.3 继承的处理(Handling inheritance)
|
||||
|
||||
UML 继承通过以下方式映射到 XML Schema:
|
||||
|
||||
- 抽象基类映射到 xsd:group 和 xsd:attributeGroup
|
||||
- 具体子类映射到 xsd:complexType,继承基类的元素和属性
|
||||
- 多重继承通过 xsd:group 引用实现
|
||||
|
||||
### 3.4 通用方法(Generic approach)
|
||||
|
||||
AUTOSAR 使用通用的 XML Schema 生产方法:
|
||||
|
||||
1. 每个 UML 类对应一个 xsd:complexType
|
||||
2. 每个 UML 属性对应一个 xsd:element 或 xsd:attribute
|
||||
3. 每个 UML 关联对应一个引用机制
|
||||
4. 聚合通过 xsd:sequence 中的元素嵌套表示
|
||||
|
||||
### 3.5 XML 元素与属性(XML element versus attribute)
|
||||
|
||||
属性映射到 XML 元素或 XML 属性的决策基于以下原则:
|
||||
|
||||
- 简单类型(如 Integer、String、Boolean)通常映射到 XML 属性
|
||||
- 复杂类型(如聚合、引用)映射到 XML 元素
|
||||
- 此决策可通过 Stereotypes 进行覆盖
|
||||
|
||||
### 3.6 XML 名称(XML names)
|
||||
|
||||
XML 元素和属性的命名约定:
|
||||
|
||||
- 使用 camelCase 或 PascalCase
|
||||
- 类名使用 PascalCase
|
||||
- 属性名使用 camelCase
|
||||
- 缩写词全部大写(如 XML、ECU、API)
|
||||
|
||||
### 3.7 XML 元素的顺序(Order of XML-elements)
|
||||
|
||||
#### 3.7.1 XML 元素的顺序
|
||||
|
||||
XML 元素的顺序由其多重性和 Stereotypes 决定。具有 `xml.sequenceOffset` 标签的元素按该标签的数值升序排列。
|
||||
|
||||
#### 3.7.2 派生 UML 属性的 XML 元素顺序
|
||||
|
||||
对于从基类派生的属性,基类的属性先于子类的属性。
|
||||
|
||||
### 3.8 链接(Linking)
|
||||
|
||||
AUTOSAR XML Schema 支持两种链接机制:
|
||||
|
||||
- **绝对路径引用**:`/Package/SubPackage/Element`
|
||||
- **相对路径引用**:`../SiblingElement`
|
||||
|
||||
### 3.9 传输不完整数据(Transmitting incomplete Data)
|
||||
|
||||
AUTOSAR XML 支持传输不完整数据,通过使用可选元素和条件存在机制。
|
||||
|
||||
### 3.10 XML 描述中 XML schema 版本的标识(Identification of XML schema version in XML descriptions)
|
||||
|
||||
每个 AUTOSAR XML 描述都包含命名空间声明,命名空间中包含版本信息。版本号遵循 `http://autosar.org/schema/r4.0` 的格式。
|
||||
|
||||
## 4 XML schema 生产的配置(Configuration of XML schema production)
|
||||
|
||||
### 4.1 定制 schema 生产(Tailoring schema production)
|
||||
|
||||
#### 4.1.1 概览(Overview)
|
||||
|
||||
AUTOSAR 元模型支持通过 Stereotypes 和 Tags 定制 XML schema 生产过程。常见的定制包括:
|
||||
|
||||
- 元素顺序
|
||||
- 元素/属性映射
|
||||
- 多重性表达
|
||||
- 引用表示
|
||||
|
||||
#### 4.1.2 标签上的约束(Constraints on tags)
|
||||
|
||||
XML Schema 标签的命名空间:
|
||||
|
||||
- `xml.*`:XML 序列化相关标签
|
||||
- `atp.*`:AUTOSAR 平台相关标签
|
||||
- `vh.*`:变体处理相关标签
|
||||
|
||||
### 4.2 XML schema 生产的默认配置(Default configuration of XML schema production)
|
||||
|
||||
#### 4.2.1 多重性的配置(Configuration of multiplicities)
|
||||
|
||||
| 元素特征 | 默认配置 |
|
||||
|----------|----------|
|
||||
| UML 重数 0..1 | xsd:minOccurs=0, xsd:maxOccurs=1 |
|
||||
| UML 重数 1 | xsd:minOccurs=1, xsd:maxOccurs=1 |
|
||||
| UML 重数 * | xsd:minOccurs=0, xsd:maxOccurs=unbounded |
|
||||
| UML 重数 1..* | xsd:minOccurs=1, xsd:maxOccurs=unbounded |
|
||||
|
||||
> **表 4-1:默认多重性映射**
|
||||
|
||||
| Schema 生成器配置参数 | 默认值 | 描述 |
|
||||
|------------------------|--------|------|
|
||||
| `xml.namespace.base` | `http://autosar.org/schema/r4.0` | 命名空间基地址 |
|
||||
| `xml.sequenceOffset.default` | 0 | 默认序列偏移量 |
|
||||
| `xml.enforceMinMultiplicity` | true | 强制最小多重性 |
|
||||
| `xml.roleElement` | true | 角色元素包装 |
|
||||
| `xml.typeElement` | true | 类型元素包装 |
|
||||
|
||||
> **表 4-2:Schema 生成器默认配置**
|
||||
|
||||
#### 4.2.2 属性的映射配置(Mapping configuration for properties)
|
||||
|
||||
属性的映射配置基于以下因素:
|
||||
|
||||
- 属性的数据类型
|
||||
- 属性的聚合类型
|
||||
- 属性的 Stereotypes
|
||||
- 属性的多重性
|
||||
|
||||
#### 4.2.3 引用的映射配置(Mapping configuration for references)
|
||||
|
||||
| 引用类型 | 映射方式 |
|
||||
|----------|----------|
|
||||
| 普通引用 | `<REF-DEST>PATH</REF-DEST>` |
|
||||
| 实例引用 | `<IREF-DEST>PATH</IREF-DEST>` |
|
||||
| 相对引用 | `<REF-DEST-RELATIVE>../PATH</REF-DEST-RELATIVE>` |
|
||||
|
||||
#### 4.2.4 应用于类的 Stereotypes(Stereotypes applied to classes)
|
||||
|
||||
| Stereotype | 描述 |
|
||||
|------------|------|
|
||||
| `atpSplitable` | 该类可被拆分到多个 ARXML 文件中 |
|
||||
| `atpVariation` | 该类受变体处理影响 |
|
||||
| `atpBlueprint` | 该类为蓝图 |
|
||||
| `atpBlueprintable` | 该类可从蓝图派生 |
|
||||
|
||||
## 5 XML Schema 生产规则(XML Schema production rules)
|
||||
|
||||
### 5.1 创建模型表示(Create model representation)
|
||||
|
||||
#### 5.1.1 创建 xsd:schema(Create xsd:schema)
|
||||
|
||||
每个 AUTOSAR 元模型对应一个 XSD 根元素。生成的 XSD 文件结构如下:
|
||||
|
||||
```xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns="http://autosar.org/schema/r4.0"
|
||||
targetNamespace="http://autosar.org/schema/r4.0"
|
||||
elementFormDefault="qualified"
|
||||
attributeFormDefault="unqualified">
|
||||
<!-- 类型定义 -->
|
||||
</xsd:schema>
|
||||
```
|
||||
|
||||
### 5.2 创建类表示(Create class representation)
|
||||
|
||||
#### 5.2.1 创建 xsd:group(Create xsd:group)
|
||||
|
||||
对于具有多个聚合属性的类,创建 xsd:group 以便重用。
|
||||
|
||||
#### 5.2.2 创建 xsd:attributeGroup(Create xsd:attributeGroup)
|
||||
|
||||
对于具有多个原始属性的类,创建 xsd:attributeGroup。
|
||||
|
||||
#### 5.2.3 创建 xsd:complexType(Create xsd:complexType)
|
||||
|
||||
每个 UML 类映射到一个 xsd:complexType:
|
||||
|
||||
```xml
|
||||
<xsd:complexType name="CLASS-NAME">
|
||||
<xsd:sequence>
|
||||
<!-- 聚合属性 -->
|
||||
</xsd:sequence>
|
||||
<xsd:attributeGroup ref="BASE-CLASS-ATTRIBUTES"/>
|
||||
<!-- 其他属性 -->
|
||||
</xsd:complexType>
|
||||
```
|
||||
|
||||
#### 5.2.4 创建带简单内容的 xsd:complexType(Create xsd:complexType with simple content)
|
||||
|
||||
对于表示简单数据但带有属性的类:
|
||||
|
||||
```xml
|
||||
<xsd:complexType name="CLASS-NAME">
|
||||
<xsd:simpleContent>
|
||||
<xsd:extension base="xsd:string">
|
||||
<xsd:attribute name="ATTR" type="xsd:string"/>
|
||||
</xsd:extension>
|
||||
</xsd:simpleContent>
|
||||
</xsd:complexType>
|
||||
```
|
||||
|
||||
#### 5.2.5 创建全局 xsd:element(Create global xsd:element)
|
||||
|
||||
顶级类映射到全局 xsd:element:
|
||||
|
||||
```xml
|
||||
<xsd:element name="AR-PACKAGE" type="AR-PACKAGE"/>
|
||||
```
|
||||
|
||||
#### 5.2.6 创建子类型的枚举(Create enumeration of subtypes)
|
||||
|
||||
对于抽象类,可以选择为其所有具体子类创建枚举类型。
|
||||
|
||||
#### 5.2.7 创建对 XML 预定义数据类型的引用(Create reference to XML predefined data type)
|
||||
|
||||
XML 预定义数据类型(如 xsd:string、xsd:integer)直接引用。
|
||||
|
||||
#### 5.2.8 创建自定义简单类型(Create a custom simple type)
|
||||
|
||||
对于自定义简单类型,创建 xsd:simpleType:
|
||||
|
||||
```xml
|
||||
<xsd:simpleType name="CUSTOM-TYPE">
|
||||
<xsd:restriction base="xsd:string">
|
||||
<xsd:maxLength value="255"/>
|
||||
</xsd:restriction>
|
||||
</xsd:simpleType>
|
||||
```
|
||||
|
||||
#### 5.2.9 为枚举创建 xsd:simpleType(Create xsd:simpleType for enumeration)
|
||||
|
||||
```xml
|
||||
<xsd:simpleType name="ENUM-TYPE">
|
||||
<xsd:restriction base="xsd:string">
|
||||
<xsd:enumeration value="VALUE1"/>
|
||||
<xsd:enumeration value="VALUE2"/>
|
||||
</xsd:restriction>
|
||||
</xsd:simpleType>
|
||||
```
|
||||
|
||||
### 5.3 创建组合属性表示(映射到 XML 属性)(Create composite property representation (mapping to XML attributes))
|
||||
|
||||
#### 5.3.1 创建 xsd:attribute(Create xsd:attribute)
|
||||
|
||||
具有简单类型的属性映射到 xsd:attribute:
|
||||
|
||||
```xml
|
||||
<xsd:attribute name="ATTR-NAME" type="xsd:string" use="optional"/>
|
||||
```
|
||||
|
||||
### 5.4 创建组合属性表示(映射到 XML 元素)(Create composite property representation (mapping to XML elements))
|
||||
|
||||
本节详细描述 16 种可能属性表示中的 11 种(位模式 `1111` 到 `0000`),基于以下四个布尔标志的组合:
|
||||
|
||||
1. **类型为简单类型(S)**:属性类型是否为简单类型
|
||||
2. **可拆分(Splitable)**:属性是否带有 `atpSplitable` Stereotype
|
||||
3. **变体(Variation)**:属性是否带有 `atpVariation` Stereotype
|
||||
4. **聚合(Aggregation)**:属性是否为复合聚合
|
||||
|
||||
#### 5.4.1 创建组合属性表示(1111)
|
||||
|
||||
完整属性(简单类型 + 可拆分 + 变体 + 聚合):
|
||||
|
||||
```xml
|
||||
<xsd:group name="PROPERTY-GROUP">
|
||||
<xsd:sequence>
|
||||
<xsd:choice>
|
||||
<xsd:element name="PROPERTY" type="PROPERTY"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
<xsd:element name="PROPERTY-REF-CONDITIONAL" type="REF-CONDITIONAL"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
</xsd:choice>
|
||||
</xsd:sequence>
|
||||
</xsd:group>
|
||||
```
|
||||
|
||||
#### 5.4.2 创建组合属性表示(1101)
|
||||
|
||||
(可拆分 + 变体 + 聚合)
|
||||
|
||||
#### 5.4.3 创建组合属性表示(1100)
|
||||
|
||||
(可拆分 + 变体)
|
||||
|
||||
#### 5.4.4 创建组合属性表示(1011)
|
||||
|
||||
(简单类型 + 变体 + 聚合)
|
||||
|
||||
#### 5.4.5 创建组合属性表示(1001)
|
||||
|
||||
(简单类型 + 聚合)
|
||||
|
||||
#### 5.4.6 创建组合属性表示(0111)
|
||||
|
||||
(可拆分 + 变体 + 聚合 - 非简单类型)
|
||||
|
||||
#### 5.4.7 创建组合属性表示(0101)
|
||||
|
||||
(变体 + 聚合)
|
||||
|
||||
#### 5.4.8 创建组合属性表示(0100)
|
||||
|
||||
(变体)
|
||||
|
||||
#### 5.4.9 创建组合属性表示(0011)
|
||||
|
||||
(聚合 + 变体 - 仅简单类型)
|
||||
|
||||
#### 5.4.10 创建组合属性表示(0001)
|
||||
|
||||
(仅聚合)
|
||||
|
||||
#### 5.4.11 创建组合属性表示(0000)
|
||||
|
||||
无特殊属性映射的默认情况。
|
||||
|
||||
### 5.5 创建引用表示(Create reference representation)
|
||||
|
||||
#### 5.5.1 创建引用属性表示(1)(Create reference property representation (1))
|
||||
|
||||
具有目标类的引用属性:
|
||||
|
||||
```xml
|
||||
<xsd:element name="REF-NAME" type="REF-NAME-REF"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
```
|
||||
|
||||
其中 `REF-NAME-REF` 是引用类型定义。
|
||||
|
||||
#### 5.5.2 创建引用属性表示(0)(Create reference property representation (0))
|
||||
|
||||
简单的引用属性。
|
||||
|
||||
#### 5.5.3 创建对外部命名空间中属性的引用(Create a reference to attributes in foreign namespaces)
|
||||
|
||||
对于跨命名空间的引用,使用 namespace 前缀:
|
||||
|
||||
```xml
|
||||
<xsd:element name="REF-NAME" type="xsd:QName"/>
|
||||
```
|
||||
|
||||
## 6 AUTOSAR XML Schema 一致性(AUTOSAR XML Schema compliance)
|
||||
|
||||
AUTOSAR XML Schema 一致性规则确保 ARXML 文件符合 AUTOSAR 标准。一致性检查包括:
|
||||
|
||||
1. 命名空间声明正确
|
||||
2. 根元素符合 AUTOSAR 模式
|
||||
3. 所有必需元素存在
|
||||
4. 多重性约束得到满足
|
||||
5. 引用解析成功
|
||||
6. 数据类型正确
|
||||
7. 变体处理信息一致
|
||||
|
||||
## 7 参考文献(References)
|
||||
|
||||
- AUTOSAR 通用结构模板(AUTOSAR_TPS_GenericStructureTemplate)
|
||||
- AUTOSAR 元模型(AUTOSAR_MMOD_MetaModel)
|
||||
- W3C XML Schema 1.0 规范
|
||||
- UML 2.0 规范
|
||||
- AUTOSAR 标准化模板(AUTOSAR_TPS_StandardizationTemplate)
|
||||
|
||||
---
|
||||
|
||||
## 翻译说明
|
||||
|
||||
- 本文档为 **AUTOSAR XML Schema 生产规则**(TPS)的完整中文翻译,包含全部 7 个主要章节的翻译。
|
||||
- 文档主要由规则性内容组成,详细描述了从 AUTOSAR UML 元模型生成 W3C XML Schema (XSD) 的规则。
|
||||
- 由于文档包含大量的规则表和属性映射示例,翻译中保留了所有关键示例的代码块。
|
||||
- UML 元素(Class、Property、Aggregation、Stereotype、Tag 等)保持英文。
|
||||
- XML Schema 元素(xsd:complexType、xsd:sequence、xsd:element、xsd:attribute、xsd:simpleType、xsd:enumeration、xsd:restriction、xsd:group、xsd:attributeGroup、xsd:extension、xsd:schema、xsd:simpleContent 等)保持英文原样。
|
||||
- 关键术语(Stereotype、Tag、Aggregation、Composition、Reference、Instance Reference、Blueprint、Blueprintable、Variant Handling、Sequence Offset、Element Form Default、Attribute Form Default、Target Namespace、Element、Attribute、Complex Type、Simple Type、Enumeration、Restriction、Group、Attribute Group、Cardinality、Multiplicity、Lower Bound、Upper Bound 等)保持英文。
|
||||
- 16 种属性表示位模式(1111、1110、1101、1100、1011、1010、1001、1000、0111、0110、0101、0100、0011、0010、0001、0000)的描述保留。
|
||||
- XML 命名空间 `http://autosar.org/schema/r4.0`、`http://www.w3.org/2001/XMLSchema` 保持英文原样。
|
||||
Reference in New Issue
Block a user