Apéndice de la guía de API del Registro de Esquemas

Este documento proporciona información complementaria relacionada con el trabajo con la API Schema Registry.

Uso de parámetros de consulta

El Schema Registry admite el uso de parámetros de consulta en la página y filtrar los resultados al enumerar recursos.

NOTA

Cuando se combinan varios parámetros de consulta, deben separarse con ampersands (&).

Paginación

Los parámetros de consulta más comunes para la paginación incluyen:

Parámetro Descripción
orderby Ordene los resultados por una propiedad específica. Ejemplo: orderby=title ordenará los resultados por título en orden ascendente (A-Z). Si se añade un - antes del valor del parámetro (orderby=-title), los elementos se ordenarán por título en orden descendente (Z-A).
limit Cuando se utiliza junto con un parámetro orderby , limit restringe el número máximo de elementos que deben devolverse para una solicitud determinada. Este parámetro no se puede usar sin un parámetro orderby presente.

El limit parámetro especifica un número entero positivo (entre 0 y 500) como un ** número hintas al número máximo de elementos que deben devolverse. Por ejemplo, limit=5 devuelve solo cinco recursos en la lista. Sin embargo, este valor no se respeta estrictamente. El tamaño real de la respuesta puede ser menor o mayor, ya que está limitado por la necesidad de proporcionar el funcionamiento fiable del parámetro start, si se proporciona uno.
start Cuando se utiliza junto con un parámetro orderby , start especifica dónde debe comenzar la lista de elementos de la subconfiguración. Este parámetro no se puede usar sin un parámetro orderby presente. Este valor se puede obtener del atributo _page.next de una respuesta de lista y se puede utilizar para acceder a la siguiente página de resultados. Si el valor _page.next es nulo, no hay ninguna página adicional disponible.

Normalmente, este parámetro se omite para obtener la primera página de resultados. Después, start debe configurarse con el valor máximo de la propiedad de ordenación principal del campo orderby recibido en la página anterior. A continuación, la respuesta de API devuelve entradas que comienzan con las que tienen una propiedad de ordenación principal de orderby estrictamente buena (para ascendente) o estrictamente inferiores (para descendente) al valor especificado.

Por ejemplo, si el orderby parámetro se establece en orderby=name,firstname, el start parámetro contendrá un valor para la name propiedad. En este caso, si desea mostrar las 20 entradas siguientes de un recurso inmediatamente después del nombre "Miller", debe utilizar: ?orderby=name,firstname&start=Miller&limit=20.

Filtro

Puede filtrar los resultados utilizando el parámetro property , que se utiliza para aplicar un operador específico a una propiedad JSON determinada dentro de los recursos recuperados. Los operadores admitidos son:

Operador Descripción Ejemplo
== Filtra si la propiedad es igual al valor proporcionado. property=title==test
!= Filtra si la propiedad no es igual al valor proporcionado. property=title!=test
< Filtra si la propiedad es menor que el valor proporcionado. property=version<5
> Filtra si la propiedad es buena que el valor proporcionado. property=version>5
<= Filtra si la propiedad es menor o igual que el valor proporcionado. property=version<=5
>= Filtra por si la propiedad es buena o igual al valor proporcionado. property=version>=5
~ Filtra si la propiedad coincide con una expresión regular proporcionada. property=title~test$
(Ninguna) Al indicar solo el nombre de propiedad, solo se devuelven las entradas en las que existe la propiedad. property=title
SUGERENCIA

Puede utilizar el parámetro property para filtrar grupos de campos de esquema por su clase compatible. Por ejemplo, property=meta:intendedToExtend==https://ns.adobe.com/xdm/context/profile solo devuelve grupos de campos compatibles con la clase XDM Individual Profile.

Modo de compatibilidad

Experience Data Model (XDM) es una especificación públicamente documentada, impulsada por el Adobe para mejorar la interoperabilidad, la expresividad y el poder de las experiencias digitales. Adobe mantiene el código fuente y las definiciones XDM formales en un proyecto de código abierto en GitHub. Estas definiciones se escriben en la Notación estándar XDM, utilizando JSON-LD (Notación de objetos JavaScript para datos vinculados) y Esquema JSON como gramática para definir esquemas XDM.

Al consultar las definiciones formales de XDM en el repositorio público, puede ver que el XDM estándar difiere de lo que ve en Adobe Experience Platform. Lo que está viendo en Experience Platform se llama Modo de compatibilidad y proporciona una asignación simple entre el XDM estándar y la forma en que se utiliza dentro de Platform.

Funcionamiento del modo de compatibilidad

El modo de compatibilidad permite que el modelo JSON-LD de XDM funcione con la infraestructura de datos existente al modificar los valores dentro del XDM estándar y mantener la semántica igual. Utiliza una estructura JSON anidada, que muestra los esquemas en un formato de árbol.

La principal diferencia que notará entre el XDM estándar y el Modo de compatibilidad es la eliminación del prefijo "xdm:" para los nombres de campo.

A continuación se muestra una comparación en paralelo que muestra los campos relacionados con el cumpleaños (con los atributos de "descripción" eliminados) tanto en el XDM estándar como en el modo de compatibilidad. Observe que los campos Modo de compatibilidad incluyen una referencia al campo XDM y su tipo de datos en los atributos "meta:xdmField" y "meta:xdmType".

XDM estándar Modo de compatibilidad
{
  "xdm:birthDate": {
    "title": "Fecha de nacimiento",
    "type": "string",
    "formato": "date"
  },
  "xdm:birthDayAndMonth": {
    "title": "Fecha de nacimiento",
    "type": "string",
    "pattern": "[0-1][0-9]-[0-9][0-9]"
  },
  "xdm:birthYear": {
    "title": "Año de nacimiento",
    "type": "integer",
    "mínimo": 1,
    "máximo": 32767
  }
}
  
{
  "birthDate": {
    "title": "Fecha de nacimiento",
    "type": "string",
    "formato": "date",
    "meta:xdmField": "xdm:birthDate",
    "meta:xdmType": "date"
  },
  "birthDayAndMonth": {
    "title": "Fecha de nacimiento",
    "type": "string",
    "pattern": "[0-1][0-9]-[0-9][0-9]",
    "meta:xdmField": "xdm:birthDayAndMonth",
    "meta:xdmType": "string"
  },
  "birthYear": {
    "title": "Año de nacimiento",
    "type": "integer",
    "mínimo": 1,
    "máximo": 32767,
    "meta:xdmField": "xdm:birthYear",
    "meta:xdmType": "short"
  }
}
      

¿Por qué es necesario el modo de compatibilidad?

Adobe Experience Platform está diseñado para trabajar con múltiples soluciones y servicios, cada uno con sus propios desafíos y limitaciones técnicos (por ejemplo, cómo ciertas tecnologías manejan caracteres especiales). Para superar estas limitaciones, se desarrolló el Modo de compatibilidad.

La mayoría de los Experience Platform servicios, incluidos Catalog, Data Lake y Real-time Customer Profile, utilizan Compatibility Mode en lugar del XDM estándar. La API Schema Registry también utiliza Compatibility Mode y los ejemplos de este documento se muestran utilizando Compatibility Mode.

Vale la pena saber que se realiza una asignación entre el XDM estándar y la forma en que se realiza en Experience Platform, pero no debería afectar al uso de los servicios Platform.

El proyecto de código abierto está disponible para usted, pero cuando se trata de interactuar con los recursos a través de Schema Registry, los ejemplos de API de este documento proporcionan las prácticas recomendadas que debe conocer y seguir.

En esta página