AEM 6.4 heeft het einde van de uitgebreide ondersteuning bereikt en deze documentatie wordt niet meer bijgewerkt. Raadpleeg voor meer informatie onze technische ondersteuningsperioden. Ondersteunde versies zoeken hier.
Wanneer u een adaptief formulier maakt met een XML-schema als formuliermodel, hebt u basiskennis van XML-schema's nodig. Het wordt ook aanbevolen de volgende inhoud vóór dit artikel te lezen.
AEM Forms ondersteunt het maken van een adaptief formulier met een bestaand XML-schema als formuliermodel. Dit schema van XML vertegenwoordigt de structuur waarin de gegevens door het achterste deelsysteem in uw organisatie worden geproduceerd of worden verbruikt.
De belangrijkste kenmerken van het gebruik van een XML-schema zijn:
Een XML-schema bestaat uit eenvoudige en complexe elementtypen. De elementen hebben attributen die regels aan het element toevoegen. Wanneer deze elementen en kenmerken naar een adaptief formulier worden gesleept, worden ze automatisch toegewezen aan de bijbehorende adaptieve formuliercomponent.
Deze toewijzing van XML-elementen met adaptieve formuliercomponenten is als volgt:
XML-element of -kenmerk | Aangepast formulieronderdeel |
---|---|
xs:string |
Tekstvak |
xs:boolean |
Selectievakje |
|
Numeriek vak |
xs:date |
Datumkiezer |
xs:enumeration
|
Vervolgkeuzelijst |
Elk complex-type element | Deelvenster |
Hier is een voorbeeld van een XML-schema.
<?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>
Zorg ervoor dat uw XML-schema slechts één basiselement heeft. Een XML-schema met meer dan één hoofdelement wordt niet ondersteund.
U kunt de volgende kenmerken toevoegen aan elementen van een XML-schema om speciale eigenschappen toe te voegen aan de velden van het gekoppelde adaptieve formulier.
Schema, eigenschap | Gebruik in adaptieve vorm | Ondersteund in |
---|---|---|
use=required |
Hiermee wordt een veld verplicht gemarkeerd |
Kenmerk |
default="default value" |
Hiermee wordt een standaardwaarde toegevoegd | Element en kenmerk |
minOccurs="3" |
Geeft minimale voorvallen op (Voor herhaalbare subformulieren (complexe typen)) |
Element (complex type) |
maxOccurs="10"
|
Hiermee worden de maximale voorvallen opgegeven (Voor herhaalbare subformulieren (complexe typen)) |
Element (complex type) |
Wanneer u een schema-element naar een adaptief formulier sleept, wordt een standaardbijschrift gegenereerd door:
Als u bijvoorbeeld de opdracht userFirstName
schema-element, het bijschrift dat in het adaptieve formulier wordt gegenereerd, is User First Name
.
U kunt de volgende beperkingen toevoegen aan elementen van het XML-schema om de waarden te beperken die acceptabel zijn voor een adaptieve formuliercomponent:
Schema, eigenschap |
Gegevenstype |
Beschrijving |
Component |
|
String |
Hiermee wordt het maximale aantal cijfers opgegeven dat in een component is toegestaan. Het opgegeven aantal cijfers moet groter zijn dan nul. |
|
|
String |
Hiermee geeft u de bovengrens voor numerieke waarden en datums op. Standaard wordt de maximumwaarde opgenomen. |
|
|
String |
Hiermee geeft u de ondergrens voor numerieke waarden en datums op. Standaard wordt de minimumwaarde opgenomen. |
|
|
Boolean |
Indien waar (true), moet de numerieke waarde of datum die in de component van het formulier is opgegeven, kleiner zijn dan de numerieke waarde of datum die voor de eigenschap maximum is opgegeven. Indien onwaar, moet de numerieke waarde of datum die in de component van de vorm wordt gespecificeerd minder dan of gelijk aan de numerieke waarde of de datum zijn die voor het maximumbezit wordt gespecificeerd. |
|
|
Boolean |
Indien waar (true), moet de numerieke waarde of datum die in de component van het formulier is opgegeven, groter zijn dan de numerieke waarde of datum die voor de eigenschap minimum is opgegeven. Indien onwaar, moet de numerieke waarde of datum die in de component van de vorm wordt gespecificeerd groter zijn dan of gelijk aan de numerieke waarde of de datum die voor het minimumbezit wordt gespecificeerd. |
|
|
String |
Hiermee wordt het minimale aantal tekens opgegeven dat in een component is toegestaan. De minimumlengte moet gelijk zijn aan of groter zijn dan nul. |
|
|
String |
Hiermee wordt het maximale aantal tekens opgegeven dat in een component is toegestaan. De maximumlengte moet groter zijn dan nul. |
|
|
String |
Hiermee wordt het exacte aantal tekens opgegeven dat in een component is toegestaan. De lengte moet gelijk zijn aan of groter zijn dan nul. |
|
|
String |
Hiermee wordt het maximale aantal decimalen opgegeven dat in een component is toegestaan. De fractionDigits moet gelijk zijn aan of groter dan nul. |
|
|
String |
Hiermee geeft u de volgorde van de tekens op. Een component accepteert de tekens als de tekens overeenkomen met het opgegeven patroon. De eigenschap pattern verwijst naar het validatiepatroon van de overeenkomstige adaptieve formuliercomponent. |
|
Hoe weet ik welk element in de structuur is gekoppeld aan welk XML-element?
Wanneer u dubbelklikt op een element in de Inhoudszoeker, worden een veldnaam en een eigenschap met de naam bindRef
. Deze eigenschap wijst het structuurelement toe aan het element of kenmerk in het schema.
bindRef in het veld wordt de koppeling weergegeven tussen een structuurelement en een element of kenmerk in een schema.
Kenmerken hebben een @
in hun bindRef
waarde om ze van elementen te onderscheiden. Bijvoorbeeld, /config/projectDetails/@duration
.
Waarom kan ik geen afzonderlijke elementen van een subformulier (structuur gegenereerd van een complex type) slepen voor herhaalbare subformulieren (waarden voor minOccurs of maxOccurs zijn groter dan 1)?
In een herhaalbaar subformulier moet u het volledige subformulier gebruiken. Als u alleen selectieve velden wilt, gebruikt u de volledige structuur en verwijdert u de ongewenste velden.
Ik heb een lange complexe structuur in de Inhoudszoeker. Hoe kan ik een specifiek element vinden?
U hebt twee opties:
Wat is een bindRef?
A bindRef
is de verbinding tussen een adaptieve formuliercomponent en een schema-element of -kenmerk. Het dicteert de XPath
waarbij de waarde die is vastgelegd vanuit deze component of dit veld beschikbaar is in de uitvoer-XML. A bindRef
wordt ook gebruikt bij het vooraf invullen van een veldwaarde in vooraf ingevulde (vooraf ingevulde) XML.