0 / 0
Torna alla versione inglese della documentazione
modello di contenuto JSON
Ultimo aggiornamento: 07 ott 2024
modello di contenuto JSON

Il modello di contenuto JSON viene utilizzato per accedere al contenuto archiviato in formato JSON. Fornisce un'API di base per consentire ai chiamanti di estrarre i valori presupponendo che sappiano a quali valori è necessario accedere.

Tabella 1. Metodi per il modello di contenuto JSON
Metodo Tipi di restituzione Descrizione
getJSONAsString() String Restituisce il contenuto JSON come stringa.
getObjectAt(<List of cbjecta> path, JSONArtifact artifact) throws Exception Object Restituisce l'oggetto nel percorso specificato. La risorsa root fornita potrebbe essere null, nel qual caso viene utilizzata la root del contenuto. Il valore restituito può essere una stringa letterale, un numero intero, reale o booleano o una risorsa utente JSON (un oggetto JSON o un array JSON).
getChildValuesAt(<List of object> path, JSONArtifact artifact) throws Exception Hash table (key:object, value:object> Restituisce i valori figlio del percorso specificato se il percorso indica un oggetto JSON o altrimenti null. Le chiavi nella tabella sono stringhe mentre il valore associato può essere una stringa letterale, un numero intero, reale o booleano o una risorsa utente JSON (un oggetto JSON o un array JSON).
getChildrenAt(<List of object> path path, JSONArtifact artifact) throws Exception List of objects Restituisce l'elenco di oggetti nel percorso specificato se il percorso indica un array JSON o altrimenti null. I valori restituiti possono essere una stringa letterale, un numero intero, reale o booleano o una risorsa utente JSON (un oggetto JSON o un array JSON).
reset() void Svuota la memoria interna associata a questo modello di contenuto (ad esempio, un oggetto DOM memorizzato nella cache).

Script di esempio

Se un nodo builder di output crea l'output in base al formato JSON, è possibile utilizzare quanto segue per accedere alle informazioni su una serie di manuali:

results = []
outputbuilder.run(results)
output = results[0]
cm = output.getContentModel("jsonContent")

bookTitle = cm.getObjectAt(["books", "ISIN123456", "title"], None)

# Alternatively, get the book object and use it as the root
# for subsequent entries
book = cm.getObjectAt(["books", "ISIN123456"], None)
bookTitle = cm.getObjectAt(["title"], book)

# Get all child values for aspecific book
bookInfo = cm.getChildValuesAt(["books", "ISIN123456"], None)

# Get the third book entry. Assumes the top-level "books" value
# contains a JSON array which can be indexed
bookInfo = cm.getObjectAt(["books", 2], None)

# Get a list of all child entries
allBooks = cm.getChildrenAt(["books"], None)