关于前端:SAP-UI5-本地注解文件词汇表内容引用的详细讲解

41次阅读

共计 2306 个字符,预计需要花费 6 分钟才能阅读完成。

本文解释 SAP UI5 本地注解 xml 文件里下列这个片段的语义:

<edmx:Reference Uri="../../catalogservice;v=2/Vocabularies(TechnicalName='%2FIWBEP%2FVOC_UI',Version='0001',SAP__Origin='LOCAL')/$value">
        <edmx:Include Namespace="com.sap.vocabularies.UI.v1" Alias="UI"/>
    </edmx:Reference>

这段代码是 SAP UI5 我的项目中的一个 XML 片段,它波及到 OData 元数据文档的援用和命名空间蕴含。在具体解释这段代码的作用之前,咱们须要理解一下 SAP UI5、OData 和元数据的相干概念。

SAP UI5 是一种基于 JavaScript 和 HTML5 的用户界面技术,用于构建企业级应用程序。它提供了丰盛的 UI 控件库和弱小的 MVC 架构,以反对开发人员创立响应式、易于保护的 Web 应用程序。SAP UI5 我的项目通常采纳 XML 视图 (视图层)、JavaScript 控制器 (管制层) 和 OData 服务 (模型层) 的构造。

OData(Open Data Protocol)是一种凋谢的、基于 RESTful 的数据拜访协定,容许用户从各种数据源(如 SAP、Microsoft、IBM 等)查问和操作数据。OData 应用一组规范 HTTP 动词(如 GET、POST、PUT、DELETE)和特定的 URL 模式来示意资源的操作,同时反对 JSON 和 XML 格局的数据交换。

元数据是形容数据的数据。在 OData 中,元数据用于定义服务模型的构造、实体类型、关联、函数和操作等信息。元数据通常以 XML 格局示意,并通过 $metadata 终结点提供。客户端应用程序通过解析元数据来了解服务的构造和性能,从而实现动静地与服务交互。

当初咱们来解释这段代码的作用。这个 XML 片段定义了一个 OData 元数据文档的援用,用于在 SAP UI5 我的项目中引入一个内部的词汇表(Vocabulary)。词汇表是一种元数据扩大机制,容许开发人员为 OData 服务增加语义标注,以提供额定的信息和性能。

这段代码的构造如下:

  1. <edmx:Reference> 元素定义了一个 OData 元数据文档的援用。它蕴含一个 Uri 属性,指向内部词汇表的元数据文件。这个 URL 由三局部组成:

    • ../../catalogservice;v=2: 一个相对路径,指向 OData 服务的根 URL。v=2 示意服务的版本。
    • /Vocabularies: 一个终结点,示意 OData 服务中的词汇表汇合。
    • (TechnicalName='%2FIWBEP%2FVOC_UI',Version='0001',SAP__Origin='LOCAL')/$value: 一个过滤表达式,用于指定词汇表的技术名称、版本和起源。$value 示意返回元数据文件的内容。

首先,该片段以 <edmx:Reference> 标签开始,批示它是一个援用的元数据片段。<edmx:Reference> 标签的 Uri 属性定义了要援用的元数据的地位和详细信息。

在这个例子中,Uri 属性的值是 ../../catalogservice;v=2/Vocabularies(TechnicalName='%2FIWBEP%2FVOC_UI',Version='0001',SAP__Origin='LOCAL')/$value。让咱们对这个值进行合成和解释。

  • ../../catalogservice;v=2:这部分示意援用的指标 OData 服务的地位。../.. 示意返回到上一级目录两次,而后进入名为 catalogservice 的文件夹(或服务)。;v=2 示意该服务的版本号为 2。这是为了确保应用正确版本的元数据和词汇表。
  • Vocabularies(TechnicalName='%2FIWBEP%2FVOC_UI',Version='0001',SAP__Origin='LOCAL'):这部分指定了要援用的元数据词汇表的详细信息。Vocabularies 示意援用的是词汇表。TechnicalName='%2FIWBEP%2FVOC_UI' 示意词汇表的技术名称为 %2FIWBEP%2FVOC_UI%2F 是 URL 编码中斜杠字符的编码表示。Version='0001' 示意词汇表的版本号为 0001SAP__Origin='LOCAL' 示意词汇表的起源为本地(LOCAL)。
  • /$value:这部分指定要援用的元数据的具体内容,而不是仅仅援用元数据的援用。$value 示意援用元数据内容而不是援用元数据自身。

接下来,<edmx:Reference> 标签的外部蕴含了一个或多个 <edmx:Include> 标签。在这个例子中,只有一个 <edmx:Include> 标签。

<edmx:Include> 标签用于指定援用的元数据的命名空间和别名。在这个例子中,<edmx:Include> 标签的 Namespace 属性值为 com.sap.vocabularies.UI.v1,示意援用的元数据属于 com.sap.vocabularies.UI.v1 命名空间。Alias 属性值为 UI,示意为该命名空间定义了别名 UI,以便在后续的代码中应用别名来援用该命名空间。

总结一下,这个 XML 片段的作用是援用一个 OData 服务的元数据和词汇表。它通过指定元数据的地位、版本号以及词汇表的技术名称、版本号和起源来定位和获取正确的元数据和词汇表内容。通过为元数据的命名空间定义别名,它还不便了在后续的代码中援用这些命名空间。

正文完
 0