Versions Compared

Key

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

...

Document Properties Marker
doctypetopic
overridefalse


Short DescriptionProperty values should only change when a document is saved. They should not be dependent on request-time. If they are, then they are called 'dynamic'.
NameDynamic Property Valueshide
Short Namehide
Parent
Parent Property
property-nameName
hide
Audience

Name List
empty-as-none
doctyperole
render-no-hits-as-blanktrue
render-list-as-comma-separated-valuestrue
namesAuthor, Documentation Gardener, Documentation Architect
property-restrict-value-rangetrue
propertyAudiencetrue


Subject
Name List
doctypesubject
propertySubject

Categories
Name List
doctypecategory
property-restrict-value-rangetrue
propertyCategories

Tags
Tag List
propertyTags

Flagshide
Iteration

Iteration
valuefocused

hide
Type

Name List
doctypetopic-type
render-no-hits-as-blanktrue
namesTutorial
property-restrict-value-rangetrue
propertyType


Level of Experience

Name List
doctypeexperience-level
render-no-hits-as-blanktrue
namesNovice
propertyLevel of Experience


Expected Duration
Sponsors
Name List
doctypestakeholder,organization,person,role
render-no-hits-as-blanktrue
propertySponsors

Sort Keyhide


...

Section
show-titlefalse
titleDescription

The concept of dynamic property values should be mastered by users right from the start.

Using dynamic property values with the projectdoc Toolbox seems quite natural. Especially novice users may not be aware of the issues that come with them.

This short article explains the problem with dynamic property values and shows use cases to handle them.

The information is based on the projectdoc Toolbox version 5.2.


projectdoc-section
titleSummary


Section
titlePrerequisites

...

Section
titleProblem Description

When a user edits a document, only one document at a time is changed. Multiple users my edit multiple documents at the same time, but for the system most of the documents stay the same, only a number of them is altered.

A document may use values from other documents. This is the case if for excample example the Tags Property is referencing tags. It uses the name of the tag documents to render as values for the Tags Property. When a service document lists the systems it requires, then the service document uses the names and maybe further properties of the system documents, to render the values of its properties.

When only one document is changed, the property values of all other documents are calculated and readily available.

When all projectdoc documents are erased, they can be rebuilt from scratch, since all information is actually derived from Confluence pages. Some information architectures that seemed sound when used in the one-document-at-a-time context will now show if they can cope with the from-scratch context.

One issue may be with circular references as property values. References should be pointing in one direction. The projectdoc Toolbox will report circular references accordingly. Sometimes those circular reference first show up in the from-scratch scenario. That is because a value may be available from a existing document, but not if the document needs to be calculated.

References in the body of a document are no problem. This is because they are always rendered at request-time, never stored in Lucene or in a cache. Therefore the rendered text in bodies of those documents cannot be found in searches.

Another issue are dynamic properties. This may be more dramatic than circular references. Users may experience dynamic property issues even in the one-document-at-a-time context. The property values of such documents may often be considered as as not up-to-date. 

...