Estensione del metamodello predefinito

Il servizio di automated forms conversion identifica ed estrae gli oggetti modulo dai moduli di origine. La mappatura semantica consente al servizio di decidere in che modo gli oggetti estratti vengono rappresentati in una forma adattiva. Ad esempio, un modulo di origine può presentare diversi tipi di rappresentazioni di una data. La mappatura semantica consente di mappare tutte le rappresentazioni degli oggetti modulo data del modulo sorgente con il componente data dei moduli adattivi. La mappatura semantica consente inoltre al servizio di preconfigurare e applicare convalide, regole, pattern di dati, testo della Guida e proprietà di accessibilità ai componenti dei moduli adattivi durante la conversione.

Il metamodello è uno schema JSON. Prima di iniziare con il metamodello, assicurati di avere una buona conoscenza di JSON. Devi avere esperienza nella creazione, modifica e lettura dei dati salvati in formato JSON.

Metamodello predefinito

Il servizio di automated forms conversion ha un metamodello predefinito. Si tratta di uno schema JSON e risiede in Adobe Cloud con altri componenti del servizio Automated forms conversion. Puoi trovare una copia del metamodello sul server AEM locale all'indirizzo: http://<server>:<port>/aem/forms.html/content/dam/formsanddocuments/metamodel/global.schema.json. È inoltre possibile fare clic qui per accedere o scaricare lo schema della lingua inglese. È inoltre disponibile per il download il metamodello Francese, Tedesco Spagnolo, Italiano e Portoghese.

Lo schema del metamodello viene derivato dalle entità dello schema in https://schema.org/docs/schemas.html. Dispone di Persona, IndirizzoPostale, BusinessLocale e più entità come definito in https://schema.org. Ogni entità del metamodello aderisce al tipo di oggetto schema JSON. Il codice seguente rappresenta una struttura del metamodello di esempio:

   "Entity": {
      "id": "Entity",
      "properties": {
        "name": {
          "type": "string"
        },

        "description": {
          "type": "string",
          "description": "Description of the item"
        }
      }
    }

Scarica il metamodello predefinito

Esegui i seguenti passaggi per scaricare il metamodello predefinito nel file system locale:

  1. Accedi alla tua istanza AEM Forms.

  2. Passa alla cartella Forms > Forms & Documents Meta Model .

  3. Seleziona il file global.schema.json e tocca Download. Viene visualizzata una finestra di dialogo di download. Selezionare l'opzione Download asset(s) as binary files. Toccare Download. Viene scaricato un archivio.

Comprensione del metamodello

Un metamodello si riferisce a un file di schema JSON che contiene entità. Tutte le entità nel file di schema JSON includono un nome e un id. Ciascuna entità può includere più proprietà. Le entità e le relative proprietà possono variare a seconda del dominio . È possibile integrare un file di schema con parole chiave e configurazioni di campi per mappare le proprietà dello schema ai componenti dei moduli adattivi.

"Event": {
      "id": "Eventid",
      "allOf": [
        {
          "$ref": "#Entity"
        },
        {
          "properties": {
            "startDate": {
              "type": "string",
              "format": "date",
              "description": "Specify the start date and time of the event in ISO 8601 date format."
            },
            "endDate": {
              "type": "string",
              "format": "date",
              "description": "Specify the end date and time of the event in ISO 8601 date format."
            },
            "location": {
              "$ref": "#PostalAddress",
              "description": "Specify the location of the event."
            }
          }
        }
      ]
    }

In questo esempio, Event rappresenta il nome di un'entità con un valore per id come Eventid. L’entità Evento include più proprietà:

  • startDate
  • endDate
  • luogo

Il costrutto allOf nel metamodello abilita l'ereditarietà tra le entità.

Ogni proprietà può includere inoltre:

Proprietà del metamodello

In base alle parole chiave a cui si fa riferimento utilizzando aem:affKeyword, il servizio di conversione esegue un'operazione di ricerca sui campi del modulo di origine. Il servizio di conversione applica le proprietà dello schema JSON e le proprietà aggiuntive ai campi che soddisfano i criteri di ricerca.

In questo esempio, il servizio di conversione cerca il telefono, il telefono, il telefono cellulare, il telefono di lavoro, il telefono di casa, il numero di telefono, il numero di telefono e le parole chiave del numero di telefono nel modulo di origine. In base ai campi che includono queste parole chiave, il servizio di conversione applica il tipo, il pattern e aem:afProperties ai campi del modulo adattivo dopo la conversione.

Proprietà dello schema JSON per i campi modulo adattivo generati

Il metamodello supporta le seguenti proprietà comuni dello schema JSON per i campi del modulo adattivo generati utilizzando il servizio di Automated forms conversion:

Nome proprietà Descrizione

titolo

Il testo menzionato nella proprietà title in un metamodello funge da parola chiave di ricerca per eseguire azioni sui campi del modulo adattivo generati. Ad esempio, modificare l’etichetta di un campo modulo adattivo. Per ulteriori informazioni, vedere Modificare l'etichetta di un campo modulo in Esempi di metamodello personalizzato.

descrizione

La proprietà description imposta il testo della Guida per il campo modulo adattivo generato. Per ulteriori informazioni, vedere Aggiungere testo della Guida a un campo modulo in Esempi di metamodello personalizzato.

tipo

La proprietà type definisce il tipo di dati per il campo modulo adattivo generato. I valori possibili per la proprietà title includono:

  • stringa: Genera un campo modulo adattivo del tipo di dati di testo.
  • numero: Genera un campo modulo adattivo di tipo dati numerico.
  • numero intero: Genera un campo modulo adattivo di tipo dati numerico con sottotipo impostato su integer.
  • booleano: Genera un componente per modulo adattivo per switch.

Per ulteriori informazioni sull'utilizzo della proprietà type in un metamodello, vedere Modificare il tipo di campo di un modulo in Esempi di metamodello personalizzato.

pattern

La proprietà pattern limita il valore del campo modulo adattivo generato in base a un’espressione regolare. Ad esempio, il seguente codice nel metamodello limita il valore del campo modulo adattivo generato a dieci cifre:
"pattern": "/\\d{10}/"
Analogamente, il seguente codice nel metamodello limita il valore di un campo a un formato di data specifico.
"pattern": "date{DD MMMM, AAAA}",

format

La proprietà format limita il valore del campo modulo adattivo generato in base a un pattern denominato anziché a un’espressione regolare. I valori possibili per la proprietà format includono:

  • e-mail: Genera un componente modulo adattivo per e-mail.
  • hostname: Genera un componente modulo adattivo casella di testo.
Per ulteriori informazioni sull'utilizzo della proprietà format in un metamodello, vedere Modificare il formato di un campo modulo in Esempi di metamodello personalizzato.

enum e enumNames

Le proprietà enum e enumNames limitano i valori dei campi a discesa, casella di controllo o pulsante di scelta a un set fisso. I valori elencati in enumNames vengono visualizzati sull'interfaccia utente. I valori elencati utilizzando la proprietà enum vengono utilizzati per il calcolo.
Per ulteriori informazioni, vedere Convertire un campo modulo in caselle di controllo a scelta multipla nel modulo adattivo, Convertire un campo di testo in un elenco a discesa nel modulo adattivo e Aggiungere opzioni aggiuntive all’ elenco a discesa in esempi di metamodello personalizzato.

Ricerca basata su parole chiave per applicare proprietà ai campi modulo adattivo generati

Il servizio di automated forms conversion esegue una ricerca per parola chiave nel modulo di origine durante la conversione. Dopo aver filtrato i campi che soddisfano i criteri di ricerca, il servizio di conversione applica le proprietà definite per tali campi nel metamodello ai campi del modulo adattivo generato.

Le parole chiave sono indicate utilizzando la proprietà aem:affKeyword .

{
  "numberfields": {
      "type": "number",
      "aem:affKeyword": ["Bank account number"]
 }
}

In questo esempio, il servizio di conversione utilizza il testo all'interno di aem:affKeyword come parola chiave di ricerca. Dopo aver recuperato il testo Numero conto bancario nel modulo, il servizio di conversione converte il campo in un tipo num utilizzando la proprietà type .

Proprietà aggiuntive per i campi modulo adattivo generati

È possibile utilizzare la proprietà aem:afProperties nel metamodello per definire le seguenti proprietà aggiuntive per i campi dei moduli adattivi generati utilizzando il servizio Automated forms conversion:

Nome proprietà Descrizione

multiLine

La proprietà multiLine converte un campo modulo di origine in un campo a più righe nel modulo adattivo dopo la conversione. Per ulteriori informazioni, vedere Convertire un campo stringa in un campo multiriga in Esempi di metamodello personalizzato.

mandatory

La proprietà mandatory imposta come obbligatorio l’input per un campo modulo adattivo dopo la conversione.
Per ulteriori informazioni, consulta Aggiungere convalide ai campi modulo adattivo negli esempi di modelli di metadati personalizzati.

jcr:title

La proprietà jcr:title, con la proprietà dello schema JSON del titolo, consente di modificare l’etichetta di un campo modulo adattivo dopo la conversione.
Per ulteriori informazioni, vedere Modificare l’etichetta di un campo modulo negli esempi di metamodello personalizzato.
Per informazioni su ulteriori proprietà da applicare ai campi dei moduli adattivi tramite lo schema JSON, consulta Creazione di moduli adattivi con schemi JSON .

sling:resourceType e guideNodeClass

le proprietà sling:resourceType e guideNodeClass consentono di mappare un campo modulo a un componente modulo adattivo corrispondente.
Per ulteriori informazioni, vedere Convertire un campo modulo in caselle di controllo a scelta multipla nel modulo adattivo e Convertire un campo di testo in elenco a discesa nel modulo adattivo in esempi di metamodello personalizzato.

validatePictureClause

La proprietà validatePictureClause imposta una convalida sul formato consentito nel campo modulo adattivo dopo la conversione.
Per ulteriori informazioni, consulta Aggiungere convalide ai campi modulo adattivo negli esempi di modelli di metadati personalizzati.

Creare un modello di metamodello personalizzato nella propria lingua

È possibile creare un metamodello specifico per il linguaggio. Questo metamodello consente di creare regole di mappatura nel linguaggio desiderato. Il servizio di automated forms conversion consente di creare metamodello nelle seguenti lingue:

  • Inglese (en)
  • Francese (fr)
  • Tedesco (de)
  • Spagnolo (es)
  • Italiano (it)
  • Portoghese (pt-br)

Aggiungi il tag metatag aem:Language all'inizio di un metatag per specificare la relativa lingua. Ad esempio,

"metaTags": {
        "aem:Language": "fr"
    }

Quando non viene specificata alcuna lingua, il servizio considera che il metamodello sia in lingua inglese.

Considerazioni sulla creazione di un metamodello specifico per il linguaggio

  • Assicurati che il nome di ogni chiave sia in lingua inglese. Ad esempio, emailAddress.

  • Assicurati che tutti i riferimenti di entità e i valori predefiniti di tutte le chiavi id comprendano solo caratteri ASCII. Ad esempio "id": "ContactPoint" / "$ref": "#ContactPoint".

  • Assicurati che tutti i valori corrispondenti alle seguenti chiavi siano nel linguaggio del metamodello specificato:

    • aem:affKeyword
    • titolo
    • descrizione
    • enumNames
    • shortDescription
    • validatePictureClauseMessage

    Ad esempio, quando la lingua del metamodello è francese ("aem:Language"): "fr"), garantire che tutte le descrizioni e i messaggi siano in lingua francese.

  • Assicurati che tutte le proprietà dello schema JSON utilizzino solo i valori supportati. Ad esempio, la proprietà type può estendere solo i valori selezionati di String, Number, Integer e Boolean.

L'immagine seguente mostra alcuni esempi di metamodello in lingua inglese e del corrispondente metamodello in lingua francese:

Modificare i campi del modulo adattivo utilizzando il metamodello personalizzato

L'organizzazione può disporre di pattern e convalide oltre a quelli elencati nel metamodello predefinito. È possibile estendere il metamodello predefinito per aggiungere pattern, convalide ed entità specifici all’organizzazione. Il servizio automated forms conversion applica il metamodello personalizzato ai campi del modulo durante la conversione. È possibile continuare ad aggiornare il metamodello man mano che vengono rilevati nuovi pattern, convalide ed entità specifici per la propria organizzazione.

Il servizio di automated forms conversion utilizza un metamodello predefinito salvato nel percorso seguente per mappare i campi del modulo di origine ai campi del modulo adattivo durante la conversione:

http://<server>:<port>/aem/forms.html/content/dam/formsanddocuments/metamodel/global.schema.json

Tuttavia, puoi salvare un metamodello personalizzato in una cartella e modificare le proprietà del servizio di conversione per utilizzare il metamodello personalizzato durante la conversione.

Utilizza un metamodello personalizzato durante la conversione

Esegui i seguenti passaggi per utilizzare un metamodello personalizzato durante la conversione:

  1. Crea una cartella in Forms > Forms & Documents e carica il file di schema JSON del metamodello personalizzato nella cartella .

  2. Apri le proprietà del servizio di conversione utilizzando:

    Tools > Cloud Services > Automated Forms Conversion Configuration> <>Proprietà della configurazione selezionata>

  3. Nella scheda Basic , specifica la posizione del metamodello personalizzato nel campo Custom Meta-model e tocca Save & Close.

  4. Esegui la conversione per applicare il metamodello personalizzato al processo di conversione.

Esempi di metamodello personalizzati

Alcuni esempi comuni di utilizzo di un metamodello personalizzato per modificare le proprietà dei campi del modulo adattivo includono:

  • Modificare l’etichetta di un campo modulo
  • Modificare il tipo di campo modulo
  • Aggiunta di testo della Guida a un campo modulo
  • Convertire un campo modulo in pulsanti di scelta a scelta multipla nel modulo adattivo
  • Modificare il formato di un campo modulo
  • Aggiungere convalide ai campi del modulo adattivo
  • Convertire un campo modulo in opzioni elenco a discesa nel modulo adattivo
  • Aggiungi ulteriori opzioni all’elenco a discesa
  • Convertire un campo stringa in un campo a più righe

Modificare l’etichetta di un campo modulo

Esempio: modifica l’etichetta del numero di conto bancario nel modulo in Numero di conto personalizzato nel modulo adattivo dopo la conversione.

In questo metamodello personalizzato, il servizio di conversione utilizza la proprietà title come parola chiave di ricerca. Dopo aver recuperato il testo Numero account bancario nel modulo, il servizio di conversione sostituisce il testo con la stringa Numero account cliente menzionata con la proprietà jcr:title nella sezione aem:afProperties .

{
  "numberfields": {
      "type": "number",
   "title": "Bank account number",
   "aem:afProperties" : {
    "jcr:title" : "Customer account number"
   }
   }
}

Modificare il tipo di campo modulo

Esempio: Modificare il campo numerico del conto bancario del tipo di testo nel modulo prima della conversione in un campo di tipo numero nel modulo adattivo dopo la conversione.

In questo metamodello personalizzato, il servizio di conversione utilizza il testo all'interno di aem:affKeyword come parola chiave di ricerca. Dopo aver recuperato il testo Numero conto bancario nel modulo, il servizio di conversione converte il campo in un tipo di numero utilizzando la proprietà type .

{
  "numberfields": {
      "type": "number",
      "aem:affKeyword": ["Bank account number"]
 }
}

Aggiunta di testo della Guida a un campo modulo

Esempio: Aggiungi il testo della Guida al campo numerico del conto bancario del modulo adattivo.

In questo metamodello personalizzato, il servizio di conversione utilizza il testo all'interno di aem:affKeyword come parola chiave di ricerca. Dopo aver recuperato il testo Numero conto bancario nel modulo, il servizio di conversione aggiunge il testo della Guida al campo del modulo adattivo utilizzando la proprietà description .

{
  "numberfields": {
      "type": "number",
      "aem:affKeyword": ["Bank account number"],
   "description": "Specify your bank account number."
 }
}

Convertire un campo modulo in caselle di controllo a scelta multipla nel modulo adattivo

Esempio: Converti il campo ​Campagna del tipo di stringa nel modulo prima della conversione in caselle di controllo nel modulo adattivo dopo la conversione.

In questo metamodello personalizzato, il servizio di conversione utilizza il testo all'interno di aem:affKeyword come parola chiave di ricerca. Dopo aver recuperato il testo Paese nel modulo, il servizio di conversione converte il campo nelle seguenti caselle di controllo utilizzando la proprietà enum :

  • India
  • Inghilterra
  • Australia
  • Nuova Zelanda

sling: resourceType e ​guideNodeClassproperties mappano un campo modulo al componente modulo adattivo della casella di controllo.

{
"title": {
    "aem:affKeyword": [
      "country"
    ],
    "type" : "string",
    "enum": [
      "India",
      "England",
      "Australia",
      "New Zealand"
    ],
    "aem:afProperties": {
      "sling:resourceType": "fd/af/components/guidecheckbox",
      "guideNodeClass": "guidecheckbox"
    }
  }
}

Modificare il formato di un campo modulo

Esempio: Modifica il formato del campo Email Addressfield in un formato e-mail.

In questo metamodello personalizzato, il servizio di conversione utilizza il testo all'interno di aem:affKeyword come parola chiave di ricerca. Dopo aver recuperato il testo Indirizzo e-mail nel modulo, il servizio di conversione converte il campo in un formato e-mail utilizzando la proprietà format .

{
   "additionalDetails" : {
      "aem:affKeyword": ["E-mail Address"],
       "type" : "string",
       "format" : "email"
  } 
}

Aggiungere convalide ai campi del modulo adattivo

Esempio 1: aggiungi una convalida al campo Codice postale del modulo adattivo.

In questo metamodello personalizzato, il servizio di conversione utilizza il testo all'interno di aem:affKeyword come parola chiave di ricerca. Dopo aver recuperato il testo Codice postale nel modulo, il servizio di conversione aggiunge una convalida al campo utilizzando la proprietà validatePictureClause definita nella sezione aem:afProperties . In base alla convalida, l'input specificato per il campo Codice postale nel modulo adattivo dopo la conversione deve includere sei caratteri.

{
   "postalCode" : {
      "aem:affKeyword": ["Postal Code"],
      "type" : "string",
      "aem:afProperties" : {
        "validatePictureClause" : "\\d{6}"
      } 
   }
}

Esempio 2: aggiungi una convalida al campo numero conto bancario del modulo adattivo.

In questo metamodello personalizzato, il servizio di conversione utilizza il testo all'interno di aem:affKeyword come parola chiave di ricerca. Dopo aver recuperato il testo Numero conto bancario nel modulo, il servizio di conversione aggiunge una convalida al campo utilizzando la proprietà mandatory definita nella sezione aem:afProperties . In base alla convalida, è necessario specificare un valore per il campo Numero conto bancario prima di inviare il modulo dopo la conversione.

{
  "numberfields": {
      "type": "number",
      "aem:affKeyword": ["Bank account number"],
   "aem:afProperties" : {
        "mandatory": "true"
      }   
   }
}

Convertire un campo di testo in un elenco a discesa nel modulo adattivo

Esempio: Converti il campo ​Campagna del tipo di stringa nel modulo prima della conversione in opzioni a discesa nel modulo adattivo dopo la conversione.

In questo metamodello personalizzato, il servizio di conversione utilizza il testo all'interno di aem:affKeyword come parola chiave di ricerca. Dopo aver recuperato il testo Paese nel modulo, il servizio di conversione converte il campo nelle seguenti opzioni dell’elenco a discesa utilizzando la proprietà enum :

  • India
  • Inghilterra
  • Australia
  • Nuova Zelanda

sling: resourceType e ​guideNodeClassproperties mappano un campo modulo al componente modulo adattivo a discesa.

{
"title": {
    "aem:affKeyword": [
      "country"
    ],
    "type" : "string",
    "enum": [
      "India",
      "England",
      "Australia",
      "New Zealand"
    ],
    "aem:afProperties": {
      "sling:resourceType": "fd/af/components/guidedropdownlist",
      "guideNodeClass": "guideDropDownlist"
    }
  }
}

Aggiungi ulteriori opzioni all’elenco a discesa

Esempio: Aggiungi Sri Lankaas come opzione aggiuntiva a un elenco a discesa esistente utilizzando un metamodello personalizzato.

Per aggiungere un’opzione aggiuntiva, aggiorna la proprietà enum con la nuova opzione. In questo esempio, aggiorna la proprietà enum con Sri Lanka come opzione aggiuntiva. I valori elencati nella proprietà enum vengono visualizzati nell'elenco a discesa.

{
"title": {
    "aem:affKeyword": [
      "country"
    ],
    "type" : "string",
    "enum": [
      "India",
      "England",
      "Australia",
      "New Zealand",
   "Sri Lanka"
    ],
    "aem:afProperties": {
      "sling:resourceType": "fd/af/components/guidecheckbox",
      "guideNodeClass": "guidecheckbox"
    }
  }
}

Convertire un campo stringa in un campo a più righe

Esempio: dopo la conversione, converti il campo ​Indirizzo di tipo stringa in un campo multivalore del modulo.

In questo metamodello personalizzato, il servizio di conversione utilizza il testo all'interno di aem:affKeyword come parola chiave di ricerca. Dopo aver recuperato il testo Indirizzo nel modulo, il servizio converte il campo di testo in un campo a più righe utilizzando la proprietà multiLine definita nella sezione aem:afProperties .

{
 "multiLine" : {
   "aem:affKeyword": [
      "Address"
    ],
    "type" : "string",
    "aem:afProperties": {
      "multiLine": "true"
    }
  }
}

In questa pagina