home forum orange partner

Filtering expressions

Overview

OrangeML introduces four tags to filter some part of an OrangeML pages : <if>, <choose>, <when> and <otherwise>. These tags use filtering expression that must use the following syntax:

property = 'string_value'
or 
property != 'string_value'
or 
property = integer_value
or 
property != integer_value
or 
property &lt; integer_value
or 
property &lt;= integer_value
or 
property &gt; integer_value
or 
property &gt;= integer_value
or 
property contains 'string_value'
or 
property not-contains 'string_value'

It is possible to test several properties in a single expression using the “or” logical operator like this:

property1 = 'value1' or property2 != 'value2' or property3 = 'value3'

The current version of the platform supports only the OR logical operator. However, it's possible to find workaround for NOT by using the appropriate comparaison and for AND by nesting <if> and/or <choose>, as follows:

<if test="property1 = 'value1'">
 <if test="property2 = 'value2'">
  This content is displayed only if (property='value1') and (property2 = 'value2')
 </if>
</if>

The name of the properties more or less follow the CCPP syntax used in UAProf.

Three UAProf components are considered

  • HardwarePlatform contains attributes that describe the hardware characteristics of the terminal, including type of device, display size, etc.
  • SoftwarePlatform identifies the operating environment of the device.
  • NetworkCharacteristics describes network infrastructure such as bearer information.

When a property is specific to OrangeML, the name of its component is prefixed with Orange (e.g. HardwarePlatform becomes OrangeHardwarePlatform)

Important: These expressions are case sensitive.

Important: Don't forget the quote (') for the string values

HardwarePlatform

Property nameDescriptionPossible values
CCPP/OrangeHardwarePlatform/CustomerValuePropositionThe Customer Value Proposition1) associated to the device by Orange fun_communities, quality_communicator, ultimate_entertainment, ultimate_productivity, ultimate_simplicity
CCPP/OrangeHardwarePlatform/DeviceCategoryThe device category as a numeric value, as follows:
0: WML device
1: small XHTML device (i.e. < 176px)
2: medium XHTML device (i.e. < 240px or not EDGE and not 3G or no DOML support)
3: high-end XHTML device (i.e. >= 240px, 3G/Edge, DOML support)
4: touchscreen device
5: IPhone-like device
0,1,2,3,4 or 5
CCPP/OrangeHardwarePlatform/GalleryEnabledYes if the device is in the gallery pool, no otherwiseyes, no
CCPP/OrangeHardwarePlatform/ScreenCapabilityThis filtering property is now deprecated. It's still supported, but you should use DeviceCategory instead. 1,2,3,4 or 5
CCPP/OrangeHardwarePlatform/UsableWidthThe usable width of the screen in pixels (i.e. the total width of the screen, minus the width of the vertical scrollbar, if any)Any positive integer
CCPP/OrangeHardwarePlatform/UsableWidthCharThe usable width of the screen in chars (i.e. the total width of the screen, minus the width of the vertical scrollbar, if any).Any positive integer
CCPP/OrangeHardwarePlatform/SmartEnabledYes if the device is in the OFR “Smart” pool, no otherwiseyes, no

NetworkCharacteristics

Property nameDescriptionPossible values
CCPP/NetworkCharacteristics/CurrentBearerServiceThe current bearerGPRS, CSD, UMTS2)
CCPP/OrangeNetworkCharacteristics/CurrentPortalVersionThe current version of the portalSmartphoneOI, SmartphoneVideo, SmartphoneNonVideo
CCPP/OrangeNetworkCharacteristics/HROptionEnabledYes if the user has subscribed the bearer is HSDPA no otherwiseyes, no

SoftwarePlatform

Audio capabilities

Property nameDescriptionPossible values
CCPP/OrangeSoftwarePlatform/AudioEnabledYes if the device support audio, no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/AudioDownloadEnabledYes if the device support audio download, no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/AudioStreamingEnabledYes if the device support audio streaming, no otherwiseyes, no

Video capabilities

Property nameDescriptionPossible values
CCPP/OrangeSoftwarePlatform/VideoEnabledYes if the device support video, no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/VideoDownloadEnabledYes if the device support download, no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/VideoForwardLockingEnabledYes if the device support forward locking, no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/VideoProgressiveEnabledYes if the device support progressive download, no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/VideoStreamingEnabledYes if the device support streaming, no otherwiseyes, no

DOML capabilities

Property nameDescriptionPossible values
CCPP/OrangeSoftwarePlatform/DOMLEmbeddedVideoEnabledYes if the device supports embedded video, no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/DOMLCarouselEnabledYes if the device supports carousels, no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/DOMLDropDownEnabledYes if the device supports dropdown <div> and <block>, no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/DOMLSectionTabsEnabledYes if the device supports tabs <block>, no otherwiseyes, no

Other capabilities

Property nameDescriptionPossible values
CCPP/SoftwarePlatform/JavaPlatformThe list of Java technologies supported by the device. This is a “bag” type property that supports only the “contains” and “not-contains” operator. Unfortunatly this property is not properly maintained currently and cannot be used…'MIDP', 'EGE', etc.
CCPP/OrangeSoftwarePlatform/DTMFInMakeCallEnabledYes if the device supports "make call" facility (whatever the protocol used) and if DTMF are supported in a communication initialized by this “make call”, no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/EmbeddedApplicationsThe list of applications that are embedded in the device. This is a “bag” type property that only supports the “contains” and “not-contains” operator. If an application is contained in EmbeddedApplications, it's obviously included in SupportedApplication (cf. below)'NAVGPS', 'FLASHCODE', 'MCAST', 'ACCESDIRECT', 'OWL', 'PVPLAYER', 'ORANGEPHOTO'
CCPP/OrangeSoftwarePlatform/FileUploadEnabledYes if the device supports file upload, no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/HRCapabilityEnabledYes if the device supports “High Resolution” (i.e. HSDPA), no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/MakeCallEnabledYes if the device supports "make call" facility (whatever the protocol used), no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/MailtoEnabledYes if the device supports "mailto" facility, no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/RingtonePolyEnabledYes if the device supports polyphonic ring-tones, no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/RingtoneHifiEnabledYes if the device supports HiFi ring-tones, no otherwiseyes, no
CCPP/OrangeSoftwarePlatform/SupportedApplicationsThe list of applications that are supported by the device. This is a “bag” type property that supports only the “contains” and “not-contains” operator.'NAVGPS', 'FLASHCODE', 'MCAST', 'ACCESDIRECT', 'OWL', 'PVPLAYER', 'ORANGEPHOTO'
CCPP/OrangeSoftwarePlatform/SupportedServicesThe list of Orange portal services that are supported by the device. This is a “bag” type property that supports only the “contains” and “not-contains” operator.'Actu', 'Sport'
1) The Customer Value Proposition (or CVP) is the Orange marketing segmentation of the devices based on the (supposed) main usage of the device.
2) The 'UMTS' value means that the bearer is UMTS or EDGE