Chapter 5: Realizing a Metadata Framework 177 concern certain schema or schemas only, for instance, in such a way that only images are returned. It is also possible to fi nd metadata objects based only on schemas. This is useful if there is a need to list all items that have certain prop- erty, such as duration. The search will go through the whole network of defi nitions, looking for all metadata objects that have the requested property, defi ned either in the object’s schema, or any of its parent schemas. Metadata Engine supports the standard variety of Boolean operators and conditions on property values. Conditions setting limits to the property values are specifi ed using value ranges. That is, the value must be within the given range in order for the metadata object to appear in the results set. The available operators are: • Equals(value): a value range that contains only a single value. The property must be equal to the parameter value; • NotEquals(value): a negated version of Equals(value); • Less(value): a value range that contains all values less than the given value; • LessEqual(value): a value range that contains all values less than or equal to the given value; • Greater(value): a value range that contains all values greater than the given value; • GreaterEqual(value): a value range that contains all values greater than or equal to the given value; • Between(min, max): a value range that contains all values between given minimum and maximum values. By default, minimum and maximum are inclusive; • NotBetween(min, max): Negated version of Between(min, max); • AscendSection(min, max, isFinal): a value range that contains all values between given minimum and maximum values. The minimum value is inclusive. The maximum value is exclusive if the isFinal parameter is false. AscendSections can be used to cover a larger value range in sections without any overlaps; • DescendSection(max, min, isFinal): similar to AscendSection, but used for descending values (max > min). DescendSections can be used to cover a larger value range in sections, starting from the highest section;

Personal Content Experience - Page 201 Personal Content Experience Page 200 Page 202