Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Statusstatus
Page Properties
hiddentrue
id
DONE

colourYellow
titleprogress
Priority
Product Version
Report Note
AssigneeAntje

Resources & Remarks

Remarks
  • Antje: page created as a copy of the schema tutorial
  • Inga - Review
    • Überschriften für Tutorials sind aktiv formuliert - was mache ich ... Using property definitions several times | Overwriting property attribute "required"
    • Einsortieren würde ich erst einmal vor dem Tagging in der Navigation 
    • "property type" (e.g. integer / date / string)  vs. "property definition"
    • "object type" vs "object type definitions" - siehe z.B. im excerpt
    • defined properties are "referenced" in an object type definition vs. "selected"
    • Heading "Overwriting by a Secondary Object Type Definition" - An alternative possibility is the usage of a secondary object type on which the object type definition can be based. => verstehe den Satz nicht - was meint hier "based" - "enhanced" und nicht die OTdefinition, sondern die Instanz selbst ...
    • "non-static" vs. "floating" - wenn dies dann zur Laufzeit oder direkt beim Import hinzugefügt wird ... fehlt mir noch als Info in dem Absatz
    • Ich fände es gut, wie property definition mit in jedem Beispiel aufzuführen - damit der Initalwert sichtbarer ist - sind zwar 6 Zeilen aber wäre mir leichter gefallen zu lesen
    • Heading "Handling of Multiple Property References"
      • specifying ... es wird nur das Attribut genannt - wäre es nicht sinnvoll dies mit propertyreference zu erwähnen
      • CODE - zweiter SOT ist ohne attribute - ist das richtig so? / initial ist es ebenfalls auf false gesetzt - wird dann überschrieben?

Modification History

NameDateProduct VersionAction
Antje08 FEB 20212.4New page properties macro.



Excerpt

This tutorial shows how to reference the same property definition in different object type definitions, in some of them as a required property and in others as a non-required property.

...

Overwriting the required Attribute of Properties

...

In the example code below, the editor property is defined. The required attribute of the editor property is set to true.  If not overwritten by a propertyReference, the editor property will be mandatory for any object of a type containing the editor property in its definition.

Code Block
languageymlxml
titleProperty definition
linenumberstrue
<propertyStringDefinition>
    <id>editor</id>
    <propertyType>string</propertyType>
    <cardinality>single</cardinality>
    <required>true</required>
</propertyStringDefinition>

...

Since the editor property should be optional for an imported1 document, the required attribute is set to false by means of a propertyReference.

Code Block
languageymlxml
titleOverwriting of the required attribute by document type definition
linenumberstrue
<propertyStringDefinition>
    <id>editor</id>
    <propertyType>string</propertyType>
    <cardinality>single</cardinality>
    <required>true</required>
</propertyStringDefinition>

<typeDocumentDefinition>
    <id>imported1</id>
    <baseId>system:document</baseId>
    <propertyReference required="false">editor</propertyReference>
    <contentStreamAllowed>allowed</contentStreamAllowed>
</typeDocumentDefinition>

...

In the example code below, the editor property is not included directly in the imported2 document type definition. But it is based on the non-static (floating) secondary object type noeditor. The definition of noeditor uses the editor property and sets its required attribute to false by means of a propertyReference. Thus, for documents of the type imported2, the editor property will be available and optional.

Code Block
languageymlxml
titleOverwriting of the required attribute by secondary object type definition
linenumberstrue
<propertyStringDefinition>
    <id>editor</id>
    <propertyType>string</propertyType>
    <cardinality>single</cardinality>
    <required>true</required>
</propertyStringDefinition>

<typeDocumentDefinition>
    <id>imported2</id>
    <baseId>system:document</baseId>
    <contentStreamAllowed>allowed</contentStreamAllowed>
    <secondaryObjectTypeId static="false">noeditor</secondaryObjectTypeId>
</typeDocumentDefinition>
 
<typeSecondaryDefinition>
    <id>noeditor</id>
    <baseId>system:secondary</baseId>
    <propertyReference required="false">editor</propertyReference>
</typeSecondaryDefinition>

...

In the example code below, a document type imported3 is defined. The editor property is included, but the required attribute is overwritten to false which makes the editor property optional. However, the two secondary object types noeditor and witheditor may have different values specified for the required attribute of the editor property.

Code Block
languageymlxml
titleDocument type definition and secondary object type definitions
linenumberstrue
<propertyStringDefinition>
    <id>editor</id>
    <propertyType>string</propertyType>
    <cardinality>single</cardinality>
    <required>true</required>
</propertyStringDefinition>

<typeDocumentDefinition>
    <id>imported3</id>
    <baseId>system:document</baseId>
    <propertyReference required="false">editor</propertyReference>
    <contentStreamAllowed>allowed</contentStreamAllowed>
    <secondaryObjectTypeId static="false">noeditor</secondaryObjectTypeId>
    <secondaryObjectTypeId static="false">witheditor</secondaryObjectTypeId>
</typeDocumentDefinition>

<typeSecondaryDefinition>
    <id>noeditor</id>
    <baseId>system:secondary</baseId>
    <propertyReference required="false">editor</propertyReference>
</typeSecondaryDefinition>
 
<typeSecondaryDefinition>
    <id>witheditor</id>
    <baseId>system:secondary</baseId>
    <propertyReference>editor</propertyReference>
</typeSecondaryDefinition>

...

Info
iconfalse

Read on

Section


Column
width25%

Managing the Schema

Insert excerpt
Managing the Schema
Managing the Schema
nopaneltrue
 Keep reading


Column
width25%

Schema - Defining Object Types

Insert excerpt
Schema - Defining Object Types
Schema - Defining Object Types
nopaneltrue
 Keep reading


Column
width25%

DMS Endpoints

To update the instance of an object type with the property group of a floating secondary object type as well as specific values use one of the two endpoints for updating metadata. Keep reading



...