Skip to content

ProConcepts DataReviewer

UmaHarano edited this page Nov 6, 2024 · 20 revisions

The ArcGIS.Desktop.DataReviewer namespace provides access to the classes and members that offer the ability to manage Reviewer results, sessions, and batch job items.

  • ArcGIS.Desktop.DataReviewer.dll
Language:      C#
Subject:       Data Reviewer
Contributor:   ArcGIS Pro SDK Team <arcgisprosdk@esri.com>
Organization:  Esri, http://www.esri.com
Date:          10/06/2024
ArcGIS Pro:    3.4
Visual Studio: 2022

In this topic

Batch job items

A project can contain multiple batch job items with each item defining a collection of configured Data Reviewer checks. Data Reviewer checks automate the validation of a specific condition—based on its configuration—against one or more features. Checks validate different aspects of a feature’s quality that can include feature integrity, attribution, spatial relationships and metadata. Checks can be used to identify features that are non-compliant with industry best practices or data quality requirements.

You can add batch job items to a project using the Project.Current.AddItem method:

// Specify the path of the Reviewer Batch Job
string batchJobPath = @"C:\Data\Attribute Validation.rbj";

// Create the item
await QueuedTask.Run(() =>
{
  IProjectItem reviewerBatchJobItem = ReviewerUtil.CreateBatchJobProjectItem(batchJobPath);
  if (reviewerBatchJobItem != null)
    Project.Current.AddItem(reviewerBatchJobItem);
});

Result items

A project can contain a single result item that defines a connection to a geodatabase containing a Reviewer dataset. The Reviewer dataset stores information related to sessions and their associated results. Sessions define a series of validation and quality control transactions performed by automated validation or manual inspection.

You can add result items to a project using the Project.Current.AddItem method:

// Specify the path of the workspace that contains Reviewer dataset
string strReviewerResultsWorkspacePath = @"C:\Data\ReviewerWorkspace.gdb";

// Create the item
await QueuedTask.Run(() =>
{
  // Check if the Reviewer workspace contains current Reviewer dataset.
  if (ReviewerUtil.HasValidReviewerDataset(strReviewerResultsWorkspacePath))
  {
    IProjectItem reviewerResultItem = ReviewerUtil.CreateResultsProjectItem(strReviewerResultsWorkspacePath);
    if (reviewerResultItem != null)
      Project.Current.AddItem(reviewerResultItem);
  }
  else
  {
    // The geodatabase specified does not contain a current Reviewer dataset
  }
});

Session items

A project can contain multiple session items with each item defining a collection of Reviewer results. A result represents a geodatabase feature or row that has been marked as an anomaly by automated validation or manual inspection. It contains information about what that anomaly is and may include a geometry. Results are organized into Reviewer sessions and stored in a geodatabase.

You can add result items to a project using the ReviewerResultsProjectItem.AddSessionItemAsync method:

// Get Reviewer Results project item (ReviewerResultsProjectItem)
// A project can contain only one Reviewer Results project item
var resultsProjectItem = Project.Current.GetItems<ReviewerResultsProjectItem>().FirstOrDefault();
if (resultsProjectItem == null)
{
  // Current project does not have a connection to the Reviewer Results.
  return;
}

// Get the Reviewer Dataset associated with the Reviewer Results project item
ArcGIS.Desktop.DataReviewer.Models.ReviewerDataset reviewerDataset = resultsProjectItem.ReviewerDataset;
if (null != reviewerDataset)
{
  IEnumerable<Session> reviewerSessions = null;
  await QueuedTask.Run(async () =>
  {
    // Get all Reviewer sessions that are in the Reviewer dataset
    reviewerSessions = reviewerDataset.GetSessions();
    foreach (Session session in reviewerSessions)
    {
      // Add each Reviewer session to the current project
      Item sessionItem = resultsProjectItem.CreateSessionItem(session);
      await resultsProjectItem.AddSessionItemAsync(sessionItem);
    }
  });
}

Developing with ArcGIS Pro

    Migration


Framework

    Add-ins

    Configurations

    Customization

    Styling


Arcade


Content


CoreHost


DataReviewer


Editing


Geodatabase

    3D Analyst Data

    Plugin Datasources

    Topology

    Linear Referencing

    Object Model Diagram


Geometry

    Relational Operations


Geoprocessing


Knowledge Graph


Layouts

    Reports


Map Authoring

    3D Analyst

    CIM

    Graphics

    Scene

    Stream

    Voxel


Map Exploration

    Map Tools


Networks

    Network Diagrams


Parcel Fabric


Raster


Sharing


Tasks


Workflow Manager Classic


Workflow Manager


Reference

Clone this wiki locally