SharePoint Field Schema XML Examples
This post will give examples of SharePoint field schema xml. Reference for field schema
Field Types
Boolean
<Field ID="{GUID}" Name="Boolean" StaticName="Boolean" DisplayName="Boolean" Type="Boolean">
<Default>0</Default>
</Field>
Default Values
* 0 - Unchecked
* 1 - Checked
Calculated
<Field ID="{GUID}" Name="Calculated" StaticName="Calculated" DisplayName="Calculated" Type="Calculated" ResultType="Text">
<Formula>=[{Field Title}]</Formula>
<FieldRefs>
<FieldRef Name="{Internal Field Name}" />
</FieldRefs>
</Field>
Refrence for calculated field formulas. The formula’s field value is the title (display name) within brackets []. Each field used in the formula, must have the internal name defined within the “FieldRefs”.
Result Types
- Boolean
- Currency
-
DateTime
- Set the Format property to define “DateOnly” or “DateTime”
- Number
- Text
Example Formulas
Display another field
Result Type - Text
<Formula>=[Title]</Formula>
<FieldRefs>
<FieldRef Name="Title" />
</FieldRefs>
Display the # of days including hours and minutes
Result Type - DateTime
<Formula>
=If(
OR(ISBLANK([Date/Time Opened]),ISBLANK([Date/Time Closed])),
"",
DATEDIF([Date/Time Opened), [Date/Time Closed], "d")&":"&Text([Date/Time Closed]-[Date/Time Opened], "hh:mm")
)
</Formula
<FieldRefs>
<FieldRef Name="EndDate" />
<FieldRef Name="StartDate" />
</FieldRefs>
Active flag, based on a status field value
Result Type - Boolean
<Formula>
=IF(
OR([Report Status]="In Progress"), [Report Status]="Pending", [Report Status]="Needs Update"),
"Yes",
"No"
)
</Formula>
<FieldRefs>
<FieldRef Name="Status" />
</FieldRefs>
Choice
<Field ID="{GUID}" Name="Choice" StaticName="Choice" DisplayName="Choice" Type="Choice">
<Default>Choice 3</Default>
<CHOICES>
<CHOICE>Choice 1</CHOICE>
<CHOICE>Choice 2</CHOICE>
<CHOICE>Choice 3</CHOICE>
<CHOICE>Choice 4</CHOICE>
<CHOICE>Choice 5</CHOICE>
</CHOICES>
</Field>
Choice (Multi)
<Field ID="{GUID}" Name="Choice" StaticName="Choice" DisplayName="Choice" Type="MultiChoice">
<Default>Choice 3</Default>
<CHOICES>
<CHOICE>Choice 1</CHOICE>
<CHOICE>Choice 2</CHOICE>
<CHOICE>Choice 3</CHOICE>
<CHOICE>Choice 4</CHOICE>
<CHOICE>Choice 5</CHOICE>
</CHOICES>
</Field>
Date Only
<Field ID="{GUID}" Name="DateOnly" StaticName="DateOnly" DisplayName="Date Only" Type="DateTime" Format="DateOnly" />
Date And Time
<Field ID="{GUID}" Name="DateTime" StaticName="DateTime" DisplayName="Date Time" Type="DateTime" Format="DateTime" />
Lookup
<Field ID="{GUID}" Name="Lookup" StaticName="Lookup" DisplayName="Lookup" Type="Lookup" List="{Lookup List GUID}" ShowField="[Lookup Internal Field Name]" />
- List - The look up list id
- ShowField - The look up list’s internal field name.
Lookup (Associated)
<Field ID="{GUID}" Name="AssociatedLookup" StaticName="AssociatedLookup" DisplayName="Associated Lookup" Type="Lookup" List="{Lookup List GUID}" ShowField="[Lookup Internal Field Name]" FieldRef={Lookup Field GUID} />
Order Matters - The main lookup field must be created before the associated field.
- FieldRef - The main lookup field id
Lookup (Multi)
<Field ID="{GUID}" Name="Lookup" StaticName="Lookup" DisplayName="Lookup" Type="Lookup" List="{Lookup List GUID}" ShowField="[Lookup Internal Field Name]" Mult="TRUE" />
Managed Metadata
<Field ID="{GUID}" Name="MangedMetadata_0" StaticName="MangedMetadata_0" DisplayName="Manged Metadata Value" Type="Note" Hidden="TRUE" />
<Field ID="{GUID}" Name="MangedMetadata" StaticName="MangedMetadata" DisplayName="Manged Metadata" Type="TaxonomyFieldType" ShowField="Term1033">
<Customization>
<ArrayOfProperty>
<Property>
<Name>TextField</Name>
<Value xmlns:q6="http://www.w3.org/2001/XMLSchema" p4:type="q6:string" xmlns:p4="http://www.w3.org/2001/XMLSchema-instance">{Field Value GUID}</Value>
</Property>
</ArrayOfProperty>
</Customization>
</Field>
Order Matters - The value field must be created before the managed metadata field.
- ShowField - Term[The locale id]
- 1033 - English
Note
<Field ID="{GUID}" Name="PlainText" StaticName="PlainText" DisplayName="Plain Text" Type="Note" NumLines="6" />
Note (Rich HTML)
<Field ID="{GUID}" Name="RichText" StaticName="RichText" DisplayName="Rich Text" Type="Note" RichText="TRUE" />
Note (Enhanced Rich HTML)
<Field ID="{GUID}" Name="EnhancedRichText" StaticName="EnhancedPlainText" DisplayName="Enhanced Rich Text" Type="Note" RichText="TRUE" RichTextMode="FullHtml" />
Number (Decimal)
<Field ID="{GUID}" Name="NumberDecimal" StaticName="NumberDecimal" DisplayName="Decimal" Type="Number" Decimals="2" Min="-500" Max="500" />
- Max - The maximum required value
- Min - The minimum required value
Number (Integer)
<Field ID="{GUID}" Name="NumberInteger" StaticName="NumberInteger" DisplayName="Integer" Type="Number" />
Number (Percentage)
<Field ID="{GUID}" Name="NumberPercentage" StaticName="NumberPercentage" DisplayName="Integer" Type="Number" ShowPercentage="TRUE" />
Url
<Field ID="{GUID}" Name="Url" StaticName="Url" DisplayName="Url" Type="URL" />
User
<Field ID="{GUID}" Name="User" StaticName="User" DisplayName="User" Type="User" UserSelectionMode="0" UserSelectionScope="0" />
User Selection Mode
* 0 - Users Only
* 1 - User & Groups
User Selection Scope
* 0 - No Restrictions
* [#] - The SharePoint group id
User (Multi)
<Field ID="{GUID}" Name="User" StaticName="User" DisplayName="User" Type="User" UserSelectionMode="0" UserSelectionScope="0" Mult="TRUE" />