blob: c656ab9c8629487e8e99c1ddcbd3d9b39da03f1f [file] [log] [blame]
<?xml version="1.0" encoding="utf-8"?>
<!--Arbortext, Inc., 1988-2005, v.4002-->
<!DOCTYPE task PUBLIC "-//OASIS//DTD DITA Task//EN" "task.dtd">
<task id="taddsmpt" xml:lang="en-us">
<title>Adding simple types</title>
<titlealts>
<searchtitle>Adding simple types</searchtitle>
</titlealts>
<shortdesc>Simple types are used to created derived datatypes. They provide
a set of constraints on the value space (that is, a set of values) and the
lexical space (that is, a set of valid literals) of a datatype.</shortdesc>
<prolog><metadata>
<keywords><indexterm>XML schema editor<indexterm>adding<indexterm>simple types</indexterm></indexterm></indexterm>
<indexterm>XML schema editor<indexterm>simple types<indexterm>adding</indexterm></indexterm></indexterm>
<indexterm>XML schema files<indexterm>adding<indexterm>simple types</indexterm></indexterm></indexterm>
<indexterm>XML schema files<indexterm>simple types<indexterm>adding</indexterm></indexterm></indexterm>
</keywords>
</metadata></prolog>
<taskbody>
<context><p>A simple type cannot have element content and cannot carry attributes.
Elements that contain numbers (and strings, and dates, and so on) but do not
contain any sub-elements are said to have a simple type.</p><p>The following
instructions were written for the Resource perspective, but they will also
work in many other perspectives.</p><p>To add a simple type, follow these
steps:</p></context>
<steps>
<step><cmd>Open your XML schema in the XML schema editor.</cmd></step>
<step><cmd>In the Outline view, right-click <b>Types</b>, and click <uicontrol>Add
Simple Type</uicontrol>.</cmd></step>
<step><cmd>In the Outline view, select the new simple type, and in the Properties
view, click the <uicontrol>General</uicontrol> tab. Then type a new name for
the simple type in the <uicontrol>Name</uicontrol> field.</cmd></step>
<step><cmd>You can select the following options from the <uicontrol>Variety</uicontrol> list:</cmd>
<choices>
<choice><uicontrol>atomic</uicontrol>. Atomic types are all the simple types
built into the XML schema language.</choice>
<choice><uicontrol>list</uicontrol>. List types are comprised of sequences
of atomic types. They have values that are comprised of finite-length sequences
of atomic values. </choice>
<choice><uicontrol>union</uicontrol>. A union type enables an element or attribute
value to be one or more instances of one type drawn from the union of multiple
atomic and list types.</choice>
</choices>
</step>
<step><cmd>If you selected <uicontrol>atomic</uicontrol> from the <uicontrol>Variety</uicontrol> drop
down list, click the <uicontrol>Browse</uicontrol> <image href="../images/Browse.gif">
<alt>This graphic is the Browse button</alt></image> button next to the <uicontrol>Base
type</uicontrol> field to specify a base type for the simple type.</cmd><info>The
Set Type dialog lists all built-in and user-defined types currently available.
You can change the <uicontrol>Scope</uicontrol> of the list by selecting one
of the following options:<ul>
<li><uicontrol>Workspace</uicontrol>. Lists all of the types available in
your workspace. </li>
<li><uicontrol>Enclosing Project</uicontrol>. Lists all of the types available
in the project that contains your file. </li>
<li>(Default) <uicontrol>Current Resource</uicontrol>. List all of the types
available in your current file.</li>
<li><uicontrol>Working Sets</uicontrol>. List all the types available within
the selected working set.</li>
</ul></info></step>
<step><cmd>If you selected <uicontrol>list</uicontrol> from the <uicontrol>Variety</uicontrol> drop
down list, click the <uicontrol>Browse</uicontrol> <image href="../images/Browse.gif">
<alt>This graphic is the Browse button</alt></image> button next to the <uicontrol>Item
type</uicontrol> field to specify a item type for the simple type.</cmd><info>The
Set Type dialog lists all built-in and user-defined types currently available.
You can change the <uicontrol>Scope</uicontrol> of the list by selecting one
of the following options:<ul>
<li><uicontrol>Workspace</uicontrol>. Lists all of the types available in
your workspace. </li>
<li><uicontrol>Enclosing Project</uicontrol>. Lists all of the types available
in the project that contains your file. </li>
<li>(Default) <uicontrol>Current Resource</uicontrol>. List all of the types
available in your current file.</li>
<li><uicontrol>Working Sets</uicontrol>. List all the types available within
the selected working set.</li>
</ul></info></step>
<step><cmd>If you selected <uicontrol>union</uicontrol> from the <uicontrol>Variety</uicontrol> drop
down list, click the <uicontrol>Browse</uicontrol> <image href="../images/Browse.gif">
<alt>This graphic is the Browse button</alt></image> button next to the <uicontrol>Member
types</uicontrol> field to specify the member types for the simple type.</cmd>
<info>You can select to add both <uicontrol>Built-in simple types</uicontrol> and <uicontrol>User-defined
simple types</uicontrol> to the member types value list. </info></step>
<step><cmd>Click the <uicontrol>Constraints</uicontrol> tab.</cmd><info>From
here you will be able to set specific constraint values including length constraints,
enumerations, and patterns. </info>
<substeps>
<substep><cmd>Enumerations help you to define a set of valid values for simple
types. They are the actual values the simple type can take as valid values
in the instance document. You can either add one enumeration or several enumerations
at a time:</cmd><info><ul>
<li>To add one enumeration at a time, under <uicontrol>Specific constraint
values</uicontrol>, select the <uicontrol>Enumerations</uicontrol> radio button
and click the <uicontrol>Add</uicontrol> button and specify a value for the
enumeration.</li>
<li>To add several enumerations at one time, follow these steps:<ol>
<li>Select the <uicontrol>Enumerations</uicontrol> radio button.</li>
<li>Click the <uicontrol>Add...</uicontrol> button.</li>
<li>Enter the value of each enumeration. Each value must be separated by the <uicontrol>Delimiter
character</uicontrol>. For example: <codeph>First, Second</codeph> will create
two enumerations, one with the value "First" and one with the value "Second".</li>
<li>Select the <uicontrol>Preserve leading and trailing whitespace</uicontrol> check
box if you want any white space around your enumeration values to be preserved.
If, for example, you select this check box, the values of <codeph>First, Second</codeph> will
show up as "First" and " Second" (there is a space before Second) because
you put a space before "Second" when entered the value.</li>
<li>Click <uicontrol>OK</uicontrol>. Your enumerations will be created and
appear in the Properties view.</li>
</ol></li>
</ul></info></substep>
<substep><cmd>Patterns help you to place certain constraints regarding allowable
values.</cmd><info>For example, you could restrict the field to only accept
input which follows the pattern "five digits followed by two upper-case ASCII
letters". To set a pattern constraint:<ol>
<li>Select the <uicontrol>Patterns</uicontrol> radio button.</li>
<li>Click the <uicontrol>Add...</uicontrol> button.</li>
<li>Create the regular expression pattern you wish to use as your constraint
using the <uicontrol>Regular Expression</uicontrol> wizard.</li>
<li>Click <uicontrol>Finish</uicontrol>.</li>
</ol></info></substep>
</substeps>
</step>
<step><cmd>Click the <uicontrol>Documentation</uicontrol> tab if you want
to provide any information about this simple type.</cmd><info>The <uicontrol>Documentation</uicontrol> page
is used for human readable material, such as a description, and the <uicontrol>App
Info</uicontrol> page can be used to provide information for applications.</info>
</step>
</steps>
</taskbody>
</task>