New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Specifying when/where an Action may be performed #1741

Open
vholland opened this Issue Sep 18, 2017 · 0 comments

Comments

Projects
None yet
1 participant
@vholland
Contributor

vholland commented Sep 18, 2017

Many Action links, particularly for consuming media, are limited by time and/or region based on the complexities of licensing. For example, a user may only be able to listen to a song after a certain date or read a book in a certain country. To help authors describe the access restrictions for performing an Action, I am proposing adding the following:

  1. Thing > Intangible > ActionAccessSpecification: A set of requirements that a must be fulfilled in order to access a consume action. It would have the following properties:
  • availabilityStarts: This property already exists. We would add it to ActionAccessSpecification to allow authors to describe when users can begin performing the Action.
  • availabilityEnds: This property already exists. We would add it to ActionAccessSpecification to allow authors to describe when users can no longer perform the Action.
  • eligibleRegion: This property already exists. We would add it to ActionAccessSpecification to allow authors to describe where the user can perform the Action.
    expectsAcceptanceOf: This property already exists. We would add it to ActionAccessSpecification to allow authors to say an Offer must be accepted before the Action can be performed. This is used in cases where users must purchase or rent access to the item.
  • requiresSubscription: This property already exists and expects a boolean. We would expand both the domain and range to allow for a description of the subscription. (See below).
  1. Add a new property actionAccessibilityRequirement to ConsumeAction to specify the requirements needed to access the Action.
  2. Thing > Intangible > MediaSubscription: A subscription which allows a user to access media including audio, video, books, etc. It would have the following properties:
  • authenticator: The Organization responsible for authenticating the user's subscription. For example, many media apps require a cable/satellite provider to authenticate your subscription before playing media.
  • expectsAcceptanceOf: This property already exists. We would add it to MediaSubscription to allow authors to say an Offer must be accepted for the subscription to be considered valid. The relationship between the action provider, authenticator, and subscription seller is sometimes complicated, so I have tried to reference an Offer which may go into further detail about the seller, etc.

An example may look like:

{
  "@context": "http://schema.org/",
  "@type": "MusicRecording",
  "potentialAction": {
    "@type": "ListenAction",
    "actionAccessibilityRequirement": {
      "@type": "ActionAccessSpecification",
      "availabilityStarts": "2017-01-01T00:00",
      "availabilityEnds": "2017-12-31T00:00",
      "eligibleRegion": {
         "@type": "Country",
         "sameAs": "https://www.wikidata.org/wiki/Q166433",
         "name": "US"
       },
       "requiresSubscription": {
         "@type": "MediaSubscription",
         "name": "ACME streaming music monthly subscription",
         "authenticator": {
           "@type": "Organization",
           "name": "ACME Media"
         }
       },    
       "expectsAcceptanceOf": {
         "@type": "Offer",
         "itemOffered": {
           "@type": "MusicRecording",
           "name": "Song I am listening to that is only available for streaming after I buy it."
         }
       }
     }
   }
}

@vholland vholland self-assigned this Sep 18, 2017

vholland added a commit to vholland/schemaorg that referenced this issue Oct 3, 2017

danbri added a commit that referenced this issue Oct 20, 2017

Issue #1741: Added MediaSubscription and ActionAccessSpecification (#…
…1773)

* Issue 1741: Added MediaSubscription and ActionAccessSpecification.

* Issue #1741: Updated the release notes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment