tosdr / tosback2

Reimplementing TOSBack with Ruby and using git to see TOS changes!
http://tosback.org
GNU General Public License v2.0
125 stars 32 forks source link

Handling multiple jurisdictions / countries #14

Open Zegnat opened 10 years ago

Zegnat commented 10 years ago

Stripe has Terms split over 4 countries: CA, IE, GB, US. How should this be reflected in the rules?

One idea is to add a new attribute country on the url element and expand the definition to allow multiple url elements under a single docname, like so:

<sitename name="stripe.com">
 <docname name="Terms of Service">
  <url name="https://stripe.com/ca/terms"
       xpath="//article[1]" lang="en" country="ca">
   <norecurse name="arbitrary"/>
  </url>
  <url name="https://stripe.com/ie/terms"
       xpath="//article[1]" lang="en" country="ie">
   <norecurse name="arbitrary"/>
  </url>
 </docname>
</sitename>

This could even be useful for multi-lingual cases. Such as this fictitious site:

<sitename name="multilingual.tld">
 <docname name="Terms of Service">
  <url name="http://multilingual.tld/be/nl"
       xpath="//main" lang="nl" country="be">
   <norecurse name="arbitrary"/>
  </url>
  <url name="http://multilingual.tld/be/fr"
       xpath="//main" lang="fr" country="be">
   <norecurse name="arbitrary"/>
  </url>
  <url name="http://multilingual.tld/ca/fr"
       xpath="//main" lang="fr" country="ca">
   <norecurse name="arbitrary"/>
  </url>
  <url name="http://multilingual.tld/ca/en"
       xpath="//main" lang="en" country="ca">
   <norecurse name="arbitrary"/>
  </url>
 </docname>
</sitename>

(I wanted to discuss this in #tosback but couldn’t find the channel on either freenode or OFTC.)