Should an annotation created using the Annotation API display in Review Space?

I used the Annotation.Create API to create this annotation using a test user account in our DEV environment:

<ishobject ishref="GUID-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ishtype="ISHAnnotation" ishannotationref="9000187">
<ishfields>
<ishfield name="CREATED-ON" level="annotation" xml:space="preserve">16/04/2025 18:29:11</ishfield>
<ishfield name="MODIFIED-ON" level="annotation" xml:space="preserve"/>
<ishfield name="FISHSELECTEDORIGINALTEXT" level="annotation" xml:space="preserve">Assumes the default line is set to the desk phone.</ishfield>
<ishfield name="FISHANNOTPROPOSEDCHNGTXT" level="annotation" xml:space="preserve"/>
<ishfield name="FISHANNOTATIONTEXT" level="annotation" xml:space="preserve">Replace with conref: GUID-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/GUID-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</ishfield>
<ishfield name="FISHANNOTATIONCREATOR" level="annotation" xml:space="preserve">rachel.owlglass</ishfield>
<ishfield name="FISHCONTENTOBJLOGICALID" level="annotation" xml:space="preserve">GUID-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</ishfield>
<ishfield name="FISHCONTENTOBJVERSION" level="annotation" xml:space="preserve">1</ishfield>
<ishfield name="FISHCONTENTOBJLANGUAGE" level="annotation" xml:space="preserve">en-US</ishfield>
<ishfield name="FISHREVISIONID" level="annotation" xml:space="preserve">GUID-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</ishfield>
<ishfield name="FISHPUBLOGICALID" level="annotation" xml:space="preserve">GUID-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</ishfield>
<ishfield name="FISHPUBVERSION" level="annotation" xml:space="preserve">1</ishfield>
<ishfield name="FISHANNOTATIONSTATUS" level="annotation" xml:space="preserve">Unshared</ishfield>
<ishfield name="FISHANNOTATIONADDRESS" level="annotation" xml:space="preserve">[{"revisionId":"GUID-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx","type":"TEXT_RANGE_SELECTOR","startContainerQuery":"/*[1]/node()[3]/node()[3]/node()[1]","startOffset":0,"endContainerQuery":"/*[1]/node()[3]/node()[3]/node()[1]","endOffset":50}]</ishfield>
<ishfield name="FISHANNOTRESOLUTIONTYPE" level="annotation" xml:space="preserve"/>
<ishfield name="FISHANNOTRESOLUTIONTEXT" level="annotation" xml:space="preserve"/>
<ishfield name="FISHANNOTATIONCATEGORY" level="annotation" xml:space="preserve">Comment</ishfield>
<ishfield name="FISHANNOTSNAPSHOTID" level="annotation" xml:space="preserve">20250416182911972</ishfield>
<ishfield name="FISHANNOTRESOLVEDON" level="annotation" xml:space="preserve"/>
<ishfield name="FISHANNOTRESOLVEDBY" level="annotation" xml:space="preserve"/>
<ishfield name="FISHRESOLVEDREVISIONID" level="annotation" xml:space="preserve"/>
</ishfields>
</ishobject>

It does not display in Review Space when I log in as the test user.

I created a similar annotation in Review Space using that same test account:

<ishobject ishref="GUID-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ishtype="ISHAnnotation" ishannotationref="9000214">
<ishfields>
<ishfield name="CREATED-ON" level="annotation" xml:space="preserve">16/04/2025 22:33:46</ishfield>
<ishfield name="MODIFIED-ON" level="annotation" xml:space="preserve"/>
<ishfield name="FISHSELECTEDORIGINALTEXT" level="annotation" xml:space="preserve">Assumes the default line is set to the desk phone.</ishfield>
<ishfield name="FISHANNOTPROPOSEDCHNGTXT" level="annotation" xml:space="preserve"/>
<ishfield name="FISHANNOTATIONTEXT" level="annotation" xml:space="preserve">Replace with conref: GUID-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/GUID-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</ishfield>
<ishfield name="FISHANNOTATIONCREATOR" level="annotation" xml:space="preserve">rachel.owlglass</ishfield>
<ishfield name="FISHCONTENTOBJLOGICALID" level="annotation" xml:space="preserve">GUID-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</ishfield>
<ishfield name="FISHCONTENTOBJVERSION" level="annotation" xml:space="preserve">1</ishfield>
<ishfield name="FISHCONTENTOBJLANGUAGE" level="annotation" xml:space="preserve">en-US</ishfield>
<ishfield name="FISHREVISIONID" level="annotation" xml:space="preserve">GUID-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</ishfield>
<ishfield name="FISHPUBLOGICALID" level="annotation" xml:space="preserve">GUID-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</ishfield>
<ishfield name="FISHPUBVERSION" level="annotation" xml:space="preserve">1</ishfield>
<ishfield name="FISHANNOTATIONSTATUS" level="annotation" xml:space="preserve">Unshared</ishfield>
<ishfield name="FISHANNOTATIONADDRESS" level="annotation" xml:space="preserve">[{"revisionId":"GUID-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx","type":"TEXT_RANGE_SELECTOR","startContainerQuery":"/*[1]/node()[3]/node()[3]/node()[1]","startOffset":0,"endContainerQuery":"/*[1]/node()[3]/node()[3]/node()[1]","endOffset":50}]</ishfield>
<ishfield name="FISHANNOTRESOLUTIONTYPE" level="annotation" xml:space="preserve"/>
<ishfield name="FISHANNOTRESOLUTIONTEXT" level="annotation" xml:space="preserve"/>
<ishfield name="FISHANNOTATIONCATEGORY" level="annotation" xml:space="preserve">Comment</ishfield>
<ishfield name="FISHANNOTSNAPSHOTID" level="annotation" xml:space="preserve">20250416223346874</ishfield>
<ishfield name="FISHANNOTRESOLVEDON" level="annotation" xml:space="preserve"/>
<ishfield name="FISHANNOTRESOLVEDBY" level="annotation" xml:space="preserve"/>
<ishfield name="FISHRESOLVEDREVISIONID" level="annotation" xml:space="preserve"/>
</ishfields>
</ishobject>

Why does the annotation created with the API not display in RS, but the other annotation created in RS does?

Thanks,

Patrick

emoji
Parents
  • Hi Patrick,

    My likely suspects in order are

    1. The addressing, so all the GUID-xxxx in turn version language potentially revisionid. So I would suggest to retrieve a working one, and change them one <ishfield at a time into your desired one.
    2. The status, FISHANNOTATIONSTATUS states Unshared which means Administrator-only or the exact same user.
    3. The exact address in the xml, TEXT_RANGE_SELECTOR, which is a specific addressing logic. Although when it goes wrong, it should still end up at the top of your topic as an "orphin". Where orphin means it is on this topic, but we could not resolve the exact location in the xml text anymore.

    Hope this helps,
    Best wishes,
    Dave

    emoji
  • Hello Dave,

    Thank you for the reply.

    Unfortunately, I've verified all three of those. For both the annotation created in RS and the one created with the API, the GUIDs all match, the status is the same, and the address (including the TEXT_RANGE_SELECTOR) are identical.

    When I view the publication in RS as either an admin or the test user, I only see the comment(s) created directly in RS.

    It seems this should not be the case. I'll keep tinkering with it.

    Thanks,

    Patrick

    emoji
Reply
  • Hello Dave,

    Thank you for the reply.

    Unfortunately, I've verified all three of those. For both the annotation created in RS and the one created with the API, the GUIDs all match, the status is the same, and the address (including the TEXT_RANGE_SELECTOR) are identical.

    When I view the publication in RS as either an admin or the test user, I only see the comment(s) created directly in RS.

    It seems this should not be the case. I'll keep tinkering with it.

    Thanks,

    Patrick

    emoji
Children
No Data