架构注册API指南附录

本文档提供了与使用Schema Registry API相关的补充信息。

使用查询参数

Schema Registry支持在列出资源时使用查询参数来筛选页面和结果。

注意

组合多个查询参数时,必须用与号(&)分隔。

分页

用于分页的最常见查询参数包括:

参数 描述
start 指定列出的结果的开始位置。 此值可从列表响应的_page.next属性中获取,并用于访问下一页结果。 如果_page.next值为null,则没有其他页面可用。
limit 限制返回的资源数。 示例:limit=5将返回五个资源的列表。
orderby 按特定属性对结果排序。 示例:orderby=title将按标题以升序(A-Z)对结果排序。 在参数值(orderby=-title)之前添加-将按标题以降序(Z-A)对项目进行排序。

筛选

您可以使用property参数筛选结果,该参数用于对检索资源中的给定JSON属性应用特定运算符。 支持的运算符包括:

运算符 描述 示例
== 按属性是否等于提供的值进行筛选。 property=title==test
!= 按属性是否不等于提供的值进行筛选。 property=title!=test
< 按属性是否小于提供的值进行筛选。 property=version<5
> 按属性是否大于提供的值进行筛选。 property=version>5
<= 按属性是否小于或等于提供的值进行筛选。 property=version<=5
>= 按属性是否大于或等于提供的值进行筛选。 property=version>=5
~ 按属性是否与提供的正则表达式匹配进行筛选。 property=title~test$
(None) 仅声明属性名称仅返回存在属性的条目。 property=title
小贴士

可以使用property参数按其兼容类筛选架构字段组。 例如,property=meta:intendedToExtend==https://ns.adobe.com/xdm/context/profile只返回与XDM Individual Profile类兼容的字段组。

兼容性模式

Experience Data Model (XDM)是一项公开记录的规范,由Adobe驱动,旨在提高数字体验的互操作性、表现力和功能。Adobe在GitHub🔗上的开源项目中维护源代码和正式的XDM定义。 这些定义以XDM标准符号编写,使用JSON-LD(链接数据的JavaScript对象符号)和JSON模式作为定义XDM模式的语法。

在公共存储库中查看正式的XDM定义时,您可以看到标准XDM与在Adobe Experience Platform中看到的不同。 您在Experience Platform中看到的内容称为兼容模式,它在标准XDM与在Platform中使用方式之间提供了简单的映射。

兼容性模式的工作原理

兼容性模式允许XDM JSON-LD模型通过更改标准XDM中的值来使用现有数据基础结构,同时保持语义相同。 它使用嵌套的JSON结构,以类似树的格式显示架构。

在标准XDM和兼容性模式之间,您会注意到的主要区别是删除了字段名称的“xdm:”前缀。

下面是一个并排比较,其中显示了标准XDM和兼容性模式中与生日相关的字段(删除了“描述”属性)。 请注意,兼容模式字段包括对“meta:xdmField”和“meta:xdmType”属性中XDM字段及其数据类型的引用。

标准XDM 兼容性模式
        {
          "xdm:birthDate":{
              "title":"出生日期",
              "type":"string",
              "format":"date",
          },
          "xdm:birthDayAndMonth":{
              "title":"出生日期",
              "type":"string",
              "pattern":"[0-1][0-9]-[0-9][0-9]",
          },
          "xdm:birthYear":{
              "title":"出生年"
              "type":"integer",
              "minimum":1,
              "maximum":32767
        }
  
        {
          "birthDate":{
              "title":"出生日期",
              "type":"string",
              "format":"date",
              "meta:xdmField":"xdm:birthDate",
              "meta:xdmType":"date"
          },
          "birthDayAndMonth":{
              "title":"出生日期",
              "type":"string",
              "pattern":"[0-1][0-9]-[0-9][0-9]",
              "meta:xdmField":"xdm:birthDayAndMonth",
              "meta:xdmType":"string"
          },
          "birthYear":{
              "title":"出生年"
              "type":"integer",
              "minimum":1,
              "maximum":32767,
              "meta:xdmField":"xdm:birthYear",
              "meta:xdmType":"short"
        }
      

为何需要兼容模式?

Adobe Experience Platform旨在与多个解决方案和服务结合使用,每个解决方案和服务都有各自的技术挑战和限制(例如,某些技术如何处理特殊字符)。 为了克服这些限制,开发了兼容性模式。

大多数Experience Platform服务(包括Catalog、Data Lake和Real-time Customer Profile)使用Compatibility Mode代替标准XDM。 Schema Registry API还使用Compatibility Mode,本文档中的示例全部使用Compatibility Mode显示。

您应该知道,标准XDM与在Experience Platform中运行它的方式之间存在映射,但这不应影响您对Platform服务的使用。

开源项目可供您使用,但是当涉及通过Schema Registry与资源交互时,本文档中的API示例提供了您应该了解和遵循的最佳实践。

在此页面上