全部学习汇总: https://github.com/GreyZhang/hack_autosar
继续学习AUTOSAR,看一下官方的文档。
如果短名称由不同的短名称组成,则这些特定短名称中的每一个都应由一个短名称片段列出。 在 4.1 中,组合的 shortName 是“A__B”。 第一个 ShortNameFragment 是“A”,角色为“前缀”。 第二个 ShortNameFragment 是“B”并且具有“后缀”的作用。
此过程允许在不丢失原始信息的情况下组合和分离原子短名称和组合短名称。
有关 DocumentationBlock 的更多详细信息,请参阅第 8.2 章。
属性在以上面类表中给出。
此类的实例可以通过它们的标识符(在命名空间边界内)引用。 除此之外,可识别对象是对 AUTOSAR 描述的整体结构有重大贡献的对象。 特别是,Identifiables 可能包含 Identifiables。
标识符是一个在外观上有许多约束的字符串,满足典型编程语言为其标识符定义的要求。
此数据类型表示一个字符串,可用作 c-Identifier。
它应以字母开头,可以由字母、数字和下划线组成。
标签: xml.xsd.customType=IDENTIFIER; xml.xsd.maxLength=128; xml.xsd.pattern=[a-zA-Z][a-zA-Z0-9_]*; xml.xsd.type=string
多个长名字以及单个长名字
一种特定语言的 MixedContentForLongNames。 语言在属性 l 中表示。
小结与备注:这个有点没搞明白,究竟是啥概念?是long long的意思?
长名字的混合内容
这是标题和长名称的模型。 它允许一些重点和索引条目,但没有参考目标(由相关的可识别对象提供)。 内容模型也可以呈现为纯文本。
抽象类可用于单语言以及多语言元素。
这是概览项中多语言段落的内容。
一种特定语言的 MixedContentForOverviewParagraph。 语言在属性 l 中表示。
此类的实例可以通过它们的标识符来引用(同时遵守命名空间边界)。
此类的实例可以通过它们的标识符来引用(同时遵守命名空间边界)。 它们也可能有一个 longName。 但它们不被认为对 AUTOSAR 描述的整体结构有重大贡献。 特别是它不包含其他引用。
此类的实例可以通过它们的标识符来引用(同时遵守命名空间边界)。 它们也可能有一个 longName 但只有一种语言。
此类的特化仅作为一种特定语言中的内联元素出现。
因此,它们聚合但不被认为对 AUTOSAR 描述的整体结构有实质性贡献。 特别是它不包含其他引用。
这个类描述了 Referrable.shortName 如何由几个 shortNameFragment 组成。
4.3.1 名字空间和shortName 的唯一
Referrable 中的shortName 有助于识别Referrable 的特化,特别是Identifiable。
由 Identifiable 建立的命名空间
Identifiable 从而建立了一个名称空间,其中包含的 Identifiables 和 Referrables 可以通过它们的 shortName 明确标识。 在某些情况下,从 Identifiable 派生的元类聚合了不是从 Identifiable 派生的元类,但它们又聚合了从 Referrable 派生的元类。 换句话说,有些情况下,Identifiables 只是间接聚合。
无论如何,解释已建立名称空间的规则也适用于这种情况。 特别是,对于给定的 Referrable 实例,名称空间由最近的祖先(不仅是父级)元素建立,该元素是 Identifiable。 这由 [constr_2508] 中的短语“在给定的可识别范围内”表达。
Referrable 不建立命名空间
请注意, Referrable 不建立名称空间。 除了 Identifiable 之外,Referable 不会聚合另一个 Referrable 的用例。 但如果是这样,聚合的 shortName 将需要在最近的祖先 Identifiable 中是唯一的(不仅是最近的祖先 Referrable)。
请注意,可以扩展特定元素的名称空间以支持全局引用。 有关更多详细信息,请参阅第 4.2 章中的 [constr_2538]。
shortName 区分大小写
shortName 应
• 基本上解释为区分大小写(参见 [TPS_GST_00020])
• 但检查唯一性,不区分大小写([constr_2508])
shortName 的命名空间
shortName 的内容在给定的 Identifiable 中必须是唯一的(不区分大小写)。
请注意,必须不区分大小写地执行对 shortName 唯一性的检查。 这支持了名称不应仅在大写/小写中不同的良好做法,这会导致很多混淆。
术语“不区分大小写”表示集合{a b c d e f g h i j k l m n o p q r s t u v w x y z} {A B C D E F G H I J K L M N O P Q R S T U V W X Y Z}中的字符分别被认为是相同的。 换句话说,对 shortNames 的唯一性不区分大小写的检查会导致例如 shortName "X" 和 "x" 的元素被认为是相同的,不应存在于同一个包中。
这样,关于可识别以及可参考的部分基本上看完了。这部分说起来其实还是有一点点是能够看懂的部分,可能主要是这些描述内容多少是有一些与编码的一些知识点相似的。下一次,看一下管理数据等相关的信息。