Wow this looks like a great addition to the information feed and will hopefully allow for even better informational displays for people utilizing apps as well as which platform and station to proceed to!
1. I would like to see tags in their own file as the variability of tag lengths could potentially make it harder to arrive on a standard length for a tags field in whatever data store you'd use for your app or website as the number of tags could be quite lengthy. Not to mention you'd want to extract these tags into some sort of list anyways for processing and putting them in separate file allows them to be in that format already. It also allows you to only include facilities and tag them later. A separate file also allows for the addition of extra fields to tags themselves in the future like if your tags needed a specifier. e.g. static-information-display might have a map version tied to it but is a part of a platform facility, or a platform might have a platform-length tag with a value in feet as well as a platform-length-units specified as ft.
2. On facility types I'd say the current breakdown seems pretty good, I might suggest a couple, Retail (for a name or listing of the retail operations in a station), and Restrooms, also in private mode share please include which stations have a bike share facility.
3. I think having a parent facility is a good idea as you'll be able to group all the non-fare controlled areas into one "facility" and the fare-controlled facilities into their own as well. A descriptive tag for fare-controlled area might be good to have too (unless that's what the is-requires-fare-media tag is for, but I think having the fare control info on the facility itself, much like the accessibility info helps)
In regards to tag naming I've got a few questions as to why we've got to put is- in front of everything for the descriptive tags. Using is-requires,is-dispensenses, is-accepts, "is-" is clunky and redundant for tagging purposes. Using a specific verb at the beginning like, requires-, dispenses-, accepts-, is- ,provides a more clear understanding to people who will utilize the tags. I also feel like you should continue with your the building pattern for descriptive tags in the same manner as the informational.
e.g. accepts-payment
accepts-payment-cash
accepts-payment-credit-card
accepts-payment-debit
accepts-payment-contactless
accepts-payment-fare-media
dispenses-fares
dispenses-fares-passes
dispenses-fares-single-ride
dispenses-fares-stored-value
is-climate-controlled
is-climate-controlled-heated
is-climate-controlled-air-conditioned
requires-payment
requires-payment-fare-media
requires-payment-fare-media-contactless
requires-payment-fare-media-scannable-barcode
etc.
Using this methodology you could then apply a standard negator to a more specific tag while still applying the collective version of the tag. e.g. accepts-payment & not-accepts-payment-contactless & not-accepts-payment-credit-card-american-express would mean that this facility would accept all payment types under the accepts-payment-* except for contactless and american express credit cards.
Another solution would be to resolve all the informational tags into an is-, has- or defines- style tag so that descriptive and informational tags are easily discernable
eg.
has-wifi
has-highsubplatform
is-parking-area
has-parking-payment-kiosk
has-parking-payment-cash-box
is-restroom-male
is-restroom-female
is-restroom-genderless
has-baby-changing-station
is-bike-share-station
defines-platform-length
defines-platform-length-unit
defines-ceiling-height
etc
So something like verb-general-specific-more-specific-even-more-specific
Also if you're going to include mini-highs as a tag then you really should include low-level platforms and high level-platforms as tags too.
Thanks,
Patrick Greenwell