loading table of contents...

7.5.1. Persona Format

Even though the graphical user interface (see Section 7.5.2, “Editing Personas”) assists you in adding and modifying Personas, the data carrying the properties can be syntactically wrong. This may result from a manipulation of a Persona content item with Site Manager. In case, the underlying data can't be parsed, a text area with the raw property strings shows up. You are asked to correct the syntactic errors and if corrected, before the content item form can be displayed again. Therefore, it is necessary to understand the underlying format if you want to correct Persona content items.

Editing Personas in CoreMedia Studio

Figure 7.13. Editing Personas in CoreMedia Studio


In the example screenshot above,

referrer.searchengine.en

causes an error, because multiple dots are not allowed in property keys.

The text in a Persona content item is interpreted as a Java Properties object. A property consists of a key and a value. A key must only contain one "." to identify the context of that property. A value follows a key separated by a '='.

Properties are then parsed into one or more contexts based on the key identifiers. Here is an example:

personal.givenname=Alice
personal.familyname=Doe
personal.dateofbirth=1967-06-30T00:00:00+02:00
personal.emailaddress=alice@fakehost.com
personal.dateTime=2011-05-18T12:20:00+02:00
keyword.sports=1
keyword.fashion=0.7

The part of the key before the '.' is used to create contexts by name. That means in the example there are two named contexts, keyword and personal. The keyword context contains two key-value pairs, sports=1 and fashion=0.7.

Supported Value Types

When context data is read each value provided by a key is interpreted specifically, using one of the format types available.

The following types can be used for values in test contexts:

  • String (implicit or explicit)

  • Boolean

  • Number

  • Date

A String is only read explicitly if the value is defined within single or double quotes. The quotes will not be interpreted as part of the value. Without specifying a String value in quotes, the value will be tried to be interpreted as Boolean, Date and Number before it is interpreted as String.

Example

example.string="an "example" String" 
or 
example.string='an "example" String'

A Boolean can be specified as either true or false.

A Number can be specified in any valid format that can be parsed to a Float object in the Java language. Examples:

  • 1234

  • 1234.0

  • -1234

  • -1234.0

Or using the scientific notation:

  • 1.2345E5

  • 1.2345E+5

  • 1.2345E-5

Dates can be specified using the following formats:

  • ISO8601

  • yyyy-MM-dd'T'HH:mm:ss.SSSZ

  • yyyy-MM-dd HH:mm:ss