<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://uat.community.rws.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>03 - Developer Forum - Recent Threads</title><link>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum</link><description>Ask the community questions about development with Tridion Docs</description><dc:language>en-US</dc:language><generator>Telligent Community 12 Non-Production</generator><lastBuildDate>Fri, 23 Jan 2026 03:02:12 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum" /><item><title>IshRemoteMcpServer with AI Toolkit or Continue extension in VSCode</title><link>https://uat.community.rws.com/thread/60175?ContentTypeID=0</link><pubDate>Fri, 23 Jan 2026 03:02:12 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:a9093948-1ed2-443c-9239-70e54971abde</guid><dc:creator>Colin Ferguson</dc:creator><slash:comments>2</slash:comments><comments>https://uat.community.rws.com/thread/60175?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/60175/ishremotemcpserver-with-ai-toolkit-or-continue-extension-in-vscode/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;My request: Can you figure out how to get IshRemoteMcpServer to work correctly with either the AI Toolkit or Continue extensions in VSCode?&lt;/p&gt;
&lt;p&gt;Here&amp;#39;s the reason: Our corporate policies prevent us from using most external AI models such as github Copilot or Claude. So to test IshRemoteMcpServer with our internal Tridion Docs environments I have to set up a local LLM instance (ollama in my case) and get it running with VSCode. It&amp;rsquo;s very slow and periodically throws errors (because VSCode throws a fit if it can&amp;#39;t&amp;nbsp;see&amp;nbsp;its native Copilot when chatting is occurring even to another LLM) but it (sort of) works&amp;hellip; I can start the MCP server and see the ishremote commands in the Tools menu. The model seems to recognize them but absolutely will NOT actually execute them. For example, I tell it to start an ishremote session and it shows me how to write powershell code to do it.&lt;/p&gt;
&lt;p&gt;So I thought I&amp;#39;d swap in a more powerful AI with better MCP tools handling. I set up an instance of ollama on a server with a decent GPU, and an LLM (llama2 for now) can now be addressed over port 11434 on that server. The problem now is that there is no way to configure a local LLM server in the native VSCode chat via a URL.&lt;/p&gt;
&lt;p&gt;So I tried installing the AI Toolkit extension, which supports local configs like this.&amp;nbsp;Then I configured IshRemoteMcpServer and&amp;nbsp;started the server via the extension interface. The first time, it times out: Unable to connect to MCP Server &amp;#39;IshRemoteMcpServer&amp;#39;. Error: MCP error -32001: Request timed out. Please verify your mcp.json configuration settings. MCP error -32001: Request timed out. The log file ended with:&amp;nbsp;&lt;/p&gt;
&lt;p&gt;{&amp;quot;Level&amp;quot;:&amp;quot;Info&amp;quot;,&amp;quot;Message&amp;quot;:&amp;quot;Starting MCP Server&amp;quot;,&amp;quot;Timestamp&amp;quot;:&amp;quot;2026-01-22T21:36:02.1876440-05:00&amp;quot;}&lt;/p&gt;
&lt;p&gt;The second time, I get Unable to connect to MCP Server &amp;#39;IshRemoteMcpServer&amp;#39;. Error: Server&amp;#39;s protocol version is not supported: 0.3.0. Please verify your mcp.json configuration settings. Server&amp;#39;s protocol version is not supported: 0.3.0. The log file ended with:&lt;/p&gt;
&lt;p&gt;{&amp;quot;Level&amp;quot;:&amp;quot;Info&amp;quot;,&amp;quot;RequestId&amp;quot;:1,&amp;quot;Request&amp;quot;:&amp;quot;{\&amp;quot;method\&amp;quot;:\&amp;quot;initialize\&amp;quot;,\&amp;quot;params\&amp;quot;:{\&amp;quot;protocolVersion\&amp;quot;:\&amp;quot;2025-06-18\&amp;quot;,\&amp;quot;capabilities\&amp;quot;:{},\&amp;quot;clientInfo\&amp;quot;:{\&amp;quot;name\&amp;quot;:\&amp;quot;vsc-aitoolkit-IshRemoteMcpServer\&amp;quot;,\&amp;quot;version\&amp;quot;:\&amp;quot;0.28.2\&amp;quot;}},\&amp;quot;jsonrpc\&amp;quot;:\&amp;quot;2.0\&amp;quot;,\&amp;quot;id\&amp;quot;:1}&amp;quot;,&amp;quot;Message&amp;quot;:&amp;quot;Processing request&amp;quot;,&amp;quot;Timestamp&amp;quot;:&amp;quot;2026-01-22T21:36:02.2585314-05:00&amp;quot;}&lt;/p&gt;
&lt;p&gt;I tried the same exercise with the Continue extension and got exactly the same behavior.&lt;/p&gt;
&lt;p&gt;Log file for the second case attached. The log file for the first case looks exactly the same, except it ends one line earlier.&lt;a href="https://uat.community.rws.com/cfs-file/__key/communityserver-discussions-components-files/215/IshRemoteMcpServer.log"&gt;uat.community.rws.com/.../IshRemoteMcpServer.log&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Use ISHRemote to iterate through folders of type ISHModule excluding folders with keywords</title><link>https://uat.community.rws.com/thread/60003?ContentTypeID=0</link><pubDate>Tue, 30 Dec 2025 13:09:02 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:18387ffa-fc3d-47dc-8b72-bc427d3cce3c</guid><dc:creator>Ann Jensen</dc:creator><slash:comments>1</slash:comments><comments>https://uat.community.rws.com/thread/60003?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/60003/use-ishremote-to-iterate-through-folders-of-type-ishmodule-excluding-folders-with-keywords/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I am writing a script to collect list of topic GUIDs that live within any child folder of a give root folder in Tridion Docs but I want to exclude any folders that have keywords in their names like &amp;#39;archive&amp;#39;, &amp;#39;test&amp;#39;, and &amp;#39;exclude&amp;#39;.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$ishFolders = Get-IshFolder -IshSession $ishSession -FolderPath $ishFolder -FolderTypeFilter @(&amp;quot;ISHModule&amp;quot;) -Recurse |
Where-Object -Property IshFolderType -EQ -Value ISHModule |
Where-Object {
$_.fname -notlike &amp;quot;*Retire*&amp;quot; -and
$_.fname -notlike &amp;quot;*Deprecate*&amp;quot; -and
$_.fname -notlike &amp;quot;*Test*&amp;quot; -and
$_.fname -notlike &amp;quot;*Admin*&amp;quot; -and
$_.fname -notlike &amp;quot;*Delete*&amp;quot; -and
$_.fname -notlike &amp;quot;*Obsolete*&amp;quot; -and
$_.fname -notlike &amp;quot;*Duplicated*&amp;quot; -and
$_.fname -notlike &amp;quot;*Archive*&amp;quot; -and
$_.fname -notlike &amp;quot;*Not in use*&amp;quot; -and
$_.fname -notlike &amp;quot;*do not use*&amp;quot;
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;On execution, I am still getting results of topics that live deep within folders that have keyword &amp;#39;archive&amp;#39; in them. The folder with the &lt;span&gt;keyword &amp;#39;archive&amp;#39; in&amp;nbsp;its name is&amp;nbsp;not of type ISHModule and I am not sure how to exclude these parent folders and all their child folders.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Any advice appreciated,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Regards,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Ann&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Using ishRemote, how can I get the DITA OT log file contents in a Get-IshEvent request?</title><link>https://uat.community.rws.com/thread/59408?ContentTypeID=0</link><pubDate>Thu, 23 Oct 2025 20:57:10 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:1c9a265d-3f3c-40d3-805c-2f5b63b7570f</guid><dc:creator>Colin Ferguson</dc:creator><slash:comments>0</slash:comments><comments>https://uat.community.rws.com/thread/59408?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/59408/using-ishremote-how-can-i-get-the-dita-ot-log-file-contents-in-a-get-ishevent-request/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;I dropped my question in the wrong forum, so I&amp;#39;m trying again :(&lt;/p&gt;
&lt;p&gt;I wrote this little PowerShell routine to get the log for a specific event. I can get the detail, but I cannot figure out how to get the contents of the DITA-OT log file. Can you help me?&lt;/p&gt;
&lt;p&gt;I tried looking at IshEventData for the DITAOTLogFile event but the byte array is 0 in length.&lt;/p&gt;
&lt;pre&gt;$targetServer = &amp;quot;xxxxxx&amp;quot;&lt;br /&gt;&lt;br /&gt;if($ishSession -eq $null) {&lt;br /&gt; $ishSession = New-IshSession -WsBaseUrl $targetServer&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;$requestedMetadata = Set-IshRequestedMetadataField -IshSession $ishSession -Name &amp;quot;EVENTID&amp;quot; -Level &amp;quot;Progress&amp;quot; |&lt;br /&gt; Set-IshRequestedMetadataField -IshSession $ishSession -Name &amp;quot;EVENTTYPE&amp;quot; -Level &amp;quot;Progress&amp;quot; |&lt;br /&gt; Set-IshRequestedMetadataField -IshSession $ishSession -Name &amp;quot;EVENTDATATYPE&amp;quot; -Level &amp;quot;Detail&amp;quot; |&lt;br /&gt; Set-IshRequestedMetadataField -IshSession $ishSession -Name &amp;quot;DETAILID&amp;quot; -Level &amp;quot;Detail&amp;quot;&lt;br /&gt;&lt;br /&gt;$metadataFilter = Set-IshMetadataFilterField -IshSession $ishSession -Name &amp;quot;DESCRIPTION&amp;quot; -Level &amp;quot;Progress&amp;quot; -FilterOperator Like -Value &amp;quot;Publish process for GUID-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx=3=HTMLOutput=en-us&amp;quot;&lt;br /&gt;&lt;br /&gt;$eventLog = Get-IshEvent -IshSession $ishSession -RequestedMetadata $requestedMetadata -EventTypes &amp;quot;PUBLISH&amp;quot; -MetadataFilter $metadataFilter&lt;br /&gt;&lt;br /&gt;$eventLog&lt;/pre&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Using ISHRemote to Identify Where Topics Are Used in Publications</title><link>https://uat.community.rws.com/thread/59319?ContentTypeID=0</link><pubDate>Thu, 16 Oct 2025 08:23:41 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:9507fb46-7e7b-46ef-bdb7-b9b80dd3e34b</guid><dc:creator>Satoru Nakamura</dc:creator><slash:comments>2</slash:comments><comments>https://uat.community.rws.com/thread/59319?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/59319/using-ishremote-to-identify-where-topics-are-used-in-publications/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;&lt;span data-contrast="auto"&gt;Hello&amp;nbsp;&lt;/span&gt;&lt;span data-contrast="auto"&gt;community,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;I would like to find all publications that reference a specific topic (object) using ISHRemote.&lt;br /&gt;If there&amp;#39;s a cmdlet in the current ISHRemote version that supports this, I&amp;rsquo;d really appreciate your help.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;m aware that the Publication Manager has a &amp;ldquo;Where Used&amp;rdquo; feature.&lt;br /&gt; However, since I need to check a large number of topics, I hope to automate this process using a PowerShell script.&lt;/p&gt;
&lt;p&gt;Background&lt;br /&gt;In Tridion Docs, there are multiple topics with identical content but different GUIDs.&lt;br /&gt;I want to identify which publications are using these topics.&lt;/p&gt;
&lt;p&gt;I have already downloaded the files of topic from the Web Client search to my local environment.&lt;/p&gt;
&lt;p&gt;Environment:&lt;br /&gt;ISHRemote Version: 8.1.0&lt;br /&gt;Tridion Docs Version: 15.2&lt;br /&gt;&lt;br /&gt;Thanks as always for developing such powerful tools and for supporting the community.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>LastLogin data obtained by Find-IshUser cmdlet</title><link>https://uat.community.rws.com/thread/59301?ContentTypeID=0</link><pubDate>Wed, 15 Oct 2025 02:53:07 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:493fcea4-aed9-420f-ab2c-b4d8287ab040</guid><dc:creator>Naoki Hirai</dc:creator><slash:comments>2</slash:comments><comments>https://uat.community.rws.com/thread/59301?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/59301/lastlogin-data-obtained-by-find-ishuser-cmdlet/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Our company upgraded TD from TD14 to 15.2.0 last month (i.e. September, 2025).&lt;/p&gt;
&lt;p&gt;I was monitoring the number of active users by gathering last login information with the PowerShell script as follows:&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;Find-IshUser -IshSession $ishSession | Select-Object username,fishemail,fusergroup,fishlastloginon | sort @{Expression=&amp;quot;username&amp;quot;;Descending=$false} | Export-Csv &amp;lt;CSV file path&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;Before upgrading TD, we were using ISHSTS for login authentication. Now, we are using a cloud-based IdP for login authentication. When I executed the above PowerShell script today, I realized the&amp;nbsp;fishlastloginon does not reflect the last login date logged in using the&amp;nbsp;cloud-based IdP.&amp;nbsp;It is believed that the last login date and time collected by the ISHRemote Find-IshUser cmdlet only pertains to login authentication using ISHSTS and Tridion Docs identity provider.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;Could you let me how to obtain the last login date and time when logging in using both external IdP and Tridion Docs identity provider?&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;I&amp;#39;m using ISHRemove 8.1.0.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;Thank you in advance for your help.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;Kind regards,&lt;br /&gt;Naoki&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Updating metadata on the publication version level</title><link>https://uat.community.rws.com/thread/58870?ContentTypeID=0</link><pubDate>Thu, 28 Aug 2025 22:47:31 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:21189192-2975-4f20-8bef-8a9f019d3584</guid><dc:creator>Charles Craig</dc:creator><slash:comments>5</slash:comments><comments>https://uat.community.rws.com/thread/58870?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/58870/updating-metadata-on-the-publication-version-level/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I have the following use case I need to implement ASAP. I have several large lists of&amp;nbsp;pubs - the lists contain the GUIDs, the relevant versions, and metadata values that I need to write into a custom metadata field - FINFAPRODUCTMETADATA.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I&amp;#39;ve tried investigating IshRemote, but&amp;nbsp;I haven&amp;#39;t been able to accomplish this - I&amp;#39;ve been poring over the help files and any examples I can find here in the dev forum, but to no avail so far.&amp;nbsp;Can this be done with IshRemote&amp;nbsp;cmdlets? Or would it be better/easier to use the API wrapper, eg calls like&amp;nbsp;&lt;span&gt;$mySession.PublicationOutput25.Find?&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Note I don&amp;#39;t have any issues with general PS coding, eg the parsing of CSV files and such - the only problem I&amp;#39;m unable to solve is finding the correct way to find the objects in Tridion and then update the metadata field.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;One last thing I was hoping for wrt to this project... I also need to update the metadata of any pub versions that are later than the version I&amp;#39;m targeting. I&amp;#39;m aware that the Version field is a text field - I can write my own comparator for that. I&amp;#39;m just hoping that someone could point me to a working code example for listing all the versions of a publication.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I&amp;#39;m on Tridion Docs 14sp4, btw, in case that matters. Thanks for any help!&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>In tridion docs, how to obtain user's name within the execution of WriteMetadataPlugin</title><link>https://uat.community.rws.com/thread/58768?ContentTypeID=0</link><pubDate>Wed, 20 Aug 2025 09:08:58 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:2e9e6620-49e4-43f5-838a-ceea2f4e8181</guid><dc:creator>Lihao Lei</dc:creator><slash:comments>1</slash:comments><comments>https://uat.community.rws.com/thread/58768?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/58768/in-tridion-docs-how-to-obtain-user-s-name-within-the-execution-of-writemetadataplugin/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Product: Tridion Docs 13.0.4630.2&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;When the user Jack is setting metadata of certain language object using desktop client,&amp;nbsp;how does&amp;nbsp;WriteMetadataPlugin capture the username Jack?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;My situation: If Jack sets metadata (this metadata field is Language level) to certain language object, the WriteMetadataPlugin sets the same metadata to all language objects under the same GUID, but it causes recursive plugin calling, therefore I&amp;#39;m considering to distinguish from user-metadatasetting to plugin-metadatasetting, which requires capturing username.&lt;/p&gt;
&lt;p&gt;(Given that the metadata field is not convenient to transformed into Logical level, nor convenient to set up a new Logical metadata field.)&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Any idea of how to execute dita install command instead of ant -f integrator in IshRunDITAOT PostProcessPlugin on Tridion 15?</title><link>https://uat.community.rws.com/thread/58571?ContentTypeID=0</link><pubDate>Mon, 04 Aug 2025 15:40:51 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:47795a2a-f1eb-45eb-8819-839d07f4e060</guid><dc:creator>SDL CMS Support</dc:creator><slash:comments>0</slash:comments><comments>https://uat.community.rws.com/thread/58571?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/58571/any-idea-of-how-to-execute-dita-install-command-instead-of-ant--f-integrator-in-ishrunditaot-postprocessplugin-on-tridion-15/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;We have a new DITA OT 4.x.x version configured and with the new version of DITA OT, ant -f integrator command is deprecated and suggests to run dita install command.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;We need to have dost.jar and dost-configuration.jar file to be updated whenever there is any change pushed and build ditaot files.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Any ideas or solution suggestion would be really helpful here&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Published file download error</title><link>https://uat.community.rws.com/thread/58502?ContentTypeID=0</link><pubDate>Sat, 26 Jul 2025 04:22:24 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:12024f67-eef6-40e6-a3b1-2ad43674160e</guid><dc:creator>Naoki Hirai</dc:creator><slash:comments>1</slash:comments><comments>https://uat.community.rws.com/thread/58502?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/58502/published-file-download-error/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi all,&lt;/p&gt;
&lt;p&gt;I&amp;#39;m evaluating TD15.1.2. Until a couple of days ago, there were no issues, and it was working properly.&lt;/p&gt;
&lt;p&gt;However, it is not possible to download a published deliverable from the repository with Organize Space now. When I tried to download the file, it said, &amp;quot;Couldn&amp;#39;t download - Needs authentication.&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:600px;max-width:900px;" alt="Browser downloads panel showing two files with the message 'Couldn't download - Needs authentication' for both files." src="https://uat.community.rws.com/resized-image/__size/1800x1200/__key/communityserver-discussions-components-files/215/DownloadError.png" /&gt;&lt;/p&gt;
&lt;p&gt;The published file can be downloaded with Publication Manager. I looked into the Trisoft.InfoShare.WebApi_xxx file and found the following error:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;02:18:33.8549 Info (PID 1324:10) 00-57d4643db2853ce50683318b8d6a5251-de43ed2a85c9f485-00 a:AuthenticationTypes.Federation:CloudGateUNO:naoki.hirai /ISHWS/Api/v0/Publications/ByLanguageCardId/2982351/Form?formId=Properties_Update_ISHPublicationOutput&amp;amp;clientName=WebClients&amp;amp;clientName=OrganizeSpace Microsoft.AspNetCore.Hosting.HostingApplicationDiagnostics.LogRequestFinished Request finished HTTP/2 GET &lt;a href="https://sdlcm2-uat.intra.kbt-global.com/ISHWS/Api/v0/Publications/ByLanguageCardId/2982351/Form?formId=Properties_Update_ISHPublicationOutput&amp;amp;clientName=WebClients&amp;amp;clientName=OrganizeSpace"&gt;sdlcm2-uat.intra.kbt-global.com/.../Form&lt;/a&gt; - 200 - application/json;+charset=utf-8 101.3074ms [] &lt;/code&gt;&lt;br /&gt;&lt;code&gt;02:18:38.2306 Info (PID 1324:10) 00-004f94f67508548411b4cb7b5cb3eab7-7b7d8e389970846b-00 na:: /ISHWS/Api/v0/Publications/ByLanguageCardId/2982351/Content?t=1753496318203 Microsoft.AspNetCore.Hosting.HostingApplicationDiagnostics.LogRequestStarting Request starting HTTP/2 GET &lt;a href="https://sdlcm2-uat.intra.kbt-global.com/ISHWS/Api/v0/Publications/ByLanguageCardId/2982351/Content?t=1753496318203"&gt;sdlcm2-uat.intra.kbt-global.com/.../Content&lt;/a&gt; - - - [] &lt;/code&gt;&lt;br /&gt;&lt;code&gt;02:18:38.2306 Error (PID 1324:10) 00-004f94f67508548411b4cb7b5cb3eab7-7b7d8e389970846b-00 na:: /ISHWS/Api/v0/Publications/ByLanguageCardId/2982351/Content?t=1753496318203 Trisoft.Identity.Web.Policy.EnabledInfoShareUserAuthorizationHandler.HandleRequirementAsync The user &amp;#39;(null)&amp;#39; is not a valid InfoShare user. [] &lt;/code&gt;&lt;br /&gt;&lt;code&gt;Trisoft.Utilities.Common.Exceptions.RequiredParameterNotFoundException: The required parameter &amp;quot;externalId&amp;quot; was not found. The external identifier cannot be derived from the identity. The claims &amp;#39;&lt;a href="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name&amp;#39;"&gt;schemas.xmlsoap.org/.../name&amp;#39;&lt;/a&gt; and &amp;#39;&lt;a href="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier&amp;#39;"&gt;schemas.xmlsoap.org/.../nameidentifier&amp;#39;&lt;/a&gt; are missing.&lt;/code&gt;&lt;br /&gt;&lt;code&gt; at Trisoft.InfoShare.Core.Identity.Services.UserContextAuthenticationService.AuthenticateExternal(String applicationName, String externalId, IEnumerable`1 externalClaims, String authenticationType)&lt;/code&gt;&lt;br /&gt;&lt;code&gt; at Trisoft.InfoShare.Core.Identity.Services.UserContextAuthenticationService.AuthenticateFromPrincipal(ClaimsPrincipal principal)&lt;/code&gt;&lt;br /&gt;&lt;code&gt; at Trisoft.InfoShare.Core.Identity.Services.UserContextClaimsConverterService.ConvertFromClaims(ClaimsPrincipal principal)&lt;/code&gt;&lt;br /&gt;&lt;code&gt; at Trisoft.Identity.Web.Policy.EnabledInfoShareUserAuthorizationHandler.HandleRequirementAsync(AuthorizationHandlerContext context, EnabledInfoShareUserAuthorizationRequirement requirement)&lt;/code&gt;&lt;br /&gt;&lt;code&gt;AsyncMethodBuilderCore.Start =&amp;gt; &amp;lt;HandleAsync&amp;gt;d__0.MoveNext =&amp;gt; EnabledInfoShareUserAuthorizationHandler.HandleRequirementAsync&lt;/code&gt;&lt;br /&gt;&lt;code&gt;02:18:38.2439 Info (PID 1324:10) 00-004f94f67508548411b4cb7b5cb3eab7-7b7d8e389970846b-00 na:: /ISHWS/Api/v0/Publications/ByLanguageCardId/2982351/Content?t=1753496318203 Microsoft.AspNetCore.Hosting.HostingApplicationDiagnostics.LogRequestFinished Request finished HTTP/2 GET &lt;a href="https://sdlcm2-uat.intra.kbt-global.com/ISHWS/Api/v0/Publications/ByLanguageCardId/2982351/Content?t=1753496318203"&gt;sdlcm2-uat.intra.kbt-global.com/.../Content&lt;/a&gt; - 401 - - 13.3304ms []&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;It seems that an externalId claim is not being transferred from the IdP. Therefore, I captured the network log using a development tool in a web browser. The captured data is as follows, and there isn&amp;#39;t an externalId claim:&lt;/p&gt;
&lt;div class="scriptor-paragraph"&gt;&lt;code&gt;&lt;span&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;quot;amr&amp;quot;: &amp;quot;external&amp;quot;,&lt;br /&gt;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;quot;sid&amp;quot;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&amp;quot;9DB1BD68FECD174C65A119C5DCD33CBC&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div class="scriptor-paragraph"&gt;&lt;code&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;quot;sub&amp;quot;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&amp;quot;CloudGateUNO:naoki.hirai&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div class="scriptor-paragraph"&gt;&lt;code&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;quot;auth_time&amp;quot;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&amp;quot;1753500714&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div class="scriptor-paragraph"&gt;&lt;code&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;quot;idp&amp;quot;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&amp;quot;CloudGateUNO&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div class="scriptor-paragraph"&gt;&lt;code&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;quot;name&amp;quot;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&amp;quot;naoki.hirai&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div class="scriptor-paragraph"&gt;&lt;code&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;quot;bff:logout_url&amp;quot;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&amp;quot;/ISHCS/OrganizeSpace/bff/logout?sid=9DB1BD68FECD174C65A119C5DCD33CBC&amp;quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div class="scriptor-paragraph"&gt;&lt;code&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;quot;bff:session_expires_in&amp;quot;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;2631&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div class="scriptor-paragraph"&gt;&lt;code&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;quot;bff:session_state&amp;quot;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&amp;quot;MVSpq4mPOqFXNkDfFeB3_CiC1gls3PWy63uyV2_iCWw.3A703955D8124F7C0216876E5013ECCB&amp;quot;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div class="scriptor-paragraph"&gt;&lt;code&gt;&lt;span&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;p&gt;&lt;span style="font-family:inherit;"&gt;Since I have to change user properties for many users to enable them to log in with an external IdP, which is CloudGate UNO, I created a PowerShell script similar to this:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;foreach ($user in $FilteredUserList) {&lt;br /&gt; $user = Set-IshMetadataField -IshSession $ishSession -IshObject $user -Name FISHUSERTYPE -Value &amp;quot;External&amp;quot;&lt;br /&gt; $user = Set-IshMetadataField -IshSession $ishSession -IshObject $user -Name FISHEXTERNALID -Value (&amp;quot;CloudGateUNO:&amp;quot; + $user.USERNAME)&lt;br /&gt; $user = Set-IshUser -IshSession $ishSession -IshObject $user&lt;br /&gt;}&lt;/p&gt;
&lt;p&gt;Based on what I see in the Settings / Users of Organize Space, the External IDs are set to the correct values. But, I&amp;#39;m concerned that this PowerShell script may have caused the issue.&lt;/p&gt;
&lt;p&gt;Thank you in advance for your help.&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;br /&gt;Naoki&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Getting an error after logging into 14.2 Content Manager</title><link>https://uat.community.rws.com/thread/58139?ContentTypeID=0</link><pubDate>Thu, 19 Jun 2025 19:43:45 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:d3da5b43-cbf8-4bde-a7fb-1e59714c80e9</guid><dc:creator>Akheil Jain</dc:creator><slash:comments>1</slash:comments><comments>https://uat.community.rws.com/thread/58139?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/58139/getting-an-error-after-logging-into-14-2-content-manager/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;11:37:55.5438 Error 23 00003 a:UC:Admin Trisoft.Utilities.Logging.Web.Modules.ErrorModule.OnContextError [] &lt;br /&gt;System.IdentityModel.Services.FederationException: ID3206: A SignInResponse message may only redirect within the current web application: &amp;#39;/ISHCM&amp;#39; is not allowed.&lt;br /&gt; at System.IdentityModel.Services.WSFederationAuthenticationModule.SignInWithResponseMessage(HttpRequestBase request)&lt;br /&gt; at System.IdentityModel.Services.WSFederationAuthenticationModule.OnAuthenticateRequest(Object sender, EventArgs args)&lt;br /&gt; at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()&lt;br /&gt; at System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step)&lt;br /&gt; at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean&amp;amp; completedSynchronously)&lt;br /&gt;HttpApplication.RaiseOnError =&amp;gt; EventHandler.Invoke =&amp;gt; ErrorModule.OnContextError&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:600px;max-width:900px;" src="https://uat.community.rws.com/resized-image/__size/1800x1200/__key/communityserver-discussions-components-files/215/pastedimage1750362138363v1.png" alt="Screenshot of the RWS Tridion Docs interface showing the Welcome Admin page with Favorites section and Quick Links on the right." /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;As soon as I click on Conent Manger on the left hand pane, I get&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:600px;max-width:900px;" src="https://uat.community.rws.com/resized-image/__size/1800x1200/__key/communityserver-discussions-components-files/215/pastedimage1750362183238v2.png" alt="Screenshot displaying an Error 500 - InternalServerError message with a sad face plug icon and the text SystemFailure." /&gt;&lt;/p&gt;
&lt;p&gt;Only error in the log is the one at the start of this question. Please help. TIA&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>How to use the API  to get a list of publications with conditions set on them.</title><link>https://uat.community.rws.com/thread/58084?ContentTypeID=0</link><pubDate>Fri, 13 Jun 2025 12:56:49 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:e70391b0-fa36-476a-880d-0de20aa8ea2c</guid><dc:creator>Akheil Jain</dc:creator><slash:comments>2</slash:comments><comments>https://uat.community.rws.com/thread/58084?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/58084/how-to-use-the-api-to-get-a-list-of-publications-with-conditions-set-on-them/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;We are troubleshooting some issues in our 15.1.2 environment and are in need to find a list of publications which have conditions set on them vs. contain content with conditions. Couldn&amp;#39;t figure out which field or class to use from the API to achieve this. TIA&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>ISHRemote to detect end of publishing - cmdlet Wait-IshPublicationOutput?</title><link>https://uat.community.rws.com/thread/57933?ContentTypeID=0</link><pubDate>Fri, 30 May 2025 01:52:11 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:61b25c06-e5b1-4c83-b412-532b878e142d</guid><dc:creator>Mark Giffin</dc:creator><slash:comments>1</slash:comments><comments>https://uat.community.rws.com/thread/57933?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/57933/ishremote-to-detect-end-of-publishing---cmdlet-wait-ishpublicationoutput/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;With ISHRemote, I&amp;#39;m finally getting around to trying to detect the end of publishing automatically (instead of sleeping for nn number of seconds). I&amp;#39;m using Tridion Docs version 15 now, and ISHRemote 8.1.0.&lt;br /&gt;&lt;br /&gt;I asked a couple years ago here:&lt;br /&gt;&lt;a href="https://community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/38137/how-to-check-for-when-a-publishing-job-is-complete"&gt;community.rws.com/.../how-to-check-for-when-a-publishing-job-is-complete&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And there was your proposed new cmdlet:&lt;br /&gt;&lt;a href="https://github.com/RWS/ISHRemote/issues/72"&gt;github.com/.../72&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Has anything changed? Or should I follow your former instructions?&lt;br /&gt;&lt;br /&gt;Thanks,&lt;br /&gt;Mark&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Updating Powershell ISHRemote script for use with Tridion Docs version 15</title><link>https://uat.community.rws.com/thread/57931?ContentTypeID=0</link><pubDate>Thu, 29 May 2025 20:04:03 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:bef96905-e590-4d95-ad86-57b7634e78fe</guid><dc:creator>Mark Giffin</dc:creator><slash:comments>1</slash:comments><comments>https://uat.community.rws.com/thread/57931?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/57931/updating-powershell-ishremote-script-for-use-with-tridion-docs-version-15/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;&lt;span style="font-size:150%;"&gt;I wrote a Powershell script using the ISHRemote module a few years ago, and it&amp;#39;s been working fine with Tridion Docs version 14. I just upgraded the script to work with Tridion Docs version 15. The main change was to use ClientId / ClientSecret instead of username / password to start a session. It seems to work fine but I had a few questions to make sure it will be good for a while.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="font-size:150%;"&gt;It was written for Powershell version 5.1. Will it work with the latest Powershell version (7.5)?&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size:150%;"&gt;I&amp;#39;m using ISHRemote version 8.1.0. Is there any need to update ISHRemote? It works with Tridion Docs v15.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size:150%;"&gt;Does ISHremote run over an encrypted channel? Is the client secret sent over an encrypted channel?&lt;/span&gt;&lt;span style="font-size:150%;"&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="font-size:150%;"&gt;Thanks,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:150%;"&gt;Mark Giffin&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:150%;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Can I check for an ishcondition value using like or matches?</title><link>https://uat.community.rws.com/thread/57812?ContentTypeID=0</link><pubDate>Tue, 20 May 2025 12:11:52 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:77b7e6d5-72c0-44b5-9768-ad5ab79b3687</guid><dc:creator>Ann Jensen</dc:creator><slash:comments>0</slash:comments><comments>https://uat.community.rws.com/thread/57812?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/57812/can-i-check-for-an-ishcondition-value-using-like-or-matches/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I am doing some customizations in our Tridion Docs&amp;nbsp;&lt;strong&gt;Publish plug-in XML settings&lt;/strong&gt;&lt;span&gt;&amp;nbsp;and want to write a check for FISHOUTPUTFORMATNAME that checks for dynamically generated output format names.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I know it contains a value ABC within the dynamically generated name but can I write XML that checks for this?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;In XSLT I use the &lt;em&gt;contains&lt;/em&gt; function e.g. contains($outputFormatName, &amp;#39;ABC&amp;#39;)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;but how can I do this in&amp;nbsp;Tridion Docs&amp;nbsp;&lt;strong&gt;Publish plug-in XML settings?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Any advice appreciated,&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;Ann&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>How to find all image objects with multi-language set to it, using ishremote?</title><link>https://uat.community.rws.com/thread/57778?ContentTypeID=0</link><pubDate>Fri, 16 May 2025 08:12:13 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:8bc4a6a8-9729-4f0c-a58e-48b0b5c8f892</guid><dc:creator>Lihao Lei</dc:creator><slash:comments>3</slash:comments><comments>https://uat.community.rws.com/thread/57778?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/57778/how-to-find-all-image-objects-with-multi-language-set-to-it-using-ishremote/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;I&amp;#39;m trying to use ishremote to FIND all images objects in TridionDocs, which the field DOC-LANGUAGE&amp;#39;s value is multiple value (e.g. &amp;quot;zh_CN, en_US, es&amp;quot;) rather than single value (e.g. &amp;quot;zh_CN&amp;quot;).&lt;/p&gt;
&lt;p&gt;If I use &lt;code&gt;Set-IshMetadataFilterField -Name &amp;#39;DOC-LANGUAGE&amp;#39;-level &amp;#39;Lng&amp;#39; -ValueType &amp;#39;Value&amp;#39; -FilterOperator &amp;#39;In&amp;#39; -Value &amp;#39;zh_CN, en_US, es&amp;#39;&lt;/code&gt;, the image object with single language value will also be returned, which is not expected.&lt;/p&gt;
&lt;p&gt;Due to we now have a large quantity of image objects with multivalue DOC-LANGUAGE, fetch the whole image objects then inspect every object&amp;#39;s&amp;nbsp; DOC-LANGUAGE property, is actually time-consuming.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Is there any good advices on composing powershell scripts?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>How can I bulk update metadata fields using ISHRemote</title><link>https://uat.community.rws.com/thread/57753?ContentTypeID=0</link><pubDate>Wed, 14 May 2025 09:04:17 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:8432e379-48b6-4552-ae72-4b6de5efdaff</guid><dc:creator>David Winnie</dc:creator><slash:comments>3</slash:comments><comments>https://uat.community.rws.com/thread/57753?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/57753/how-can-i-bulk-update-metadata-fields-using-ishremote/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p class="" data-start="61" data-end="140"&gt;Hi all,&lt;br data-start="166" data-end="169" /&gt; I&amp;#39;m looking to update metadata fields (e.g., conditions or custom fields) across a large number of topics in Tridion Docs. Is there a recommended way to do this efficiently using ISHRemote?&lt;/p&gt;
&lt;p class="" data-start="360" data-end="388"&gt;Thanks in advance!&lt;/p&gt;
&lt;p class="" data-start="360" data-end="388"&gt;Karen&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>ISHRemote - How to use Set-IshMetadataFilterField to retrieve topics that match an array of values from an LOV-based field</title><link>https://uat.community.rws.com/thread/57396?ContentTypeID=0</link><pubDate>Thu, 10 Apr 2025 17:41:33 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:549af320-c1c4-4a14-8c5a-2d62c59aaaac</guid><dc:creator>Ann Jensen</dc:creator><slash:comments>1</slash:comments><comments>https://uat.community.rws.com/thread/57396?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/57396/ishremote---how-to-use-set-ishmetadatafilterfield-to-retrieve-topics-that-match-an-array-of-values-from-an-lov-based-field/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I am struggling to write an ISHRemote script that will let me specify a range of values that are from an LOV e.g.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I can use following to get topic that matches one of the LOV values&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;Set-IshMetadataFilterField -Level Version -Name PRODUCT -ValueType Element -Value MYPRODUCT&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;But I want to retrieve topics that match an array of these LOV values using something like&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;Set-IshMetadataFilterField -Level Version -Name PRODUCT -ValueType Element -FilterOperator In MYPRODUCT1, MYPRODUCT2, MYPRODUCT3&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Any advice appreciated,&lt;br /&gt;Regards,&lt;/p&gt;
&lt;p&gt;Ann&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Automating the creation of translation jobs using PowerShell (ISHRemote)</title><link>https://uat.community.rws.com/thread/57276?ContentTypeID=0</link><pubDate>Tue, 01 Apr 2025 15:12:16 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:5657f0f9-403c-462b-86b6-b6f3d0cf65c5</guid><dc:creator>Pia B&amp;#228;ckman</dc:creator><slash:comments>2</slash:comments><comments>https://uat.community.rws.com/thread/57276?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/57276/automating-the-creation-of-translation-jobs-using-powershell-ishremote/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;We have a goal to automate the creation of translation jobs since we create so many of them. If anyone have already done this and wants to share how to do this, it would be truly great!&lt;/p&gt;
&lt;p&gt;I struggle with the basics. I&amp;nbsp;do not even succeed to query for a Translation Job.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a class="ui-contentpeek internal-link view-user-profile" href="https://uat.community.rws.com/members/ddemeyer" data-contentid="a3caa72dc2b246d5b6b9d986fd874aeb" data-contenttypeid="e9ed411860ed4f2ba0265705b8793d05"&gt;Dave De Meyer&lt;/a&gt;&amp;nbsp;as I understand, the&amp;nbsp;cmdlets for translation jobs (&lt;a href="https://github.com/RWS/ISHRemote/blob/master/BACKLOG.MD#ishremote-034"&gt;ISHRemote/BACKLOG.MD at master &amp;middot; RWS/ISHRemote &amp;middot; GitHub&lt;/a&gt;) are not yet developed, right? Is there a time plan for when these will be available? It would really&amp;nbsp;help us to have them.&lt;/p&gt;
&lt;p&gt;I have tried something I found on the forum using&amp;nbsp;&lt;span&gt;$ishSession.TranslationJob25.Find&amp;nbsp;but I got an error. We are using Tridion Docs 15.1 and I am using PowerShell 5.1. I do succeed getting baselines for example using the ish cmdlets.&amp;nbsp;I have been checking&amp;nbsp;&lt;a href="https://docs.rws.com/en-US/tridion-docs-14-sp4-992513/translationjob-2.5-find-83446"&gt;TranslationJob 2.5 Find&lt;/a&gt;&amp;nbsp;but it is not enough for me to understand how to formulate the query. It would be really helpful with some examples.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Is there a way to search for the existing translation jobs, and if so how? Since we have a lot of jobs, I would like to restrict the search with the target language and a date span.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Also, as mentioned. The goal for us is to create a new translation job using PowerShell, filling in all&amp;nbsp;properties (Name, Description, Required date, Source language, Translation template, target languages, Comments, translation coordinator)&amp;nbsp;and adding one or more publications to the job. Getting examples of this would really help us to move further with this topic.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Hoping for some community support! Thanks!&amp;nbsp;&lt;span class="emoticon" data-url="https://uat.community.rws.com/cfs-file/__key/system/emoji/1f642.svg" title="Slight smile"&gt;&amp;#x1f642;&lt;/span&gt;&lt;span class="emoticon ui-tip" title="Slight smile"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Kind regards,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Pia&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Get names of all available metadata fields for an object type</title><link>https://uat.community.rws.com/thread/55766?ContentTypeID=0</link><pubDate>Wed, 04 Dec 2024 18:18:54 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:93e7c6ac-540c-4d80-a545-afc828b28de7</guid><dc:creator>Colin Ferguson</dc:creator><slash:comments>1</slash:comments><comments>https://uat.community.rws.com/thread/55766?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/55766/get-names-of-all-available-metadata-fields-for-an-object-type/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi! When working with ishremote I&amp;#39;m often left guessing exactly what the name of a particular metadata field is, what its type is, etc. At one point I remember a utility buried deep in the distribution folders that would provide a list of all available metadata fields for each object type. Unfortunately this requires an administrator to run for you, and the results are not easily accessible programmatically. Is there a way within ishremote that I could get a list of all metadata fields for an object type, their types (element vs. value) and what their values are?&lt;/p&gt;
&lt;p&gt;Thanks!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Manipulating conditions for publications using ISHRemote</title><link>https://uat.community.rws.com/thread/55633?ContentTypeID=0</link><pubDate>Wed, 27 Nov 2024 07:06:03 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:73298d19-7bca-422a-ac25-71a67e1133bc</guid><dc:creator>Naoki Hirai</dc:creator><slash:comments>2</slash:comments><comments>https://uat.community.rws.com/thread/55633?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/55633/manipulating-conditions-for-publications-using-ishremote/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;I want to set conditions for a bunch of publications at once using a script. I looked into the Cmdlet list of ISHRemote, but I couldn&amp;#39;t find one that can manipulate a publication&amp;#39;s conditions. Is it possible to manipulate publication conditions using ISHRemote?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>How to include a XML snippet into a XML document</title><link>https://uat.community.rws.com/thread/55453?ContentTypeID=0</link><pubDate>Fri, 15 Nov 2024 08:05:22 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:c6971f08-c23e-4c7b-a816-fa15d07e4f57</guid><dc:creator>Jacob Kirk</dc:creator><slash:comments>1</slash:comments><comments>https://uat.community.rws.com/thread/55453?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/55453/how-to-include-a-xml-snippet-into-a-xml-document/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;I am using XML files as configuration files for my PowerShell scripts based on the blog post found at rkeithhill.wordpress.com. Some of my scripts shares the same settings and I would like to include those settings from an external XML file. What I have done is:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; standalone=&amp;quot;no&amp;quot; ?&amp;gt;
&amp;lt;!DOCTYPE doc [
&amp;lt;!ENTITY shareddata SYSTEM &amp;quot;shared.xml&amp;quot;&amp;gt;
]&amp;gt;
&amp;lt;configuration &amp;gt;
&amp;lt;appSettings &amp;gt;
&amp;amp;shareddata;
&amp;lt;add key=&amp;quot;motorcycle&amp;quot; value=&amp;quot;Husqvarna TE610&amp;quot; /&amp;gt;
&amp;lt;add key=&amp;quot;car&amp;quot; value=&amp;quot;Ford Mondeo&amp;quot; /&amp;gt;
&amp;lt;/appSettings&amp;gt;
&amp;lt;/configuration&amp;gt;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;and the shared.xml file contains (one line only):&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;add key=&amp;quot;backhoe&amp;quot; value=&amp;quot;Volvo BM 430 Hymas&amp;quot; /&amp;gt;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;Using the following code snippet I load the XML and print it to the console:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$config = [xml](get-content $path)
$text = $config.OuterXml
Write-Verbose &amp;quot;[LoadConfig] $text&amp;quot;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;The output is:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;VERBOSE: [LoadConfig] &amp;lt;?xml version=&amp;quot;1.0&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;
&amp;lt;!DOCTYPE doc[
&amp;lt;!ENTITY shareddata SYSTEM &amp;quot;shared.xml&amp;quot;&amp;gt;
]&amp;gt;
&amp;lt;configuration&amp;gt;&amp;lt;appSettings&amp;gt;&amp;amp;shareddata;
&amp;lt;add key=&amp;quot;motorcycle&amp;quot; value=&amp;quot;Husqvarna TE610&amp;quot; /&amp;gt;
&amp;lt;add key=&amp;quot;car&amp;quot; value=&amp;quot;Ford Mondeo&amp;quot; /&amp;gt;&amp;lt;/appSettings&amp;gt; &amp;lt;/configuration&amp;gt;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;The way I load the XML does not include the content of shared.xml, but it does parse the DOCTYPE tag, since if I revert to an invalid file it will fail.&lt;/p&gt;
&lt;p&gt;So, how could I get PowerShell to fully include the XML snippet, so that loadconfig will find the key and value for my backhoe as well?&lt;/p&gt;
&lt;p&gt;I have also tried&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$Document = ( Select-Xml -Path myfile.xml -XPath / ).Node&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;but it won&amp;#39;t load anything as long as I have the &amp;amp;shareddata; in the config file:&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>ISHRemote could not create session: New-IshSession: The requested security protocol is not supported.</title><link>https://uat.community.rws.com/thread/55392?ContentTypeID=0</link><pubDate>Tue, 12 Nov 2024 02:59:46 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:e916ea21-a5ef-4106-baf4-495be9183b96</guid><dc:creator>Lihao Lei</dc:creator><slash:comments>3</slash:comments><comments>https://uat.community.rws.com/thread/55392?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/55392/ishremote-could-not-create-session-new-ishsession-the-requested-security-protocol-is-not-supported/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;&lt;span&gt;I was trying to connect to Tridion Docs via ishRemote. The ISHRemote module is installed on the SAME instance of Tridion Docs. The default TLS protocol combination was Ssl3, Tls. Security issue occurred even if I set appropriate TLS protocols (see below)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;However, If I connect to Tridion Docs from another computer (also installed ISHRemote module of same version), the session was&amp;nbsp;created successfully.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;The version of ISHRemote module is 7.0.0&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;PS C:\Users\Administrator&amp;gt; $psversiontable&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;Name Value&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;---- -----&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;PSVersion 5.1.14393.7330&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;PSEdition Desktop&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;BuildVersion 10.0.14393.7330&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;CLRVersion 4.0.30319.42000&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;WSManStackVersion 3.0&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;PSRemotingProtocolVersion 2.3&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;SerializationVersion 1.1.0.1&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;PS C:\Users\Administrator&amp;gt; [Net.ServicePointManager]::SecurityProtocol = &amp;quot;Tls, Tls11, Tls12, Ssl3&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;PS C:\Users\Administrator&amp;gt; $ishSession = New-IshSession -WsBaseUrl&amp;nbsp;localhost/.../&amp;#160;-IshUserName &amp;quot;Admin&amp;quot; -IshPassword &amp;quot;admin&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="background-color:#ff9900;font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;New-IshSession : The requested security protocol is not supported.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="background-color:#ff9900;font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;At line:1 char:15&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="background-color:#ff9900;font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;+ ... shSession = New-IshSession -WsBaseUrl&amp;nbsp;localhost/.../&amp;#160;-IshUs ...&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="background-color:#ff9900;font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="background-color:#ff9900;font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;+ CategoryInfo : InvalidOperation: (:) [New-IshSession], NotSupportedException&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="background-color:#ff9900;font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;+ FullyQualifiedErrorId : -1,Trisoft.ISHRemote.Cmdlets.Session.NewIshSession&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Can ISHRemote be used to search for a snippet of XML?</title><link>https://uat.community.rws.com/thread/55384?ContentTypeID=0</link><pubDate>Mon, 11 Nov 2024 14:17:37 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:c3686db8-5d47-4e09-8d9a-5befecc106f8</guid><dc:creator>Ann Jensen</dc:creator><slash:comments>1</slash:comments><comments>https://uat.community.rws.com/thread/55384?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/55384/can-ishremote-be-used-to-search-for-a-snippet-of-xml/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Can I use ISHRemote to look for instances of a snippet of XML in folder of topics?&lt;/p&gt;
&lt;p&gt;E.g. Look for instances of &amp;lt;image&amp;gt; element where there is no &amp;lt;alt&amp;gt; element within?&lt;/p&gt;
&lt;p&gt;If not, what would be the most effective and efficient way to do such a search?&lt;/p&gt;
&lt;p&gt;Any advice appreciated,&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;Ann&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>How can I check a folder for topics with a given attribute and value?</title><link>https://uat.community.rws.com/thread/54864?ContentTypeID=0</link><pubDate>Tue, 08 Oct 2024 11:09:23 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:2afd0873-d3bc-49be-a339-ea2a1de17e62</guid><dc:creator>Ann Jensen</dc:creator><slash:comments>1</slash:comments><comments>https://uat.community.rws.com/thread/54864?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/54864/how-can-i-check-a-folder-for-topics-with-a-given-attribute-and-value/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I want to check a folder path for all topics that have a certain metadata attribute and a certain chunk of XML i.e.&amp;nbsp;&amp;lt;section outputclass=&amp;quot;instructions&amp;quot;&lt;/p&gt;
&lt;p&gt;So far I have (what Dave advised in &lt;a href="https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/54782/can-t-figure-out-how-to-process-all-topics-within-a-nested-folder-structure"&gt;previous question&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;$metadataFilter = Set-IshMetadataFilterField -Level Lng -Name DOC-LANGUAGE -FilterOperator IN -Value &amp;#39;en&amp;#39; |&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Set-IshMetadataFilterField -Level Lng -Name FSTATUS -FilterOperator Equal -Value &amp;#39;Released&amp;#39;&lt;/p&gt;
&lt;p&gt;$ishObjects = Get-IshFolder -FolderPath $ishFolder -FolderTypeFilter @(&amp;quot;ISHModule&amp;quot;) -Recurse |&lt;br /&gt;Foreach-Object {&lt;br /&gt; # find the latestreleased topics for each version&lt;br /&gt; $ishVersionObjects = Get-IshFolderContent -IshFolder $PSItem -MetadataFilter $metadataFilter -VersionFilter latestreleased |&lt;br /&gt; Get-IshDocumentObj&lt;br /&gt; # at this point variable $ishVersionObjects contains the Latest-Released-Version with FSTATUS=Released and DOC-LANGUAGE=en-US&lt;br /&gt;&lt;br /&gt; Foreach ($ishVersionObject in $ishVersionObjects) {&lt;br /&gt;&amp;nbsp; # do something per entry found here&lt;br /&gt;&amp;nbsp; Write-Host (&amp;quot;Found LogicalId["+$ishVersionObject.IshRef+"] Version["+$ishVersionObject.version_version_value+"] Lang["+$ishVersionObject.doclanguage+"] Author["+$ishVersionObject.fauthor+"]&amp;quot;)&lt;br /&gt;&amp;nbsp; $encodedContent = $ishVersionObject.IshData&lt;br /&gt;&amp;nbsp; # Decode the Base64-encoded content into XML&lt;br /&gt;&amp;nbsp; $xmlContent = [System.Text.Encoding]::UTF8.GetString([Convert]::FromBase64String($encodedContent))&lt;/p&gt;
&lt;p&gt;&amp;nbsp; }&lt;br /&gt;}&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;However, I am getting error&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Exception calling &amp;quot;FromBase64String&amp;quot; with &amp;quot;1&amp;quot; argument(s): &amp;quot;The input is not a valid Base-64 string as it contains a non-base 64 character, more than two padding characters, or an illegal character among the padding &lt;br /&gt;characters. &amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Can anyone advice how I access and test for a given piece of XML in topic being processed?&lt;/p&gt;
&lt;p&gt;Any advice appreciated,&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;Ann&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Can't figure out how to process all topics within a nested folder structure</title><link>https://uat.community.rws.com/thread/54782?ContentTypeID=0</link><pubDate>Wed, 02 Oct 2024 12:49:06 GMT</pubDate><guid isPermaLink="false">10acfa76-f078-475b-a7ef-fc5b3e8d2934:4cac7e93-804a-4857-8a33-bb3e47d5662a</guid><dc:creator>Ann Jensen</dc:creator><slash:comments>1</slash:comments><comments>https://uat.community.rws.com/thread/54782?ContentTypeID=0</comments><wfw:commentRss>https://uat.community.rws.com/developers-more/tridion-portfolio/tridiondocs-developers/f/livecontent_developer_forum/54782/can-t-figure-out-how-to-process-all-topics-within-a-nested-folder-structure/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;The requirement I have is to process the latest released version of a certain language layer in a nested folder structure where there are many versions and each version has many language layers.&lt;/p&gt;
&lt;p&gt;I have the following&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;$metadataFilter =&amp;nbsp;Set-IshMetadataFilterField -Level Lng -Name DOC-LANGUAGE -FilterOperator IN -Value &amp;#39;en-US&amp;#39; |&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Set-IshMetadataFilterField -Level Lng -Name FSTATUS -FilterOperator Equal -Value &amp;#39;Released&amp;#39;&lt;/p&gt;
&lt;p&gt;$ishObjects = Get-IshFolder -FolderPath $ishFolder -FolderTypeFilter @(&amp;quot;ISHModule&amp;quot;) -Recurse | &lt;br /&gt;Foreach-Object { &lt;br /&gt;&amp;nbsp; # find the latestreleased topics for each version&lt;br /&gt;&amp;nbsp; $ishVersionObjects = Get-IshFolderContent -IshFolder $PSItem -MetadataFilter $metadataFilter -VersionFilter latestreleased | &lt;br /&gt;&amp;nbsp; Get-IshDocumentObj | Out-File -Append &amp;quot;piped_topics.txt&amp;quot;&lt;br /&gt;}&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;This works and I have a text file of all the topics with the latest released version for the en-US layer.&lt;/p&gt;
&lt;p&gt;However, I want to process each of these topics to capture the version number and value from other metadata.&lt;/p&gt;
&lt;p&gt;What is the best approach to edit what I have so I can both pipe to file for logging and also interrogate the topics returned to capture specific details from them to use for other processing?&lt;/p&gt;
&lt;p&gt;Any advice appreciated,&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;Ann&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>