Name: Ensured Ramp 2025
Display Field: NonAssetID
Type: Feature Layer
Geometry Type: esriGeometryPoint
Description: This layer documents the curb ramps that were installed or remediated by the City of Portland in second half of fiscal year 2024-2025 (January 1, 2025 - June 30, 2025) as part of its obligations under the CREEC/Portland Settlement Agreement. The agreement requires the City to ensure a specific number of Accessible curb ramps each year to improve pedestrian infrastructure and ADA compliance. Each feature represents a ramp location that was counted toward the City's annual performance target. This data is maintained by the Portland Bureau of Transportation and is updated annually. It is intended for public transparency and planning purposes.
Copyright Text: City of Portland, Bureau of Transportation (PBOT)
Default Visibility: true
MaxRecordCount: 4000
Supported Query Formats: JSON, geoJSON, PBF
Min Scale: 0.0
Max Scale: 0.0
Supports Advanced Queries: true
Supports Statistics: true
Has Labels: false
Can Modify Layer: true
Can Scale Symbols: false
Use Standardized Queries: true
Supports Datum Transformation: true
Extent:
XMin: -1.3665619061728615E7
YMin: 5693960.25861557
XMax: -1.3636849565542689E7
YMax: 5716685.354647958
Spatial Reference: 102100
(3857)
LatestVCSWkid(0)
Drawing Info:
Renderer:
Simple Renderer:
Symbol: Style: esriSMSCircle
Color: [255, 115, 223, 255]
Size: 5.0
Angle: 0.0
XOffset: 0
YOffset: 0
Outline:
Label: N/A
Description: N/A
Transparency: 0
Labeling Info:
Advanced Query Capabilities:
Supports Statistics: true
Supports OrderBy: true
Supports Distinct: true
Supports Pagination: true
Supports TrueCurve: true
Supports Returning Query Extent: true
Supports Query With Distance: true
Supports Sql Expression: true
Supports Query With ResultType: false
Supports Returning Geometry Centroid: false
Supports Binning LOD: false
Supports Query With LOD Spatial Reference: false
HasZ: false
HasM: false
Has Attachments: true
HTML Popup Type: esriServerHTMLPopupTypeAsHTMLText
Type ID Field: null
Fields:
-
OBJECTID
(
type: esriFieldTypeOID, alias: OBJECTID
)
-
Shape
(
type: esriFieldTypeGeometry, alias: Shape
)
-
NonAssetID
(
type: esriFieldTypeString, alias: NonAssetID, length: 16
)
-
InspectionType
(
type: esriFieldTypeString, alias: Inspection Type, length: 30
, Coded Values:
[PC: Post Construction]
, [CREEC: CREEC]
, [C: Condition]
)
-
InspectionForm
(
type: esriFieldTypeString, alias: Inspection Form, length: 50
)
-
InspectionDate
(
type: esriFieldTypeDate, alias: Inspection Date, length: 8
)
-
InspectorName
(
type: esriFieldTypeString, alias: Inspector Name, length: 30
)
-
PayNoteReferenceID
(
type: esriFieldTypeString, alias: eBuilder Paynote Reference:, length: 30
)
-
WorkPerfBy
(
type: esriFieldTypeString, alias: Who did the curb ramp repair work?, length: 100
, Coded Values:
[PW: Public Works]
, [FU: Franchise Utilities]
, [BES: Bureau of Environmental Services]
, ...3 more...
)
-
WorkPerfByOther
(
type: esriFieldTypeString, alias: If other, who did the curb ramp repair work?, length: 100
)
-
ProjectID
(
type: esriFieldTypeString, alias: Enter reference ID:, length: 30
)
-
FederalAidNumber
(
type: esriFieldTypeString, alias: Federal Aid Number:, length: 100
)
-
RampType
(
type: esriFieldTypeString, alias: Ramp Style, length: 30
, Coded Values:
[PERP: Perpendicular Ramp]
, [PR: Parallel Ramp]
, [COMBO: Combination Ramp]
, ...3 more...
)
-
ConstructionDate
(
type: esriFieldTypeDate, alias: Construction Date, length: 8
)
-
AlteredFromDesign
(
type: esriFieldTypeString, alias: Has the ramp been altered from design?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
, [U: Unknown]
)
-
ProjectType
(
type: esriFieldTypeString, alias: What type of project is it?, length: 30
, Coded Values:
[CP: Capital Project]
, [WO: Work Order]
, [PN: Permit]
, ...2 more...
)
-
Street1
(
type: esriFieldTypeString, alias: Cross street one:, length: 255
)
-
Street2
(
type: esriFieldTypeString, alias: Cross street two:, length: 255
)
-
PositionDiagonal
(
type: esriFieldTypeString, alias: Is the ramp a diagonal?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
PositionPerpendicular
(
type: esriFieldTypeString, alias: Is the ramp perpendicular to the curb?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
RampLocation
(
type: esriFieldTypeString, alias: What is the location of the curb ramp?, length: 10
, Coded Values:
[NE1: North East 1]
, [NE2: North East 2]
, [NW1: North West 1]
, ...18 more...
)
-
PositionIsland
(
type: esriFieldTypeString, alias: Is the ramp an island or median?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
PositionMidblock
(
type: esriFieldTypeString, alias: Is the ramp a midblock ramp?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
PavingComplete
(
type: esriFieldTypeString, alias: Is the paving complete?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
PavementCondition
(
type: esriFieldTypeString, alias: Is the pavement in front of the ramp in acceptable condition?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
DeficiencyPresent
(
type: esriFieldTypeString, alias: Are there deficiencies present?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
DeficiencyType
(
type: esriFieldTypeString, alias: What deficiencies are present?, length: 255
, Coded Values:
[CRACK: Cracks]
, [OBST: Obstruction]
, [TRIP: Trip Hazard]
, ...4 more...
)
-
DeficiencyComment
(
type: esriFieldTypeString, alias: Describe the deficiences., length: 255
)
-
HazardComment
(
type: esriFieldTypeString, alias: Describe any potential travel hazards., length: 255
)
-
ObstaclePresent
(
type: esriFieldTypeString, alias: Are there obstacles in path of the ramp?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
ObstacleComment
(
type: esriFieldTypeString, alias: Comment on the obstacles present., length: 255
)
-
NAA
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
LengthA
(
type: esriFieldTypeDouble, alias: Length of A (feet)
, Range: [0, 1000]
)
-
SlopeA
(
type: esriFieldTypeDouble, alias: Slope of A (%)
)
-
NAB
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
LengthB
(
type: esriFieldTypeDouble, alias: Length of B (feet)
, Range: [0, 1000]
)
-
SlopeB
(
type: esriFieldTypeDouble, alias: Slope of B (%)
)
-
NAC
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
LengthC
(
type: esriFieldTypeDouble, alias: Length of C (feet)
, Range: [0, 1000]
)
-
SlopeC
(
type: esriFieldTypeDouble, alias: Slope of C (%)
)
-
NAD
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
LengthD
(
type: esriFieldTypeDouble, alias: Length of D (feet)
, Range: [0, 1000]
)
-
SlopeD
(
type: esriFieldTypeDouble, alias: Slope of D (%)
)
-
NAE
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
LengthE
(
type: esriFieldTypeDouble, alias: Length of E (feet)
, Range: [0, 1000]
)
-
SlopeE
(
type: esriFieldTypeDouble, alias: Slope of E (%)
)
-
NAF
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
LengthF
(
type: esriFieldTypeDouble, alias: Length of F (feet)
, Range: [0, 1000]
)
-
SlopeF
(
type: esriFieldTypeDouble, alias: Slope of F (%)
)
-
NAG
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
LengthG
(
type: esriFieldTypeDouble, alias: Length of G (feet)
, Range: [0, 1000]
)
-
SlopeG
(
type: esriFieldTypeDouble, alias: Slope of G (%)
)
-
NAH
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
LengthH
(
type: esriFieldTypeDouble, alias: Length of H (feet)
, Range: [0, 1000]
)
-
SlopeH
(
type: esriFieldTypeDouble, alias: Slope of H (%)
)
-
NAI
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
LengthI
(
type: esriFieldTypeDouble, alias: Length of I (feet)
, Range: [0, 1000]
)
-
SlopeI
(
type: esriFieldTypeDouble, alias: Slope of I (%)
)
-
NAJ
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
LengthJ
(
type: esriFieldTypeDouble, alias: Length of J (feet)
, Range: [0, 1000]
)
-
SlopeJ
(
type: esriFieldTypeDouble, alias: Slope of J (%)
)
-
NAK
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
LengthK
(
type: esriFieldTypeDouble, alias: Length of K (feet)
, Range: [0, 1000]
)
-
SlopeK
(
type: esriFieldTypeDouble, alias: Slope of K (%)
)
-
NALA
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
LengthLA
(
type: esriFieldTypeDouble, alias: Length of LA (feet)
, Range: [0, 1000]
)
-
SlopeLA
(
type: esriFieldTypeDouble, alias: Slope of LA (%)
)
-
NALB
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
LengthLB
(
type: esriFieldTypeDouble, alias: Length of LB (feet)
, Range: [0, 1000]
)
-
SlopeLB
(
type: esriFieldTypeDouble, alias: Slope of LB (%)
)
-
NALC
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
LengthLC
(
type: esriFieldTypeDouble, alias: Length of LC (feet)
, Range: [0, 1000]
)
-
SlopeLC
(
type: esriFieldTypeDouble, alias: Slope of LC (%)
)
-
NACS
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
CounterSlope
(
type: esriFieldTypeDouble, alias: Counter Slope of Landing (%)
)
-
NAFS1
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
SlopeFS1
(
type: esriFieldTypeDouble, alias: Slope of FS1 (%)
)
-
NAFS2
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
SlopeFS2
(
type: esriFieldTypeDouble, alias: Slope of FS2 (%)
)
-
NAG1
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
SlopeG1
(
type: esriFieldTypeDouble, alias: Slope of G1 (%)
)
-
NAG2
(
type: esriFieldTypeString, alias: Is this measurement available?, length: 5
, Coded Values:
[N: No]
)
-
SlopeG2
(
type: esriFieldTypeDouble, alias: Slope of G2 (%)
)
-
FS1G1Difference
(
type: esriFieldTypeDouble, alias: FS1 G1 Relative Slope
)
-
FS2G2Difference
(
type: esriFieldTypeDouble, alias: FS2 G2 Relative Slope
)
-
GradeBreakDifference
(
type: esriFieldTypeDouble, alias: Algebraic Grade Break Difference
)
-
LipHeight
(
type: esriFieldTypeString, alias: Lip height:, length: 30
, Coded Values:
[zero: 0"]
, [zeroTo: 0"< x ≤0.25"]
, [greater: >0.25"]
)
-
GutterPresent
(
type: esriFieldTypeString, alias: Is there a concrete gutter?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
GutterWidth
(
type: esriFieldTypeDouble, alias: Width of X (inches)
, Range: [0, 1000]
)
-
HistoricalFeaturesPresent
(
type: esriFieldTypeString, alias: Are historical features present?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
HistoricalFeaturesComments
(
type: esriFieldTypeString, alias: Historical Features Comments, length: 255
)
-
InletsPresent
(
type: esriFieldTypeString, alias: Are inlets present?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
InletLocation
(
type: esriFieldTypeString, alias: To what measurement are the inlets adjacent?, length: 50
)
-
GeneralComments
(
type: esriFieldTypeString, alias: General comments:, length: 255
)
-
SixInchLevel
(
type: esriFieldTypeString, alias: Was a 6 inch level used for any measurements?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
SixInchFields
(
type: esriFieldTypeString, alias: Which measurements were made with 6 inch level?, length: 255
)
-
FourFootLevel
(
type: esriFieldTypeString, alias: Was a 4 foot level used for any measurements?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
FourFootFields
(
type: esriFieldTypeString, alias: What fields was a 4 foot level used on?, length: 255
)
-
PedPolePlans
(
type: esriFieldTypeString, alias: Is the pedestrian pole located per plans?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
, [NA: Not Applicable]
)
-
PushButtonPresent
(
type: esriFieldTypeString, alias: Is there a pedestrian pushbutton available for this ramp?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
PushButtonCount
(
type: esriFieldTypeString, alias: Number of push buttons, length: 5
)
-
PushButton1Facing
(
type: esriFieldTypeString, alias: Is push button 1 positioned with the face of the button parallel to the crosswalk to be used?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
PushButton2Facing
(
type: esriFieldTypeString, alias: Is push button 2 positioned with the face of the button parallel to the crosswalk to be used?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
PushButton1MountHeight
(
type: esriFieldTypeDouble, alias: Input push button 1 mounting height in inches:
, Range: [0, 1000]
)
-
PushButton2MountHeight
(
type: esriFieldTypeDouble, alias: Input push button 2 mounting height in inches:
, Range: [0, 1000]
)
-
PushButton1Reach
(
type: esriFieldTypeDouble, alias: Input push button 1 reach distance in inches:
, Range: [0, 1000]
)
-
PushButton2Reach
(
type: esriFieldTypeDouble, alias: Input push button 2 reach distance in inches:
, Range: [0, 1000]
)
-
PedPoleComment
(
type: esriFieldTypeString, alias: If needed, add comments about the pedestrian pole:, length: 255
)
-
CrosswalkPresent
(
type: esriFieldTypeString, alias: Is there a marked crosswalk in the direction of travel?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
LandingInCrosswalk
(
type: esriFieldTypeString, alias: Is the 4x4 area at the ramp’s bottom in the crosswalk?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
TactilePanelPresent
(
type: esriFieldTypeString, alias: Is there a tactile panel present?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
TactilePanelColor
(
type: esriFieldTypeString, alias: Color of tactile panel?, length: 30
, Coded Values:
[Y: Yellow]
, [O: Other]
)
-
TactilePanelOtherColor
(
type: esriFieldTypeString, alias: If other color, what is it?, length: 30
)
-
TactilePanelManufacturer
(
type: esriFieldTypeString, alias: Manufacturer of tactile panel:, length: 30
, Coded Values:
[ART: Armor-Tile]
, [ADAS: ADA Solutions]
, [AT: Access Tile]
, ...4 more...
)
-
TactilePanelOtherManufacturer
(
type: esriFieldTypeString, alias: If other, enter the tactile manufacturer., length: 30
)
-
TactilePanelWidth
(
type: esriFieldTypeDouble, alias: Width of tactile panel (feet).
, Range: [0, 1000]
)
-
TactilePanelSameWidth
(
type: esriFieldTypeString, alias: Is the tactile panel the same width of the ramp?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
TactilePanelLength
(
type: esriFieldTypeDouble, alias: Length of tactile panel (feet).
, Range: [0, 1000]
)
-
TactilePanelDomeSpacing
(
type: esriFieldTypeDouble, alias: Distance between domes on tactile panel (inches).
, Range: [0, 1000]
)
-
TactilePanelNeedsReplacement
(
type: esriFieldTypeString, alias: Does the tactile panel need replacement?, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
InspectionID
(
type: esriFieldTypeInteger, alias: Inspection ID
)
-
ConstructionManager
(
type: esriFieldTypeString, alias: Construction Manager, length: 50
)
-
ConstructionAcceptanceDate
(
type: esriFieldTypeDate, alias: Construction Acceptance Date, length: 8
)
-
ReviewerName
(
type: esriFieldTypeString, alias: Reviewer Name, length: 50
)
-
ReviewDate
(
type: esriFieldTypeDate, alias: Review Date, length: 8
)
-
ReviewComments
(
type: esriFieldTypeString, alias: Review Comments, length: 255
)
-
AcceptedWithMEF
(
type: esriFieldTypeString, alias: Accepted with Maximum Extent Feasible, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
AcceptedwithVariance
(
type: esriFieldTypeString, alias: Accepted with Variance, length: 5
, Coded Values:
[Y: Yes]
, [N: No]
)
-
VarianceReferenceID
(
type: esriFieldTypeString, alias: Variance Reference ID, length: 100
)
-
VarianceComments
(
type: esriFieldTypeString, alias: Variance Comments, length: 255
)
-
MEFReferenceID
(
type: esriFieldTypeString, alias: MEF Reference ID, length: 100
)
-
MEFComments
(
type: esriFieldTypeString, alias: MEF Comments, length: 255
)
-
MitigationResponsible
(
type: esriFieldTypeString, alias: Who is the mitigation responsible party?, length: 255
, Coded Values:
[City: City]
, [Source: Source]
)
-
MeetsStandards
(
type: esriFieldTypeString, alias: Meets Standards, length: 255
)
-
ComplianceFailures
(
type: esriFieldTypeString, alias: Compliance Failures, length: 1000
)
-
CREECEnsuredDate
(
type: esriFieldTypeDate, alias: CREEC Ensured Date, length: 8
)
-
GlobalID
(
type: esriFieldTypeGlobalID, alias: GlobalID, length: 38
)
Supported Operations:
Query
Query Attachments
Query Analytic
Generate Renderer
Return Updates
Iteminfo
Thumbnail
Metadata