Adaptive Formulare mithilfe des XML-Schemas erstellen creating-adaptive-forms-using-xml-schema
Adobe empfiehlt, die modernen und erweiterbaren Kernkomponentenzur Datenerfassung zu verwenden, um neue adaptive Formulare zu erstellenoder adaptive Formulare zu AEM Sites-Seiten hinzuzufügen. Diese Komponenten stellen einen bedeutenden Fortschritt bei der Erstellung adaptiver Formulare dar und sorgen für beeindruckende Anwendererlebnisse. In diesem Artikel wird der ältere Ansatz zum Erstellen adaptiver Formulare mithilfe von Foundation-Komponenten beschrieben.
Voraussetzungen prerequisites
Für die Erstellung eines adaptiven Formulars mit einem XML-Schema als zugehöriges Formularmodell sind grundlegende Kenntnisse zu XML-Schemata erforderlich. Außerdem wird empfohlen, folgenden Inhalt vor diesem Artikel durchzulesen.
Verwenden eines XML-Schemas als Formularmodell using-an-xml-schema-as-form-model
Experience Manager Forms unterstützt die Erstellung eines adaptiven Formulars mit einem vorhandenen XML-Schema als Formularmodell. Dieses XML-Schema stellt die Struktur dar, in der Daten vom Back-End-System in Ihrer Organisation produziert oder genutzt werden.
Dies sind die Hauptfunktionen bei der Verwendung eines XML-Schemas:
- Die XSD-Struktur wird als Baumstruktur auf der Registerkarte für die Inhaltssuche im Authoring-Modus für ein adaptives Formular angezeigt. Sie können Elemente aus der XSD-Hierarchie in das adaptive Formular ziehen.
- Sie können das Formular mit XML vorausfüllen, das mit dem zugehörigen Schema konform ist.
- Bei der Übermittlung werden die von der Benutzerin oder dem Benutzer eingegebenen Daten im XML-Format gesendet, das dem zugehörigen Schema entspricht.
Ein XML-Schema besteht aus einfachen und komplexen Elementtypen. Die Elemente weisen Attribute auf, die dem Element Regeln hinzufügen. Wenn diese Elemente und Attribute in ein adaptives Formular gezogen werden, werden sie automatisch der entsprechenden Komponente des adaptiven Formulars zugeordnet.
Diese Zuordnung von XML-Elementen zu Komponenten adaptiver Formulare sieht wie folgt aus:
Beispiel-XML-Schema sample-xml-schema
Im Folgenden finden Sie ein Beispiel eines XML-Schemas.
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema targetNamespace="https://adobe.com/sample.xsd"
xmlns="https://adobe.com/sample.xsd"
xmlns:xs="https://www.w3.org/2001/XMLSchema"
>
<xs:element name="sample" type="SampleType"/>
<xs:complexType name="SampleType">
<xs:sequence>
<xs:element name="leaderName" type="xs:string" default="Enter Name"/>
<xs:element name="assignmentStartBirth" type="xs:date"/>
<xs:element name="gender" type="GenderEnum"/>
<xs:element name="noOfProjectsAssigned" type="IntType"/>
<xs:element name="assignmentDetails" type="AssignmentDetails"
minOccurs="0" maxOccurs="10"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="AssignmentDetails">
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="durationOfAssignment" type="xs:unsignedInt" use="required"/>
<xs:attribute name="numberOfMentees" type="xs:unsignedInt" use="required"/>
<xs:attribute name="descriptionOfAssignment" type="xs:string" use="required"/>
<xs:attribute name="financeRelatedProject" type="xs:boolean"/>
</xs:complexType>
<xs:simpleType name="IntType">
<xs:restriction base="xs:int">
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="GenderEnum">
<xs:restriction base="xs:string">
<xs:enumeration value="Female"/>
<xs:enumeration value="Male"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
Hinzufügen spezieller Eigenschaften zu Feldern mithilfe eines XML-Schemas adding-special-properties-to-fields-using-xml-schema
Sie können die folgenden Attribute zu XML-Schemaelementen hinzufügen, um spezielle Eigenschaften zu den Feldern des zugehörigen adaptiven Formulars hinzuzufügen.
- Großschreibung des ersten Zeichens des Elementnamens
- Einfügen eines Leerzeichens bei Binnenmajuskeln
userFirstName
hinzufügen, wird User First Name
als Beschriftung im adaptiven Formular erstellt.Einschränken der gültigen Werte für eine Komponente eines adaptiven Formulars limit-acceptable-values-for-an-adaptive-form-component
Sie können die folgenden Einschränkungen zu XML-Schemaelementen hinzufügen, um die Werte zu beschränken, die für eine Komponente eines adaptiven Formulars gültig sind:
Häufig gestellte Fragen frequently-asked-questions
Woher weiß ich, welches Element in der Baumstruktur mit welchem XML-Element verknüpft ist?
Wenn Sie auf ein Element in der Inhaltssuche doppelklicken, wird ein Popup-Menü mit einem Feldnamen und einer Eigenschaft namens bindRef
angezeigt. Diese Eigenschaft ordnet das Baumstrukturelement dem Element oder Attribut im Schema zu.
Das Feld bindRef
zeigt die Verknüpfung zwischen einem Element der Baumstruktur und einem Element oder Attribut in einem Schema an.
@
-Symbol in ihrem bindRef
-Wert auf, wodurch sie von Elementen unterschieden werden können. Beispiel: /config/projectDetails/@duration
.Warum kann ich nicht einzelne Elemente eines Teilformulars (Struktur aus einem komplexen Typ generiert) für wiederholbare Teilformulare ziehen (Wert von „minOccurs“ oder „maxOccurs“ ist größer als 1)?
In einem wiederholbaren Teilformular müssen Sie das gesamte Teilformular verwenden. Wenn Sie nur einzelne Felder nutzen möchten, verwenden Sie die gesamte Struktur und löschen Sie unerwünschte Felder.
Ich habe eine lange komplexe Struktur in der Inhaltssuche. Wie kann ich ein bestimmtes Element suchen?
Es gibt zwei Optionen:
- Scrollen Sie durch die Baumstruktur
- Verwenden Sie das Suchfeld, um ein Element zu finden
Was ist bindRef?
bindRef
ist die Verbindung zwischen einer Komponente eines adaptiven Formulars und einem Schemaelement oder -attribut. Dieses Element gibt den XPath
vor, in dem der Wert, der von dieser Komponente oder diesem Feld erfasst wird, in der Ausgabe-XML verfügbar ist. Ein bindRef
wird auch verwendet, wenn ein Feldwert aus (vorausgefüllter) XML im Voraus gefüllt wird.