Introduction
This document provides a detailed mapping between the properties of the JSON response and the NextGen API schema
for the Mandate Extraction and Analysis API. The goal is to demonstrate how each property in the utilized Legacy Services API JSON
response corresponds to properties in the NextGen JSON schema, facilitating a smooth transition and integration.
General Overview
The legacy Services APIs all require you to create a Shared Authority Document List and then invoke the APIs using the unique List ID
or Authority Document ID
. The response included the Authority Document’s metadata and all its Citations, Mandates, and Common Controls in a single payload.
In Nextgen APIs, there is no need to create a Shared Authority Document List. Instead, Authority Document metadata, Citations, Mandates, and Common Controls are accessed through separate, dedicated endpoints.
The following is a mapping of the Legacy Services API Endpoints to the NextGen API Endpoints:
Function | Legacy Services API | NextGen API | Comment |
---|---|---|---|
Get Account Information | /my-account | /my-account | Returns information about the account. |
Search for Authority Documents | Not Available | /authority-document?page=1&perPage=100&search=<value> | Returns documents containing the search term. Optionally remove the search parameter to retrieve all documents. |
Retrieve Authority Document | /authority-document/:document-id/details | /authority-document/:id | Legacy returns the document metadata, all citations, all mandates and all controls. NextGen only returns the document metadata. |
Search for Citations in a document | Not Available | /authority-document/:id/citation?page=1&perPage=100&search=<value> | Returns citations containing the search term. Optionally remove the search parameter to retrieve all citations for the document. |
Retrieve a specific Citation | Not Available | /authority-document/:id/citation/:citationId | NextGen can retrieve specific citations within a document |
Search for Mandates in a document | Not Available | /authority-document/:id/mandate?page=1&perPage=100&search=<value> | Returns mandates containing the search term. Optionally remove the search parameter to retrieve all mandates for the document. |
Retrieve a specific Mandate | Not Available | /authority-document/:id/mandate/:mandateId | NextGen can retrieve specific mandates within a document. |
Search for Controls in a document | Not Available | /authority-document/:id/control?page=1&perPage=100&search=<value> | Returns controls containing the search term. Optionally remove the search parameter to retrieve all controls for the document. |
Retrieve a specific Common Control | Not Available | /authority-document/:id/control/:controlId | NextGen can retrieve specific controls within a document |
Retrieve all Common Controls for a list of Authority Documents | /cch-ad-list/:list-id/tracked-controls/details | /authority-document/:id/control?page=1&perPage=100 | Legacy returns all common controls for all documents in the list. For NextGen, retrieve all of the controls for one document at a time. |
Legacy (CCH) Authority Document IDs
In the NextGen system, all Authority Documents are assigned a new elementId
. However, you can still retrieve an Authority Document in NextGen using legacy IDs
, for backward compatibility using the GET /authority-document/legacy/:id
endpoint.
Retrieve Authority Document by Legacy ID
GET
/authority-document/legacy/:id
Path Variables:
:id
: The legacy CCHelementId
This endpoint returns the NextGen Authority Document ID and and legacy ID.
The NextGen AD ID is required for all subsequent API requests (to retrieve metadata, citations, mandates & controls)
Furthermore, when retrieving the metadata of an authority document from NextGen, the legacy CCH elementId will be returned as a property.
MetaData Example: For example:
{ "@context": "URL", "@id": "URL", "@type": "string", "elementId": "string", "schemaVersion": "string", "authorityDocumentType": "string", "officialName": "string", "legacyId": "string", ......... }
Detailed Property Mapping
Legacy Services API Property: Properties from the CCH Services API JSON response.
New NextGen JSON Property: Corresponding properties in the NextGen API schema.
Notes: Additional information or context about the mapping.
Top-Level Properties
JSON Property Mapping Matrix
Legacy Services API | New NextGen | Notes |
---|---|---|
|
| Indicates if the mandate is active. |
|
| URL indicating what deprecated the mandate. |
|
| Additional notes on deprecation. |
|
| Timestamp when the mandate was created. |
|
| Date when the mandate was added. |
|
| Timestamp when the mandate was last updated. |
|
| Date when the mandate was modified. |
|
| Language of the mandate (e.g., "eng"). |
|
| URL to the license terms. |
|
| Used for sorting mandates. |
|
| Represents the hierarchical lineage. |
|
| Calculated value for quick sorting |
|
| The citation reference string. |
|
| The primary citation text the mandate is derived from. |
|
| The mandate text (Full text of primary citation, additional citation, and additional guidance in current system). |
| - | - |
|
| Unique identifier for the mandate (Not a direct mapping). |
|
| Object representing the source document. |
|
| Object representing the matched control. |
| - | - |
| - | Asset information related to the control. |
| - | - |
| - | - |
| - | Data content information. |
| - | Organizational function related to the control. |
| - | - |
| - | - |
| - | - |
| - | Organizational task information. |
| - | - |
| - | - |
|
| Main text of the mandate with annotations. |
|
| Parent mandates in the hierarchy. |
|
| Used for validation of response data (Not a direct mapping). |
Nested Objects
Authority Document
JSON Path
Legacy Services API:
authority_document
New NextGen:
authorityDocument
JSON Property Mapping Matrix
Legacy Services API | New NextGen | Notes |
---|---|---|
|
| Identifier for the document (Not a direct mapping). |
|
| URL to the document details (Not a direct mapping). |
Control
JSON Path
Legacy Services API:
control
New NextGen:
matchedControl.control
JSON Property Mapping Matrix
Legacy Services API | New NextGen | Notes |
---|---|---|
|
| Indicates if the control is active. |
|
| URL indicating what deprecated the control. |
|
| Notes on deprecation. |
|
| Creation timestamp. |
|
| Last update timestamp. |
|
| Language of the control. |
|
| License information URL. |
|
| Name of the control. |
|
| Impact zone classification. |
|
| Type of the control. |
|
| Classification of the control. |
|
| Control's text with annotations. |
|
| Parent controls in the hierarchy. |
|
| Unique identifier for the control (Not a direct mapping). |
|
| URL to the control details (Not a direct mapping). |
Sentence
JSON Path
JSON Path:
sentence
NextGen JSON Path:
taggedText
JSON Property Mapping Matrix
Legacy Services API | New NextGen | Notes |
---|---|---|
|
| The raw text of the mandate. |
|
| Annotated terms within the text. |
|
| Indicates if the sentence is active. |
|
| Creation timestamp. |
|
| Last update timestamp. |
|
| Unique identifier for the tagged text (Not a direct mapping). |
| - | - |
Tagged Phrases
JSON Path
Legacy Services API:
sentence.tagged_phrases
New NextGen:
taggedText.taggedTerms
JSON Property Mapping Matrix
Legacy Services API | New NextGen | Notes |
---|---|---|
| Derived from | Start index of the term in the text. |
| Derived from | End index of the term in the text. |
|
| Indicates if the term is nonstandard. |
|
| Unique identifier for the tagged term (Not a direct mapping). |
|
| Unique identifier for the tagged text (Not a direct mapping). |
|
| Classification of the term (e.g., "Primary Noun"). |
|
| Contains term details such as name and lemma. |
|
| Textual definition of the term. |
|
| Language of the term. |
|
| License information URL. |
Note: The tokens
property in taggedTerm
references the tokens in taggedText.tokens
array. The start
and end
indices help identify the specific tokens associated with the term.