Komplexa typer

Elementdeklarationer för XML-scheman kan ha enkla eller komplexa typer. Attributdeklarationer kan innehålla enkla typer. Vanligtvis mappas element med enkla typer och attribut till Designer-fält. Element med komplexa typer innehåller andra element och attribut, eller enbart attribut, och mappas normalt till delformulär.

Komplexa typer används för att definiera alla andra element. Komplexa typer kan definiera elementinnehåll, blandat innehåll, enkelt innehåll eller tomt innehåll.

Komplexa typelement kan deklarera attribut.

Generera ett delformulär från elementinnehåll i en datakälla

Ett element med enbart elementinnehåll (eventuellt även attribut) genererar ett delformulär när det dras in i en formulärdesign.

Delformuläret innehåller objekt för varje attribut som har deklarerats i elementet och objekten eller delformulären för varje underordnat element.

Enkelt innehåll

När ett element deklareras som att ha enkelt innehåll (textdata) kan det även deklareras ha attribut. I de fall där elementet inte har några attribut är mappningen densamma som för enkla element.

Med attribut mappas elementen till ett delformulär som fått namn från elementnamnet. Delformuläret innehåller ett fält som är bundet till elementet och extra fält för varje attribut. Namnet på fältet som är bundet till elementet är namnet på elementet med strängen "_data" tillagd. Tänk dig ett element (t.ex. <telefon>) som har numeriskt innehåll och ett attribut med namnet typ:

<phone type="work">5554567</phone>

Detta genererar ett delformulär om heter telefon och innehåller objekten typ och telefon_data. Objektet typ är bundet till $data...telefon.typ, medan fältet telefon_data är bundet till $data...telefon.

Blandat innehåll

Ett element anses ha blandat innehåll när det innehåller både underordnade element och textinnehåll.

Tomt innehåll

Komplexa typer med tomt innehåll behandlas på samma sätt som enkelt innehåll, där objektet som skapas och binds till elementet inte får ha något innehåll.

Förekomst

Förekomstattribut (minOccurs och maxOccurs) för elementdeklarationer i ett XML-schema genererar delformulär och mappas till upprepningsegenskaperna i delformuläret.

Innehållsmodeller

Om innehållsmodellen för elementets underliggande element är något annat än en sekvens kommer mappningarna försöka utforma valet och alla grupper med hjälp av subformSets.