

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Invia un QuEra programma analogico usando Aquila
<a name="braket-quera-submitting-analog-program-aquila"></a>

Questa pagina fornisce una documentazione completa sulle funzionalità della Aquila macchina diQuEra. I dettagli trattati qui sono i seguenti: 

1. L'hamiltoniano parametrizzato simulato da Aquila

1. Parametri del programma AHS

1. Contenuto dei risultati AHS

1. Aquilaparametro delle capacità

**Topics**
+ [hamiltoniano](#braket-quera-aquila-device-hamiltonian)
+ [Schema del programma Braket AHS](#braket-quera-ahs-program-schema)
+ [schema dei risultati dell'attività Braket AHS](#braket-quera-ahs-task-result-schema)
+ [QuEra schema delle proprietà del dispositivo](#braket-quera-device-properties-schema)

## hamiltoniano
<a name="braket-quera-aquila-device-hamiltonian"></a>

La Aquila macchina di QuEra simula nativamente il seguente hamiltoniano (dipendente dal tempo):

![\[Equazione matematica con sommatorie che rappresentano l'hamiltoniana di un sistema, che include i termini drive, detoning locale e accoppiamento interdot.\]](http://docs.aws.amazon.com/it_it/braket/latest/developerguide/images/TimeDependentDrivingHamiltonian.png)


**Nota**  
[L'accesso alla detuning locale è una funzionalità sperimentale ed è disponibile su richiesta tramite Braket Direct.](https://docs.aws.amazon.com/braket/latest/developerguide/braket-experimental-capabilities.html)

dove
+ H drive,k (t) =( 1/2Ω (t) e i (t) S −,k \$1 1/2Ω (t) s) \$1 (−Δ (t\$1,k​) n), global k
  + Ω (t) è l'ampiezza di guida globale, dipendente dal tempo (nota anche come frequenza Rabi), espressa in unità di (rad/s)
  + □ (t) è la fase globale, dipendente dal tempo, misurata in radianti
  + S −,k​ e S \$1,k sono gli operatori che abbassano e innalzano lo spin dell'atomo k (in base \$1↓⟩ =\$1g⟩, \$1↑=\$1r⟩, sono S =\$1g86.r\$1, S =( S) † =\$1rovolg\$1) − \$1 −
  + Δ (t) è la desintonizzazione globale dipendente dal tempo global
  + n k è l'operatore di proiezione sullo stato di Rydberg dell'atomo k (ovvero, n=\$1r86.r\$1)
+ H (t) =-Δ (t) h n local detuning,k local k k
  + Δ local (t) è il fattore dipendente dal tempo dello spostamento di frequenza locale, espresso in unità di (rad/s)
  + h k è il fattore dipendente dal sito, un numero adimensionale compreso tra 0,0 e 1,0
+ V vdw,k,l = C6​/(dk,l) 6 n n, k l
  + C 6 è il coefficiente di van der Waals, espresso in unità di (rad/ s) \$1 (m) ^6
  + d k,l è la distanza euclidea tra l'atomo k e l, misurata in metri.

Gli utenti hanno il controllo sui seguenti parametri tramite lo schema del programma Braket AHS.
+ Disposizione bidimensionale degli atomi (kcoordinate x k e y di ciascun atomo k, in unità di um), che controlla le distanze atomiche a coppie d k,l​ con k, l=1,2,... N
+ Ω (t), la frequenza Rabi globale dipendente dal tempo, in unità di (rad/ s)
+ □ (t), la fase globale, dipendente dal tempo, in unità di (rad)
+ Δ global (t), la detonizzazione globale dipendente dal tempo, in unità di (rad/s)
+ Δ local (t), il fattore (globale) dipendente dal tempo dell'entità della detonizzazione locale, in unità di (rad/ s)
+ hk, il fattore (statico) dipendente dal sito dell'entità della detonizzazione locale, un numero adimensionale compreso tra 0,0 e 1,0

**Nota**  
L'utente non può controllare quali livelli sono coinvolti (ovvero, gli operatori S, S −\$1​, n sono fissi) né l'intensità del coefficiente di interazione Rydberg-Rydberg (C). 6

## Schema del programma Braket AHS
<a name="braket-quera-ahs-program-schema"></a>

 **Oggetto Braket.ir.ahs.program\$1v1.program (esempio**)

**Nota**  
Se la funzione di [desintonizzazione locale non](https://docs.aws.amazon.com/braket/latest/developerguide/braket-experimental-capabilities.html#braket-access-local-detuning) è abilitata per il tuo account, usala nell'esempio seguente. `localDetuning=[]`

```
Program(
    braketSchemaHeader=BraketSchemaHeader(
        name='braket.ir.ahs.program',
        version='1'
    ),
    setup=Setup(
        ahs_register=AtomArrangement(
            sites=[
                [Decimal('0'), Decimal('0')],
                [Decimal('0'), Decimal('4e-6')],
                [Decimal('4e-6'), Decimal('0')]
            ],
            filling=[1, 1, 1]
        )
    ),
    hamiltonian=Hamiltonian(
        drivingFields=[
            DrivingField(
                amplitude=PhysicalField(
                    time_series=TimeSeries(
                        values=[Decimal('0'), Decimal('15700000.0'), Decimal('15700000.0'), Decimal('0')],
                        times=[Decimal('0'), Decimal('0.000001'), Decimal('0.000002'), Decimal('0.000003')]
                    ),
                    pattern='uniform'
                ),
                phase=PhysicalField(
                    time_series=TimeSeries(
                        values=[Decimal('0'), Decimal('0')],
                        times=[Decimal('0'), Decimal('0.000003')]
                    ),
                    pattern='uniform'
                ),
                detuning=PhysicalField(
                    time_series=TimeSeries(
                        values=[Decimal('-54000000.0'), Decimal('54000000.0')],
                        times=[Decimal('0'), Decimal('0.000003')]
                    ),
                    pattern='uniform'
                )
            )
        ],
        localDetuning=[
            LocalDetuning(
                magnitude=PhysicalField(
                    times_series=TimeSeries(
                        values=[Decimal('0'), Decimal('25000000.0'), Decimal('25000000.0'), Decimal('0')],
                        times=[Decimal('0'), Decimal('0.000001'), Decimal('0.000002'), Decimal('0.000003')]
                    ),
                    pattern=Pattern([Decimal('0.8'), Decimal('1.0'), Decimal('0.9')])
                )
            )
        ]
    )
)
```

**JSON** (esempio)

**Nota**  
Se la funzione di [desintonizzazione locale](https://docs.aws.amazon.com/braket/latest/developerguide/braket-experimental-capabilities.html#braket-access-local-detuning) non è abilitata per il tuo account, usala `"localDetuning": []` nell'esempio seguente.

```
{
    "braketSchemaHeader": {
        "name": "braket.ir.ahs.program",
        "version": "1"
    },
    "setup": {
        "ahs_register": {
            "sites": [
                [0E-7, 0E-7], 
                [0E-7, 4E-6],
                [4E-6, 0E-7]
            ],
            "filling": [1, 1, 1]
        }
    },
    "hamiltonian": {
        "drivingFields": [
            {
                "amplitude": {
                    "time_series": {
                        "values": [0.0, 15700000.0, 15700000.0, 0.0],
                        "times": [0E-9, 0.000001000, 0.000002000, 0.000003000]
                    },
                    "pattern": "uniform"
                },
                "phase": {
                    "time_series": {
                        "values": [0E-7, 0E-7],
                        "times": [0E-9, 0.000003000]
                    },
                    "pattern": "uniform"
                },
                "detuning": {
                    "time_series": {
                        "values": [-54000000.0, 54000000.0],
                        "times": [0E-9, 0.000003000]
                    },
                    "pattern": "uniform"
                }
            }
        ],
        "localDetuning": [
            {
                "magnitude": {
                    "time_series": {
                        "values": [0.0, 25000000.0, 25000000.0, 0.0],
                        "times": [0E-9, 0.000001000, 0.000002000, 0.000003000]
                    },
                    "pattern": [0.8, 1.0, 0.9]
                }
            }
        ]
    }
}
```


**Campi principali**  

| Campo del programma | tipo | description | 
| --- | --- | --- | 
|  setup.ahs\$1register.sites  |  Elenco [Elenco [Decimale]]  |  Elenco delle coordinate bidimensionali in cui le pinzette intrappolano gli atomi  | 
|  setup.ahs\$1register.filling  |  Elenco [int]  |  Contrassegna gli atomi che occupano i siti trap con 1 e i siti vuoti con 0  | 
|  hamiltonian.drivingFields [] .amplitude.time\$1series.times  |  Elenco [Decimale]  |  punti temporali dell'ampiezza di guida, Omega (t)  | 
|  hamiltonian.drivingFields [] .amplitude.time\$1series.values  |  Elenco [Decimale]  |  valori dell'ampiezza di guida, Omega (t)  | 
|  hamiltonian.drivingFields [] .amplitude.pattern  |  str  |  modello spaziale di ampiezza di guida, Omega (t); deve essere «uniforme»  | 
|  hamiltonian.drivingFields [] .phase.time\$1series.times  |  Elenco [Decimale]  |  punti temporali della fase di guida, phi (t)  | 
|  hamiltonian.drivingFields [] .phase.time\$1series.values  |  Elenco [Decimale]  |  valori della fase di guida, phi (t)  | 
|  hamiltonian.drivingFields [] .phase.pattern  |  str  |  modello spaziale della fase di guida, phi (t); deve essere «uniforme»  | 
|  hamiltonian.drivingFields [] .detuning.time\$1series.times  |  Elenco [Decimale]  |  punti temporali di desintonizzazione della guida, delta\$1Global (t)  | 
|  hamiltonian.drivingFields [] .detuning.time\$1series.values  |  Elenco [Decimale]  |  valori della detonizzazione della guida, delta\$1Global (t)  | 
|  hamiltonian.drivingFields [] .detuning.pattern  |  str  |  modello spaziale di detuning di guida, delta\$1global (t); deve essere «uniforme»  | 
|  hamiltonian.localDeTuning [] .magnitude.time\$1series.times  |  Elenco [Decimale]  |  punti temporali del fattore dipendente dal tempo della magnitudine locale di detonizzazione, delta\$1local (t)  | 
|  hamiltonian.localDeTuning [] .magnitude.time\$1series.values  |  Elenco [Decimale]  |  valori del fattore dipendente dal tempo della magnitudine locale di detonizzazione, delta\$1local (t)  | 
|  hamiltonian.localDeTuning [] .magnitude.pattern  |  Elenco [Decimale]  |  fattore dipendente dal sito della magnitudine di detonizzazione locale, h\$1k (i valori corrispondono ai siti in setup.ahs\$1register.sites)  | 


**Campi di metadati**  

| Campo del programma | tipo | description | 
| --- | --- | --- | 
|  braketSchemaHeader.name  |  str  |  nome dello schema; deve essere 'braket.ir.ahs.program'  | 
|  braketSchemaHeader.versione  |  str  |  versione dello schema  | 

## schema dei risultati dell'attività Braket AHS
<a name="braket-quera-ahs-task-result-schema"></a>

 **braket.tasks.analog\$1hamiltonian\$1simulation\$1quantum\$1task\$1result. AnalogHamiltonianSimulationQuantumTaskResult**(esempio)

```
AnalogHamiltonianSimulationQuantumTaskResult(
    task_metadata=TaskMetadata(
        braketSchemaHeader=BraketSchemaHeader(
            name='braket.task_result.task_metadata',
            version='1'
        ),
        id='arn:aws:braket:us-east-1:123456789012:quantum-task/12345678-90ab-cdef-1234-567890abcdef',
        shots=2,
        deviceId='arn:aws:braket:us-east-1::device/qpu/quera/Aquila',
        deviceParameters=None,
        createdAt='2022-10-25T20:59:10.788Z',
        endedAt='2022-10-25T21:00:58.218Z',
        status='COMPLETED',
        failureReason=None
    ),
    measurements=[
        ShotResult(
            status=<AnalogHamiltonianSimulationShotStatus.SUCCESS: 'Success'>,

            pre_sequence=array([1, 1, 1, 1]),
            post_sequence=array([0, 1, 1, 1])
        ),

        ShotResult(
            status=<AnalogHamiltonianSimulationShotStatus.SUCCESS: 'Success'>,

            pre_sequence=array([1, 1, 0, 1]),
            post_sequence=array([1, 0, 0, 0])
        )
    ]
)
```

 **JSON** (esempio)

```
{
    "braketSchemaHeader": {
        "name": "braket.task_result.analog_hamiltonian_simulation_task_result",
        "version": "1"
    },
    "taskMetadata": {
        "braketSchemaHeader": {
            "name": "braket.task_result.task_metadata",
            "version": "1"
        },
        "id": "arn:aws:braket:us-east-1:123456789012:quantum-task/12345678-90ab-cdef-1234-567890abcdef",
        "shots": 2,
        "deviceId": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila",

        "createdAt": "2022-10-25T20:59:10.788Z",
        "endedAt": "2022-10-25T21:00:58.218Z",
        "status": "COMPLETED"

    },
    "measurements": [
        {
            "shotMetadata": {"shotStatus": "Success"},
            "shotResult": {
                "preSequence": [1, 1, 1, 1],
                "postSequence": [0, 1, 1, 1]
            }
        },
        {
            "shotMetadata": {"shotStatus": "Success"},
            "shotResult": {
                "preSequence": [1, 1, 0, 1],
                "postSequence": [1, 0, 0, 0]
            }
        }
    ],
    "additionalMetadata": {
        "action": {...}
        "queraMetadata": {
            "braketSchemaHeader": {
                "name": "braket.task_result.quera_metadata",
                "version": "1"
            },
            "numSuccessfulShots": 100
        }
    }
}
```


**Campi principali**  

| Campo dei risultati dell'attività | tipo | description | 
| --- | --- | --- | 
|  misure [] .shotResult.presequence  |  Elenco [int]  |  Bit di misurazione pre-sequenza (uno per ogni sito atomico) per ogni ripresa: 0 se il sito è vuoto, 1 se il sito è pieno, misurati prima delle sequenze di impulsi che eseguono l'evoluzione quantistica  | 
|  misure [] .shotResult.postSequence  |  Elenco [int]  |  Bit di misurazione post-sequenza per ogni ripresa: 0 se l'atomo è nello stato di Rydberg o il sito è vuoto, 1 se l'atomo è allo stato fondamentale, misurati alla fine delle sequenze di impulsi che eseguono l'evoluzione quantistica  | 


**Campi di metadati**  

| Campo dei risultati dell'attività | tipo | description | 
| --- | --- | --- | 
|  braketSchemaHeader.name  |  str  |  nome dello schema; deve essere 'braket.task\$1result.analog\$1hamiltonian\$1simulation\$1task\$1result'  | 
|  braketSchemaHeader.versione  |  str  |  versione dello schema  | 
|  Metadati delle attività. braketSchemaHeader.nome  |  str  |  nome dello schema; deve essere 'braket.task\$1result.task\$1metadata'  | 
|  Metadati dell'attività. braketSchemaHeader.versione  |  str  |  versione dello schema  | 
|  taskmetadata.id  |  str  |  L'ID dell'attività quantistica. Per le attività AWS quantistiche, questo è il compito quantistico ARN.  | 
|  TaskMetadata.shots  |  int  |  Il numero di scatti per l'operazione quantistica  | 
|  taskmetadata.shots.deviceID  |  str  |  L'ID del dispositivo su cui è stata eseguita l'operazione quantistica. Per AWS i dispositivi, questo è l'ARN del dispositivo.  | 
|  taskmetadata.shots.createdat at  |  str  |  Il timestamp della creazione; il formato deve essere in ISO-8601/ string format:mm:SS.SSSZ. RFC3339 YYYY-MM-DDTHH L'impostazione predefinita è Nessuno.  | 
|  taskmetadata.shots.EndedAt  |  str  |  Il timestamp di quando è terminato il task quantistico; il formato deve essere in ISO-8601/ string format:mm:SS.SSSZ. RFC3339 YYYY-MM-DDTHH L'impostazione predefinita è Nessuno.  | 
|  taskMetadata.shots.status  |  str  |  Lo stato dell'attività quantistica (CREATED, QUEUED, RUNNING, COMPLETED, FAILED). L'impostazione predefinita è Nessuno.  | 
|  taskmetadata.shots.failureReason  |  str  |  Il motivo del fallimento del compito quantistico. L'impostazione predefinita è Nessuno.  | 
|  Metadati aggiuntivi. Action  |  Braket.ir.ahs.program\$1v1.program  |  [(Vedi la sezione sullo schema del programma Braket AHS)](#braket-quera-ahs-program-schema)  | 
|  Metadati aggiuntivi. Azione. braketSchemaHeader.querametadata.name  |  str  |  nome dello schema; deve essere 'braket.task\$1result.quera\$1metadata'  | 
|  Metadati aggiuntivi. Action. braketSchemaHeader.querametadata.version  |  str  |  versione dello schema  | 
|  Metadati aggiuntivi. Action. numSuccessfulShots  |  int  |  numero di tiri completamente riusciti; deve essere uguale al numero di tiri richiesto  | 
|  misure [] .shotMetadata.shotStatus  |  int  |  Lo stato dello scatto, (Successo, Riuscito parziale, Fallimento); deve essere «Riuscito»  | 

## QuEra schema delle proprietà del dispositivo
<a name="braket-quera-device-properties-schema"></a>

 **braket.device\$1schema.quera.quera\$1device\$1capabilities\$1v1. QueraDeviceCapabilities**(esempio)

```
QueraDeviceCapabilities(
    service=DeviceServiceProperties(
        braketSchemaHeader=BraketSchemaHeader(
            name='braket.device_schema.device_service_properties', 
            version='1'
            ), 
            executionWindows=[
                DeviceExecutionWindow(
                    executionDay=<ExecutionDay.MONDAY: 'Monday'>, 
                    windowStartHour=datetime.time(1, 0), 
                    windowEndHour=datetime.time(23, 59, 59)
                ), 
                DeviceExecutionWindow(
                    executionDay=<ExecutionDay.TUESDAY: 'Tuesday'>, 
                    windowStartHour=datetime.time(0, 0), 
                    windowEndHour=datetime.time(12, 0)
                ), 
                DeviceExecutionWindow(
                    executionDay=<ExecutionDay.WEDNESDAY: 'Wednesday'>, 
                    windowStartHour=datetime.time(0, 0), 
                    windowEndHour=datetime.time(12, 0)
                ), 
                DeviceExecutionWindow(
                    executionDay=<ExecutionDay.FRIDAY: 'Friday'>, 
                    windowStartHour=datetime.time(0, 0), 
                    windowEndHour=datetime.time(23, 59, 59)
                ), 
                DeviceExecutionWindow(
                    executionDay=<ExecutionDay.SATURDAY: 'Saturday'>, 
                    windowStartHour=datetime.time(0, 0), 
                    windowEndHour=datetime.time(23, 59, 59)
                ), 
                DeviceExecutionWindow(
                    executionDay=<ExecutionDay.SUNDAY: 'Sunday'>, 
                    windowStartHour=datetime.time(0, 0), 
                    windowEndHour=datetime.time(12, 0)
                )
            ], 
            shotsRange=(1, 1000), 
            deviceCost=DeviceCost(
                price=0.01, 
                unit='shot'
            ), 
            deviceDocumentation=
                DeviceDocumentation(
                    imageUrl='https://a.b.cdn.console.awsstatic.com/59534b58c709fc239521ef866db9ea3f1aba73ad3ebcf60c23914ad8c5c5c878/a6cfc6fca26cf1c2e1c6.png', 
                    summary='Analog quantum processor based on neutral atom arrays', 
                    externalDocumentationUrl='https://www.quera.com/aquila'
                ), 
                deviceLocation='Boston, USA', 
                updatedAt=datetime.datetime(2024, 1, 22, 12, 0, tzinfo=datetime.timezone.utc), 
                getTaskPollIntervalMillis=None
    ), 
    action={
        <DeviceActionType.AHS: 'braket.ir.ahs.program'>: DeviceActionProperties(
                version=['1'], 
                actionType=<DeviceActionType.AHS: 'braket.ir.ahs.program'>
            )
    }, 
    deviceParameters={}, 
    braketSchemaHeader=BraketSchemaHeader(
        name='braket.device_schema.quera.quera_device_capabilities', 
        version='1'
    ), 
    paradigm=QueraAhsParadigmProperties(
        ...
        # See https://github.com/amazon-braket/amazon-braket-schemas-python/blob/main/src/braket/device_schema/quera/quera_ahs_paradigm_properties_v1.py
        ...
    )  
)
```

 **JSON** (esempio)

```
{
    "service": {
        "braketSchemaHeader": {
            "name": "braket.device_schema.device_service_properties",
            "version": "1"
        },
        "executionWindows": [
            {
                "executionDay": "Monday",
                "windowStartHour": "01:00:00",
                "windowEndHour": "23:59:59"
            },
            {
                "executionDay": "Tuesday",
                "windowStartHour": "00:00:00",
                "windowEndHour": "12:00:00"
            },
            {
                "executionDay": "Wednesday",
                "windowStartHour": "00:00:00",
                "windowEndHour": "12:00:00"
            },
            {
                "executionDay": "Friday",
                "windowStartHour": "00:00:00",
                "windowEndHour": "23:59:59"
            },
            {
                "executionDay": "Saturday",
                "windowStartHour": "00:00:00",
                "windowEndHour": "23:59:59"
            },
            {
                "executionDay": "Sunday",
                "windowStartHour": "00:00:00",
                "windowEndHour": "12:00:00"
            }
        ],
        "shotsRange": [
            1,
            1000
        ],
        "deviceCost": {
            "price": 0.01,
            "unit": "shot"
        },
        "deviceDocumentation": {
            "imageUrl": "https://a.b.cdn.console.awsstatic.com/59534b58c709fc239521ef866db9ea3f1aba73ad3ebcf60c23914ad8c5c5c878/a6cfc6fca26cf1c2e1c6.png",
            "summary": "Analog quantum processor based on neutral atom arrays",
            "externalDocumentationUrl": "https://www.quera.com/aquila"
        },
        "deviceLocation": "Boston, USA",
        "updatedAt": "2024-01-22T12:00:00+00:00"
    },
    "action": {
        "braket.ir.ahs.program": {
            "version": [
                "1"
            ],
            "actionType": "braket.ir.ahs.program"
        }
    },
    "deviceParameters": {},
    "braketSchemaHeader": {
        "name": "braket.device_schema.quera.quera_device_capabilities",
        "version": "1"
    },
    "paradigm": {
        ...
        # See Aquila device page > "Calibration" tab > "JSON" page
        ...
    }
}
```


**Campi delle proprietà del servizio**  

| Campo delle proprietà del servizio | tipo | description | 
| --- | --- | --- | 
|  service.executionWindows [] .executionDay  |  ExecutionDay  |  Giorni della finestra di esecuzione; deve essere «Tutti i giorni», «Giorni feriali», «Fine settimana», «lunedì», «martedì», «mercoledì», giovedì», «venerdì», «sabato» o «domenica»  | 
|  Service.executionWindows []. windowStartHour  |  datetime.ora  |  Formato UTC a 24 ore dell'ora di inizio della finestra di esecuzione  | 
|  Service.ExecutionWindows []. windowEndHour  |  datetime.ora  |  Formato UTC a 24 ore dell'ora in cui termina la finestra di esecuzione  | 
|  service.qpu\$1capabilities.service.shotsRange  |  Tupla [int, int]  |  Numero minimo e massimo di scatti per il dispositivo  | 
|  service.qpu\$1capabilities.service.deviceCost.price  |  virgola mobile  |  Prezzo del dispositivo in dollari USA  | 
|  service.qpu\$1capabilities.service.deviceCost.unit  |  str  |  unità per l'addebito del prezzo, ad esempio: 'minute', 'hour', 'shot', 'task'  | 


**Campi di metadati**  

| Campo di metadati | tipo | description | 
| --- | --- | --- | 
|  action [] .version  |  str  |  versione dello schema del programma AHS  | 
|  azione [] .actionType  |  ActionType  |  nome dello schema del programma AHS; deve essere 'braket.ir.ahs.program'  | 
|  servizio. braketSchemaHeader.nome  |  str  |  nome dello schema; deve essere 'braket.device\$1schema.device\$1service\$1properties'  | 
|  servizio. braketSchemaHeader.versione  |  str  |  versione dello schema  | 
|  service.deviceDocumentation.imageURL  |  str  |  URL per l'immagine del dispositivo  | 
|  Service.DeviceDocumentation.Summary  |  str  |  breve descrizione sul dispositivo  | 
|  Documentazione Service.Device. externalDocumentationUrl  |  str  |  URL della documentazione esterna  | 
|  service.deviceLocation  |  str  |  posizione geografica del dispositivo  | 
|  Service.UpdateDat  |  datetime  |  ora in cui le proprietà del dispositivo sono state aggiornate l'ultima volta  | 