Versions Compared

Key

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

...

Document Properties Marker
doctypespace-property
overridefalse


Short DescriptionControls how document instances are located in a space.
NameDoctype Instances Localization Mode
Short Name
Parent
Parent Property
property-nameName
hide
Audience
Name List
doctyperole
render-no-hits-as-blanktrue
property-restrict-value-rangetrue
propertyAudience
empty-as-nonetrue

Subject
Name List
doctypesubject
propertySubject

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

Tags
Tag List
propertyTags

Flagshide
Iteration

Iteration
valuefilledreleased

hide
IDprojectdoc.links.doctype-instances-localization-mode
Type
Name List
doctypespace-property-type
property-restrict-value-rangetrue
defaults-toancestor
propertyType

Suite
Name List
doctypeapp, app-extension
render-no-hits-as-blanktrue
property-restrict-value-rangetrue
propertySuite

Data TypeEnumeration of strings
Default Valueheuristic
Value Rangeheuristic, search, children-check
Since4.1
Deprecated
Removed
Sort Keyhide


...

Section
show-titlefalse
titleDescription

The space property controls how the projectdoc Toolbox is checking for document

instances 

instances.

The service that checks for document instances is used by the Wiki Link Macro. The macro renders the link label to a doctype homepage in a different format dependent on whether there a documents of the given type or not. This makes it easier for users visiting the homepage of a space to determine which of the referenced doctype homepages actually have documents as their children.

The property recognizes three values that enforce different strategies to determine a result.

Search modeSemanticsProsCons
heuristic (default)Space

Quick, no search required

No reliable results based on naming conventions

searchSpaceReliable resultsSearch executed which drains performance when rendering a page with plenty of links
children-check (recommended)HomepageReliable resultsPage traversal required with additional checks which drains performance when rendering a page with plenty of links

Space semantics check for document instances in the whole space, while homepage semantics only check for document instances as children of the homepage.

In case you need reliable results, we recommend the children-check mode. If your use case is that users visiting the homepage should not click on a link pointing to a doctype homepage without documents, then this is your choice. In case your semantics allow a document instance to be anywhere in a space, use the search mode and check for performance issues. In case your main concern is performance, stick with the default value heuristic.


Section
titleDetails


Section
titleHeuristic Mode

The heuristic mode is based on naming conventions of internationalization (I18N) keys. This is the default search mode.

The mode is based on a few quick and fast lookups. But the heuristic mode is not reliable. In case there is an index page, the heuristic assumes that there are document instances of the given type. This may not be true.

I18N keys are specified in resource bundles, typically in a properties file, that is deployed as an app (formally known as plugin or add-on) to a Confluence server.

The homepage for a given doctype needs to have a I18N key of the following format:

Code Block
<any-chars>.content.<doctype>.home.title

The index page for doctypes is assumed to be referenced by the following I18N key:

Code Block
<any-chars>.content.<doctype>.index.all.title

<any-chars> may actually any chars that are valid for an I18N key. <doctype> is a placeholder to represent the identifier of a doctype.

In case all documents are removed, the index page needs to be removed manually.

Example Box
titleRequirement Doctype Example

A key used by the Requirement doctype.

Code Block
projectdoc.content.requirement.home.title
projectdoc.content.requirement.index.all.title



Example Box
titleImaginary Fancy Report Doctype

A key for the imaginary Fancy Report doctype of a sample organisation.

Code Block
com.example.myorg.content.fancy-report.home.title
com.example.myorg.content.fancy-report.index.all.title

In order to not clash with keys from projectdoc products, users should use their own key prefixes. These could be defined by the name of their internet domain.



Section
titleSearch

A reliable way to determine if there are documents of a given type in a given space is to execute a search. If the search result is empty, there are none. The drawback is that there is an additional search for each link on a page.

The doctype is derived from the I18N key.

projectdoc-box-pendingcontent-marker
idflags-based-doctype


Version Box
since4.5

Since version 4.5 the calculation of the doctype checks for the Flags property of the doctype homepage.

Code Block
languagetext
projectdoc.doctype-home, projectdoc.all, projectdoc.related.doctype.<doctype>
todo






Section
titleChildren Check

The children check iterates over the children of a the referenced homepage and checks if at least one of them is of the desired doctype.

The doctype is derived from the I18N key.

todo
projectdoc-box-pendingtransclusion-macro
document@self
idsflags-based-doctype




Section
ignore-template-buttonstrue
titleSubordinate Space Properties


Hide From Reader

Create from template
blueprintModuleCompleteKeyde.smartics.atlassian.confluence.smartics-doctype-addon-app:projectdoc-blueprint-doctype-space-property
buttonLabelCreate Space Property

Display Table
doctypespace-property
render-no-hits-as-blanktrue
render-modedefinition
selectName, Short Description
restrict-to-immediate-childrentrue
sort-bySort Key, Name

...

Section
titleResources


Tour
render-no-hits-as-blanktrue
render-as-definition-listtrue
marker-column-property-nameTitle
replace-title-with-nametrue


TitleShort Description
Wiki Link Macro