Structure de l'objet métier [BOMetaData]

BOMetaData
 - labelM [BOStringM] (* Map)
 - descriptionM [BOStringM] (* Map)
 - boProperty [BOProperty] (*)
   - labelM [BOStringM] (* Map)
   - descriptionM [BOStringM] (* Map)
   - boEnumValues [BOEnumValues]
     - boEnumItem [BOEnumItem] (*)
       - labelM [BOStringM] (* Map)
       - descriptionM [BOStringM] (* Map)
       - extension [BOExtension] (*)
     - boGroupBy [BOEnumValuesGroup] (*)
       - labelM [BOStringM] (* Map)
       - descriptionM [BOStringM] (* Map)
   - extension [BOExtension] (*)
 - extension [BOExtension] (*)
 - boExtends [BOExtends]

Tableau des propriétés [BOMetaData]

PropertyTypeCardinalityDefault

value
VisibleReadOnlyPersistentMin / MaxFormat / Unit
ts

TimeStamp

TimeStamp

long10truefalsetrue-

-
-

id

ID / BOMame

ID / BOName

String1-truefalsetrue-

-
-

version

Version

Version

int1-truefalsetrue-

-
-

semantic

Type

Type

String

[enum]
1defaulttruefalsetrue-

-
-

flagNotUse

Ne pas utiliser

Not use

boolean1falsetruefalsetrue-

-
-

labelM

Label multi-langues

Label multilanguage

BusinessObject BOStringM n [list]-truefalsetrue-

-
-

descriptionM

Description multi-langues

Description multilanguage

BusinessObject BOStringM n [list]-truefalsetrue-

-
-

flagVisible

Visible

Visible

boolean1truetruefalsetrue-

-
-

flagReadOnly

Lecture seule

Read-only

boolean1falsetruefalsetrue-

-
-

flagPersistent

Persistent

Persistent

boolean1truetruefalsetrue-

-
-

icon

Icon

Icon

javax.swing.Iconn [list]-truefalsetrue-

-
-

flagAutoValidation

Validation automatique

Automatic validation

boolean1truetruefalsetrue-

-
-

helpFilename



Help filename

String1-truefalsetrue-

-
-

domain



Domain

String1-truefalsetrue-

-
-

boProperty



Property

BusinessObject BOProperty n [list]-falsefalsetrue-

-
-

boIdLink

boIdLink

boIdLink

String1-truefalsetrue-

-
-

extension

Extension

Extension

BusinessObject BOExtension n [list]-falsefalsetrue-

-
-

parameter

Parameter

Parameter

Stringn [list]-truefalsetrue-

-
-

boExtends

Extends

Extends

BusinessObject BOExtends 1-truefalsetrue-

-
-

Liste des propriétés [BOMetaData]

ts - TimeStamp [long]

Label/description:

    Propriétés
    • Type: long
    • Attribute XML: true
    • Optionnel: true
    • Index: 0
    • Read only: false
    • Persistent: true
    • Cardinality: 1
    • Default value: 0

    id - ID / BOMame [String]

    Label/description:

    • ID / BOMame: Nom de l'objet. Si vous utiliser une racine commune à tous les noms d'objets métier, ne pas l'utiliser ici.
    • ID / BOName: Business Object name.
    Propriétés
    • Type: String
    • Attribute XML: true
    • Optionnel: true
    • Index: 1
    • Read only: false
    • Persistent: true
    • Cardinality: 1

    version - Version [int]

    Label/description:

    • Version: Version.
    Propriétés
    • Type: int
    • Attribute XML: true
    • Optionnel: true
    • Index: 1
    • Read only: false
    • Persistent: true
    • Cardinality: 1

    semantic - Type [String - Enum]

    Label/description:

      Propriétés
      • Type: String
      • Attribute XML: true
      • Optionnel: true
      • Index: 1
      • Read only: false
      • Persistent: true
      • Cardinality: 1
      • Default value: default
      Liste des valeurs possibles
      IdValeurLabel
      DEFAULTdefault Label/description
      • BO
      SHORTshort Label/description
      • SHORT
      SEARCHsearch Label/description
      • SEARCH
      METAMODELmeta-model Label/description
      • METAMODEL
      DBdb Label/description
      • Base de données
      DB_LINKdb-link Label/description
      • Table de lien (DB)

      flagNotUse - Ne pas utiliser [boolean]

      Label/description:

      • Ne pas utiliser: Si le flag est true, alors l'objet sera complétement ignoré. (Pas de génération d'objet, ...).
      Propriétés
      • Type: boolean
      • Attribute XML: true
      • Optionnel: true
      • Index: 2
      • Read only: false
      • Persistent: true
      • Cardinality: 1
      • Default value: false

      labelM - Label multi-langues [BusinessObject ]

      Label/description:

      • Label multi-langues: Label utilisé pour la représentation de cette propriété dans les interfaces graphiques (par exemple titre de fenêtre).
      Propriétés
      • Type: BusinessObject BOStringM
      • Attribute XML: false
      • Optionnel: true
      • Index: 3
      • Read only: false
      • Persistent: true
      • Cardinality: N (map)

      descriptionM - Description multi-langues [BusinessObject ]

      Label/description:

      • Description multi-langues: Description de l'objet.
      Propriétés
      • Type: BusinessObject BOStringM
      • Attribute XML: false
      • Optionnel: true
      • Index: 4
      • Read only: false
      • Persistent: true
      • Cardinality: N (map)

      flagVisible - Visible [boolean]

      Label/description:

      • Visible: Flag pour savoir si l'objet est visible par défaut.
      Propriétés
      • Type: boolean
      • Attribute XML: true
      • Optionnel: true
      • Index: 5
      • Read only: false
      • Persistent: true
      • Cardinality: 1
      • Default value: true

      flagReadOnly - Lecture seule [boolean]

      Label/description:

      • Lecture seule: Flag pour savoir si cet objet est en read-only par défaut.
      Propriétés
      • Type: boolean
      • Attribute XML: true
      • Optionnel: true
      • Index: 6
      • Read only: false
      • Persistent: true
      • Cardinality: 1
      • Default value: false

      flagPersistent - Persistent [boolean]

      Label/description:

      • Persistent: Flag pour savoir si cet objet est persistant.
      Propriétés
      • Type: boolean
      • Attribute XML: true
      • Optionnel: true
      • Index: 7
      • Read only: false
      • Persistent: true
      • Cardinality: 1
      • Default value: true

      icon - Icon [javax.swing.Icon]

      Label/description:

      • Icon: Icon
      • Icon: Icon
      Propriétés
      • Type: javax.swing.Icon
      • Attribute XML: false
      • Optionnel: true
      • Index: 8
      • Read only: false
      • Persistent: true
      • Cardinality: N (map)

      flagAutoValidation - Validation automatique [boolean]

      Label/description:

      • Validation automatique: Flag pour savoir si cet objet gère automatiquement les validations.
      Propriétés
      • Type: boolean
      • Attribute XML: true
      • Optionnel: true
      • Index: 8
      • Read only: false
      • Persistent: true
      • Cardinality: 1
      • Default value: true

      helpFilename - Help filename [String]

      Label/description:

      • : Nom du fichier contenant l'aide relative à cette propriété.
      Propriétés
      • Type: String
      • Attribute XML: false
      • Optionnel: true
      • Index: 9
      • Read only: false
      • Persistent: true
      • Cardinality: 1

      domain - Domain [String]

      Label/description:

      • : Nom de domaine pour l'objet. Le domaine permet de regrouper des objets de même type. On pourra utiliser '/' pour créer une arborescence de domaine (ex: configuration/graph).
      Propriétés
      • Type: String
      • Attribute XML: false
      • Optionnel: true
      • Index: 10
      • Read only: false
      • Persistent: true
      • Cardinality: 1

      boProperty - Property [BusinessObject ]

      Label/description:

      • : propriété du BusinessObject.
      • Property: Property.
      Propriétés
      • Type: BusinessObject BOProperty
      • Attribute XML: false
      • Optionnel: true
      • Index: 11
      • Read only: false
      • Persistent: true
      • Cardinality: N (multi)

      boIdLink - boIdLink [String]

      Label/description:

        Propriétés
        • Type: String
        • Attribute XML: true
        • Optionnel: true
        • Index: 32
        • Read only: false
        • Persistent: true
        • Cardinality: 1

        extension - Extension [BusinessObject ]

        Label/description:

        • Extension: Extension
        • Extension: Extension
        Propriétés
        • Type: BusinessObject BOExtension
        • Attribute XML: false
        • Optionnel: true
        • Index: 40
        • Read only: false
        • Persistent: true
        • Cardinality: N (multi)

        parameter - Parameter [String]

        Label/description:

        • Parameter: Parameter.
        • Parameter: Parameter.
        Propriétés
        • Type: String
        • Attribute XML: false
        • Optionnel: true
        • Index: 40
        • Read only: false
        • Persistent: true
        • Cardinality: N (map)

        boExtends - Extends [BusinessObject ]

        Label/description:

        • Extends: Extends.
        • Extends: Extends.
        Propriétés
        • Type: BusinessObject BOExtends
        • Attribute XML: false
        • Optionnel: true
        • Index: 40
        • Read only: false
        • Persistent: true
        • Cardinality: 1

        Document XML [BOMetaData]

        <?xml version="1.0" encoding="ISO-8859-1"?>
        <BOMetaData ts="" id="" version="" semantic="" flagNotUse="" flagVisible="" 
            flagReadOnly="" flagPersistent="" flagAutoValidation="" boIdLink="">
          <!--labelM (*) -->
          <labelM name="">
            <en/>
            <fr/>
            <es/>
            <de/>
          </labelM>
          <!--descriptionM (*) -->
          <descriptionM name="">
            <en/>
            <fr/>
            <es/>
            <de/>
          </descriptionM>
          <!--icon (*) -->
          <icon name=""/>
          <helpFilename/>
          <domain/>
          <!--boProperty (*)-->
          <boProperty ts="" semantic="" index="" name="" flagNotUse="" flagVisible="" 
              flagOptional="" flagAttributeXml="" type="" flagEnumeration=""
              flagBusinessObject="" boType="" flagPropertyMulti="" refId=""
              flagPropertyMap="" unit="" flagPassword="" defaultValue=""
              preferredSize="" minSize="" maxSize="" propertyIdLink="" flagReadOnly=""
              flagCalculated="" flagPersistent="" historyId="" flagAutoValidation=""
              flagLineWrap="" flagScrollable="" flagGroup="" groupName="" editorName="">
            <!--icon (*) -->
            <icon name=""/>
            <!--labelM (*) -->
            <labelM name="">
              <en/>
              <fr/>
              <es/>
              <de/>
            </labelM>
            <!--descriptionM (*) -->
            <descriptionM name="">
              <en/>
              <fr/>
              <es/>
              <de/>
            </descriptionM>
            <accelerator/>
            <boEnumValues>
              <!--boEnumItem (*)-->
              <boEnumItem name="" valueStr="" valueInt="" index="">
                <!--labelM (*) -->
                <labelM name="">
                  <en/>
                  <fr/>
                  <es/>
                  <de/>
                </labelM>
                <!--descriptionM (*) -->
                <descriptionM name="">
                  <en/>
                  <fr/>
                  <es/>
                  <de/>
                </descriptionM>
                <!--icon (*) -->
                <icon name=""/>
                <!--extension (*)-->
                <extension name="" valueInt="">
                  <valueStr/>
                </extension>
                <!--parameter (*) -->
                <parameter name=""/>
              </boEnumItem>
              <!--boGroupBy (*)-->
              <boGroupBy name="" parentGroup="" propertyId="">
                <!--values (*) -->
                <values name=""/>
                <!--labelM (*) -->
                <labelM name="">
                  <en/>
                  <fr/>
                  <es/>
                  <de/>
                </labelM>
                <!--descriptionM (*) -->
                <descriptionM name="">
                  <en/>
                  <fr/>
                  <es/>
                  <de/>
                </descriptionM>
              </boGroupBy>
            </boEnumValues>
            <suggestedValue/>
            <displayFormat/>
            <editFormat/>
            <validationRegex/>
            <editRegex/>
            <minValue/>
            <maxValue/>
            <suggestedMinValue/>
            <suggestedMaxValue/>
            <helpFilename/>
            <!--extension (*)-->
            <extension name="" valueInt="">
              <valueStr/>
            </extension>
            <!--parameter (*) -->
            <parameter name=""/>
          </boProperty>
          <!--extension (*)-->
          <extension name="" valueInt="">
            <valueStr/>
          </extension>
          <!--parameter (*) -->
          <parameter name=""/>
          <boExtends name="" propertiesToInclude="" propertiesToExclude=""/>
        </BOMetaData>

        Schema XML [BOMetaData]

        BOMetaData.xs

        <?xml version="1.0" encoding="ISO-8859-1"?>
        <shema xmlns:xs="http://www.w3.org/2001/XMLSchema">
          <simpleType name="BOMetaData.semantic">
            <restriction base="string">
              <enumeration value="default"/>
              <enumeration value="short"/>
              <enumeration value="search"/>
              <enumeration value="meta-model"/>
              <enumeration value="db"/>
              <enumeration value="db-link"/>
            </restriction>
          </simpleType>
          <element name="BOStringM">
            <complexType>
              <sequence>
                <attribute name="name" type="xs:string"/>
                <element name="en" type="xs:string" minOccurs="0"/>
                <element name="fr" type="xs:string" minOccurs="0"/>
                <element name="es" type="xs:string" minOccurs="0"/>
                <element name="de" type="xs:string" minOccurs="0"/>
              </sequence>
            </complexType>
          </element>
          <simpleType name="BOProperty.semantic">
            <restriction base="string">
              <enumeration value="default"/>
              <enumeration value="id"/>
              <enumeration value="fk"/>
            </restriction>
          </simpleType>
          <element name="BOExtension">
            <complexType>
              <sequence>
                <attribute name="name" type="xs:string" use="optional"/>
                <element name="valueStr" type="xs:string" minOccurs="0"/>
                <attribute name="valueInt" type="xs:java.lang.Integer" use="optional"/>
              </sequence>
            </complexType>
          </element>
          <element name="BOEnumItem">
            <complexType>
              <sequence>
                <attribute name="name" type="xs:string" use="optional"/>
                <attribute name="valueStr" type="xs:string" use="optional"/>
                <attribute name="valueInt" type="xs:java.lang.Integer" use="optional"/>
                <element name="labelM" type="BOStringM" minOccurs="0" 
                    maxOccurs="unbounded">
                  <attribute name="name" type="xs:string"/>
                </element>
                <element name="descriptionM" type="BOStringM" minOccurs="0" 
                    maxOccurs="unbounded">
                  <attribute name="name" type="xs:string"/>
                </element>
                <attribute name="index" type="xs:int" use="optional"/>
                <element name="icon" type="xs:string" minOccurs="0" 
                    maxOccurs="unbounded">
                  <attribute name="name" type="xs:string"/>
                </element>
                <element name="extension" type="BOExtension" minOccurs="0" 
                    maxOccurs="unbounded"/>
                <element name="parameter" type="xs:string" minOccurs="0" 
                    maxOccurs="unbounded">
                  <attribute name="name" type="xs:string"/>
                </element>
              </sequence>
            </complexType>
          </element>
          <element name="BOEnumValuesGroup">
            <complexType>
              <sequence>
                <attribute name="name" type="xs:string" use="optional"/>
                <attribute name="parentGroup" type="xs:string" use="optional"/>
                <attribute name="propertyId" type="xs:string" use="optional"/>
                <element name="values" type="xs:string" minOccurs="0" 
                    maxOccurs="unbounded">
                  <attribute name="name" type="xs:string"/>
                </element>
                <element name="labelM" type="BOStringM" minOccurs="0" 
                    maxOccurs="unbounded">
                  <attribute name="name" type="xs:string"/>
                </element>
                <element name="descriptionM" type="BOStringM" minOccurs="0" 
                    maxOccurs="unbounded">
                  <attribute name="name" type="xs:string"/>
                </element>
              </sequence>
            </complexType>
          </element>
          <element name="BOEnumValues">
            <complexType>
              <sequence>
                <element name="boEnumItem" type="BOEnumItem" minOccurs="0" 
                    maxOccurs="unbounded"/>
                <element name="boGroupBy" type="BOEnumValuesGroup" minOccurs="0" 
                    maxOccurs="unbounded"/>
              </sequence>
            </complexType>
          </element>
          <element name="BOProperty">
            <complexType>
              <sequence>
                <attribute name="ts" type="xs:long" default="0" use="optional"/>
                <attribute name="semantic" type="BOProperty.semantic" default="D" 
                    use="optional"/>
                <attribute name="index" type="xs:int" default="-1" use="optional"/>
                <attribute name="name" type="xs:string" use="optional"/>
                <element name="icon" type="xs:string" minOccurs="0" 
                    maxOccurs="unbounded">
                  <attribute name="name" type="xs:string"/>
                </element>
                <attribute name="flagNotUse" type="xs:boolean" default="false" 
                    use="optional"/>
                <attribute name="flagVisible" type="xs:boolean" default="true" 
                    use="optional"/>
                <attribute name="flagOptional" type="xs:boolean" default="true" 
                    use="optional"/>
                <attribute name="flagAttributeXml" type="xs:boolean" default="false" 
                    use="optional"/>
                <attribute name="type" type="xs:string" default="class java.lang.String"
                    use="optional"/>
                <attribute name="flagEnumeration" type="xs:boolean" default="false" 
                    use="optional"/>
                <attribute name="flagBusinessObject" type="xs:boolean" default="false" 
                    use="optional"/>
                <attribute name="boType" type="xs:string" use="optional"/>
                <attribute name="flagPropertyMulti" type="xs:boolean" default="false" 
                    use="optional"/>
                <attribute name="refId" type="xs:string" use="optional"/>
                <attribute name="flagPropertyMap" type="xs:boolean" use="optional"/>
                <element name="labelM" type="BOStringM" minOccurs="0" 
                    maxOccurs="unbounded">
                  <attribute name="name" type="xs:string"/>
                </element>
                <element name="descriptionM" type="BOStringM" minOccurs="0" 
                    maxOccurs="unbounded">
                  <attribute name="name" type="xs:string"/>
                </element>
                <attribute name="unit" type="xs:string" use="optional"/>
                <element name="accelerator" type="xs:string" minOccurs="0"/>
                <attribute name="flagPassword" type="xs:boolean" default="false" 
                    use="optional"/>
                <element name="boEnumValues" type="BOEnumValues" minOccurs="0"/>
                <attribute name="defaultValue" type="xs:string" use="optional"/>
                <element name="suggestedValue" type="xs:string" minOccurs="0"/>
                <attribute name="preferredSize" type="xs:int" use="optional"/>
                <attribute name="minSize" type="xs:int" default="-1" use="optional"/>
                <attribute name="maxSize" type="xs:int" default="-1" use="optional"/>
                <element name="displayFormat" type="xs:string" minOccurs="0"/>
                <element name="editFormat" type="xs:string" minOccurs="0"/>
                <element name="validationRegex" type="xs:string" minOccurs="0"/>
                <element name="editRegex" type="xs:string" minOccurs="0"/>
                <element name="minValue" type="xs:string" minOccurs="0"/>
                <element name="maxValue" type="xs:string" minOccurs="0"/>
                <attribute name="propertyIdLink" type="xs:string" use="optional"/>
                <element name="suggestedMinValue" type="xs:string" minOccurs="0"/>
                <element name="suggestedMaxValue" type="xs:string" minOccurs="0"/>
                <attribute name="flagReadOnly" type="xs:boolean" default="false" 
                    use="optional"/>
                <attribute name="flagCalculated" type="xs:boolean" default="false" 
                    use="optional"/>
                <attribute name="flagPersistent" type="xs:boolean" default="true" 
                    use="optional"/>
                <attribute name="historyId" type="xs:string" use="optional"/>
                <attribute name="flagAutoValidation" type="xs:boolean" default="true" 
                    use="optional"/>
                <element name="helpFilename" type="xs:string" minOccurs="0"/>
                <element name="extension" type="BOExtension" minOccurs="0" 
                    maxOccurs="unbounded"/>
                <element name="parameter" type="xs:string" minOccurs="0" 
                    maxOccurs="unbounded">
                  <attribute name="name" type="xs:string"/>
                </element>
                <attribute name="flagLineWrap" type="xs:boolean" default="true" 
                    use="optional"/>
                <attribute name="flagScrollable" type="xs:boolean" default="false" 
                    use="optional"/>
                <attribute name="flagGroup" type="xs:boolean" default="false" 
                    use="optional"/>
                <attribute name="groupName" type="xs:string" use="optional"/>
                <attribute name="editorName" type="xs:string" use="optional"/>
              </sequence>
            </complexType>
          </element>
          <element name="BOExtends">
            <complexType>
              <sequence>
                <attribute name="name" type="xs:string" use="optional"/>
                <attribute name="propertiesToInclude" type="xs:string" use="optional"/>
                <attribute name="propertiesToExclude" type="xs:string" use="optional"/>
              </sequence>
            </complexType>
          </element>
          <element name="BOMetaData">
            <complexType>
              <sequence>
                <attribute name="ts" type="xs:long" default="0" use="optional"/>
                <attribute name="id" type="xs:string" use="optional"/>
                <attribute name="version" type="xs:int" use="optional"/>
                <attribute name="semantic" type="BOMetaData.semantic" default="default" 
                    use="optional"/>
                <attribute name="flagNotUse" type="xs:boolean" default="false" 
                    use="optional"/>
                <element name="labelM" type="BOStringM" minOccurs="0" 
                    maxOccurs="unbounded">
                  <attribute name="name" type="xs:string"/>
                </element>
                <element name="descriptionM" type="BOStringM" minOccurs="0" 
                    maxOccurs="unbounded">
                  <attribute name="name" type="xs:string"/>
                </element>
                <attribute name="flagVisible" type="xs:boolean" default="true" 
                    use="optional"/>
                <attribute name="flagReadOnly" type="xs:boolean" default="false" 
                    use="optional"/>
                <attribute name="flagPersistent" type="xs:boolean" default="true" 
                    use="optional"/>
                <element name="icon" type="xs:string" minOccurs="0" 
                    maxOccurs="unbounded">
                  <attribute name="name" type="xs:string"/>
                </element>
                <attribute name="flagAutoValidation" type="xs:boolean" default="true" 
                    use="optional"/>
                <element name="helpFilename" type="xs:string" minOccurs="0"/>
                <element name="domain" type="xs:string" minOccurs="0"/>
                <element name="boProperty" type="BOProperty" minOccurs="0" 
                    maxOccurs="unbounded"/>
                <attribute name="boIdLink" type="xs:string" use="optional"/>
                <element name="extension" type="BOExtension" minOccurs="0" 
                    maxOccurs="unbounded"/>
                <element name="parameter" type="xs:string" minOccurs="0" 
                    maxOccurs="unbounded">
                  <attribute name="name" type="xs:string"/>
                </element>
                <element name="boExtends" type="BOExtends" minOccurs="0"/>
              </sequence>
            </complexType>
          </element>
        </shema>

        DTD [BOMetaData]

        BOMetaData.dtd

        <!DOCTYPE BOMetaData[
        <!ELEMENT BOMetaData (labelM*,descriptionM*,icon*,helpFilename?,domain?,
            boProperty*,extension*,parameter*,boExtends?)>
        <!ATTLIST BOMetaData ts CDATA #IMPLIED>
        <!ATTLIST BOMetaData id CDATA #IMPLIED>
        <!ATTLIST BOMetaData version CDATA #IMPLIED>
        <!ATTLIST BOMetaData semantic (default|short|search|meta-model|db|db-link) 
            default#IMPLIED>
        <!ATTLIST BOMetaData flagNotUse  (true|false) #IMPLIED>
        <!ATTLIST BOMetaData flagVisible  (true|false) #IMPLIED>
        <!ATTLIST BOMetaData flagReadOnly  (true|false) #IMPLIED>
        <!ATTLIST BOMetaData flagPersistent  (true|false) #IMPLIED>
        <!ATTLIST BOMetaData flagAutoValidation  (true|false) #IMPLIED>
        <!ATTLIST BOMetaData boIdLink CDATA #IMPLIED>
        
        <!ELEMENT labelM (en?,fr?,es?,de?)>
        <!ATTLIST labelM name CDATA #REQUIRED>
        <!ELEMENT en (#PCDATA)>
        
        <!ELEMENT fr (#PCDATA)>
        
        <!ELEMENT es (#PCDATA)>
        
        <!ELEMENT de (#PCDATA)>
        
        <!ELEMENT descriptionM (en?,fr?,es?,de?)>
        <!ATTLIST descriptionM name CDATA #REQUIRED>
        <!ELEMENT icon (#PCDATA)>
        <!ATTLIST icon name CDATA #REQUIRED>
        <!ELEMENT helpFilename (#PCDATA)>
        
        <!ELEMENT domain (#PCDATA)>
        
        <!ELEMENT boProperty (icon*,labelM*,descriptionM*,accelerator?,boEnumValues?,
            suggestedValue?,displayFormat?,editFormat?,validationRegex?,editRegex?,
            minValue?,maxValue?,suggestedMinValue?,suggestedMaxValue?,helpFilename?,
            extension*,parameter*)>
        <!ATTLIST boProperty ts CDATA #IMPLIED>
        <!ATTLIST boProperty semantic (default|id|fk) D#IMPLIED>
        <!ATTLIST boProperty index CDATA #IMPLIED>
        <!ATTLIST boProperty name CDATA #IMPLIED>
        <!ATTLIST boProperty flagNotUse  (true|false) #IMPLIED>
        <!ATTLIST boProperty flagVisible  (true|false) #IMPLIED>
        <!ATTLIST boProperty flagOptional  (true|false) #IMPLIED>
        <!ATTLIST boProperty flagAttributeXml  (true|false) #IMPLIED>
        <!ATTLIST boProperty type CDATA #IMPLIED>
        <!ATTLIST boProperty flagEnumeration  (true|false) #IMPLIED>
        <!ATTLIST boProperty flagBusinessObject  (true|false) #IMPLIED>
        <!ATTLIST boProperty boType CDATA #IMPLIED>
        <!ATTLIST boProperty flagPropertyMulti  (true|false) #IMPLIED>
        <!ATTLIST boProperty refId CDATA #IMPLIED>
        <!ATTLIST boProperty flagPropertyMap  (true|false) #IMPLIED>
        <!ATTLIST boProperty unit CDATA #IMPLIED>
        <!ATTLIST boProperty flagPassword  (true|false) #IMPLIED>
        <!ATTLIST boProperty defaultValue CDATA #IMPLIED>
        <!ATTLIST boProperty preferredSize CDATA #IMPLIED>
        <!ATTLIST boProperty minSize CDATA #IMPLIED>
        <!ATTLIST boProperty maxSize CDATA #IMPLIED>
        <!ATTLIST boProperty propertyIdLink CDATA #IMPLIED>
        <!ATTLIST boProperty flagReadOnly  (true|false) #IMPLIED>
        <!ATTLIST boProperty flagCalculated  (true|false) #IMPLIED>
        <!ATTLIST boProperty flagPersistent  (true|false) #IMPLIED>
        <!ATTLIST boProperty historyId CDATA #IMPLIED>
        <!ATTLIST boProperty flagAutoValidation  (true|false) #IMPLIED>
        <!ATTLIST boProperty flagLineWrap  (true|false) #IMPLIED>
        <!ATTLIST boProperty flagScrollable  (true|false) #IMPLIED>
        <!ATTLIST boProperty flagGroup  (true|false) #IMPLIED>
        <!ATTLIST boProperty groupName CDATA #IMPLIED>
        <!ATTLIST boProperty editorName CDATA #IMPLIED>
        
        <!ELEMENT accelerator (#PCDATA)>
        
        <!ELEMENT boEnumValues (boEnumItem*,boGroupBy*)>
        
        <!ELEMENT boEnumItem (labelM*,descriptionM*,icon*,extension*,parameter*)>
        <!ATTLIST boEnumItem name CDATA #IMPLIED>
        <!ATTLIST boEnumItem valueStr CDATA #IMPLIED>
        <!ATTLIST boEnumItem valueInt CDATA #IMPLIED>
        <!ATTLIST boEnumItem index CDATA #IMPLIED>
        
        <!ELEMENT extension (valueStr?)>
        <!ATTLIST extension name CDATA #IMPLIED>
        <!ATTLIST extension valueInt CDATA #IMPLIED>
        
        <!ELEMENT valueStr (#PCDATA)>
        
        <!ELEMENT parameter (#PCDATA)>
        <!ATTLIST parameter name CDATA #REQUIRED>
        <!ELEMENT boGroupBy (values*,labelM*,descriptionM*)>
        <!ATTLIST boGroupBy name CDATA #IMPLIED>
        <!ATTLIST boGroupBy parentGroup CDATA #IMPLIED>
        <!ATTLIST boGroupBy propertyId CDATA #IMPLIED>
        
        <!ELEMENT values (#PCDATA)>
        <!ATTLIST values name CDATA #REQUIRED>
        <!ELEMENT suggestedValue (#PCDATA)>
        
        <!ELEMENT displayFormat (#PCDATA)>
        
        <!ELEMENT editFormat (#PCDATA)>
        
        <!ELEMENT validationRegex (#PCDATA)>
        
        <!ELEMENT editRegex (#PCDATA)>
        
        <!ELEMENT minValue (#PCDATA)>
        
        <!ELEMENT maxValue (#PCDATA)>
        
        <!ELEMENT suggestedMinValue (#PCDATA)>
        
        <!ELEMENT suggestedMaxValue (#PCDATA)>
        
        <!ELEMENT boExtends (#PCDATA)>
        <!ATTLIST boExtends name CDATA #IMPLIED>
        <!ATTLIST boExtends propertiesToInclude CDATA #IMPLIED>
        <!ATTLIST boExtends propertiesToExclude CDATA #IMPLIED>
        
        ]>