stencil author’s guide - service catalog 5.0...tags nmtokens space-separated list of tag values...

20
Business Optix Limited Stencil Author’s Guide Creating and extending Business Optix model stencils

Upload: lamdiep

Post on 05-Jul-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Business Optix Limited

Stencil Author’s Guide Creating and extending Business Optix model stencils

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 2 of 20

CONTENTS

Contents 2

Business Optix Stencils .................................................................................................................................... 3

CLASSes of stencil ............................................................................................................................................... 3

How stencils are loaded ..................................................................................................................................... 3

Why no schema or namespace? ........................................................................................................................ 4

The Anatomy of a Stencil ................................................................................................................................... 4

Data Types .......................................................................................................................................................... 5

Stencil Elements .............................................................................................................................................. 7

The model element ............................................................................................................................................ 7

The include element ........................................................................................................................................... 8

The sequence element ....................................................................................................................................... 8

The page element............................................................................................................................................... 9

The view element ............................................................................................................................................... 9

The component element .................................................................................................................................. 10

The property element ...................................................................................................................................... 12

The choice element .......................................................................................................................................... 15

The condition element ..................................................................................................................................... 15

The shape element ........................................................................................................................................... 16

The marker element ......................................................................................................................................... 19

The label element ............................................................................................................................................. 20

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 3 of 20

BUSINESS OPTIX STENCILS

A Business Optix stencil defines the components, properties and visual representations used to view and edit

Business Optix business models.

As with all other Business Optix models, a stencil is an XML document. A stencil file is distinguished from other

Business Optix model files by having a .xbs, instead of .xbp, extension. Active stencils are stored in the Stencils

folder inside the System folder.

CLASSES OF STENCIL

There are three classes of stencil:

Model stencils define a particular type of model, and live at the top level of the Stencils folder

Most model stencils extend a standard Core stencil, which defines components (such as <model>) and

properties (such as model name or description) common to all types of model

Extension stencils provide for the customization of model stencils, and live inside a Stencils sub-folder

whose name is the same as the model stencil that they extend. Any number of extension stencils may

be associated with each model stencil

Although it is possible to author a new model stencil, most will be provided by Business Optix or one of their

partners. It is far more common to extend an existing model stencil by authoring a new or modified extension

stencil.

The separation of model from extension stencils ensures that, should a model stencil be upgraded as part of a

new product release, custom extensions will continue to operate, without requiring any re-editing of the

model stencil.

This document explains the content of a stencil, and the rules which should, or in some cases must, be

followed when editing one.

HOW STENCILS ARE LOADED

The effective ‘in memory’ stencil used for any model is constructed when the model is loaded, from the

relevant Model, Core and Extension files. When a model is opened, its model type, library and the Business

Optix version number are used to determine the required model stencil. For example:

a model with type Process

and library https://businessoptixhosted.com/library name/Library

opened in Business Optix version 5.0

will look for the model stencil Process v5.0.xbs from the System/Stencils folder in the specified

library

If the indicated version does not exist, then the most recent version available will be selected instead. Once

the model stencil is located, if its model element has an extends attribute (for example extends=”Core\Core

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 4 of 20

v5.0.xbs”), the Author will open the specified core stencil, and then merge the model stencil into it, using the

following rules:

an element whose id is not in the current in-memory stencil is either appended to the end of the list

to which it belongs, or (if the before attribute is specified) inserted into the list before the indicated

element

an element with a matched id and the remove attribute is removed from the in-memory stencil

an element with a matched id but no remove attribute is used to update the matching element in the

in-memory stencil

Finally, if there is a folder with the same name as the model stencil (without the version number) – e.g.

Stencils/Process/ in the example – then any extension stencils in the folder are loaded, using the same rules as

above.

WHY NO SCHEMA OR NAMESPACE?

Business Optix models, including stencils, do not use an XML schema (or DTD), nor do they make use of XML

namespaces.

Stencils themselves perform most of the functions of an XML schema with respect to Business Optix models

(as well as adding the additional functionality required to define text and graphical editing and output).

Extending a stencil is the equivalent of modifying the (notional) schema for models of the type defined by the

stencil, so if a schema were used it would need to be re-generated after any modification of the stencil – which

would, in turn, be liable to invalidate models built against an earlier stencil. It is a core requirement that

changes to a stencil should NOT invalidate models built using an earlier stencil, or even alternative

modifications of an earlier stencil: this allows models to be exchanged between organizations that use

different custom extensions (in such cases, each organization will only see their own extensions, not those of

the other organization).

Namespaces are not used in Business Optix (including stencils) models because they are unnecessary: models

do not require any other XML document types – although outputs generated from them may well be, and may

of course make use of namespaces.

THE ANATOMY OF A STENCIL

Every Business Optix model is an XML document, containing:

A root <model> element with (at least) id, name, type and xbp attributes, which contains…

A series of list elements, each with a local name of the form <component-typeList> (e.g.

<sequenceList>), which has no attributes, and may contain…

a sequence of component elements, each with a local name of the form <component-type> (e.g.

<sequence>) and (at least) an id (and usually also a name) attribute. It may contain other attributes

and elements, including further list elements.

A Business Optix stencil is a Business Optix model, whose type is “Stencil”, built from the following types of

component:

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 5 of 20

The model defines a type of model (such as Process)

An include identifies a – typically Master Data – model (such as Shared/Master Data/Roles.xbp/)

that should be included in every model of the type

A sequence defines a list (such as a sectionList) in the target model

A page defines a page in the Properties Inspector (such as Document Control)

A view defines a view (the only views currently supported are Text and Diagram)

A component defines a component type (such as a section, process or activity)

Each component may in turn contain one or more of each of the following:

A property defines a property of the component (such as process.name)

A condition defines a testable condition (such as “is a start event” or “has value x”), based on model

content, that can be used to control the visibility of shapes, markers, labels and properties of the

component

A shape defines a possible shape for the component in a diagram (such as the rounded rectangle of a

process activity)

A marker defines a glyph used to represent additional information about the component in a diagram

(such as the information and link markers used in many stencils)

A label defines additional textual information used to annotate a shape in a diagram (such as an

activity code, or its roles, systems or locations)

Finally, each property may also contain one or more of the following:

A choice defines one of a fixed set of possible values for the property

DATA TYPES

Stencils (and other Business Optix models) use the following data types:

Stencil data type XML Schema type Description

0+ nonNegativeInteger Default 0 unless otherwise stated

1+ positiveInteger Default 1 unless otherwise stated

Boolean boolean Default false unless otherwise stated

Color color Color value (currently web names only)

Duration duration Default P0D (Period of 0 Days) unless otherwise stated

Enumerated NMTOKEN Possible values are shown inline or in Notes after each table

Filter string Windows file filter

ID ID Local (to model) unique component ID

IDREF IDREF Reference (by ID) to another component

IDREFS IDREFS Space-separated list of IDREF values

Integer integer Default 0 unless otherwise stated

Library URL normalizedString Plain text library-relative (or absolute) URL

Name normalizedString Single-line name

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 6 of 20

Stencils URL normalizedString Plain text library Stencils-relative (or absolute) URL

Tag NMTOKEN Valid XML NCName

Tags NMTOKENS Space-separated list of Tag values

Text string Multi-line string

XPath normalizedString XPath expression

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 7 of 20

STENCIL ELEMENTS

THE MODEL ELEMENT

As with all Business Optix models, the model element is the document element. By convention, every (core,

model or extension) stencil’s model element has an id of _model, which allows for easy linkage between the

three kinds of stencil.

Attribute /

element

Data type Description Required, default or

example values

Use in...

id ID Local (to model) unique

ID

_model ALL

name Name Model type Process NOT extensions

type Name Identifies this as a stencil stencil Core ONLY

xbp Name Supported service

version

5.0 Core ONLY

version Name Stencil version number 5.0 Any

author Name Author of this stencil file Any

owner Name User accountable for it Any

extends Stencils URL Stencil file this based on Core/Core v5.0.xbs Model ONLY

tools IDREFS Inherited tools used in

this model

NOT Core

new-tools IDREFS Additional tools used in

this extension

NOT Core

spellCheck XPath Attributes and elements

to be spell-checked

@name documentation

/document

[@type=’business’]

Any

clickable XPath Components that can be

clicked on in HTML

Any

lanes Boolean Use lanes in diagrams? Any

numberNodes XPath Components that can be

auto-numbered

Any

numberSize 1+ Minimum number size

(zero-padded)

Any

numberGap 1+ Gap between successive

numbers for auto-

number

Any

includeList include definitions Any

sequenceList sequence definitions Any

pageList page definitions Any

viewList view definitions Any

componentList component definitions Any

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 8 of 20

THE INCLUDE ELEMENT

A stencil’s includeList contains zero or more include elements, each allowing the stencil to load a temporary

copy of another – typically Master Data – model (such as Shared/Master Data/Roles.xbp/). By convention, an

include has an id of _include:type, where type is a placeholder for the value of the type attribute.

The ordering of includes within an includeList has no effect.

Attribute /

element

Data type Description Required,, default or

example values

Use in...

id ID Local (to model) unique ID _include:roles ALL

type Name Type of information roles Any

file Library URL Library file to be included Shared/Master

Data/Roles.xbp

Any

remove Boolean Remove from stencil? NOT Core

THE SEQUENCE ELEMENT

A stencil’s sequenceList contains zero or more sequence elements. A sequence element is required for each

component list (e.g. sectionList) in the target model. By convention, a sequence has an id of

_sequence:element, where element is a placeholder for the value of the element attribute.

The ordering of sequences within a sequenceList has no effect.

Attribute /

element

Data type Description Required,, default or

example values

Use in...

id ID Local (to model) unique ID _sequence:sectionList ALL

name Name Display name Sections Any

element Tag XML element local name sectionList Any

toc Boolean Display list header in TOC? Any

remove Boolean Remove from stencil? NOT Core

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 9 of 20

THE PAGE ELEMENT

A stencil’s pageList contains zero or more page elements, each defining a new Property Inspector page (which

may be used for one, all or any components). By convention, a page has an id of _page:tag, where tag is a

placeholder for a unique internal tag for the page.

The ordering of pages within a pageList determines their order in the Property Inspector: this may be modified

using the before attribute.

Attribute /

element

Data type Description Required,, default or

example values

Use in...

id ID Local (to model) unique ID _page:metrics ALL

name Name Property page label Metrics Any

before IDREF Page before which this

should appear

_page:extra NOT Core

remove Boolean Remove from stencil? NOT Core

NOTE: The top, “General” page of the Property Inspector is always available, and is used for all properties

which do not explicitly specify a page.

THE VIEW ELEMENT

A stencil’s viewList contains up to two view elements, each defining either the text or the diagram view of the

model. By convention, a view has an id of _view:editor, where editor is a placeholder for the value of the

editor attribute.

Currently, only text and diagram editors are supported. Some stencils may support both; some (such as

Master Data) may only support text.

Attribute /

element

Data type Description Required,, default or

example values

Use in...

id ID Local (to model) unique ID _view:text ALL

name Name View button caption Text Core ONLY

editor Enumerated text or editor text Core ONLY

image Stencils URL Stencils image in ribbon Core/ViewText.png Core ONLY

tools IDREFS Components enabled on

toolbar in this view

section diagram … Any

new-tools IDREFS Additional components

added via extension

NOT Core

remove Boolean Remove from stencil? NOT Core

tip Text The tip displayed when

hovering over the button

Any

if editor is diagram…

diagram IDREF Diagram component process Any

if editor is text…

part IDREF Default text component activity Any

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 10 of 20

THE COMPONENT ELEMENT

A stencil’s componentList contains zero or more component elements, each defining a type of component that

may appear in a model. By convention, a component id should not contain underscores, hyphens, periods or

colons.

Component tools are displayed (on the Insert section of the Model ribbon) in the order in which they appear in

the stencil: this may be modified using the before attribute.

Attribute /

element

Data type Description Required,, default or

example values

Use in...

id ID Local (to model) unique ID activity ALL

element Tag Element tag node ALL

type Tag Type attribute value activity ALL

name Name Insert tool label Activity Any

parents IDREFS Types of component which

can contain one of these

process activity Any

isDefaultType Boolean Assume this component if

no type specified?

Any

icon Stencils URL

Stencil image to use as

icon in TOC

Process/Explorer

Activity.png

Any

nameType Enumerated name (@name is string) or

lookup (@name is IDREF)

name Any

toolbar Boolean Display tool on ribbon? true Any

before IDREF Component before which

this should appear on

Model ribbon

activity.type NOT Core

remove Boolean Remove from stencil? NOT Core

tip Text The tip displayed when

hovering over the button

Any

propertyList property definitions

conditionList condition definitions

if toolbar is true…

toolGroup Boolean Add a separator before

Insert tool on ribbon?

Any

toolImage Stencils URL Stencil image for Insert

tool

Process/Tool

Activity.png

Any

if element is node, link or lane…

shapeList shape definitions Any

if element is node …

useLane Boolean Co-ordinates relative to

node’s lane?

Any

image XPath Image property attribute @image Any

markerList marker definitions Any

labelList label definitions Any

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 11 of 20

NOTE: The following standard components have special meanings in a Business Optix model (note that, since

all component elements are contained within a list element, a component must always be either the document

element, or a grandchild of some other component):

The document element must be a model

If a model may contain multiple diagrams, then each must be either:

o A process (which may contain lanes), or

o A diagram (which may not contain lanes)

A process (only) may contain lanes, represented as swim lanes in the diagram

A model, a process or a diagram may contain nodes, represented as shapes in the diagram, and links,

represented as connections between nodes

A node may itself have nested nodes

Any component may have nested (non-graphical) fields

A model may contain text sections, and/or structured parts, each of which may be nested to any level

A model may contain resources, representing external resources used by the model

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 12 of 20

THE PROPERTY ELEMENT

A component’s propertyList contains zero or more property elements, each defining a property of that

component. By convention, a property has an id of component id. tag, where component id is a placeholder for

the id of the component to which the property belongs and tag uniquely identifies the property within that

component.

Properties are displayed in the order in which they appear in the stencil: this may be modified using the before

attribute.

Attribute /

element

Data type Description Required,, default or

example values

Use in...

id ID Local (to model) unique ID activity.rating ALL

page IDREF Property Inspector page _page:metrics ALL

name Name Property label Rating Any

type Enumerated1 Property type choice Any

conditions IDREFS Conditions under which

property is visible

Any

new-conditions IDREFS Additional conditions

added via extension

NOT Core

before IDREF Property in same Property

Inspector page before

which this should appear

activity.waitTime NOT Core

like IDREF Property whose attributes

and tip are inherited

Any

remove Boolean Remove from stencil? NOT Core

tip Text The tip displayed when

hovering over the button

Any

if type is NOT heading or button…

data XPath Property value @name Any

default Text Default value used if

property not set

Any

use Enumerated required, optional or

readOnly

optional Any

unique Boolean Value should be unique

among peer components?

Any

redraw Boolean Redraw component shape

when property value

changes?

Any

if type is name…

multiline Boolean Allow line feeds? Any

if type is text…

max 0+ Maximum length Any

case Enumerated upper, lower or any any Any

autoname Boolean Set @name from content? Any

if type is memo…

height 0+ Height of control in page fill available space Any

autoname Boolean Set @name from content? Any

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 13 of 20

if type is html…

height 0+ Height of control in page fill available space Any

if type is number…

min Integer Maximum value No maximum Any

max Integer Minimum value No minimum Any

decimalPlaces 0+ Number of decimal places 0 Any

if type is duration…

min Duration Maximum duration No maximum Any

max Duration Minimum duration No minimum Any

if type is choice…

autoname Boolean Set @name from content? Any

choiceList choice definitions Any

if type is lookup or lookups…

lookup XPath Component list //node[@type] Any

model XPath Included model //include

[@type=’Role’]

Any

modelLookup XPath Component list in model */*[@id] Any

query SQL SELECT Component list from

database

DISTINCT Any

listComponent Enumerated2 field, link or other other Any

add IDREF Component to be created

when item added

resource Any

addType Tag Optional @type value for

added component

role Any

if type is filename…

filter Filter Files shown in file dialogs Any file (*.*)|*.* Any

linkType Enumerated3 Absolute or relative URL absolute

if type is reference…

filter Filter Files shown in file dialogs Any file (*.*)|*.* Any

linkType Enumerated3 Absolute or relative URL absolute Any

refType Tag reference/@type value link Any

if type is heading…

level 0+ Used to modify font size Any

if type is button…

data IDREF Component type to create Any

NOTES:

1. Valid type values are

o name is a string value, used as a label for the component – a component should only have

one name property

o text is a (single line) normalizedString value

o memo is a string value

o html is an HTML-encoded rich text string value

o number is a numeric value

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 14 of 20

o duration is an xsd duration (e.g. P1D for a period of 1 day)

o date is an xsd dateTime (e.g. 2011-03-16T16:13:20), always in UTC

o check is a true or false value

o choice is an enumerated value

o color is a color name

o language is a language code

o lookup is an IDREF, presented as a dropdown list of the names of candidate elements

o lookups is an IDREFS, presented as a checklist of (named) candidate elements

o filename is a file URL

o reference is a list of file URLs

o heading is a (display only) property heading

o button is a button used to perform additional actions on a component (such as creating new

sub-components)

2. listComponent determines whether a lookup (or lookups) property’s selected components are held as:

o field elements, in a component’s fieldList

o link elements, in the model’s linkList

o other elements (determined by the property’s other attributes)

3. linkType specifies whether a filename or reference property holds:

o an absolute URL

o a library relative URL

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 15 of 20

THE CHOICE ELEMENT

A choice property’s choiceList contains one or more choice elements, each defining a possible value for the

property. By convention, a choice has an id of property id. value, where property id is a placeholder for the id

of the property to which the choice belongs, and value is a placeholder for the choice value.

Choices are listed, in drop-down lists, in the order in which they appear in the stencil: this may be modified

using the before attribute.

Attribute /

element

Data type Description Required,, default or

example values

Use in...

id ID Local (to model) unique ID activity.rating.C2 ALL

name Name Display name C (2) Any

value Tag Stored value c2 Any

before IDREF Choice before which this

should appear in the

choice dropdown list

activity.rating.D NOT Core

remove Boolean Disables view for stencil NOT Core

THE CONDITION ELEMENT

A component’s conditionList contains zero or more condition elements, each defining a testable condition for

the component. By convention, a condition has an id of property id:tag, where property id is a placeholder for

the id of the property whose value is tested by the condition. If the value to be tested does not relate to any

property, the component id can be used instead of the property id.

The ordering of conditions within a conditionList has no effect.

Attribute /

element

Data type Description Required,, default or

example values

Use in...

id ID Local (to model) unique ID activity.type:human ALL

data XPath Value to be tested activity/@type Any

default Text Value used if data empty Unspecified Any

values Tags List of alternative matches user manual Any

new-values Tags Additional matches added

via extension

NOT Core

match Boolean Value returned if any

matches found

true Any

remove Boolean Disables view for stencil NOT Core

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 16 of 20

THE SHAPE ELEMENT

A node, link or lane component’s shapeList contains zero or more shape elements, each defining an alternative

diagram rendering for the component. By convention, a shape has an id of component id-shape:tag, where

component id is a placeholder for the id of the component to which the condition applies and tag uniquely

identifies the shape within that component. For unconditional shapes, the :tag is generally omitted.

The shape used to display a component in a diagram is always the first, in shapeList order, either whose

conditions are true, or which has no conditions. For this reason, unconditional shapes should always be the

last in the shapeList: this may be achieved using the before attribute.

Attribute /

element

Data type Description Required,, default or

example values

Use in...

id ID Local (to model) unique ID activity-shape:human ALL

name Name Shape name Human Task Any

conditions IDREFS Conditions under which

shape is displayed

activity.type:human Any

new-conditions IDREFS Additional conditions added

via extension

NOT Core

before IDREF Shape before which this

should be tried

activity.shape:system NOT Core

remove Boolean Disables view for stencil NOT Core

like IDREF Shape whose attributes are

inherited

Any

if component.element is node…

shape Enumerated4 Outline shape RoundedRectangle Any

container Boolean Can contain nested nodes? Any

autoLink Enumerated none, source, target or both both Any

x 0+ X co-ordinate of center Any

y 0+ Y co-ordinate of center Any

z 0+ Z-order value 1005001 Any

height 0+ Height (in pixels) 80 Any

width 0+ Width (in pixels) 80 Any

resizable Boolean User can resize shape? Any

fixed Enumerated If resizable, height, width,

ratio or none

none Any

selectable Boolean User can select shape by

clicking on its background?

false if transparent,

true otherwise

Any

drilldown Boolean Clicking on the shape causes

a drilldown instead of

showing properties

false Any

cornerRadius 1+ If RoundedRectangle 5 Any

shadow Boolean Drop shadow displayed? Any

gradientFill Enumerated5 Direction of color gradient None Any

fillColor Color Main fill color Transparent Any

gradientColor Color Second color for gradient White Any

lineWidth Enumerated Single, Double, Thick or

None

Single Any

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 17 of 20

lineStyle Enumerated Solid, Dashed or Dotted Dashed Any

lineColor Color Black Any

fontColor Color Black Any

fontSize 1+ 8 Any

labelWidth 0+ Label wraps within this No wrap Any

labelPosition Enumerated6 Position relative to shape Center Any

labelAlignment Enumerated Left, Right or Center Center Any

labelOrientation Enumerated Horizontal or Vertical Horizontal Any

labelMargin 0+ Between label and outline 3 Any

labelReadOnly Boolean User cannot edit label? Any

imageScaled Boolean Stretch main image to fit? Any

image Stencils URL Main image file Any

imageN Stencils URL Top edge image Any

imageS Stencils URL Bottom edge image Any

imageE Stencils URL Right edge image Any

imageW Stencils URL Left edge image Any

imageNE Stencils URL Top right corner image Any

imageNW Stencils URL Top left corner image Any

imageSE Stencils URL Bottom right corner image Any

imageSW Stencils URL Bottom left corner image Any

bar1 Enumerated None, Top, Left, Bottom or

Right

None Any

bar1size 1+ Height or width of first bar 20 Any

bar1label XPath Information to show as label Any

bar1fontColor Color Black Any

bar1labelReadOnly Boolean Stop user editing label? Any

bar2 Enumerated None, Top, Left, Bottom or

Right

None Any

bar2size 1+ Height or width of second

bar

20 Any

bar2label XPath Information to show as label Any

bar2fontColor Color Black Any

bar2labelReadOnly Boolean Stop user editing label? Any

if component.element is lane…

width 0+ Width of lane 120 Any

resizable Boolean User can resize lane? Any

selectable Boolean User can select shape by

clicking on its background?

false if transparent,

true otherwise

Any

gradientFill Enumerated5 Direction of color gradient None Any

fillColor Color Main fill color Transparent Any

gradientColor Color Second color for gradient White Any

lineWidth Enumerated Single, Double, Thick or

None

Single Any

lineStyle Enumerated Solid, Dashed or Dotted Dashed Any

lineColor Color Black Any

fontColor Color Black Any

fontSize 1+ 8 Any

labelWidth 0+ Label wraps within this No wrap Any

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 18 of 20

labelPosition Enumerated6 Position relative to shape Center Any

labelAlignment Enumerated Left, Right or Center Center Any

labelMargin 0+ Between label and outline 3 Any

if component.element is link…

shape Enumerated Line shape Line Any

connectionType Enumerated Automatic, Horizontal or

Vertical

Automatic Any

lineWidth Enumerated Single or Thick Single Any

lineThickness 1+ If Thick 5 Any

lineCorners Enumerated None, Rounded, Squared or

Bezier

Rounded Any

cornerRadius 1+ If Rounded 5 Any

sourceArrow Enumerated7 Marker used at source end None Any

targetArrow Enumerated7 Marker used at target end None Any

color Color Line and font color Black Any

showName Enumerated true, false or conditional true Any

namePosition Enumerated Source, Midpoint or Target Midpoint Any

nameSide Enumerated Before, After or Across After Any

fontSize 1+ 8 Any

labelWidth 0+ Label wraps within this No wrap Any

NOTES:

4. Valid shape values for a node are Rectangle (including square), RoundedRectangle, Ellipse (including

circle), Diamond, Parallelogram, Hexagon, Cube and Cylinder

5. Valid gradientFill values are None, Horizontal, Vertical, ForwardDiagonal, BackwardDiagonal and

FromCenter

6. Valid labelPosition values are None, Center, Top, Bottom, Above, Beneath, Left and Right

7. Valid sourceArrow and targetArrow values are None, Open, Solid, Empty, Diamond, Circle and Bar

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 19 of 20

THE MARKER ELEMENT

A node component’s markerList contains zero or more marker elements, each defining a marker glyph that can

be shown in or around the shape. By convention, a marker has an id of component id-marker:tag, where

component id is a placeholder for the id of the component to which the condition applies and tag uniquely

identifies the marker within that component.

Multiple markers in any particular position are lined up in the order in which they appear in the markerList:

this may be modified using the before attribute.

Attribute /

element

Data type Description Required,, default or

example values

Use in...

id ID Local (to model) unique ID _ activity-marker:human ALL

image Stencils URL Image file Process/HumanMarker.png Any

conditions IDREFS Conditions under which

marker is displayed

activity.type:human Any

new-conditions IDREFS New conditions added via

extension

NOT Core

position Enumerated Above, Beneath, Top, Middle

or Bottom

Bottom Any

alignment Enumerated Left, Right or Center Center Any

height 1+ Height of marker 12 Any

width 1+ Width of marker 12 Any

link XPath URL of file to load when

clicked

Any

part XPath IDREF of component to select Any

before IDREF Marker before which this

should be lined up

Any

remove boolean Disables view for stencil false NOT Core

like IDREF Marker whose attributes are

inherited

Any

Business Optix Stencil Author’s Guide Version 5.0

15 May 2012 PUBLIC Page 20 of 20

THE LABEL ELEMENT

A node component’s labelList contains zero or more label elements, each defining a text label that can be

shown in or around the shape. By convention, a label has an id of component id-label:tag, where component id

is a placeholder for the id of the component to which the condition applies and tag uniquely identifies the

label within that component.

The label displayed in any one position is always the first, in labelList order, either whose conditions are true,

or which has no conditions. For this reason, unconditional labels should always be the last in the labelList: this

may be achieved using the before attribute.

Attribute /

element

Data type Description Required,, default or

example values

Use in...

id ID Local (to model) unique ID _ activity-label:human ALL

position Enumerated Top, Bottom, Center or Side Top ALL

alignment Enumerated Left, Right or Center Left ALL

data XPath Values to display from items

or idrefs

@name Any

default Text Text to display if data empty No value Any

conditions IDREFS Conditions under which label

is displayed

activity.type:human Any

new-conditions IDREFS New conditions added via

extension

NOT Core

fontColor Color Black Any

fontSize 1+ 7 Any

width 0+ Label wraps within this 120 Any

before IDREF Marker before which this

should be lined up

Any

remove boolean Disables view for stencil false NOT Core

like IDREF Label whose attributes are

inherited

Any

Optionally, either…

items XPath Elements whose data to

display

fieldList/field Any

Or (if neither, display data for this component)…

idrefs IDREFS Elements whose data to

display

activity/task/@roles Any