Add cmdlet Get-IshPublicationOutputContent to return directly linked content objects of this publication
Opened this issue · 0 comments
ddemeyer commented
Quick drop from my personal notes to share an idea on community.sdl.com... Similar to cmdlet Get-IshFolderContent
where you want to know which IshObjects
(either IshPublicationOutput
or IshDocumentObj
) are in an IshFolder
. People want to know which IshDocumentObj
are directly linked to an IshPublicationOutput
.
- Note that I state directly, so only using the baseline, not using any complete mode like LatestAvailable or LatestReleased. So imagine that some sub-map doesn't have a version selected in the baseline of the incoming
IshPublicationOutput
, then any topic used in that sub-map will not be part of the result set of this cmdlet, although the topic might have a version selected in the used baseline. You could say that the topic was unreachable for the given saved baseline. Baseline25.ExpandBaseline
API function implementation parameters likepasLanguages
,pasIllustrationLanguages
,pasResourceLanguages
andpasResolutions
could come from theIshPublicationOutput
fields. No cmdlet parameters option to overwrite yet, although this cmdlet would allow future-AutoCompleteMode
parameters used byBaseline25
sibling functions.
Actions...
Starting point is cmdlet Get-IshPublicationOutputData
which downloads the generated CHM/PDF/ZIP file, but this time we return the used content objects...
- Parameter Set
IshObjectsGroup
but dropFolderPath
- Output to the pipeline are
IshDocumentObj
that are directly reachable through baseline selected versions.- Root map linked xml content objects in the multiple requested languages
- Root map linked image content object in the multiple requested languages and resolutions
- Resource linked xml content objects in the multiple requested languages
- Resource linked image content object in the multiple requested languages and resolutions
- Multi version test data see AddBackgroundTask.Tests.ps1 and AddIshPublicationOutput.Tests.ps1
- Examples like extract all files to file system over Get-IShDocumentObjData or something over Out-GridView or move status to Released
- (Optional parameter
-Language[]
taking value/element to overwrite the default incomingIshPublicationOutput
metadata field values. Although post filtering on the pipeline throughFor-Each { ... }
is the alternative for now.) - (Optional parameter
-Resolution[]
taking value/element to overwrite the default incomingIshPublicationOutput
metadata field values. Although post filtering on the pipeline throughFor-Each { ... }
is the alternative for now.)
Ideas...
- Spike optional parameter
AutoCompleteMode
with the typical LatestAvailable and LatestReleased to go from an ExpandedBaseline into a CompletedBaseline. - Spike in turn if Expanded-and-Completed
IShDocumentObj
- read LogicalIds and versions - could serve as pipeline input for Set-IShBaselineItem. The generated AutoComplete report can be used to explicitly set versions in a Baseline - Spike if this cmdlet plus ObjectType parameter (like Get-IshFolder -FolderTypeFilter) plus New-IshObfuscatedFile can be used to reproduce data structures but with anonymized content.... Perhaps needs the Save-IshDocumentObj and Load-IshDocumentObj