Talk:Default speed limits

From OpenStreetMap Wiki
Jump to navigation Jump to search

Generating table rows via a template

The table is massive and due to the wiki syntax very cumbersome to edit and also quite error-prone (it's easy to put something in the wrong column).

I suggest that we use a simple template Default speed limits/row (which I just created) to generate the rows.

So instead of e.g.

|urban
|30 mph
|
|
|
|
|
|
|
|40<ref>[http://www.cylaw.org/nomoi/enop/ind/2004_1_29/section-sc95d53b85-a26a-4821-7ad3-82683dc2b6e7.html Ο Περί Οδικής Μεταφοράς Επικίνδυνων Εμπορευμάτων Νόμος του 2004 (29(I)/2004), Ερμηνεία 2.] (1), «όχημα»

(retrieved 2022-06-24)</ref>
|
|
|
|-

we could have

{{/row
|urban
|30 mph
|hazmat=40 <ref>[http://www.cylaw.org/nomoi/enop/ind/2004_1_29/section-sc95d53b85-a26a-4821-7ad3-82683dc2b6e7.html Ο Περί Οδικής Μεταφοράς Επικίνδυνων Εμπορευμάτων Νόμος του 2004 (29(I)/2004), Ερμηνεία 2.] (1), «όχημα»

(retrieved 2022-06-24)</ref>
}}

Of course the code to parse the table would have to be updated to use something like mwparserfromhell to parse the templates. What do you think about this?

--Push-f (talk) 22:56, 29 June 2022 (UTC)

Thank you for your concern (about editability) and your work into a template. However, after reviewing this, I am against this for the sum of the following reasons:
  1. I only edit the table via the graphical editor, so editing the wrong column is not a concern for me that would need fixing
  2. But on the other hand, when using such a template, using the graphical editor will either not be possible or be more fiddly than before
  3. Additional possible issues through inflexibility of template (that maybe can be fixed or are not an issue at all, I am not an expert in templates): Refs can be in any column, i.e. at the country code, at the vehicle type but also at the individual speed limit; The speed limit value per vehicle type per road type can have multiple lines
  4. Yes, the code for the parser needs to be adapted. Additionally I am not well versed in Python, so I wouldn't look forward to do that even if using such template would pose a clear advantage for me
  5. It looks like the template solution would not support vertical merging of cells. However, this is used a lot in this table (in cases the legislation is written in that way)
--Westnordost (talk) 00:32, 30 June 2022 (UTC)
Not everybody uses the visual editor but even with that set aside the resulting diffs are quite unreadable, e.g. special:diff/2346726 or special:diff/2345978.
The wikitext table is the source of truth for this data and it's neither human-friendly nor machine-friendly.
But you are correct to notice that the row template I suggested does not handle vertical merging and would thus require many limits to be duplicated (which is of course undesirable).
I went ahead and created a new more sophisticated template, you can try it out at User:Push-f/Default speed limits (click the Edit source tab).
Note that this template takes care of vertical table cell merging and also automatically generates a machine-readable JSON (which would make the Python parser redundant). References should also just work.
Feel free to try it out and let me know what you think :) --Push-f (talk) 11:00, 30 June 2022 (UTC)
It's promising, but in a nutshell, I think it needs work and converting into that format will also be a lot of work. I will add a more detailed comment to the discussion page of User:Push-f/Default speed limits. Let's move the discussion there --Westnordost (talk) 11:42, 30 June 2022 (UTC)
1. This long table is now quite sluggish to edit in visual. There is noticeable time in loading and saving, if that's not my Internet being unstable. --- --- Kovposch (talk) 11:29, 19 April 2023 (UTC)

Nebraska errata and updates

Nebraska systematically changed its prima facie speed limits in 2018 [1], as reflected in [2]. Some limits have been raised, and various other changes were made. I also noticed some issues with the original encoding of the laws in this table:

  • Based on the NRS as of 2017, this table had been incorrectly assigning 50 mph to "unpaved roads", excluding surface=gravel and surface=compacted. In 2018, gravel and compacted surfaces were added to the same category as other unpaved roads.
  • The filters table had considered any highway=trunk or highway=trunk_link to be an expressway. However, in 2021, the U.S. community began a highway reclassification process that would redefine highway=trunk based on connectivity, leaving expressway=yes as the only tag indicating an expressway. [3] The 2018 law explicitly includes super-two highways in the same category as expressways. For the purpose of this law alone, it includes a definition of a super-two highway that probably aligns with expressway=yes based on the kinds of roads that get built to such a standard.
  • The filters table conflates highway=motorway_link with highway=motorway, highway=trunk_link with highway=trunk, etc. However, in the U.S., highway on- and off-ramps generally do not have legal posted speed limits. Instead, there is often a posted advisory speed limit that would be tagged maxspeed:advisory=*, but this speed is based solely on engineering considerations and not codified in the law. Therefore, with only a handful of exceptions, there should be no maxspeed=* on link ways in the U.S., and link ways shouldn't be included in these suggested queries.
  • The filters table defines Nebraska state highways based on the NE or N- prefix on ref=* tags on ways. However, the Nebraska state highway system includes many roads that do not have this prefix, such as Interstate Highways and U.S. Routes. [4] Moreover, a state highway may run concurrently with another kind of route, such that the roadway's ref=* may list it second or third in a semicolon-delimited list. A more robust query would include any roadway that is a member of a network=US:I, network=US:US, network=US:NE, or network=US:NE:* route relation.

I'd make some of these changes myself, but the article is dauntingly complex...

 – Minh Nguyễn 💬 18:30, 3 July 2022 (UTC)

I re-checked Nebraska (updated sources, updated values). Is there anything (or all) that should still be changed there now? --Westnordost (talk) 14:19, 17 July 2022 (UTC)

@Westnordost: I made a minor change. Another change that needs to be made is to stop including highway=motorway_link in the "motorway" filter. This makes sense in some countries, but not anywhere in the U.S.

There's also the issue that the filters for "state highway" in several states still relies on regular expression matching of ref=* tags on ways. These filters should ideally match network=* on route relations instead. I think this will become more important as OpenStreetMap Americana gains traction and the U.S. community consequently relaxes the way ref format to better match real-world usage. (There are even calls to delete ref=* from ways.) I suppose the filter for "Nebraska state highway" would look something like type=route and route=road and network~^US:(I|US|NE)\b. Whether the query should start with the relation and recurse down or start with the way or recurse up, that probably depends where this software will end up. Some routers like OSRM and Valhalla already have code to get the route relations that a given graph edge is a member of, but other routers may require postprocessing.

 – Minh Nguyễn 💬 10:24, 19 July 2022 (UTC)

Why no motorway link? --Westnordost (talk) 12:41, 19 July 2022 (UTC)
@Westnordost: In the U.S., freeway/expressway on/off-ramps have no legal speed limit, only advisory speeds (maxspeed:advisory=*). If that seems counterintuitive, this blog post does a good job of explaining why it works in practice. [5] There's no established tagging for expressway ramps, but at least highway=motorway_link can identify freeway ramps reliably. – Minh Nguyễn 💬 18:44, 20 May 2023 (UTC)

Ohio errata and updates

The main table cites [6] for Ohio speed limits. This unofficial copy of the ORC section is equivalent to [7]. The section has been amended twice since 2017. Based on a diff of the 2017 version with the current version, there are a few things that need to be updated that relate to implicit speed limits:

  • (B)(12) deleted: no longer a 55 miles per hour (89 km/h) limit on freeways outside municipal corporations.
    • Now combined with the old (B)(13): 60 miles per hour (97 km/h) on rural expressways with traffic lights (not just on rural divided highways except for freeways and expressways without traffic lights).
  • Old (B)(17), now (16): 65 miles per hour (105 km/h) limit applies also applies to urban expressways without traffic lights (not just urban Interstate freeway outerbelts). (The previous wording was most likely an oblique reference to I-270, I-275, I-475, and I-675.)
  • For the purpose of this section, the definition of "rural" has expanded to include portions of urban areas where the roads are built like in rural areas. It's very vague, but to me it sounds like a carveout for urban sprawl in the suburbs. I suspect this is a response to Butler and Warren counties getting automatically reclassified as "urban" counties according to federal law based on population (23 USC 101), even though no one on the ground would consider it urban per se due to low density development.
  • "Divided highway" is newly defined to specify a median at least 4 feet (1.2 m) wide, not counting turn lanes. Not sure if spatial queries are within the scope of this article.

Some of these definitions technically lean on a roadway's FHWA-compliant functional classification: a rural expressway is technically equivalent to HFCS=Other Freeway and Expressway except for highway=motorway. (Urban expressways have been tagged HFCS=Urban Freeway/Expressway.)

 – Minh Nguyễn 💬 01:35, 4 July 2022 (UTC)

TBH, I checked and updated all countries and states I could find the legislation for online EXCEPT Ohio, because it is so dauntingly overcomplex. So if you think that anything should be changed and you got the vista there, please feel free to do so. Just use the visual editor, it's quite impossible to do with source editing --Westnordost (talk) 14:22, 17 July 2022 (UTC)
I went over Ohio again after all. Almost did another flow chart(, but gave up on it after three attempts). Given the simplification/projection explained in the ref, I am quite sure I got everything right, see the references to the individual paragraphs if you have doubts. (See https://wiki.openstreetmap.org/w/index.php?title=Default_speed_limits&type=revision&diff=2358392&oldid=2358336) So I wonder if "expressways without traffic lights" would simply be mapped as highway=motorway? Or how else could they be distinguished from "expressways with traffic lights"? --Westnordost (talk) 12:57, 20 July 2022 (UTC)
@Westnordost: "Expressways without traffic lights" can still have at-grade intersections, so all that literally means is an expressway=yes without any highway=traffic_signals along it. In practice, the legislators probably were trying to distinguish between urban expressways (which have traffic lights at most intersections due to other regulations) and rural expressways (which only rarely have traffic lights as exceptions to the rule), hence my reference above to HFCS=Urban Freeway/Expressway above. As it happens, there's also a distinction between rural expressways with and without traffic lights. Ohio's speed limit laws have been written so piecemeal that I wouldn't be surprised if this was about some specific expressway that they wanted to exempt, without naming it, maybe due to a controversy some years back about "speed trap towns". – Minh Nguyễn 💬 18:33, 20 May 2023 (UTC)

Puerto Rico

There's a footnote flagging ambiguity over the speed limit for expressways. (The term used in Spanish is autopistas, which probably refers to all highway=motorway in this case, not just toll roads.) I believe this is a reference to the "design speeds" set forth in A Policy on Geometric Design of Highways and Streets (the "Green Book"). Since expressways are especially likely to have posted speed limit signs, there's really no point to shelling out an arm and a leg for a copy of this publication. On the other hand, AASHTO sponsored and approved USLIMITS2, a free wizard to determine the design speed of a roadway based on the same guidance. If you're curious, the full flowchart is available as a 30-page PDF document. – Minh Nguyễn 💬 21:42, 15 July 2022 (UTC)

Okay, if you think anything should be added to that particular footnote, go ahead. I see nothing actionable here. "autopista" is commonly defined in many Spanish-speaking country as equivalent to a fully controlled-access-highway (= motorway / freeway). "Autovia" would be equivalent to a motorroad or maybe an US-American expressway. --Westnordost (talk) 12:45, 17 July 2022 (UTC)
@Westnordost: In Puerto Rican Spanish, "autopista" means highway=motorway while "expreso" means expressway=yes. [8] The unofficial English translation you consulted was simply imprecise, so I reworded the footnote to remove the doubt. Furthermore, there's no concept of a motorroad=* in Puerto Rico, as the traffic laws are aligned to the U.S. mainland. – Minh Nguyễn 💬 18:14, 20 May 2023 (UTC)

Farm labor vehicles

This footnote for California equates farm labor vehicles with truck_bus=*. However, a farm labor vehicle is essentially defined by who it carries and for what purpose. [9] Farm labor vehicles are very often standard school buses that have been converted to non-school use (by painting over the yellow livery and posting a validated sticker). [10] In some other states, they can have more extensive modifications like being cut down. [11] In the old days, truck buses used to be used for this purpose, but I'm not sure if it's very common anymore. – Minh Nguyễn 💬 23:41, 15 July 2022 (UTC)

Sure, it is a projection. There is no such category as farm_labor_bus in the table. I find it really odd that there are speed limit limitations for school buses specifically but not for buses in general. So if one and the same bus carries tourists from A to B and on another occasion carries farm workers from C to D, different speed limits apply? I made this projection because I imagine buses having to carry labors to and around farms to necessarily be more rugged to access all those unpaved farmland access roads, hence I do not find it far-fetched that those may be indeed based on trucks rather than (city) buses --Westnordost (talk) 12:36, 17 July 2022 (UTC)
@Westnordost: In California, most likely both purposes require separate registration. Assuming the state allows a single vehicle to be registered for both purposes simultaneously, then yes, it would be subject to a different speed limit depending on its current use. But that would be quite theoretical, as it would require repainting the vehicle every time it's used for a different purpose. Rather, the most common case is that a school bus (vehicle type) is being used as a farm labor vehicle (vehicle use), while the least common case these days is that a truck bus (vehicle type) would be used as a farm labor vehicle (vehicle type). Thus I believe this projection is basically inaccurate. It would be better to handwave about a farm_labor_bus category that lacks established tagging in OSM. – Minh Nguyễn 💬 06:55, 19 May 2023 (UTC)
Uhm well, feel free to update this then. You live there after all and probably have a better handle on the interpretation of the legislation. As per your other comment, California needs some updating anyway, right? But please, put the explanation about farm labor vehicles into a cite note, for verifiability and in case someone else comes along thinking he spotted a mistake --Westnordost (talk) 12:25, 20 May 2023 (UTC)
@Westnordost: Fixed by supposing that a road dedicated to such vehicles would be tagged bus=agricultural. – Minh Nguyễn 💬 17:13, 20 May 2023 (UTC)

overriding

@Westnordost:

"vehicle speeds are now to be interpreted as additional restrictions on maxspeed"

Are you sure that it is a good idea? How one may express that subset has increased speed limit (no examples to give, but given complexity it likely happens somewhere).

It also is doing things differently than access tagging, making things more confusing Mateusz Konieczny (talk) 08:30, 9 August 2022 (UTC)

Short answer: Yes
It is necessary to properly depict the laws of some countries. In Hong Kong for example, the maximum speed is 50 km/h, unless otherwise signed. It can be signed to be higher than that. However, buses may never go faster than 70 km/h, regardless of the signed speed limit. Many countries have rules like that, i.e. maximum speeds for certain vehicle types (on certain roads), and these may be higher than the default speed limit for these roads, meaning that these only go into effect if a higher speed limit is signed.
If maxspeed:bus=70 would overwrite maxspeed=50 for buses, then it would look as if buses may go 70 km/h and all others only 50 km/h. Without this rule in "How to read this table", the maximum bus speed would have to be omitted altogether, making the mapping incomplete.
So does the situation ever occur anywhere that a specific vehicle type is allowed to go faster than the standard car? The answer is no.
Does the situation ever occur that a subtype of a vehicle type may go faster than it's supertype? Yes, all the time. E.g. coaches and minibuses are often allowed to go faster than buses.
But this is not what the "vehicle speeds are now to be interpreted as additional restrictions on maxspeed" rule is about. maxspeed:coach ought to _overwrite_ any rule that is valid for maxspeed:bus. I'll make this clear in the description --Westnordost (talk) 11:32, 9 August 2022 (UTC)
Or in other words, check this. This output is only possible because the values in this table are defined and interpreted as they are now:
https://westnordost.github.io/osm-legal-default-speeds/#cc=HK
compared with...
https://westnordost.github.io/osm-legal-default-speeds/#cc=HK&tags=maxspeed%3D90
--Westnordost (talk) 12:58, 9 August 2022 (UTC)
Resolved: answered

Section order

Maybe put "How to read this table" and similar earlier so someone new to this page will be less confused Mateusz Konieczny (talk) 20:26, 9 August 2022 (UTC)

The explanation in "how to read this table" refers to certain elements within the table. It would just be confusing in a different way to reorder it to be before the table. --Westnordost (talk) 20:29, 9 August 2022 (UTC)
Resolved: answered

Germany: No speed limits also on certain non-motorways

Dieterdreist found this:

https://community.openstreetmap.org/t/when-to-use-maxspeed-type-zone-maxspeed-or-source-maxspeed/5115/28

Haven't had the time to check this again, but maybe the current info on Germany is wrong.

--Westnordost (talk) 15:24, 13 November 2022 (UTC)

I've read the legislation again and I agree. Corrected. --Westnordost (talk) 14:46, 11 January 2023 (UTC)

Resolved: corrected

California March 2023

The California Legislature recently passed some new laws regarding speed limits that the California Department of Transportation has implemented in statewide standards, effective March 10. This table summarizes the changes. – Minh Nguyễn 💬 06:59, 23 March 2023 (UTC)

I updated the citations, but it looks like none of the changes affect implicit defaults. I did have to correct one misinterpretation that made the rural two-lane road rule apply to multilane roads instead. – Minh Nguyễn 💬 20:38, 20 May 2023 (UTC)

Horse speed limit in the District of Columbia

The District of Columbia (Washington, D.C.) still has a law on the books limiting horseback riders to 8 miles per hour (13 km/h). This law is famous as the one that the only sitting President was ever arrested for. The effort to repeal it hit a snag earlier this year. [12] – Minh Nguyễn 💬 02:40, 6 April 2023 (UTC)

Speed limits for carriages and other human- or animal-powered vehicles are excluded from the table because the assumption is that they can usually not go faster than the speed limit (if there is one) anyway. However, 8 miles per hour (13 km/h) seems kind of low, so I guess you could include it in the table... be advised however that horse speed limits are present nowhere else in the table, not because there are none in other states and countries but because I didn't bother to add / research them due to the assumption stated above. --Westnordost (talk) 12:51, 6 April 2023 (UTC)
@Westnordost: I went ahead and added a column for horse speed limits and an entry for D.C. District law is infamously archaic, so the citation is a bit difficult to follow. The 8-mile-per-hour (13 km/h) speed limit originally only applied to the urban part of the district, while 12 miles per hour (19 km/h) was the limit for the rural parts. Today D.C. is all urban, which makes it unique among U.S. states and territories. But if this table could include municipal regulations in general, there would other such speed limits for sure. – Minh Nguyễn 💬 11:15, 19 May 2023 (UTC)

Other conditions

Are any arbitrary text conditions supported? I want to add the equivalent of maxspeed=70 @ (learner) , and need to override some possibly by quoted comments for rarer or more complicated ones.
--- Kovposch (talk) 11:09, 19 April 2023 (UTC)

Can I override with none (*) as well? --- Kovposch (talk) 11:19, 19 April 2023 (UTC)

No, see Omissions and Limitations
> Situations in which drivers must slow down are omitted, such as at intersections, when there is poor visibility (due to weather or otherwise), in bends, at crossings, in streets "where there is a lot of pedestrian activity", near a church when there is a procession, near a bus stop when a bus is present etc. but also the age of the driver or how long he has the drivers license already
Remember, it is a projection, not a perfect 1:1 mapping because that would be impossible. However, you can always add footnotes with remarks like "actually the maxspeed is 70 for learners (source)" and stuff like that.
--Westnordost (talk) 12:02, 19 April 2023 (UTC)
For my other need, I want to override the 80km/h for minibus=* for private minibuses. This speed limit is only for public minibuses. --- Kovposch (talk) 05:29, 20 April 2023 (UTC)
Private, in what way? You know, minivans usually still count as private vehicles if they are not used for commercial transport of people. In most countries, the law makes three distinctions: passenger cars, buses and trucks. The difference between a bus and a minibus is often defined by the number of passenger seats. In contrast, speed restrictions to private vehicles are usually not made by number of seats, but looking at the weightrating. I.e. when a passenger car passes a certain weightrating, it then counts as a truck, maxspeed-wise. So, if a minibus is used as a passenger car / private vehicle, in most legislations I've read, it would still count as a sub-category of passenger cars. If the law in the country you are looking at is indeed the way I described, then this info could be added to the table, as another line in the default (=passenger car) column. With source information of course, and information how "minibus" in this context is defined --Westnordost (talk) 10:09, 20 April 2023 (UTC)

Allowed weight

Shouldn't the condition of maxweightrating=* be weightrating similar to others and weightcapacity ? It's common mistake to directly use maxweight=* and maxlength=* as *:conditional= * @ (maxweight *} and *:conditional= * @ (maxlength *} , which is what I suspect for the prevalence of https://taginfo.openstreetmap.org/search?q=maxweightrating#values ... --- Kovposch (talk) 11:26, 19 April 2023 (UTC)

Ok the paragraph below has maxspeed:conditional=60 @ (weightrating>12 AND trailerweight>0.75) ! Which one is the typo? --- Kovposch (talk) 11:33, 19 April 2023 (UTC)
Yeah, I think you are right, it should be weightrating --Westnordost (talk) 12:14, 19 April 2023 (UTC)
Resolved: corrected

Move country vehicle definition to another table

Following User_talk:Kovposch#Your_edits_on_default_speed_limits_(3) I suggest it is best to not include how each country define each mode here. It is not stated the modes here uses the OSM default definition either. --- Kovposch (talk) 16:11, 20 April 2023 (UTC)

This would be somewhat of a Herculean task. Not as Herculean as this page, but still would take quite a lot of time. So, the answer to that is "no". But maybe it could be handy if such a table existed, so go ahead if you like.
I doubt though that the existence of such a table would change anything in regard to this page. After all, in OSM, we have only two access-tags for goods vehicles: goods=* for any goods vehicles and hgv=* for heavy goods vehicles. Legislation in different countries may define other or more categories. With that second table, the current structure would not work at all anymore, I guess it couldn't be a table anymore. Also, I know for a fact that some countries do not define vehicle classes at all (for the purpose of speed limits) but directly assign speed limits to certain properties which would somewhat complicate things further. --Westnordost (talk) 16:25, 20 April 2023 (UTC)
Resolved: answered

Conditionals evaluation precedence

"Speed limits by vehicle type" section 1 states that conditional take precedence over modes (Quote: "unless that exact (conditional) rule is overwritten"). The third example confirms this as well. This would look something like this (smaller number to higher number, take the first entry that is found).

*:conditional=*
maxspeed=* 6 3
maxspeed:bus=* 5 2
maxspeed:minibus=* 4 1

It however notes that this is to be expected of all maxspeed values in OSM.

Conditional evaluation rules however states that modes take precendece over conditionals (Quote: "A restriction having a more specific transportation mode overrules a less specific transportation mode." and "A conditional restriction overrules a non-conditional restriction of the same transportation mode and direction").

*:conditional=*
maxspeed=* 6 5
maxspeed:bus=* 4 3
maxspeed:minibus=* 2 1

The third example on this wiki page states that maxspeed:bus=80 + maxspeed:conditional=40 @ (trailer) results in a minibus with trailer being limited to 40 km/h. Following the conditional rules it should, as far as i understand it at least, be 80 km/h. It would be 40 km/h taking rule two into account, which would however cause the fourth example to yield 40 km/h as well.

In reality I don't think this confusion would change anything as the second rule causes the same lowest speed to be selected in both versions. I would however like to at least the warning that this differs from the usual OSM parsing (as the second rule does) or change it to use the usual conditional evaluation order. --GinnyTheCat (talk) 00:20, 8 February 2024 (UTC)

I understand you understand that
"A restriction having a more specific transportation mode overrules a less specific transportation mode. E.g., a tag for "psv" overrules a tag for "motor_vehicle" in case of a public service vehicle. See Key:access#Transport mode restrictions for the transport mode hierarchy."
conflicts with
"Limits that are defined for a category are valid for the subcategory too, unless that exact (conditional) rule is overwritten. "
? To me, it sounds, the second statement is just more specific, while the first statement doesn't explicitly state what exactly is being overruled. Sure, maxspeed:minibus=100 overrules maxspeed:bus=80, but the first statement doesn't say anything about whether a conditional rule of a supercategory is overridden by a non-conditional rule of a subcategory (i.e. whether maxspeed:bus=80 overrides maxspeed:conditional=40 @ (trailer))
Well, but whether one does contradict the other or one is just more specific than the other is perhaps not that important but important is that they differ, so your suggestion to mention this on the page makes sense to me --Westnordost (talk) 19:02, 8 February 2024 (UTC)
The conditionals page is not clear at all in that sense. However, the examples below hint that *=* and *:conditional=* are kind of bonded together as one entity and will both be overwritten by a more specific transportation mode.
oneway:conditional=yes @ Su + oneway:bicycle=no in the examples states that "Street is oneway on Sundays but bicycles may use it in both directions at all times. The second tag overrules the conditional tag because of the specific transportation mode 'bicycle'."
maxweightrating=7.5 + maxweightrating:bus=none + maxweightrating:conditional=none @ delivery in the examples states that "There is a maxweightrating restriction which is overruled by maxweightrating:bus (as this includes a more specific transportation mode) and by maxweightrating:conditional (a conditional restriction of the same transportation type — i.e. none specified — as maxweightrating=). Therefore, the maximum weight rating of 7.5 t applies to all vehicles except buses and those loading ('delivery')."
Is there a reason the rule 1 differs from the normal assumed OSM parsing as there is with rule 2 (because of the way the legal text is written)? If not I think it would be easier to align it to the normal behavior to make parsing easier. If it makes a difference I would include that in the notice to make it more clear. --GinnyTheCat (talk) 16:11, 10 February 2024 (UTC)
Usually, in the legislation, you will find statements or tables that declare something like:
On roads outside built-up areas:
Motor vehicles with trailer of MGV of more than 450kg: 60 km/h
Trucks and Busses: 80 km/h
Other vehicles: 100 km/h
So, in such case, it seems clear to me that busses with a trailer may only go 60 km/h because a bus is a motor vehicle. The rule "Limits that are defined for a category are valid for the subcategory too, unless that exact (conditional) rule is overwritten. " stems from that. After all, it is only a syntactical thing whether a maxspeed with trailer is expressed via a conditional rule or e.g. maxspeed:trailer=60.
There is no reason why a speed limit that is defined for "Motor vehicles with a MGV of above 3.5t" should not be valid for e.g. trucks unless specifically excluded or modified by a second rule.
From my point of view, at least from looking at how the speed limit legislation is written, to me it seems like the only logical way to evaluate what overwrites what on maxspeeds. --Westnordost (talk) 13:49, 11 February 2024 (UTC)