Event editing using the attribute table

Available with Location Referencing license.

You can edit an event in a feature service by updating its record in an event layer’s attribute table.

Attribute table edits can be performed to correct errors, reflect changes to measures on an associated route, or update the value of a unique event attribute, such as a change in roadway type or a change in speed limit that occurs on a specific date.

After edits are made to the attribute table row, the system-provided Location Error value is updated to indicate the status.

Note:

Right-click the event layer in which you want to edit an event, and choose Attribute Table to open its attribute table in the ArcGIS Pro subpanel. To edit an event record, click in its row and update the values for the event.

If a message about acquiring locks or reconciling appears, conflict prevention is enabled.

Events that have stationing and referents configured are supported in ArcGIS Pro. When editing a referent or stationing event in the attribute table, you can provide the values for the stationing or referent columns; however, the event is drawn based only on the values provided in the measure fields.

Location Errors

Location errors allow you to determine data quality issues with LRS events. When an event is defined accurately using the attribute table or any other method, the result is a No Error value for the location error field.

Note:

You can also view a complete list of location errors.

Any of the following statuses indicate a problem that must be resolved.

Location errorDescription

Different From Route And To Route Line IDs

The from route and the to route have different line IDs. This is applicable to events associated with line networks.

Invalid Dates

The event's to date is before the event's from date.

Note:

When you edit an event's from date to be after its to date using the attribute table, they are automatically swapped.

Invalid Route Line ID

The route's line ID is invalid. This is applicable to events associated with line networks.

Invalid Route Line Order

The route's line order is invalid. This is applicable to events associated with line networks.

Invalid Location Route ID

The route location's route ID is invalid (NULL, empty, or invalid value).

Invalid Location Measure

At least one of the route location's measure values is invalid.

Invalid Route ID

The route location's route ID is invalid (NULL, empty, or invalid value).

Measure Extent Out Of Route Measure Range

The route location's shape doesn't exist on the route (the route has no m-values or the route location's measures don't exist on the route).

Multiple Route Locations Found

More than one point location was found. Measures may not be unique along the routes.

Null Extent

The from measure is equal to the to measure.

Parent Event Not Found

The route location's shape was not found because the from measure and the to measure are outside the route measures.

Partial Match For The From Measure and To Measure

The entire route location's shape was not found. The from measure and the to measure are outside the route measure range.

Partial Match For The From Measure

The from measure is outside the route measure range.

Partial Match For The To Measure

The to measure is outside the route measure range.

Reversed Line Order

The from route does not have a lower line order than the to route. This is applicable to events associated with line networks.

Route Measures Null

The route does not have m-values or the m-values are null.

Route Not Found

The route does not exist in the time slice in which the event is active.

Route Shape Empty

The route does not have a shape or the shape is empty.

Route Not M Aware

The route is not an m-aware polyline.

Scenarios for editing line events using the attribute table

The scenarios below detail the results of editing nonspanning event values in the event layer's attribute table.

Editing event measures

The following diagram shows the route and its associated event before the edit:

Nonspanning line event associated to a route

The following table details the route attributes. Valid measures for an event on Route1 must be between 0 and 20, and valid dates must fall on or after 1/1/2000.

Route IDFrom DateTo Date

Route1

1/1/2000

<Null>

The following table details the event before editing using the attribute table:

Event IDRoute IDFrom DateTo DateFrom MeasureTo MeasureLocation ErrorSpeed Limit

Event1

Route1

1/1/2005

<Null>

10

20

No Error

55

The following diagram shows changing the from measure of the event:

After editing a line event on a nonspanning route resulting in no error

The following table details the event after the measure has changed from 10 to 5, which causes a change in its shape:

Event IDRoute IDFrom DateTo DateFrom MeasureTo MeasureLocation ErrorSpeed Limit

Event1

Route1

1/1/2005

<Null>

5

20

No Error

55

Editing event measures resulting in a location error

The following diagram shows the route and its associated event before the edit:

Before editing Event1 on Route1

The following table details the route attributes. Valid measures for an event on Route1 must be between 0 and 20, and valid dates must fall on or after 1/1/2000.

Route IDFrom DateTo Date

Route1

1/1/2000

<Null>

The following table details the event before editing using the attribute table:

Event IDRoute IDFrom DateTo DateFrom MeasureTo MeasureLocation ErrorSpeed Limit

Event1

Route1

1/1/2000

<Null>

10

20

No Error

55

The following diagram shows the change to the event measures. The to measure was updated to 30, which does not exist on Route1, which results in a Partial Match for To Measure error.

After editing a line event to a nonspanning route resulting in an error

The following table provides an example of the system-provided Partial Match For To Measure value in the Location Error field. The event shape still ends at the end of the route's actual to measure of 20 since 30 is not found.

Event IDRoute NameFrom DateTo DateFrom MeasureTo MeasureLocation ErrorSpeed Limit

Event1

Route1

1/1/2000

<Null>

10

30

Partial Match for To Measure

55

Scenarios for editing spanning events using the attribute table

The scenarios below detail the results of editing spanning event values in the layer's attribute table.

Editing spanning event measures

The following diagram shows the routes and their associated event before the edit:

Before editing a line event that spans routes

The following table details the route attributes. Valid measures for an event on LineA must fall between 0 on Route1 and 40 on Route 3, and valid dates must fall on or after 1/1/2000.

Route IDFrom DateTo Date

Route1

1/1/2000

<Null>

Route2

1/1/2000

<Null>

Route3

1/1/2000

<Null>

The following table details the event before editing using the attribute table. Event1 is a spanning event that has measures from 5 on Route1 to 35 on Route3.

Event IDFrom Route IDTo Route IDFrom DateTo DateFrom MeasureTo MeasureLocation ErrorSpeed Limit

Event1

Route1

Route3

1/1/2000

<Null>

5

35

No Error

55

The following diagram shows the routes after the line event (Event1) is updated. The Event1 from measure changed from 5 to 0 on 1/1/2005.

After editing a line event to a spanning route resulting in no error

The following table details the event after the measure has changed from 5 to 0 for Route1, which causes a change in its shape. Additionally, the Speed Limit value for the event record has been updated from 55 to 65.

Event IDFrom Route IDTo Route IDFrom DateTo DateFrom MeasureTo MeasureLocation ErrorSpeed Limit

Event1

Route1

Route3

1/1/2000

<Null>

0

35

No Error

65

Editing spanning event measures resulting in a location error

The following diagram shows the routes and their associated event before the edit:

Before editing a line event that spans routes

The following table details the route attributes. Valid measures for an event on LineA must fall between 0 on Route1 and 40 on Route 3, and valid dates must fall on or after 1/1/2000.

Route IDFrom DateTo Date

Route1

1/1/2000

<Null>

Route2

1/1/2000

<Null>

Route3

1/1/2000

<Null>

The following table details the event before editing using the attribute table. Event1 is a spanning event that has measures from 5 on Route1 to 35 on Route3.

Event IDFrom Route IDTo Route IDFrom DateTo DateFrom MeasureTo MeasureLocation ErrorSpeed Limit

Event1

Route1

Route3

1/1/2000

<Null>

5

35

No Error

55

During the edit, the Event1 to measure is correctly edited from 35 to 40 on Route3; however, the To Route ID value is inadvertently deleted, which results in an Invalid Location Route ID error for the system-provided Location Error field.

The following diagram shows the routes after the event shape is no longer generated due to the transcription error in the attribute table row:

Event1 is no longer generated on the map when a required value is deleted.

The following table shows the missing To Route ID value and the To Measure value, which is null:

Event IDFrom Route IDTo Route IDFrom DateTo DateFrom MeasureTo MeasureLocation ErrorSpeed Limit

Event1

Route1

1/1/2000

<Null>

5

<Null>

Invalid Location Route ID

55

In such cases, review the attribute table and restore any missing or incorrect values to generate the event shape. In this case, reinstate the To Route ID and re-enter the cleared to measure value of 40.

Event IDFrom Route IDTo Route IDFrom DateTo DateFrom MeasureTo MeasureLocation ErrorSpeed Limit

Event1

Route1

Route3

1/1/2000

<Null>

5

40

No Error

55

The following diagram shows the event measure edit after the To Route ID value and the To Measure (40) are restored:

After editing a spanning line event resulting in a location error

Scenarios for time slicing an event using the attribute table

Depending on the type of edit made to an event, changes to the event's from and to dates may be required to reflect a real-world change that occurs on a specific date. You can update the from and to dates by either using an existing event record or adding an event record using the same event ID and route ID with different dates to represent a specific time range. Representing changes to an event in this manner is known as time slicing and ensures that event changes are accurately stored for each point in time.

The scenario below details a route that has two time slices and an associated line event whose dates only cover one of the route's time slices. The first route time slice has dates from 1/1/2000 to 12/31/2010, and the second route time slice has dates from 1/1/2012 to <Null>. The event record dates are from 1/1/2000 to 12/31/2010.

Event1 before time slicing

The following table details the route attributes, including time slices:

Route IDFrom DateTo Date

Route1

1/1/2000

12/31/2010

Route1

1/1/2012

<Null>

The following table details the event before the edit:

Event IDRoute IDFrom DateTo DateFrom MeasureTo MeasureLocation ErrorSpeed Limit

Event1

Route1

1/1/2000

12/31/2010

10

20

No Error

55

In this case, the explicit to date of Event1 is updated to match both route time slices by changing its To Date to <Null> to match the To Date of the latest time slice of the route.

The following diagram shows the route and the updated event record after the edit:

Event1 after time slicing

The following table details the event after the edit. Event1 now has three time slices. The original time slice retains its date range from 1/1/2000 to 12/31/2010, which matches the first time slice of the route. The second time slice has dates from 12/31/2010 to 1/1/2012, but the route doesn't exist between those dates, which results in a Route Not Found error in that time slice. The third time slice has dates from 1/1/2012 to <Null> that match the latest route time slice.

Event IDRoute IDFrom DateTo DateFrom MeasureTo MeasureLocation ErrorSpeed Limit

Event1

Route1

1/1/2000

12/31/2010

10

20

No Error

55

Event1

Route1

12/31/2010

1/1/2012

10

20

Route Not Found

55

Event1

Route1

1/1/2012

<Null>

10

20

No Error

55

Referent offset and event editing using the attribute table

The Roads and Highways events data model supports the configuration of referent event fields and their enablement using the Enable Referent Fields tool. Once referent fields are configured and enabled in a layer, referent locations are populated and persisted in that layer when events are added or edited.

When a line event is edited using the attribute table in a referent-enabled layer, the parent LRS Network is used as the FromRefMethod and ToRefMethod values by default, and the route is used as the FromRefLocation and ToRefLocation values. The from and to measures of the line event are used as the FromRefOffset and ToRefOffset values.

If either measure of a line event is updated, the corresponding offset value updates to reflect the new measure.

The example below demonstrates the impact of editing event records in the attribute table.

Before event editing with referents

In this example, Event1 is a line event record in a referent-enabled layer. PointEventLayer1 refers to a point event layer as its FromRefMethod and ToRefMethod values and uses a point event in that layer, Point1, as its FromRefLocation and ToRefLocation values.

The following diagram shows the route and its associated events:

Before editing using the attribute table

The following table provides details about the event referent fields before editing using the attribute table:

FromRefMethodFromRefLocationFromRefOffsetToRefMethodToRefLocationTo Ref Offset

PointEventLayer1

Point1

5

PointEventLayer1

Point1

15

The following table provides details about the default event fields before the edit:

Event IDRoute IDFrom DateTo DateFrom MeasureTo Measure

Event1

Route1

1/1/2000

<Null>

10

20

After event editing with referents

The following diagram shows the route and its associated events after the edit:

After feature edits that override referents

The following table provides details about the event referent fields after the edit:

FromRefMethodFromRefLocationFromRefOffsetToRefMethodToRefLocationTo Ref Offset

AllRoutes

Route1

5

AllRoutes

Route1

15

The following table provides details about the default event fields after the edit:

Event IDRoute IDFrom DateTo DateFrom MeasureTo Measure

Event1

Route1

1/1/2000

<Null>

5

15