Is there a way to determine what version of a map is used in a specific version of a publication using the API?

We are using the API to query Architect for information on a specific version of a publication. It appears the publication version links to the map using the fishmasterref which contains a logical guid but we need to know which specific version of the map is associated with the version of a publication.

Parents
  • A nice overview on card types versus fields is on the web/app server in \App\Database\Common\DatabaseIndependent\Examples\Full-Export\ If you run the RunSetup.bat on the web/app server, it will generate a "exportInfoshare_result.xml" which renders quite nicely with the accompanying .CSS file. After running the batch file you can simply open up the "exportInfoshare_result.xml" file in a web browser.

    As you mentioned the CTPUBLICATIONV (publication version level), holds the "FISHMASTERREF" which holds the logical identifier (typically GUID) of the DITA root map. On CTPUBLICATIONV you'll also find "FISHBASELINE" which stores the link to the baseline object used in this publication.

    Without knowing your data sizes, if you are running this sync/async... The easiest way to get to the version information of the root map is by retrieving the baseline in full through a Baseline25.GetBaseline (docs.sdl.com/.../GUID-F01BD7A4-3770-43B9-9018-B5F26F923812) which will return you something like
    [...]
    <baseline ref="GUID-D1C23864-304D-408D-86C0-52C5B58343BD">
    <objects>
    <object ref="GUID.007DFDAD.CEFD.40F3.A75E.2C081228DC89" versionnumber="2" author="Admin" source="save:LatestAvailable" created="10/12/2008 15:05:09" modified="10/12/2008 15:05:09"/>
    <object ref="GUID-52AA38B3-23CA-4F24-8638-C1E5C50BD22B" versionnumber="1" author="Admin" source="save:Manual" created="10/12/2008 15:05:09" modified="11/12/2008 16:23:16"/>
    <object ref="GUID-52E98215-6399-44E6-8F64-61041AF16D5A" versionnumber="1" author="Admin" source="save:LatestAvailable" created="10/12/2008 15:05:09" modified="10/12/2008 15:05:09"/>
    <object ref="IS_REUSED_OBJECT_24" versionnumber="1" author="Admin" source="save:LatestAvailable" created="10/12/2008 15:05:09" modified="10/12/2008 15:05:09"/>
    ...
    </objects>
    </baseline>
    [...]
    as mentioned on docs.sdl.com/.../GUID-CFB5C1AD-45F5-4AE6-B1DF-108C241D135A

    Note that on a very new first publication version - so where nobody (auto)completed and saved the baseline yet - the baseline could be empty. You could say that the user didn't make and saved a version decission yet. These are typically the entries that at publishing time (PublishService) are autocompleted with LatestAvailable or LatestReleased version to at least show the user some draft result.
  • Is it possible to get the version number for the top level map, directly associated with the publication before the baseline is populated? We are trying to get the version information right after the publication version object is created in Architect. What we are seeing, is that the baseline isnt populated with information even after the map is associated with the publication version in the properties screen.

  • Hi Adam,

    My earlier note read
    [...]
    Note that on a very new first publication version - so where nobody (auto)completed and saved the baseline yet - the baseline could be empty. You could say that the user didn't make and saved a version decission yet. These are typically the entries that at publishing time (PublishService) are autocompleted with LatestAvailable or LatestReleased version to at least show the user some draft result.
    [...]

    What typically happens is that on the very first version of a publication, the matching baseline object is indeed empty. Typically Publication Manager will fill that up using AutoComplete by LatestAvailable - so the highest available version of all referenced maps/topics/images will be inserted into the baseline. When creating a next version based on an existing saved version (so saved baseline object), the system will typically copy the baseline content to a new baseline object.

    So i you want to know the version of the top level map when no user made a conscious decission to mark a certain version in the baseline version; it comes down to how you automatically selected the version of that top level map. There are typically three option which you can more-or-less also recognize in the Publication Manager's Baseline menu for AutoComplete:

    • Select version 1
    • LatestAvailable, so select the highest version on the main branch no matter its status
    • LatestReleased, so select the highest version on the main branch that has a (R)eleased status

    In this specific case the baseline doesn't seem to matter for you, you want to know a certain version number of your top level map. Have a look at

Reply
  • Hi Adam,

    My earlier note read
    [...]
    Note that on a very new first publication version - so where nobody (auto)completed and saved the baseline yet - the baseline could be empty. You could say that the user didn't make and saved a version decission yet. These are typically the entries that at publishing time (PublishService) are autocompleted with LatestAvailable or LatestReleased version to at least show the user some draft result.
    [...]

    What typically happens is that on the very first version of a publication, the matching baseline object is indeed empty. Typically Publication Manager will fill that up using AutoComplete by LatestAvailable - so the highest available version of all referenced maps/topics/images will be inserted into the baseline. When creating a next version based on an existing saved version (so saved baseline object), the system will typically copy the baseline content to a new baseline object.

    So i you want to know the version of the top level map when no user made a conscious decission to mark a certain version in the baseline version; it comes down to how you automatically selected the version of that top level map. There are typically three option which you can more-or-less also recognize in the Publication Manager's Baseline menu for AutoComplete:

    • Select version 1
    • LatestAvailable, so select the highest version on the main branch no matter its status
    • LatestReleased, so select the highest version on the main branch that has a (R)eleased status

    In this specific case the baseline doesn't seem to matter for you, you want to know a certain version number of your top level map. Have a look at

Children
No Data