De schema-editor about-schema-edition
Adobe Campaign past gegevensschema's toe op:
- Definiëren hoe dataobjecten in de applicatie worden gekoppeld aan onderliggende databasetabellen.
- Definiëren van koppelingen tussen de verschillende dataobjecten in de Campaign-applicatie.
- Definiëren en beschrijven van de afzonderlijke velden die in elk object zijn opgenomen.
Voor een beter inzicht in de ingebouwde lijsten van de Campagne en hun interactie, verwijs naar deze sectie.
Schema's uitbreiden of maken extending-or-creating-schemas
Als u een veld, index of ander element wilt toevoegen aan een van de schema's met kerngegevens in Campagne, zoals de ontvangende tabel (nms:ontvanger), moet u dat schema uitbreiden. Voor meer op dit, verwijs naar Uitbreidend een schemasectie.
Als u een geheel nieuw type gegevens wilt toevoegen dat niet in Adobe Campaign buiten het vak bestaat (bijvoorbeeld een contracttabel), kunt u rechtstreeks een aangepast schema maken. Voor meer op dit, verwijs naar de schema's van Gegevenssectie.
Nadat u een schema hebt uitgebreid of gemaakt waarin u wilt werken, kunt u het beste de XML-inhoudselementen definiëren in dezelfde volgorde als hieronder.
Opsommingen enumerations
Opsommingen worden eerst gedefinieerd, vóór het hoofdelement van het schema. Hiermee kunt u waarden in een lijst weergeven om de keuzes te beperken die de gebruiker voor een bepaald veld heeft.
Voorbeeld:
<enumeration basetype="byte" name="exTransactionTypeEnum" default="store">
<value label="Website" name="web" value="0"/>
<value label="Call Center" name="phone" value="1"/>
<value label="In Store" name="store" value="2"/>
</enumeration>
Wanneer u velden definieert, kunt u deze opsomming als volgt gebruiken:
<attribute desc="Type of Transaction" label="Transaction Type" name="transactionType"
type="string" enum="exTransactionTypeEnum"/>
Om meer over opsommingen te weten te komen, verwijs naar Opsommingenen <enumeration>
elementsecties.
Index index
Indexen zijn de eerste elementen die in het hoofdelement van het schema worden gedeclareerd.
Ze kunnen uniek zijn of niet en verwijzen naar een of meer velden.
Voorbeelden:
<dbindex name="email" unique="true">
<keyfield xpath="@email"/>
</dbindex>
<dbindex name="lastNameAndZip">
<keyfield xpath="@lastName"/>
<keyfield xpath="location/@zipCode"/>
</dbindex>
Het xpath attribuut richt aan het gebied in uw schema dat u wenst om te indexeren.
Voor meer op indexen, verwijs naar de Geïndexeerde gebiedensectie.
Toetsen keys
Elke lijst moet minstens één sleutel hebben, en vaak wordt het automatisch gevestigd in het belangrijkste element van het schema door het te gebruiken @autopk=true attribuut dat aan "waar"wordt geplaatst.
De primaire sleutel kan ook worden bepaald gebruikend het interne attribuut.
Voorbeeld:
<key name="householdId" internal="true">
<keyfield xpath="@householdId"/>
</key>
In dit voorbeeld, in plaats van het laten @automatische attribuut een standaard primaire sleutel tot stand brengen genoemd "id"wij specificeren onze eigen "homeId"primaire sleutel.
Om meer over sleutels te weten te komen, verwijs naar het Beheer van sleutelssectie.
Attributen (velden) attributes--fields-
Met kenmerken kunt u de velden definiëren waaruit het gegevensobject bestaat. U kunt de Insert knoop in de toolbar van de schemageditie gebruiken om lege attributenmalplaatjes in uw XML te laten vallen waar uw curseur is. Voor meer op dit, verwijs naar de schema's van Gegevenssectie.
De volledige lijst van attributen is beschikbaar in de <attribute>
elementsectie. Hier volgen enkele van de meer gebruikte kenmerken:
-
@advanced
-
@dataPolicy
-
@default
-
@desc
-
@enum
-
@expr
-
@label
-
@length
-
@name
-
@notNull
-
@required
-
@ref
-
@xml
-
@type
Om een lijst te bekijken die van de afbeeldingen voor de gegevenstypes een lijst maakt door Adobe Campaign voor de verschillende systemen van het gegevensbestandbeheer worden geproduceerd, verwijs naar Toewijzing de types van Adobe Campaign/DBMS gegevenssectie die.
Voor meer informatie over elk attribuut, verwijs naar de beschrijving van Attributensectie.
Voorbeelden examples
Voorbeeld van het definiëren van een standaardwaarde:
<attribute name="transactionDate" label="Transaction Date" type="datetime" default="GetDate()"/>
Voorbeeld van het gebruik van een gemeenschappelijk kenmerk als een sjabloon voor een veld dat ook als verplicht is gemarkeerd:
<attribute name="mobile" label="Mobile" template="nms:common:phone" required="true" />
Voorbeeld van een berekend veld dat verborgen is met het attribuut @advanced :
<attribute name="domain" label="Email domain" desc="Domain of recipient email address" expr="GetEmailDomain([@email])" advanced="true" />
Voorbeeld van een gebied van XML dat ook op een SQL gebied wordt opgeslagen en @dataPolicy attributen heeft.
<attribute name="secondaryEmail" label="Secondary email address" length="100" xml="true" sql="true" dataPolicy="email" />
Een XML-veld wordt opgeslagen in een memoveld ("mData") van de tabel.
Een gegevens verwerkt gebied nochtans wordt gecreeerd dynamisch telkens als een vraag wordt begonnen, bestaat het daarom slechts in de toepassingslaag.
Koppelingen links
De verbindingen zijn enkele laatste elementen in het belangrijkste element van uw schema. Ze definiëren hoe alle verschillende schema's in uw instantie op elkaar betrekking hebben.
De verbindingen worden verklaard in het schema dat de buitenlandse sleutel van de lijst bevat waaraan het wordt verbonden.
Er zijn drie soorten kardinaliteit: 1-1, 1-N, en N-N. Het is het type 1-N dat door gebrek wordt gebruikt.
Voorbeelden examples-1
Een voorbeeld van een verbinding 1-N tussen de ontvankelijke lijst (out-of-the-box schema) en een lijst van douanetransacties:
<element label="Recipient" name="lnkRecipient" revLink="lnkTransactions" target="nms:recipient" type="link"/>
Een voorbeeld van een 1-1 verbinding tussen een douaneschema "Auto"(in "cus"namespace) en de ontvankelijke lijst:
<element label="Car" name="lnkCar" revCardinality="single" revLink="recipient" target="cus:car" type="link"/>
Voorbeeld van een externe verbinding tussen de ontvankelijke lijst en een lijst van adressen die op het e-mailadres en niet een primaire sleutel wordt gebaseerd:
<element name="emailInfo" label="Email Info" revLink="recipient" target="nms:address" type="link" externalJoin="true">
<join xpath-dst="@address" xpath-src="@email"/>
</element>
Hier komt 'xpath-dst' overeen met de primaire sleutel in het doelschema en 'xpath-src' komt overeen met de externe sleutel in het bronschema.
Audit trail audit-trail
Eén handig element dat u onder aan het schema wilt opnemen, is een trackingelement (audittrail).
In het onderstaande voorbeeld kunt u velden opnemen die betrekking hebben op de aanmaakdatum, de gebruiker die de gegevens heeft gemaakt, de datum en de auteur van de laatste wijziging voor alle gegevens in de tabel:
<element aggregate="xtk:common:auditTrail" name="auditTrail"/>
De databasestructuur bijwerken updating-the-database-structure
Nadat de wijzigingen zijn voltooid en opgeslagen, moeten alle wijzigingen die van invloed kunnen zijn op de SQL-structuur worden toegepast op de database. Om dit te doen, gebruik de medewerker van de gegevensbestandupdate.
Raadpleeg de sectie De databasestructuur bijwerken voor meer informatie.