This is the place to discuss issues that are relevant for locations in the US. For any other discussions, please use the main forums.

Post Reply

WME Validator localization for US

Post by
USA Validator Localization Pack Work in Progress

Final checks will be here, for now these are just some ideas:

Incorrect Format: Spaces in Interstate Name
Reports:
"I -10", "I 10", "I- 10" = misplaced space (must be I-# no spaces)
"I-10W", "I-23E" = must have space between route and directional (35E,W and 69E,W,C allowed)
"toI-10", "to I-10/ Baton Rouge" = must have space before and after route

Code: Select all

${street}
(.* |^)(I -|I \d|\S+I-\d|I-(?!(\d+|35[WE]|69[WEC])( .*|$)))
Incorrect Format: Interstate Number
Reports:
"I-7" = nonexistent single digit route number
"I-05" = route number starting with zero
"I-2210" = too many digits in route number, up to three allowed

Code: Select all

${street}
(.* |^)(I-(?!([2458]|[1-9][0-9]{1,2}|35[WE]|69[WEC])( .*|$)))
Incorrect Directional on Primary Interstate
Reports:
"I-95 E" = Odd routes should be N/S
"I-84 S" = Even routes should be E/W
"I-84 Business E" = Interstate and directional should be together

Code: Select all

${street}
OLD:
/I-[0-9]?([13579][EWC]? [EW]( .*|$)|[24680] [NS]( .*|$))/
NEW:
/I-[1-9]?(([13579][EWC]?(?! ([NS]|Inner|Outer)))|([24680](?! ([EW]|Inner|Outer))))( .*|$)/
Non-Freeway Segment Named as Interstate
Reports any non-Freeway Segment where the whole street name is an interstate name:
I-84 W
I-69C W
I-485 Outer

Code: Select all

${typeRank}:${street}
/^([1-9]|1[0-4]):I-\d+[EWC]? ([NSEW]|Inner|Outer)$/
Railroads not level -5 or at least rank 3:

Code: Select all

${typeRank}:${lock}:${elevation}
^2:(?![3-6]:\-[5])
Reference:

Validator Segment ${TypeRank}:

Code: Select all

1:  Runway
2:  Railroad
3:  Stairway
4:  Pedestrian Boardwalk
5:  Walking Trail
6:  Private Road
7:  Parking Lot Road
8:  Dirt Road
9:  Service Road
10: Street
11: Primary Street
12: Ramp
13: Minor Highway
14: Major Highway
15: Freeway
Validator Segment ${Type}:

Code: Select all

1:  Street
2:  Primary Street
3:  Freeway
4:  Ramp
5:  Walking Trail
6:  Major Highway
7:  Minor Highway
8:  Dirt road / 4X4 Trail
9:
10: Pedestrian Boardwalk 
11: 
12: 
13: 
14: 
15: 
16: Stairway
17: Private Road
18: Railroad
19: Runway/Taxiway
20: Parking Lot Road
21: Service Road
Last edited by pumrum on Fri Apr 25, 2014 6:24 pm, edited 22 times in total.

Post by berestovskyy
Hi!
sketch wrote:I think I had problems with \d when actually building the file. berestovskyy suggested I use [0-9] instead.
When we move a RegExp from the "Custom RegExp" field into the localization pack, we have to escape all backslashes, i.e. use '\\' instead of '\' or use '[0-9]' instead of '\d'.

In other words:
Custom RegExp field: I-\d{1,3}
--> Localization pack "regexp" property: "I-\\d{1,3}"


I suggest to use checks #160-167 to easily mix road types with street names. Simply enable the corresponding check in your localization pack and set the regexp param.


At the moment there are two template variables for road types:
${type} - expands to WME road type number, i.e. 3 for Freeway, 6 for Major, 7 for Minor etc.
${typeRank} - expands to road type "rank", i.e. 1 for Runway ... 15 for Freeway (see Road type drop-down list for the order)
berestovskyy
Posts: 904
Has thanked: 309 times
Been thanked: 821 times

Post by berestovskyy
sketch wrote:160-167 won't work in the US though — we can't say a Freeway has the wrong name, because although there are plenty freeways named say "I-10 W", there are also plenty freeways named "US-90 W" and "SR-63 N" and "Florida's Tpke S"
Sure, you just list all of those formats in regexp field for #160 and you're done. Here is a working example for BeNeLux:

Code: Select all

"160.enabled": true,
"160.problemLink": "https://wiki.waze.com/wiki/Benelux_Freeway",
"160.params": {
	"solutionEN": "Rename the Freeway segment to a 'Anum' or 'Anum - Enum' or 'Anum ri Dir1 / Dir2'",
	"regexp": "!/^A[0-9]+( - (A|E)[0-9]+)*( ri [^\\/]+( \\/ [^\\/]+)*)?$/",
},
sketch wrote:Since 70 et seq. are programmed as inverse of this, they also won't work.
Just leave #70 disabled.
sketch wrote:Easy enough when you are using a road type affirmatively, but when you're trying to negate it, problems can arise.
Sure, it's a bit complicated, so I suggest to use checks #160-167 instead ;) See the example above.
berestovskyy
Posts: 904
Has thanked: 309 times
Been thanked: 821 times

Post by dbraughlr
pumrum wrote:Railroads not level -5 or at least rank 3:
I recommend extending this to runways as well.
dbraughlr
Posts: 569
Has thanked: 164 times
Been thanked: 98 times

Post by banished
pumrum wrote:in the case of railroads, I believe -5 was chosen because roadways very rarely need to deviate down 5 levels from ground, and having railroads and road segments intersect is very common - so they chose the elevation least likely to interfere with the drivable roadways.
Railroads are set at -5 and disconnected from any drivable road out of an abundance of caution to mitigate against inadvertent/newbie connections. We all have a healthy concern that even if railroads are not supposed to be navigable, no one wants to take the chance.

Railroads are also (supposed to be) locked at L-5 for the same inadvertent/newbie reason. This has not yet been added to the Road Type wiki.

Best to you,
banished
Waze Global Champs
Waze Global Champs
Posts: 840
Has thanked: 125 times
Been thanked: 146 times
GC, ARC, Veteran, CISSP, MCP

Post by Bigbear3764
krikketdoug wrote:I'll admit this is local to Chicago, IL, but I don't know where else to ask the question, and it may be relavent to other local areas within ths US.

Waze is in the process of including vehicle types, including trucks. Validator has shown the ability to interact with the restrictions layer. For example, I can see expired restrictions.
Don't go setting restrictions for trucks on these roads. Until waze has a setting on your phone to set what type of vehicle you are driving, setting any restriction will restrict all vehicles.


Sent from my iPhone using Tapatalk
Bigbear3764
Country Manager
Country Manager
Posts: 2618
Has thanked: 202 times
Been thanked: 962 times

Post by CBenson
I frequently come across truck restrictions added to the map. They seem to have no effect at all at this point, as you can't indicate you are truck.
CBenson
EmeritusChamps
EmeritusChamps
Posts: 10330
Has thanked: 646 times
Been thanked: 1844 times
Regional Coordinator: Mid-Atlantic, US
Verizon, Nexus 6, Android 6.0.1, Waze 4.7.0.902

Post by DwarfLord
sketch wrote:Since "St" is now pronounced "Street" regardless of location in the phrase, we have a lot of work to do to change all abbreviations of "Saint" as "St" to "St."
A fellow editor tells me that lots of users are still running a version of the Waze client that doesn't reliably pronounce "St." as "Saint" (I'm told this capability only arrived in June).

Based on this understanding and the sensible desire for backward compatibility he has been changing some recent "St." edits to spell out the "Saint".

What is the consensus on maintaining backward compatibility here? Clearly we want to stamp out use of "St" for "Saint", but should we be actively removing "St." abbreviations as well, and replacing them all with the spelled-out version so that older clients work?

Or should we switch to "St." wherever we find the opportunity and abandon backward compatibility in this case?
DwarfLord
Wiki Master
Wiki Master
Posts: 2507
Has thanked: 1089 times
Been thanked: 1480 times

Post by crazycaveman
Wasn't sure if anyone had posted checks for wrong road types on segments yet (searched and didn't see anything), but here's my stab at it (s18slider and I did a good bit of troubleshooting on it):

Code: Select all

// All US Highways should be at least Major Highway (except BUS, SPUR, LOOP)
${typeRank}#${street}@#${altStreet[0]}@#${altStreet[1]}@#${altStreet[2]}@#${altStreet[3]}@#${altStreet[4]}@#${altStreet[5]}@#${altStreet[6]}@#${altStreet[7]}@#${altStreet[8]}@#${altStreet[9]}@
/^[1-9](?![245]).*#(?:US Hwy |US-)\\d+(?: [NSWE]| ALT| BYP| CONN| TRUCK| SCN| Scenic)*@/i

Code: Select all

// All State Highways should be at least Minor Highway type (except BUS, SPUR, LOOP)
${typeRank}#${street}@#${altStreet[0]}@#${altStreet[1]}@#${altStreet[2]}@#${altStreet[3]}@#${altStreet[4]}@#${altStreet[5]}@#${altStreet[6]}@#${altStreet[7]}@#${altStreet[8]}@#${altStreet[9]}@
/^[1-9](?![2-5]).*#(?:(?:State Hwy |SR-|SH-|K-|LA-|M-|MA-|MS-|NC-|SC-)\\d+(?: [NSWE]| ALT| BYP| CONN| TRUCK| SCN| Scenic)*|(?:US Hwy |US-)\\d+(?: [NSWE]| BUS| LOOP| SPUR)+)@/i

Code: Select all

// All State BUS, SPUR, LOOP Highways should be at least Primary Street type
${typeRank}#${street}@#${altStreet[0]}@#${altStreet[1]}@#${altStreet[2]}@#${altStreet[3]}@#${altStreet[4]}@#${altStreet[5]}@#${altStreet[6]}@#${altStreet[7]}@#${altStreet[8]}@#${altStreet[9]}@
/^[1-9](?![1-5]).*#(?:State Hwy |SR-|SH-|K-|LA-|M-|MA-|MS-|NC-|SC-)\\d+(?: [NSWE]| BUS| LOOP| SPUR)+@/i
I believe I have the right state abbreviations in there for all the states. Might also be able to modify that last check to include county highways/routes, too.
crazycaveman
US Waze Champs
US Waze Champs
Posts: 843
Has thanked: 229 times
Been thanked: 441 times

Post by crazycaveman
Yeah, the limit was raised. I'm trying to put one together specifically for SC, which is where I came up with this. I'm sure there's a way to simplify it, but then again, maybe not.
crazycaveman
US Waze Champs
US Waze Champs
Posts: 843
Has thanked: 229 times
Been thanked: 441 times

Post by crazycaveman
Found an error in my above regular expressions. Here are the correct ones:

Code: Select all

// All US Highways should be at least Major Highway (except BUS, SPUR, LOOP)
${typeRank}#${street}@#${altStreet[0]}@#${altStreet[1]}@#${altStreet[2]}@#${altStreet[3]}@#${altStreet[4]}@#${altStreet[5]}@#${altStreet[6]}@#${altStreet[7]}@#${altStreet[8]}@#${altStreet[9]}@
/^[1-9](?![245]).*#(?:US Hwy |US-)[0-9]+(?: ALT| BYP| CONN| TRUCK| SCN| Scenic| [NSWE])*@/i

Code: Select all

// All State Highways should be at least Minor Highway type (except BUS, SPUR, LOOP)
${typeRank}#${street}@#${altStreet[0]}@#${altStreet[1]}@#${altStreet[2]}@#${altStreet[3]}@#${altStreet[4]}@#${altStreet[5]}@#${altStreet[6]}@#${altStreet[7]}@#${altStreet[8]}@#${altStreet[9]}@
/^[1-9](?![2-5]).*#(?:(?:State Hwy |SR-|SH-|K-|LA-|M-|MA-|MS-|NC-|SC-)[0-9]+(?:| ALT| BYP| CONN| TRUCK| SCN| Scenic| [NSWE])*|(?:US Hwy |US-)[0-9]+(?: BUS| LOOP| SPUR)+(?: [NSWE])?)@/i

Code: Select all

// All State BUS, SPUR, LOOP Highways should be at least Primary Street type
${typeRank}#${street}@#${altStreet[0]}@#${altStreet[1]}@#${altStreet[2]}@#${altStreet[3]}@#${altStreet[4]}@#${altStreet[5]}@#${altStreet[6]}@#${altStreet[7]}@#${altStreet[8]}@#${altStreet[9]}@
/^[1-9](?![1-5]).*#(?:State Hwy |SR-|SH-|K-|LA-|M-|MA-|MS-|NC-|SC-)[0-9]+(?: BUS| LOOP| SPUR)+(?: [NSWE])?@/i
My previous checks would catch the cardinals when checking for BUS/SPUR/LOOP, so if a street or primary street was named US-99 N it would get flagged twice. This should fix that
crazycaveman
US Waze Champs
US Waze Champs
Posts: 843
Has thanked: 229 times
Been thanked: 441 times