Viz Mosart Administrator Guide

Version 3.9 | Published November 04, 2019 ©

Field Mapping

The custom MOS object mapping is a setup which extracts field values from foreign MOS objects and translates these into Viz Mosart fields. This is done in the newsroomsettings.xml configuration file. This simplifies integration, as no new code needs to be deployed.

The Tool Set

  • Default configurations are available as part of newsroomsettings.xml file

  • Select content from XML using simple XPath 1.0 expressions

  • Concatenate the XPath result using a separator

  • Replace parts of the result using static or dynamic variables

  • Apply conversion rules for the specific field type

What to Configure

  • Reuse or modify existing MOS field mapping in newsroomsettings.xml

  • Add MOS Id map entry using newsroom settings editor

    • Newsroom alias: MOS Id of foreign item

    • value: Field mapping entry name

    • appendContent: appends the complete MOS object to the internal Viz Mosart <item /> as a _<content /> _sub child

    • embeddedMosartItem: signal if the item has a Viz Mosart item embedded

Target Fields

Target fields is a list of the fields used when controlling a video server or graphics element(s).

Video Server

  • clip_hirespath: The name or ID of the video file

  • clip_description: A human-readable description of the video file [optional]

  • clip_dur: The duration of the video file

  • clip_mark_in: The start frame of the video file [optional]

Graphics Systems

  • graphics_id: The ID of the graphics item

  • graphics_description: A human-readable description of the graphics item

  • tc_in: Planned in time for the item relative to the parent item

  • tc_dur: Planned duration for the item

  • graphics_profile: The graphics concept context this item should be forced to play in. This value will be forwarded to graphics systems supporting concepts for graphics when cueing and playing an item.

  • graphics_category: Used in CG Take Out Logic to identify graphics that should be kept at story item transitions. If not set, graphics_id is used for identification.

  • channel: The channel to play the item, ie. DSK, WALL etc.

  • take: MANUAL or AUTO. If MANUAL then tc_in will be 0 and only tc_dur will be used.

  • outBehaviour:

    • TIMECODE = the element will be taken out relative to the current primary element using tc_dur

    • BACKGROUNDEND = the element will be taken out when switching primary story element

    • STORYEND = the element will be taken out when switching from one story to the next

    • OPENEND = the element will be taken out when reloading the rundown or by manually taking the element out

  • auto_continue: true/false (p.d. only for Orad, to send PlayWithoutPause command)

Mapping Source Fields to Target Fields

The following mapping <mosmap id=”VENDOR” elementtype=”CLIP”> </mosmap> contains the attribute descriptions:

  • Id: Value used in the MOS map section of the newsroomsettings.xml

  • Elementtype: CLIP for video servers, GRAPHICS for graphics systems

And <fieldmapping /> contains the attribute descriptions:

  • fieldname: Viz Mosart target field name

  • mospath: A simple XPath 1.0 expression to the location of the source value

  • separator: Value used for joining multiple returned values for the mospath

  • fieldtype:

    • FIELDS – the source value is in video fields

    • FRAMES – the source value is in video fields

    • TIMECODE – the source value is in time code format. Use mask attribute to identify format

    • STATIC – the value for the fieldname has no mospaths and should be as defined in the value attribute

    • REPLACE

    • ADJUST

  • value: The value to use if fieldtype is STATIC

  • valuetype: TEXT,TIMECODE

  • mask: Value on time code format for, i.e. hh:mm:ss or hh:mm:ss:ff

  • mustexist: Set to true if the Viz Mosart field should only be added if a non-empty value exists

  • regex: Regular expression used on the value. Use this to extract parts of the value from the MOS object

  • matchindex: Group index of the result from the regex

  • overwrite: if true, overwrites if a field already exists. Default is false.

Example - Video Server Item

This example is of a Quantel video item.

Source MOS XML (Quantel MOS item)
<mos>
<itemID>3</itemID>
<itemSlug>New Row 3 CVD 1-3</itemSlug>
<objID>15160::559</objID>
<mosID>QUANTEL</mosID>
<mosAbstract>Flug über die Alpen fertig2 1:00</mosAbstract>
<abstract>Flug über die Alpen fertig2 1:00</abstract>
<objDur>1500</objDur>
<objTB>25</objTB>
<objSlug>Flug über die Alpen fertig2</objSlug>
</mos>

Note: The objID is constructed from two numbers where the first is the Quantel clip id. The second number is the Quantel zone

Viz Mosart MOS mapping
<mosmap id = "QUANTEL" elementtype = "CLIP" idasindex = "false">
<fieldmapping fieldname = "clip_hirespath" mospath = "//objID" regex = "^\d+"/>
<fieldmapping fieldname = "clip_description" mospath = "//objSlug"/>
<fieldmapping fieldname = "clip_mark_in" fieldtype = "static" value = "00:00:00:00" valuetype = "TIMECODE"/>
<fieldmapping fieldname = "clip_dur" fieldtype = "FIELDS" mospath = "//objDur" valuetype = "TEXT"/>
</mosmap>
Target Viz Mosart XML
<fields>
<field name = "clip_hirespath" value = "15160"/>
<field name = "clip_description" value = "Flug über die Alpen fertig2 1:00"/>
<field name = "clip_mark_in" value = "00:00:00:00"/>
<field name = "clip_dur" value = "750"/>
</fields>

Example - Graphics Item

This example is of an XPression graphics item.

Source MOS XML (XPression MOS item (modified and stripped to fit screen))
<mos>
<itemID>11</itemID>
<objID>{01E4E214-2414-4C71-956F-6587E3FD1E4B}</objID>
<mosID>XPRESSION</mosID>
<mosAbstract>MAIN KEY Name (B2B): This is a test | Test</mosAbstract>
<itemChannel>1</itemChannel>
<itemEdStart>0</itemEdStart>
<itemEdDur>0</itemEdDur>
<itemTrigger>CHAINED</itemTrigger>
<macroOut>NONE</macroOut>
<mosExternalMetadata>
<mosPayload>
<gfxtype>CG</gfxtype>
<itcTimeIn>500</itcTimeIn>
<itcTimeDur>250</itcTimeDur>
</mosPayload>
</mosExternalMetadata>
</mos>
Viz Mosart MOS mapping
<mosmap id = "XPRESSION" elementtype = "GRAPHICS">
<fieldmapping fieldname = "graphics_id" mospath = "(//itemID | //objID)" separator = "-" fieldtype = "REPLACE" value = "{STORYID}-{MOSPATH}"/>
<fieldmapping fieldname = "graphics_description" mospath = "//mosAbstract"/>
<fieldmapping fieldname = "tc_in" fieldtype = "FRAMES" mospath = "//itcTimeIn" valuetype = "TEXT"/>
<fieldmapping fieldname = "tc_dur" fieldtype = "FRAMES" mospath = "//itcTimeDur[text()!='0']" valuetype = "TEXT"/>
<fieldmapping fieldname = "outBehaviour" mospath = "//macroOut"/>
<fieldmapping fieldname = "channel" fieldtype = "STATIC" mospath = "//gfxtype[text()='CG']" value = "DSK" valuetype = "TEXT" mustexist = "true"/>
<fieldmapping fieldname = "channel" fieldtype = "STATIC" mospath = "//gfxtype[text()='OTS']" value = "WALL" valuetype = "TEXT" mustexist = "true"/>
<fieldmapping fieldname = "channel" fieldtype = "STATIC" mospath = "//gfxtype[text()='FS']" value = "FULL" valuetype = "TEXT" mustexist = "true"/>
<fieldmapping fieldname = "channel" fieldtype = "STATIC" mospath = "//gfxtype[text()='OTHER']" value = "FULL" valuetype = "TEXT" mustexist = "true"/>
</mosmap>
Target Viz Mosart XML
<item>
<fields>
<field name = "graphics_id" value = "VER7ENPS1;P_VANLAB\W\R_F3144D55-78F2-494B-863ED060A74D92F7;D02D7434-58BB-43D6-B03601E7B7BBC1E7-4-{1ECA795F-101D-4301-A559-2A1392F3AA2D}" fieldtype = "TEXT"/>
<field name = "graphics_description" value = "BANNER:Chan1: | Manual | Timed(---):TIMED" fieldtype = "TEXT"/>
<field name = "tc_in" value = "" fieldtype = "TEXT" inputmask = "ff" default = "00:00"/>
<field name = "tc_dur" value = "125" fieldtype = "TEXT" inputmask = "ff" default = "00:00"/>
<field name = "outBehaviour" value = "TIMED" fieldtype = "TEXT"/>
<field name = "channel" value = "DSK" fieldtype = "TEXT"/>
</fields>
</item>