Versions Compared

Key

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

...

Section
titleDetails


Section
level2
titleMandatory Document Properties

The following properties are mandatory to appear in the document properties table:

  • Doctype - must be plain text
  • Name - optional if Nameless Documents are in use (note that space homepages cannot be nameless)
  • Short Description - optional if no overviews e.g. using the Display Table Macro using default selection is used

Especially a missing Doctype property – since version 2.4 also if the macro contains no table – is reported immediately as an error.

This error is also rendered if the language of the site differs from the language defined for the user. Please make sure that the browser's language (or locale) matches that of Confluence (users with write permission typically experience no trouble if their profile has the correct language set). See Language Problem below.


Section
level2
titleLanguage Problem

Each page is created based on the site language (more specific: the site locale). If the site language differs from that of the page, the macro is not able to find any document properties.

The language for the whole site can only be configured by an admin.

Example Box
titleExample Configuration for German (Deutsch)

Note that this has nothing to do with the Indexing Language of General Configuration. This is typically not changed from its original value (which is English even if the global default language is set to another value).


Info Box

This is really only relevant for properties that have meaning to the system. Only in this case the system has to translate the name of the property. Other properties are usually passed through without translation. Therefore users may add any number of properties without the need of providing localization bundles (these are resources that contain text for a specific language).

This problem occurs usually, if a space is imported from a site based on a different language. There is no workaround for this problem than translating the pages. This is a problem - to our knowledge - that is shared by all macros that display generated text resources.

Info Box

A page in Confluence containing generated text will contain this text regardless of any changes of the language after creation. This is similar to any user added text. The user (without the help of third-party plugins) writes text to a page in one language.

If a document has already been created with the wrong language, all property names and sections need to be replaced (for instance the macro is looking for 'Dokumenttyp' since the language is set to German, but the property in the document reads 'Doctype'). This is because a page in Confluence has no reference to the blueprint it has been created with. Often it is easier to create a new page with the blueprint wizard and copy the property values and section bodies from the old to the new document.


Section
level2
titleOnly one Version of the Macro

Please note that there must only be one instance of this macro on a page.

This macro is the working horse of projectdoc. It provides the basic information to transform a Confluence page into a projectdoc document. This allows users to employ automatic lists to display documents by their metadata.

Since version 1.11 authors may render groups of properties with the use of one or more instances of the Document Properties Supplier Macro.

Since version 1.15 authors may include properties from attachment files with the use of one or more instances of the Document Properties Supplier Attachment Macro.


Content Marker
idvalue-property-info


Section
titleLength of Property Values

The value of a property is stored in the database as an unlimited string (StringLength.UNLIMITED). It depends on the database of the Confluence installation how large this actually is.

Keep in mind that most clients assume that these values are typically small. The values are also cached for fast access.


Section
titleStatic Values

The property value should either be text or have a macro that always returns the same value.

Caution Box
titleDynamic Content as Property Value - think twice!

If the macro returns dynamic values, the value cannot be used in queries.

Values are stored in the Lucene Index at the time the document is stored. If the document contains dynamic content, changes in the content will not be reflected in the index until the page is stored again.

There is no guarantee that a dynamic value renders the same way in two different situations.

It is important to note that there are use cases where a dynamic property value is used, but these use cases (typically) must not include searching. Therefore the projectdoc Toolbox does not prevent the use of such macros as property values. If you ensure that the values are static in the context of the use case, then you may use a dynamic macro. For example:

  • Use a separate space with documents that do rarely change. On every change on documents of that space all depending spaces, that is a space where there a documents with property values that make searches, need to be reindexed.
  • It is save to use the dynamic content properties as long as the macros point to properties on the same page.
Tip Box

As a rule of thumb: The Name List Macro (and its relatives) provide static content, while the Display Table Macro or the Display Document Property Macro does not. Since the display property macros keep track of references they are in many use cases safe to use. Searches, like executed by the Display Table Macro and its relatives, should be avoided (and maybe will be forbidden in future versions of the projectdoc Toolbox).




Section
titleLinks to Attachments

In case a link to an attachment is the value of a property, please consider to use the 

Static Document Link
documentAttachment Link Macro
. It allows you to link to an existing or not yet existing attachment on the same page.

If this macro does not suit your use case, you should use the control 

Static Document Link
documentno-render-cache
to not store the rendered representation of the attachment link. This control helps to update the rendered value in case the attached document is deleted.



Section
indextrue
titleRelated macros

Macros to define document properties.

Display Table
doctypemacro
selectName, Short Description, Tags
sort-byTags, Name
where$<Tags> = [Define Properties]

Macros related to the Document Properties Marker Macro.

Display Table
doctypemacro
selectName, Short Description, Tags
sort-byTags, Name
whereTags = Display OR Tags = Query OR Tags = Section
exclude-selftrue

...