---
title: "Service: /groups/{group}/uris/{uri}/fragments/{+fragment}/compare [GET]"
source: https://dev.pageseeder.com/api/services/compare-fragment-edits-GET.html
description: "Compares fragment edits using Diff-X to show changes between two or more edits. Supports reverse chronological ordering and filtering of intermediate edits. Times out after 10 seconds."
last_updated: 2026-09-02T11:36:01+10:00
document_type: api_endpoint
operation_id: psml-GET
resource_id: psml
path_template: /groups/{group}/uris/{uri}/fragments/{+fragment}/compare
http_method: GET
api_category: psml
implementation_version: 6.3000
api_since: 5.9700
deprecated_since: null
obsolete_since: null
api_support: supported
cache_control: null
generated_at: 2026-09-02
tokens: ~795
---

# /groups/\{group\}/uris/\{uri\}/fragments/\{+fragment\}/compare \[GET\]

## Description

Compare Fragment's Edits.

Compares contents of two or more edits using Diff-X. The diff shows what the changes are to get from the start edit to the end edit. If `start-editid` is greater than `end-editid`, the order is reverse chronological. The `@skipped` in the response shows how many intermediate edits where not displayed.

> **Note:** If the request has taken more than 10 seconds, then the remaining edits are listed containing the element `<diff error="This diff was not generated because the previous diffs took too long."/>`.

## Parameters

| Name | Description | Required | Type | Default |
| --- | --- | --- | --- | --- |
| end-editid | The edit `ID` to end the compare (`-1` = original edit ID). | no | long | `[current edit ID]` |
| intermediates | What edits to include between the old and new (`all\|members\|none`), where `members` omits adjacent edits from the same member. | no | enum | `none` |
| start-editid | The edit `ID` to start the compare (`-1` = current edit ID). | no | long | `[original edit ID]` |

## Permission

This service is restricted to guest and higher unless the group is accessible to public.

## Response

The output has the following format:

```xml

<edits>
  <edit|draft id="123"
              created="[date/time]"
              [deleted="true"]
              [original="true"]>

    <author id="12" ... >
      <fullname>John Jones</fullname>
    </author>
   [<draftauthor id="34" ... >
      <fullname>Jenny Green</fullname>
    </draftauthor>]
   [<acceptedby date="[date/time]" id="56" ... >
      <fullname>Alan Smith</fullname>
    </acceptedby>]
    <content>
      <fragment id="2">
        <para>The quick</para>
        <para>brown</para>
        <para indent="1">fox</para>
      </fragment>
    </content>
    <notes>
      <note id="456"
            modified="[date/time]"
            title="[title]">
        <content> ... </content>
        <labels> ... </labels>
      </note>
    </notes>
  </edit|draft>
  <edit|draft id="234"
              created="[date/time]"
              [skipped="[number]"] ... >
    <author id="12" ... >
      <fullname>Linda Brown</fullname>
    </author>
    <content>
      <fragment id="2">
        <para>The slow</para>
        <para indent="1">brown</para>
        <para>fox</para>
        <para>jumps</para>
      </fragment>
    </content>
    <diff [error="[error message]"]>
      <fragment 
             xmlns:dfx="http://www.topologi.com/2005/Diff-X"
             xmlns:del="http://www.topologi.com/2005/Diff-X/Delete"
             xmlns:ins="http://www.topologi.com/2005/Diff-X/Insert"
             id="2">
        <para>The
          <dfx:del>quick</dfx:del>
            <dfx:ins>slow</dfx:ins>
        </para>
        <para indent="1" ins:indent="true">brown</para>
        <para del:indent="1">fox</para>
        <para dfx:insert="true">
          <dfx:ins>jumps</dfx:ins>
        </para>
      </fragment>
    </diff>
    <notes>
      <note id="567" ... > ... </note>
    </notes>
  </edit|draft>
</edits>
```

## Error Handling

| 0x1218 | Fragment not found |
| --- | --- |

