オブジェクト思考的道路交通法の理解で導かれたこと

日本人として一般的な文章は常識的に理解できる能力はあると思っているが、それが法律ということになってくると、からっきし自信が無くなる。今、非常に興味を持っているのが、道路交通法の第45条(駐車を禁止する場所)についての以下の規定。

第45条 車両は、道路標識等により駐車が禁止されている道路の部分及び次に掲げるその他の道路の部分においては、駐車してはならない。...(中略)...

この条文を読み解くためには、第2条、第17条の規定も関係していて、それを正確に理解する必要がある。そこで、道路交通法RubyのClassと捉えて、以下のように書き直してみた。(ちょっといい加減だけど...。)

Class 道路交通法
  def 道路
    道路法 (昭和二十七年法律第百八十号)第二条第一項 に規定する道路 or
    道路運送法 (昭和二十六年法律第百八十三号)第二条第八項 に規定する自動車道 or
    一般交通の用に供するその他の場所をいう。
  end
  
  def 歩道
    歩行者の通行の用に供するため
    縁石線 or さく or その他これに類する工作物によつて
    区画された道路の部分をいう。
  end
  
  def 車道
    車両の通行の用に供するため
    縁石線 or さく or その他これに類する工作物 or 道路標示によつて
    区画された道路の部分をいう。
  end
  
  def 路側帯
    歩行者の通行の用に供し、車道の効用を保つため、
    歩道の設けられていない道路 or 道路の歩道の設けられていない側の
    路端寄りに設けられた帯状の道路の部分で、道路標示によつて区画されたものをいう。
  end
  
  def 道路標識
    道路の交通に関し、規制又は指示を表示する標示板をいう。
  end
  
  def 道路標示
    道路の交通に関し、規制又は指示を表示する標示で、
    路面に描かれた道路鋲、ペイント、石等による線、記号又は文字をいう。
  end
  
  module 第2章_歩行者の通行方法
    ...(中略)...
  end
  
  module 第3章_車両及び路面電車の交通方法
    歩道等 = 歩道又は路側帯
    道路 = 車道 if 歩道等と車道の区別のある道路(以下第九節の二までにおいて同じ。)
    道路の中央 = 
      軌道が道路の側端に寄つて設けられている場合においては当該道路の軌道敷を除いた部分の中央とし、
      道路標識等による中央線が設けられているときはその中央線の設けられた道路の部分を中央とする。(以下同じ。)
    左側部分 = 道路の中央から左の部分(以下「左側部分」という。)

    def 17条_通行区分      
      車両は、歩道等と車道の区別のある道路においては、車道を通行しなければならない。
      ただし、道路外の施設又は場所に出入するためやむを得ない場合において歩道等を横断するとき、
      又は第四十七条第三項若しくは第四十八条の規定により
        歩道等で停車し、若しくは駐車するため
          必要な限度において歩道等を通行するときは、この限りでない。
        
      車両は、左側部分を通行しなければならない。
    end
    
    ...(中略)...
    
    def 45条_駐車を禁止する場所
      1 車両は、道路標識等により駐車が禁止されている道路の部分
      及び次に掲げるその他の道路の部分においては、駐車してはならない。
      ただし、公安委員会の定めるところにより警察署長の許可を受けたときは、この限りでない。
        一 人の乗降、貨物の積卸し、駐車又は自動車の格納若しくは修理のため道路外に設けられた施設又は場所の道路に接する自動車用の出入口から三メートル以内の部分
        二 道路工事が行なわれている場合における当該工事区域の側端から五メートル以内の部分
        三 消防用機械器具の置場若しくは消防用防火水槽の側端又はこれらの道路に接する出入口から五メートル以内の部分
        四 消火栓、指定消防水利の標識が設けられている位置又は消防用防火水槽の吸水口若しくは吸管投入孔から五メートル以内の部分
        五 火災報知機から一メートル以内の部分
      2 車両は、第四十七条第二項又は第三項の規定により駐車する場合に
      当該車両の右側の道路上に三・五メートル(道路標識等により距離が指定されているときは、その距離)以上の余地がないこととなる場所においては、駐車してはならない。
      ただし、貨物の積卸しを行なう場合で運転者がその車両を離れないとき、
      若しくは運転者がその車両を離れたが直ちに運転に従事することができる状態にあるとき、
      又は傷病者の救護のためやむを得ないときは、この限りでない。
      3 公安委員会が交通がひんぱんでないと認めて指定した区域においては、前項本文の規定は、適用しない。
    end
    
    ...(中略)...
    
  end
end

上記の道路交通法Classに、以下の疑問をぶつけてみる。

  • 道路標識によって駐車禁止が指定された区間で、車を路側帯の中に完全に収まるように駐車した場合、駐車禁止の違反になるだろうか?


第45条の今問題になりそうな部分だけに限定して読み直してみると、以下の一文になる。

  • 車両は、道路標識等により駐車が禁止されている道路の部分においては、駐車してはならない。


一見、当然駐車禁止だ!と言われると、すいませんでした!と謝りたくなってしまうが、太字の部分に注目!
道路の部分て、どこの部分?

  • 歩道等 = 歩道又は路側帯
  • 道路 = 車道 if 歩道等と車道の区別のある道路(以下第九節の二までにおいて同じ。)


上記定義から、歩道又は路側帯と、車道の区別のある道路であれば、第45条の道路の部分は、車道の部分と読み替えることができるのである。
そして、第2条の定義によると、車道と路側帯は明確に区別されている。路側帯は車道ではないのだ。
よって、道路標識は車道に駐車することを禁止しているだけであって、路側帯に駐車することは禁止していない。
つまり、駐車禁止の道路標識による違反にはならない、という結論に達してしまった...。
ただし、以下の条件を満たしていないと、その他の条文が定める法定駐車禁止違反になってしまうが...。

  • 路側帯は1本の白い実線で道路標示されている。(破線と実線、あるいは実線と実線の2本で道路標示されている場合は、その路側帯は駐車禁止場所になる。)
  • 車の右側に3.5m以上の余地が必要。
  • 車の左側に0.75m以上の余地が必要。(車の幅を1.7mとすると、幅2.45m以上のとても広々とした路側帯)
  • 第44条・第45条で規定する、その他の駐車・停車禁止場所ではないこと。

路側帯の定義も要注意で、道路の左端に歩道が存在すれば、歩道と車道の間の地帯は路側帯ではないらしい。車道の一部と見なされ、駐車禁止の道路標識の有効範囲という判例がある。(ただし、車道ではないとして、車で通行することを違反とする判例もある。)


道路標識によって駐車禁止が指定された区間であっても、1本の白線で区切られる路側帯の中に車が完全に収まるように駐車すれば、指定駐車禁止の違反にはならない。(その他の法定駐車禁止に違反していない場合)」は、果たしてトリビアになるのだろうか?

      • 法律に詳しい方からコメント頂けると嬉しいです。

所感

  • 条文の中で、曖昧な日本語を明確に定義しようとしているが、文法が日本語のままなので、正確に理解するには注意深い読解力が必要。
  • 法律的な文法にもっと慣れれば、もう少し理解し易くなるのかもしれない。
  • Rubyで表現することで、言葉の定義や前提条件、そのスコープが自分としては明確になった。
  • そのままの日本語で読む時も、言葉の定義や前提条件のスコープに注意しておくと、理解が深まるのかもしれない。
  • 条文の規定を、他の法律や政令に委ねてしまっている条文が多い。(Ruby的には他のオブジェクトまたはクラスに処理を委譲している。)
  • 一つの事件を判定するのに、一つの法律で判断できることはなく、複数の法律の規定が複雑に関与している。
  • オブジェクト指向プログラミングも複数のオブジェクトが複雑に関連して、一つの情報をうまく処理する仕組みだ。
  • その辺は似ているが、根本的な違いが一つ。
  • オブジェクト指向なコードは、CPUが適切に処理して、素早く的確な答えを出してくれるが、
  • オブジェクト思考な法律を理解して判断するのは人間であり、CPUのように素早く的確な答えを出すのは無理...。
  • 法律を理解するということは、オブジェクト指向なコードを自分で読んで答えを出す作業(デバッグソースコードを読む作業)に似ているかもしれない。
  • とすると、優秀なプログラマーは、優秀な法律家にもなり得る?