Questo documento fornisce informazioni supplementari relative all'utilizzo dell'API Schema Registry.
La Schema Registry supporta l'utilizzo di parametri di query per visualizzare la pagina e filtrare i risultati durante l'elencazione delle risorse.
Quando si combinano più parametri di query, questi devono essere separati da e-mail (&
).
I parametri di query più comuni per il paging includono:
Parametro | Descrizione |
---|---|
start |
Specificate dove devono iniziare i risultati elencati. Questo valore può essere ottenuto dall'attributo _page.next di una risposta a un elenco e utilizzato per accedere alla pagina successiva dei risultati. Se il valore _page.next è null, non è disponibile alcuna pagina aggiuntiva. |
limit |
Limita il numero di risorse restituite. Esempio: limit=5 restituirà un elenco di cinque risorse. |
orderby |
Ordinare i risultati in base a una proprietà specifica. Esempio: orderby=title ordinerà i risultati in ordine crescente (A-Z) in base al titolo. Se si aggiunge - prima del valore del parametro (orderby=-title ), gli elementi vengono ordinati in base al titolo in ordine decrescente (Z-A). |
Potete filtrare i risultati utilizzando il parametro property
, utilizzato per applicare un operatore specifico a una determinata proprietà JSON all'interno delle risorse recuperate. Gli operatori supportati includono:
Operatore | Descrizione | Esempio |
---|---|---|
== |
Filtra in base al fatto che la proprietà sia uguale al valore fornito. | property=title==test |
!= |
Filtra in base al fatto che la proprietà non sia uguale al valore fornito. | property=title!=test |
< |
Filtra in base al fatto che la proprietà sia minore del valore fornito. | property=version<5 |
> |
Filtra in base al fatto che la proprietà sia maggiore del valore fornito. | property=version>5 |
<= |
Filtra se la proprietà è minore o uguale al valore specificato. | property=version<=5 |
>= |
Filtra in base al fatto che la proprietà sia maggiore o uguale al valore fornito. | property=version>=5 |
~ |
Filtra in base al fatto che la proprietà corrisponda o meno a un'espressione regolare specificata. | property=title~test$ |
(Nessuna) | Se si specifica solo il nome della proprietà, vengono restituite solo le voci in cui esiste la proprietà. | property=title |
Potete utilizzare il parametro property
per filtrare i mixin in base alla classe compatibile. Ad esempio, property=meta:intendedToExtend==https://ns.adobe.com/xdm/context/profile
restituisce solo i mixin compatibili con la classe XDM Individual Profile.
Experience Data Model (XDM) è una specifica documentata pubblicamente, spinta da Adobe per migliorare l'interoperabilità, l'espressività e il potere delle esperienze digitali. Adobe mantiene il codice sorgente e le definizioni XDM formali in un progetto open source su GitHub. Queste definizioni sono scritte in Notazione standard XDM, utilizzando la Notazione oggetto JSON-LD (JavaScript Object Notation for Linked Data) e lo schema JSON come grammatica per la definizione degli schemi XDM.
Quando si esaminano le definizioni XDM formali nell'archivio pubblico, è possibile notare che lo standard XDM è diverso da quello visualizzato in Adobe Experience Platform. Ciò che si vede in Experience Platform è denominata Modalità compatibilità e fornisce una semplice mappatura tra XDM standard e il modo in cui viene utilizzato all'interno di Platform.
La modalità di compatibilità consente al modello XDM JSON-LD di funzionare con l'infrastruttura dati esistente modificando i valori all'interno di XDM standard mantenendo la stessa semantica. Utilizza una struttura JSON nidificata, mostrando gli schemi in un formato simile a un albero.
La differenza principale che noterete tra XDM standard e Modalità compatibilità è la rimozione del prefisso "xdm:" per i nomi dei campi.
Di seguito è riportato un confronto affiancato che mostra i campi relativi al compleanno (con gli attributi "description" rimossi) sia in XDM standard che in Modalità compatibilità. I campi Modalità compatibilità includono un riferimento al campo XDM e al relativo tipo di dati negli attributi "meta:xdmField" e "meta:xdmType".
XDM standard | Modalità compatibilità |
---|---|
{ "xdm:bornDate": { "title": "Data di nascita", "type": "string", "format": "date", }, "xdm:bornDayAndMonth": { "title": "Data di nascita", "type": "string", "pattern": "[0-1][0-9]-[0-9][0-9]", }, "xdm:bornYear": { "title": "Anno di nascita", "type": "integer", "minimo": 1, "massima": 32767 } |
{ "bornDate": { "title": "Data di nascita", "type": "string", "format": "date", "meta:xdmField": "xdm:bornDate", "meta:xdmType": "date" }, "bornDayAndMonth": { "title": "Data di nascita", "type": "string", "pattern": "[0-1][0-9]-[0-9][0-9]", "meta:xdmField": "xdm:bornDayAndMonth", "meta:xdmType": "string" }, "bornYear": { "title": "Anno di nascita", "type": "integer", "minimo": 1, "massima": 32767, "meta:xdmField": "xdm:bornYear", "meta:xdmType": "short" } |
Adobe Experience Platform è progettato per lavorare con più soluzioni e servizi, ciascuno con le proprie problematiche e limitazioni tecniche (ad esempio, come alcune tecnologie gestiscono caratteri speciali). Per superare questi limiti, è stata sviluppata la Modalità di compatibilità.
La maggior parte dei servizi Experience Platform, inclusi Catalog, Data Lake e Real-time Customer Profile utilizzano Compatibility Mode al posto di XDM standard. Anche l'API Schema Registry utilizza Compatibility Mode, e gli esempi in questo documento vengono visualizzati utilizzando Compatibility Mode.
Vale la pena sapere che una mappatura viene eseguita tra XDM standard e il modo in cui viene eseguita in Experience Platform, ma non deve influenzare l'utilizzo dei servizi Platform.
Il progetto open source è disponibile, ma quando si tratta di interagire con le risorse tramite Schema Registry, gli esempi di API in questo documento forniscono le best practice che dovreste conoscere e seguire.