next up previous contents index
Next: Input variables Up: Domains Previous: XML element names for   Contents   Index


Possible domains

Each domain is assigned its own XML element. Each XML element for a domain can have an attribute scalingfactor for the scaling factor. This may be omitted, if the scaling factor is $1$, respectively the scaling factor is $1$ if it is omitted.

The scaling factor scalingfactor is a floating point number, with which the values of the unscaled domain or the basic domain are multiplied to obtain the scaled domain.

Example: The domain is 2 bit natural numbers with the scaling factor of $F=0.5$ . Possible values for the element to the domain are: $\{$ $0*0.5=0$; $1*0.5=0.5$; $2*0.5=1$; $3*0.5=1.5$ $\}$. If in the element to the domain a number is set that would mean $3$ unscaled, it means with the scaling $1.5$. The XML Element for the domain: <naturalNumberB scalingfactor="0.5" bit="2"/>


The table 16 lists the names of XML elements and attributes of XML elements for the various domains.

Table 16: Elements for domains
name description parameter
     
naturalNumberB The basic domain are the natural numbers. The attribute bit is a natural number, which indicates the number of bits for values of the domain. The corresponding basic domain is $0 \ldots (2^bit-1)$ .
integerB The basic domain are the integer numbers. The attribute bit is a natural number, which indicates the number of bits for values of the domain. The corresponding basic domain is $-(2^{bit-1}) \ldots (2^{bit-1}-1)$ .
naturalNumber The basic domain are the natural numbers. The attribute max is a natural number, which is the largest natural number in the domain. The corresponding basic domain is $0 \ldots max$.
integer The basic domain are the integer numbers. The two attributes min and max are two integers. The attribute min is the smallest number in the domain. The attribute max is the biggest number in the domain. The corresponding basic domain is $min \ldots max$.
integerValues The basic domain are the integer numbers. For each value of the basic domain the integerValues element contains one value element, in which the value is given (for example <value>17</value>).
real The basic domain are floating point numbers. A floating point number consists of two integer fields, one the first, for the exponent $E$ and one, the second, for the mantissa $M$. The floating point number $Z$ is then $Z=M*2^E$. This element contains two elements. The first element specifies the domain of the mantissa and the second for the exponent. The specification of the domains is as described in this table. Both domains must come from the domains of integers (ie. integer... or naturalNumber...). Example: <real>
<integer min="-100" max="100"/> <naturalNumberB scalingfactor="0.1" bit="8"/></real> The mantissa is a natural number from $-100$ to $100$ and the exponent is an eight-bit natural number scaled by $0.1$ .
realValues The basic domain are floating point numbers. A floating point number consists of two integer fields, one the first, for the exponent $E$ and one, the second, for the mantissa $M$. The floating point number $Z$ is then $Z=M*2^E$. This element contains several elements. The first element specifies the domain of the mantissa and the second for the exponent. The specification of the domains is as described in this table. Both domains must come from the domains of integers (ie. integer... or naturalNumber...). After the first two parameters the value-elements for the possible floating point numbers of the domain follow (e.g. <value>17.14</value>). Example: <real> <integer min="-100" max="100"/> <naturalNumberB scalingfactor="0.1" bit="8"/> <value>7*2^0.5</value> <value>31*2^10</value> </real> The mantissa is a natural number from $-100$ to $100$ and the exponent is an eight-bit integer scaled by $0.1$ . The values in the domain are $7*2^{0.5} \approx 9.9$ and $31*2^{10} \approx 31744$
vector The basic domain are vectors. The element has one attribute elements, which indicates the number of elements $E$ in the vectors. The XML element vector also contains for each of the vector elements (this means elements piece) a XML element with the domain for the element of the vector. Where the first XML element contains the domain of the first vector element, the second of the second and so on. All the values of the vector domain will have the form $(D_1, \ldots , D_E)$, where $D_i$ is a value of the i'th domain in the domains list.
vectorValues The basic domain are vectors. The element has one attribute elements, which indicates the number of elements $E$ in the vectors. The XML element vectorValues also contains for each of the vector elements (this means elements piece) an XML element with the domain for the element of the vector. Where the first XML element contains the domain of the first vector element, the second of the second and so on. Then follows a list with the vectors, as described in section 22.3.1 on page [*] without the type attributes. The domains of the vectors are the given domains of the preceding list. Variables can also occur in the stored vectors. If a variable is an element in a the vector the identifier for the variable is omitted. Example: <vectorValues elements="2"> <integer min="-100" max="100"/> <naturalNumberB scalingfactor="0.1" bit="8"/> <vector> <value>99</value> <value>2</value> </vector> <vector> <value>-17</value> <variable></variable> </vector> </vectorValues> ; This domain dosn't change anything for the notation of a vector in a Fib element in the XML format. Vectors will be stored like with the vector domain.
vectorOpenEnd The basic domain are vectors. The element has one attribute elements, which indicates the minimum number of elements $E$ in the vectors. The XML element vectorOpenEnd also contains for each of the vector elements (this means elements piece) an XML element with the domain for the element of the vector. Where the first XML element contains the domain of the first vector element, the second of the second and so on and the $E$'te domain is for $E$'th and the following elements. All the values of the vector domain will have the form $(D_1, \ldots , D_E, \ldots ,D_E)$, where $D_i$ is a value of the i'th domain in the domains list. This domain is for elements that may contain vectors of different size. The number of elements for a vector of this domain is determined by the element containing the vector.
domainReference This is a reference to the (sub-)domain of an other element. The domain is the domain of the element with the given type element. The element can contain the optional attribute subdomain. The attribute subdomain specifies the subdomain which should be used. In it the numbers (counting starts with 1) of the subdomains to use is stored. Subdomains of more levels can be given separated by a point betwean them. In which the number of a subdomain stands befor the number of the subdomains contained in it. The domainReference contains a XML element for the type element to which it refers to. This XML element is generated as described in table 15 on page [*] . Example <domainReference subdomain="3.1"> <matrixElement/> </domainReference>: The used domain is the first subdomain of the third subdoamin of the matrix element.
defaultDomain The specified domain will be used only if for the corresponding element so far no other domain was given. The element contains a Xml element of a domain as described in this table. The specified domain is only used, if for the corresponding element so far no other domain was given.
   


An example for the domains:

<domains>
   <dim count="2">
      <dimension number="1" direction="horizontal"/>
      <dimension number="2" direction="vertical"/>
      <vector elements="2">
         <naturalNumberB scalingfactor="0.1" bit="8"/>
         <integer scalingfactor="0.1" min="10" max="110"/>
      </vector>
   </dim>
   <property name="colorRGB">
      <vector elements="3">
         <naturalNumberB bit="8"/>
         <integer min="-10" max="246"/>
         <naturalNumberB bit="9"/>
      </vector>
   </property>
</domains>
<valueDomains>
   <property name="colorRGB">
      <vector elements="3">
         <naturalNumberB bit="4"/>
         <integer min="-10" max="10"/>
         <integerValues>
            <value>17</value>
            <value>-3</value>
            <value>12</value>
            <value>124</value>
         </integerValues>
      </vector>
   </property>
</valueDomains>


next up previous contents index
Next: Input variables Up: Domains Previous: XML element names for   Contents   Index
Betti Österholz 2013-02-13