Field Setup XML Structure
The outgoing XML structure with the field setup.
XML Description
The following table explains the meaning and the impact of the attributes on the ishfielddefinition element.
| Attribute name | Description |
|---|---|
| name | The element name of the field (e.g. FTITLE). |
| level | The InfoShare level on which the field is specified.
|
| type | The type of the value for this field. The allowed values are:
|
| ismandatory | Boolean attribute indicating whether the field is mandatory or not. |
| ismultivalue | Boolean attribute indicating whether the field can contain multiple values or not. |
| allowonread | Boolean attribute indicating whether the field can be passed as filter or passed as requested metadata to an API READ method (e.g. GetMetadata, RetrieveMetadata, Find,...). |
| allowoncreate | Boolean attribute indicating whether the field can be set via metadata by an API CREATE method.
|
| allowonupdate | Boolean attribute indicating whether the field can be set via metadata by an API UPDATE method (e.g. SetMetadata, Update,...). |
| allowonsearch | Boolean attribute indicating whether the field is part of the full text index and can be used as part of the search query. |
| issystem | Boolean attribute indicating whether this field is part of the internal Content Manager business logic. |
| isbasic | Boolean attribute indicating whether this field is a basic field (e.g. FSTATUS) or a more advanced field (e.g. FISHSTATUSTYPE). |
| isdescriptive | Boolean attribute indicating whether this field is one of the fields that define an object.
|
XML structure
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema id="ISHFieldSetup" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="ishfieldsetup">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="ishtypedefinition">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="ishfielddefinition" type ="IshFieldDefinitionType"/>
</xs:sequence>
<xs:attribute name="name" use="required" type="IshType"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name ="IshFieldDefinitionType">
<xs:all>
<xs:element name="label" minOccurs="0" maxOccurs="1" type="xs:string"/>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="xs:string"/>
<xs:element name="ishreference" minOccurs="0" maxOccurs="1" type="IshReferenceType"/>
</xs:all>
<xs:attribute name="name" use="required" type="xs:string"/>
<xs:attribute name="level" use="required" type="IshLevel"/>
<xs:attribute name="type" use="required" type="IshFieldType"/>
<xs:attribute name="ismandatory" use="required" type="xs:boolean"/>
<xs:attribute name="ismultivalue" use="required" type="xs:boolean"/>
<xs:attribute name="allowonread" use="required" type="xs:boolean"/>
<xs:attribute name="allowoncreate" use="required" type="xs:boolean"/>
<xs:attribute name="allowonupdate" use="required" type="xs:boolean"/>
<xs:attribute name="allowonsearch" use="required" type="xs:boolean"/>
<xs:attribute name="issystem" use="required" type="xs:boolean"/>
<xs:attribute name="isbasic" use="required" type="xs:boolean"/>
<xs:attribute name="isdescriptive" use="required" type="xs:boolean"/>
</xs:complexType>
<xs:complexType name ="IshReferenceType">
<xs:choice minOccurs="1">
<xs:element name="ishlov" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="ishref" use="required" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="ishtype" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="ishref" use="required" type="IshTypeReference"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:simpleType name ="IshType">
<xs:restriction base="xs:string">
<xs:enumeration value="ISHConfiguration"/>
<xs:enumeration value="ISHIllustration"/>
<xs:enumeration value="ISHLibrary"/>
<xs:enumeration value="ISHMasterDoc"/>
<xs:enumeration value="ISHModule"/>
<xs:enumeration value="ISHTemplate"/>
<xs:enumeration value="ISHFolder"/>
<xs:enumeration value="ISHEDT"/>
<xs:enumeration value="ISHOutputFormat"/>
<xs:enumeration value="ISHPublication"/>
<xs:enumeration value="ISHBaseline"/>
<xs:enumeration value="ISHTranslationJob"/>
<xs:enumeration value="ISHUser"/>
<xs:enumeration value="ISHUserGroup"/>
<xs:enumeration value="ISHUserRole"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name ="IshTypeReference">
<xs:restriction base="xs:string">
<xs:enumeration value="ISHIllustration"/>
<xs:enumeration value="ISHLibrary"/>
<xs:enumeration value="ISHMasterDoc"/>
<xs:enumeration value="ISHModule"/>
<xs:enumeration value="ISHTemplate"/>
<xs:enumeration value="ISHFolder"/>
<xs:enumeration value="ISHEDT"/>
<xs:enumeration value="ISHOutputFormat"/>
<xs:enumeration value="ISHPublication"/>
<xs:enumeration value="ISHBaseline"/>
<xs:enumeration value="ISHTranslationJob"/>
<xs:enumeration value="ISHUser"/>
<xs:enumeration value="ISHUserGroup"/>
<xs:enumeration value="ISHUserRole"/>
<xs:enumeration value="ISHRevision"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name ="IshLevel">
<xs:restriction base="xs:string">
<xs:enumeration value="logical"/>
<xs:enumeration value="version"/>
<xs:enumeration value="lng"/>
<xs:enumeration value="none"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name ="IshFieldType">
<xs:restriction base="xs:string">
<xs:enumeration value="string"/>
<xs:enumeration value="longtext"/>
<xs:enumeration value="datetime"/>
<xs:enumeration value="number"/>
<xs:enumeration value="ishreference"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
Example
<?xml version="1.0" encoding="utf-16"?>
<ishfieldsetup>
<ishtypedefinition name="ISHModule">
<ishfielddefinition name="FTITLE" level="logical" type="string" ismandatory="true" ismultivalue="false"
allowonread="true" allowoncreate="true" allowonupdate="true" allowonsearch="true" issystem="true" isbasic="true" isdescriptive="false">
<label>Title</label>
<description>Used on all logical level card types to store the title of the object.</description>
</ishfielddefinition>
<ishfielddefinition name="FREQUESTEDLANGUAGES" level="logical" type="ishreference" ismandatory="false" ismultivalue="true"
allowonread="true" allowoncreate="true" allowonupdate="true" allowonsearch="true" issystem="true" isbasic="true" isdescriptive="false">
<label>Requested languages</label>
<description>Used on various logical card types to store the languages that are requested for this object, matching values from DLANGUAGE. </description>
<ishreference>
<ishlov ishref="DLANGUAGE" />
</ishreference>
</ishfielddefinition>
<ishfielddefinition name="CREATED-ON" level="logical" type="datetime" ismandatory="true" ismultivalue="false"
allowonread="true" allowoncreate="false" allowonupdate="false" allowonsearch="true" issystem="true" isbasic="true" isdescriptive="false">
<label>Creation Date</label>
<description>Used on all cards to indicate the date that the object was created</description>
</ishfielddefinition>
...
<ishfielddefinition name="VERSION" level="version" type="string" ismandatory="true" ismultivalue="false"
allowonread="true" allowoncreate="false" allowonupdate="false" allowonsearch="true" issystem="true" isbasic="true" isdescriptive="true">
<label>Version</label>
<description>Used on various version card types to store the full version number.</description>
</ishfielddefinition>
<ishfielddefinition name="FCHANGES" level="version" type="longtext" ismandatory="false" ismultivalue="false"
allowonread="true" allowoncreate="true" allowonupdate="true" allowonsearch="true" issystem="false" isbasic="true" isdescriptive="false">
<label>Changes</label>
<description>Used on various version card types to store the reason for version creation.</description>
</ishfielddefinition>
<ishfielddefinition name="CREATED-ON" level="version" type="datetime" ismandatory="true" ismultivalue="false"
allowonread="true" allowoncreate="false" allowonupdate="false" allowonsearch="true" issystem="true" isbasic="true" isdescriptive="false">
<label>Creation Date</label>
<description>Used on all cards to indicate the date that the object was created</description>
</ishfielddefinition>
<ishfielddefinition name="FISHBRANCHNR" level="version" type="string" ismandatory="true" ismultivalue="false"
allowonread="true" allowoncreate="false" allowonupdate="false" allowonsearch="false" issystem="true" isbasic="false" isdescriptive="false">
<label>Branchnumber</label>
<description>Used on various version card types to store the branch part of a version number; contains 0 for the main branch. (eg: VERSION holds 2.10.1 then FISHBRANCHNR holds 2.10)</description>
</ishfielddefinition>
<ishfielddefinition name="FISHRELEASELABEL" level="version" type="ishreference" ismandatory="false" ismultivalue="true"
allowonread="true" allowoncreate="false" allowonupdate="false" allowonsearch="true" issystem="true" isbasic="true" isdescriptive="false">
<label>Release Label</label>
<description>Used on various version card types to store a reference to a CTBASELINE that this particular version is part of the referenced frozen baseline. When freezing a baseline, this field is set automatically.</description>
<ishreference>
<ishtype ishref="ISHBaseline" />
</ishreference>
</ishfielddefinition>
...
<ishfielddefinition name="DOC-LANGUAGE" level="lng" type="ishreference" ismandatory="true" ismultivalue="true"
allowonread="true" allowoncreate="true" allowonupdate="true" allowonsearch="true" issystem="true" isbasic="true" isdescriptive="true">
<label>Document Language</label>
<description>Used on various language card types to hold the language of the object, matching a value from DLANGUAGE.</description>
<ishreference>
<ishlov ishref="DLANGUAGE" />
</ishreference>
</ishfielddefinition>
<ishfielddefinition name="FAUTHOR" level="lng" type="ishreference" ismandatory="true" ismultivalue="false"
allowonread="true" allowoncreate="true" allowonupdate="true" allowonsearch="true" issystem="false" isbasic="true" isdescriptive="false">
<label>Author</label>
<description>Used on various language card types to store the reference to the USER card indicated as author.</description>
<ishreference>
<ishtype ishref="ISHUser" />
</ishreference>
</ishfielddefinition>
<ishfielddefinition name="FSTATUS" level="lng" type="ishreference" ismandatory="true" ismultivalue="false"
allowonread="true" allowoncreate="true" allowonupdate="true" allowonsearch="true" issystem="true" isbasic="true" isdescriptive="false">
<label>Status</label>
<description>Used on various language card types to store the current status, matching a value from DSTATUS.</description>
<ishreference>
<ishlov ishref="DSTATUS" />
</ishreference>
</ishfielddefinition>
<ishfielddefinition name="CREATED-ON" level="lng" type="datetime" ismandatory="true" ismultivalue="false"
allowonread="true" allowoncreate="false" allowonupdate="false" allowonsearch="true" issystem="true" isbasic="true" isdescriptive="false">
<label>Creation Date</label>
<description>Used on all cards to indicate the date that the object was created</description>
</ishfielddefinition>
<ishfielddefinition name="ED" level="lng" type="ishreference" ismandatory="false" ismultivalue="true"
allowonread="true" allowoncreate="false" allowonupdate="false" allowonsearch="false" issystem="true" isbasic="false" isdescriptive="false">
<label>Electronic Documents</label>
<description>Relation field that links to the card containing the elektronic document (content) of an object</description>
<ishreference>
<ishtype ishref="ISHRevision" />
</ishreference>
</ishfielddefinition>
<ishfielddefinition name="FISHSTATUSTYPE" level="lng" type="number" ismandatory="false" ismultivalue="false"
allowonread="true" allowoncreate="false" allowonupdate="false" allowonsearch="true" issystem="true" isbasic="false" isdescriptive="false">
<label>Status type</label>
<description>Contains the mapping of the FISHSTATUS / FISHPUBSTATUS with its enum values:DrafT(10), Release Candidate(15), Released(20)</description>
</ishfielddefinition>
...
</ishtypedefinition>
...
</ishfieldsetup>