XML Codex

Welcome to the Brick River XML Codex - an alphabetically ordered list of all XML elements available to customize Brick River Views, Content and Contact records.

Click Links that look like this - to expand details about required and optional Parameters available for each Helper.
The owls are not what they seem.

 

<ActionLink> back to top

Creates a Link to appear on a record's 'Actions' Menu when opened in the Web Console
The <ActionLink> element provides an easy way to add links to web resources to the 'Actions' menu of records when they are opened in the Web Console.  For example if someone writes a daily weather blog - links on the 'Actions' menu can give users easy access to weather sites when they are composing blog posts.
Example:
<ActionLinks>
   <ActionLink Href="http://www.brickriver.com/brusersguide/" Label="Brick River User's Guide" Secure="false" />
</ActionLinks>

Attributes:
Href: a URL to an internal or external site or resource.

Label: creates a text label associated with an element

Secure: disguises elements of a URL used by an element


<ActionLinks> back to top

Contains elements which create Links on a View's 'Actions' Button
<ActionLinks> accepts no attributes.
Example:
<ActionLinks>
   <ActionLink Href="http://www.brickriver.com/brusersguide/" Label="Brick River User's Guide" Secure="false" />
</ActionLinks>

<Category> back to top

Defines a Category Field
The <Category> tag identifies a category field in the base table of View - or defines a new category field.
Example:
<Category  Id="Type" Default="Trustees" Invisible="true"  /> 

Attributes:
CatType: sets the category list that will provide data entry options for the field

Cmd: Controls the merging of overlay and base table elements

ColorCoded: Sets whether a field will associate color codes with data entries

Default: a value assigned to a field when a new record is created

Description: creates the description for the element

ExportAbbrev: sets whether to include a Category abbreviation along with Category name when records are exported.

FieldId: sets an Id value for a field that can be used to manage relationships between records.

FullName: do not include in kb

Id: the unique identifier of the element

Important: sets 'importance' style for Fields and Fieldsets in data entry windows.

Invisible: sets the invisibility of the entity

LeavesOnly: do not include in kb

Multiple: Sets whether a category field can accept a single or multiple values.

Name: the display name for the entity

ReadOnly: sets the read only property for the element

ReadOnlyOnAdd: sets the read only property for the field when creating a new record

ReadOnlyOnEdit: sets the read only property for the field when editing an existing record

Required: sets the required property for the field

Searchable: determines whether the field may be included in searches


<Column> back to top

Defines a Column Field
The base table contains a <Column> element for every field that native to a Brick River table.

When a <Column> element is added to a View overlay, attributes included in the tag overwrite or extend attributes for the identical Column Id in the base table.

For example if the base table contains this:

<Column Id="Phone" Type="VarChar" Length="25"/>

and the Overlay contains this:

<Column Id="Phone" Type="VarChar" Length="25" Cmd="Remove"  />

then the Phone field is removed from records accessed with the view.


 
Example:
<Column Id="Phone" Name="Primary Phone" Type="VarChar" Length="25"/> 

Attributes:
AllowHTML: sets whether the field may store encoded HTML content

AllowTime: determines whether a DateTime field may include a time value

CatType: sets the category list that will provide data entry options for the field

Cmd: Controls the merging of overlay and base table elements

ColumnName: No longer in use.

DedupIgnore: Sets whether a field is included in record de-duplication processes

Default: a value assigned to a field when a new record is created

Description: creates the description for the element

Format: sets the format of the field data

FriendlySource: sets the FriendlySource of the element

FullName: do not include in kb

Id: the unique identifier of the element

Important: sets 'importance' style for Fields and Fieldsets in data entry windows.

Invisible: sets the invisibility of the entity

Length: sets the character length of the field

Name: the display name for the entity

NullsHigh: determines whether fields with null values above or below non-null values when records are sorted

Password: sets field option to hide characters upon entry

ReadOnly: sets the read only property for the element

ReadOnlyOnAdd: sets the read only property for the field when creating a new record

ReadOnlyOnEdit: sets the read only property for the field when editing an existing record

Required: sets the required property for the field

Rows: sets the vertical size of the field to a number of rows

Scale: sets the number of places to follow the decimal in a number field

Searchable: determines whether the field may be included in searches

Type: sets the data type of the entity

Utc: sets whether a date/time field will be stored as local time or converted to Universal Coordinated Time

ValidPattern: sets the character pattern allowed for the field


<CustomField> back to top

Defines a field that is not native to a Brick River table - Creates a Custom field in a View
The <CustomField> tag is used in XML overlays to define custom column fields in a view.
Example:
<CustomField Id="Parent Name" Name="Name of Parent or Guardian" Type="VarChar" Length="max" Cmd="Before:FullName" />

 
Attributes:
AllowHTML: sets whether the field may store encoded HTML content

AllowTime: determines whether a DateTime field may include a time value

CatType: sets the category list that will provide data entry options for the field

Cmd: Controls the merging of overlay and base table elements

ColumnName: No longer in use.

DedupIgnore: Sets whether a field is included in record de-duplication processes

Default: a value assigned to a field when a new record is created

Description: creates the description for the element

FieldId: sets an Id value for a field that can be used to manage relationships between records.

Format: sets the format of the field data

FriendlySource: sets the FriendlySource of the element

FullName: do not include in kb

Id: the unique identifier of the element

Important: sets 'importance' style for Fields and Fieldsets in data entry windows.

Invisible: sets the invisibility of the entity

Length: sets the character length of the field

NullsHigh: determines whether fields with null values above or below non-null values when records are sorted

OffColor: Sets the color of a toggle field when that field is 'Off'

OffLabel: Sets the text of a toggle field when that field is 'Off'

OnColor: Sets the backround color of a toggle field when that field is 'Off'

OnLabel: Sets the text of a toggle field when that field is 'On'

Password: sets field option to hide characters upon entry

ReadOnly: sets the read only property for the element

ReadOnlyOnAdd: sets the read only property for the field when creating a new record

ReadOnlyOnEdit: sets the read only property for the field when editing an existing record

Rows: sets the vertical size of the field to a number of rows

Scale: sets the number of places to follow the decimal in a number field

Type: sets the data type of the entity

Utc: sets whether a date/time field will be stored as local time or converted to Universal Coordinated Time

ValidPattern: sets the character pattern allowed for the field


<DedupFields> back to top

Defines fields to be included when comparing records for de-duplication
Brick River Views have a 'Find Duplicates' feature seek and consolidate duplicated Content or Contacts records.  The fields included in the parent tag <DedupFields> define which fields will be used for comparison testing. 

For example, the Base XML for Views based on the Contacts table define that duplicate records based on matching Name, FirstName, LastName, and Email.
<DedupFields> accepts no attributes.
Example:
<DedupFields>
 <Ref Id="Name"/>
 <Ref Id="FirstName"/>
 <Ref Id="LastName"/>
 <Ref Id="Email"/>
</DedupFields>

<Fields> back to top

Contains child elements which define the Fields for the View
<Fields> is the parent element for all tags which define fields and fieldsets for a view.

The <Fields> element typically contains the child elements:
 
<FieldSet> Defines a logical area in the record form where similar fields are contained within a border.  For example, address fields are often contained within a FieldSet
<Column> Defines a field that is already exists in the data record
<Category> Defines a category field already exists in the data record
<CustomField> Creates and Defines a field that does not currently exist in the underlying table.  For example in creating a custom View for Company Cars.  There is no existing field to store 'license plate number'  the <Custom Field> tag would be used to create and define that field.
<Relationship> Defines a relationship to a field in another record.  For example an Authors field on a blog entry record is often defined as a relationship to an Author record.
<File>  
<Fields> accepts no attributes.
Example:
<Fields>
<FieldSet Id="NameFields" Name="Name Fields" Important="true">
<Column Id="Name" Name="Full Name" Type="VarChar" Length="255" Important="true"/>
<Column Id="FirstName" Name="First Name" Type="VarChar" Length="255" Important="true"/>
<Column Id="LastName" Name="Last Name" Type="VarChar" Length="255" Important="true"/>
<Column Id="PreferredName" Name="Preferred Name" Type="VarChar" Length="255"/>
<Column Id="MiddleName" Name="Middle Name" Type="VarChar" Length="255"/>
<Column Id="NameSuffix" Name="Name Suffix" Type="VarChar" Length="255"/>
</FieldSet>
</Fields>

 

<FieldSet> back to top

Contains elements to be logically grouped as related fields on data entry forms
The <FieldSet> element can be used to group related elements so they will appear together on data forms in the Web Console.
 
<FieldSet> accepts no attributes.
Example:
<FieldSet Id="MailingAddressFields" Name="Mailing Address" Important="true">
<Column Id="MailAddress1" Name="Address 1" FullName="Mailing Address 1" Type="VarChar" Length="255"/>
<Column Id="MailAddress2" Name="Address 2" FullName="Mailing Address 2" Type="VarChar" Length="255"/>
<Column Id="MailCity" Name="City" FullName="Mailing City" Type="VarChar" Length="255"/>
<Category Id="MailState" Name="State" FullName="Mailing State" CatType="States" ExportAbbrev="true" ColorCoded="false"/>
<Column Id="MailZip" Name="Zip" FullName="Mailing Zip" Type="VarChar" Length="25" ZipCode="true"/>
<Category Id="MailCountry" Name="Country" FullName="Mailing Country" CatType="Countries" ColorCoded="false"/>
</FieldSet>

 

<File> back to top

Defines a field which stores a link to file.
The <File> element defines a field that stores link information to one or more files.
Example:
<File Id="PrimaryImage" Multiple="false" Name="Primary Image"/>

 
Attributes:
Cmd: Controls the merging of overlay and base table elements

Description: creates the description for the element

FullName: do not include in kb

Id: the unique identifier of the element

Important: sets 'importance' style for Fields and Fieldsets in data entry windows.

Invisible: sets the invisibility of the entity

Multiple: Sets whether a category field can accept a single or multiple values.

Name: the display name for the entity

ReadOnly: sets the read only property for the element

ReadOnlyOnAdd: sets the read only property for the field when creating a new record

ReadOnlyOnEdit: sets the read only property for the field when editing an existing record

Required: sets the required property for the field

Searchable: determines whether the field may be included in searches


<Filter> back to top

Defines a filter for a View
Each <Filter> element defines a filter for a View. 
Example:
<Filter Id="NeedsApproval" Type="SavedFilter" Name="Needs Approval">
<Eq FieldId="NeedsApproval" Value="true"/>
</Filter>

 
Attributes:
Id: the unique identifier of the element

Name: the display name for the entity


<Filters> back to top

Contains child elements to define filters for the View
In a Base XML and View Overlays,  <Filters> is the parent element which contains tags to define and control Filter elements for the View.

Within <Filters> a child <Filter> tag defines each individual filter.

The XML Base for Views based on the Contacts table defines a saved filter based on the Contact Record "Do Not Show Online" checkbox

The XML Base for Views based on the Content table defines two saved filters based on the 'Visibility' and 'Needs Approval' fields.

 
<Filters> accepts no attributes.
Example:
<Filters>
  <Filter Id="NeedsApproval" Type="SavedFilter" Name="Needs Approval">
   <Eq FieldId="NeedsApproval" Value="true"/>
  </Filter>
<Filters>

 

<HandyFields> back to top

Define fields to be available for instant filtering in the Web Console
The parent <HandyFields> element contains child <Ref> elements to create "Handy Fields" - controls in the Web Console to allow instant filtering on a single View field.  For example, the View Base for the Blog Post view creates Handy Field controls to filter Blog Post content by Author or Topic.
<HandyFields> accepts no attributes.
Example:
<HandyFields>
 <Ref Id="Authors"/>
 <Ref Id="Topic"/>
</HandyFields>

 

<Info> back to top

Defines a section of static text to display when viewing or editing a View record.
<Info> tags can be used anywhere within <FieldSet> tags to add instructions, alerts, or other static text to screens used to edit View records. Static text and HTML tags may be included within <Info>
Example:
<Info Id="colorsinfo" Pointer="Down">
 <b>
 The Background Color field is optional.
 </b>
 If you don't enter a Background Color, the default color (light grey) will be used.
 <br/>
 <b>
 All color values must be in hex
 </b>
 - for example white = #fff.
 <br/>
 If you're not familiar with color hex codes, or want to pick colors from a palette -
 <a href="http://htmlcolorcodes.com/color-chart/" target="_blank" style="text-decoration:underline;">
 You'll find some nice color charts here.
 </a>
</Info>

 
Attributes:
Id: the unique identifier of the element

Pointer: Adds a traingular 'pointer' to text blocks added to View screens using the <Info> tag. Pointer's can be aimed Up or Down to point to user's attention to the appropriate field


<ListFields> back to top

Defines the fields to be displayed in the Web Console for the View
The <ListFields> element defines the fields to be displayed when the View is active in the Web Console.  Any <Ref> elements must indicate a field Id that is currently defined withing the <Fields> element.

For example if the 'PreferredName' is removed from the View using <Column Id="PreferredName" Cmd="Remove" /> then you may not use <Ref Id="PreferredName"/> within <ListFields>.
 
<ListFields> accepts no attributes.
Example:
<ListFields>
<Ref Id="FirstName"/>
<Ref Id="PreferredName"/> 
<Ref Id="LastName"/>
<Ref Id="Email"/>
<Ref Id="Phone1"/>
<Ref Id="Phone2"/>
</ListFields>

 

<Ref> accepts no attributes.
Example:

<Relationship> back to top

Defines a relationship between the current record and another record.
The <Relationship> element is used to establish a relationship between the current record and external records.  <Relationship> fields can be used to establish one to many as well as many to many relationships between records.

The ease with which you can define Relationships between records is one of the features that makes Brick River such a powerful and easily customizable Content Management System.

Out of the box, Brick River defines relationships between Blog Posts and the Authors who compose them.  With only a few minutes work you can define content such as Recipes and Ingredients - with one recipe related to many ingredients, or Trustees and Committees - with each Trustee on many Committees and each Committee linked to many Trustees.  See examples of each below.
Example: One To Many Relationship (Recipes and Ingredients) - read the documentation regarding the Dependent and ShowAsTable attributes.
<View Id="Recipes" TableId="Content" Name="Recipes"  Plural="Recipes" Singular="Recipe" >
    <Fields>
        <Relationship Id="Ingredients" TableId="Content" ViewId="Ingredients" Dependent="true" ShowAsTable="true"/>
        ...
    </Fields>
</View>

<View Id="Ingredients" TableId="Content" Name="Ingredients"  Plural="Ingredients" Singular="Ingredient" >
    <Fields>
        ...
    </Fields>
</View>

Many To Many Relationship (Trustees and Committees - read the doc about Reciprocal and ViewId attributes.
<View Id="Trustees" TableId="Contacts">
    <Fields>
        <Relationship Id="Committees" TableId="Contacts" ViewId="Committees" />
    </Fields>
</View>

<View Id="Committees" TableId="Contacts">
    <Fields>
        <Relationship Id="Trustees" TableId="Contacts"  Name="Current Members" ViewId="Trustees" FieldId="Committees" Reciprocal="true" />
    </Fields>
</View>

Attributes:
Cmd: Controls the merging of overlay and base table elements

Dependent: Sets the dependency between the field and a field from another record.

Description: creates the description for the element

FullName: do not include in kb

Id: the unique identifier of the element

Important: sets 'importance' style for Fields and Fieldsets in data entry windows.

Invisible: sets the invisibility of the entity

Multiple: Sets whether a category field can accept a single or multiple values.

Name: the display name for the entity

Permission: sets a permission for a View or Relationship

ReadOnly: sets the read only property for the element

ReadOnlyOnAdd: sets the read only property for the field when creating a new record

ReadOnlyOnEdit: sets the read only property for the field when editing an existing record

Reciprocal: creates a reciprocal relationship between records - if you link record A to record B, you can record B and manage it's link to record A

Required: sets the required property for the field

Searchable: determines whether the field may be included in searches

ShowAsTable: allows multiple records linked to the current record to appear as an embedded table

TableId: the Id of the database table

ViewId: sets a the View to be used to provide options for linking records in Relationship fields.


<SearchFields> back to top

Contains elements which define the fields to be included when performing a Search for records in the Web Console
<Ref> tags within <Search> define which fields will be included when using the Search control in the Web Console.
 
<SearchFields> accepts no attributes.
Example:

The Contacts base table contains the following elements:

<SearchFields>
<Ref Id="Name"/>
<Ref Id="FirstName"/>
<Ref Id="PreferredName"/>
<Ref Id="LastName"/>
<Ref Id="Email"/>
</SearchFields> 

To adjust this list to exclude the Email field from the search and include the Mailing address field - include these elements in that View's XML overlay:

<SearchFields>
<Ref Id="MailAddress"/>
<Ref Id="Email" Cmd="Remove"/>
</SearchFields> 

 


<SortField> back to top

Identifies a field to be included in the sorting logic for the View.
<SortField> requires the 'Id' attribute to identify the field to be sorted.  Optional attributes 'Descending' and 'Cmd' set the type of sort and position relative to other fields included in the sort.
Example:
<SortFields>
<SortField Id="Name" Cmd="Remove"/>
<SortField Id="LastName"/>
<SortField Id="FirstName"/>
</SortFields>

Attributes:
Cmd: Controls the merging of overlay and base table elements

Descending: Sets the sort order for the field

Id: the unique identifier of the element


<SortFields> back to top

Contains elements which set the sort order of records in the View
The <SortFields> parent element contains <SortField> elements to define the sort order of records in the View.
<SortFields> accepts no attributes.
Example: The Default sort order for Views based on the Contacts Table is:  Name, LastName, FirstName:
<SortFields>
   <SortField Id="Name"/>
   <SortField Id="LastName"/>
   <SortField Id="FirstName"/>
</SortFields> 
In a View overlay, removing the Name element creates a new sort order of LastName, FirstName:
<SortFields>
<SortField Id="Name" Cmd="Remove"/>
<SortField Id="LastName"/>
<SortField Id="FirstName"/>
</SortFields>


Moving the FirstName above Last Name creates a sort order of FirstName, LastName:
 
<SortFields>
<SortField Id="Name" Cmd="Remove"/>
<SortField Id="LastName"/>
<SortField Id="FirstName" Cmd="Before:LastName"/>
</SortFields>

<Title> back to top

Contains elements which define a record's Title
<Ref> elements within <Title> define the fields which make up each record's Title.  The Title serves multiple purposes.
 
  • Record Titles can easily be dropped in to Site source codes using the @Title variable.
  • The Title populates the drop down lists when Relationship fields link to external records.
<Title> accepts no attributes.
Example:
<Title>
<Ref Id="Title"/>
</Title>

 

<View> back to top

The root element of an XML Layover
Each XML layover contains all other elements within the <View> element.  Required attributes are Id and TableId.  The TableId names the Id of the root element of the base table.
Example:
<View Id="Volunteers" TableId="Contacts" Purpose="This CUSTOM ROOT view applies to everyone" >
    ...
</View>

Attributes:
Cmd: Controls the merging of overlay and base table elements

FullName: do not include in kb

HideIndex: hides the 'Jump to field' index control from the View display

Id: the unique identifier of the element

Important: sets 'importance' style for Fields and Fieldsets in data entry windows.

Inherits: allows a View to inherit all the elements of another View

Invisible: sets the invisibility of the entity

Name: the display name for the entity

Permission: sets a permission for a View or Relationship

Plural: the plural name of the entity

Purpose: defines a purpose for the View

Singular: the common name of a single record of a View

TableId: the Id of the database table

ViewId: sets a the View to be used to provide options for linking records in Relationship fields.


Want to learn more?

Call 800-924-5220 or

Schedule a demo