Created
January 3, 2014 18:48
-
-
Save nyarly/8243908 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . | |
| @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . | |
| <Affordance> a rdfs:Class ; | |
| rdfs:comment "Base class for all affordances" . | |
| <Null> a rdfs:Class ; | |
| rdfs:subClassOf <Affordance> ; | |
| rdfs:comment "The provided affordance is null. i.e. not dereferenceable, no actions provided". | |
| <Safe> a rdfs:Class ; | |
| rdfs:subClassOf <Affordance> ; | |
| rdfs:comment "A safe affordance - it is asserted that no change will be triggered by activating the affordance" . | |
| <Navigation> a rdfs:Class ; | |
| rdfs:subClassOf <Safe> ; | |
| rdfs:comment "A link to another resource. The assumption is that otherwise undescribed URLs have a navigation affordance" . | |
| <Embed> a rdfs:Class ; | |
| rdfs:subClassOf <Safe> ; | |
| rdfs:comment "A resource that should be properly displayed in-line rather than provided as a hyperlink" . | |
| <Metadata> a rdfs:Class ; | |
| rdfs:subClassOf <Safe> ; | |
| rdfs:comment "There is extra metadata available about this resource" . | |
| <Idempotent> a rdfs:Class ; | |
| rdfs:subClassOf <Affordance> ; | |
| rdfs:comment "An affordance that will cause a change, but that can be repeated without further hazard" . | |
| <Update> a rdfs:Class ; | |
| rdfs:subClassOf <Idempotent> ; | |
| rdfs:comment "Acting on this affordance will update the targeted resource. Repeated updates will have not further effect" . | |
| <Remove> a rdfs:Class ; | |
| rdfs:subClassOf <Idempotent> ; | |
| rdfs:comment "Triggering this affordance is a request to delete the resource" . | |
| <Unsafe> a rdfs:Class ; | |
| rdfs:subClassOf <Affordance> ; | |
| rdfs:comment "Affordances whose effects cannot be simply modeled and should be triggered with care" . | |
| <Create> a rdfs:Class ; | |
| rdfs:subClassOf <Unsafe> ; | |
| rdfs:comment """Triggering this affordance implies a request to create a new | |
| resource""" . | |
| #Consider: <Append> - distinct from <Create> in that the implication is | |
| #specifically to create a child (or otherwise related) resource to the target, where <Create> might | |
| #specifically mean "create this resource" - review Fielding & 2616 | |
| <Mutate> a rdfs:Class ; | |
| rdfs:subClassOf <Unsafe> ; | |
| rdfs:comment """Triggering this affordance expresses a desire to make changes | |
| to a resource""" . | |
| # Controls | |
| <controlledBy> a rdf:Property ; | |
| rdfs:domain <Affordance> ; | |
| rdfs:range <Control> . | |
| <Control> a rdfs:Class . | |
| <controlName> a rdf:Property ; | |
| rdfs:domain <Control> ; | |
| rdfs:range rdfs:Literal ; | |
| rdfs:comment "Valid values are limited per application. Examples include 'Media-Type', 'Encoding' or 'EntityTag'" . | |
| <controlValue> a rdf:Property ; | |
| rdfs:domain <Control> ; | |
| rdfs:range rdfs:Literal . | |
| # Authorization | |
| <authorizedBy> a rdf:Property ; | |
| rdfs:domain <Affordance> ; | |
| rdfs:range rdfs:Resource ; | |
| rdfs:comment """Opaque descriptors of authorization tokens - resource can be | |
| dereferenced by users with that token. It's recommended that the tokens be | |
| defreferenceable, and that they be accessible iff the user is authorized to | |
| activate the affordance in question.""" . | |
| # Target | |
| <target> a rdf:Property ; | |
| rdfs:domain <Affordance> ; | |
| rdfs:range rdfs:Resource ; | |
| rdfs:range rdfs:Literal ; | |
| rdfs:comment """Could be a templated URL, or a URL resource. If not a template, | |
| but the Affordance has one or more uriVariable properties, the implication is | |
| that the target resource should be used as the basis of a URI template by | |
| appending (?name,other,...) to the URI.""" . | |
| <Parameter> a rdfs:Class . | |
| <uriVariable> a rdf:Property ; | |
| rdfs:domain <Affordance> ; | |
| rdfs:range <Parameter> , rdf:List ; | |
| rdfs:comment """When the object is list, the members of the list should be | |
| Parameters, the the list order implies the order in which the parameters | |
| should be used""" . | |
| <parameterName> a rdf:Property ; | |
| rdfs:domain <Parameter> ; | |
| rdfs:range rdfs:Literal . | |
| <parameterRange> a rdf:Property ; | |
| rdfs:domain <Parameter> ; | |
| rdfs:range rdfs:Class . | |
| # Payload | |
| <payload> a rdf:Property ; | |
| rdfs:domain <Affordance> ; | |
| rdfs:range rdfs:Resource ; | |
| rdfs:comment """Points to a the name of a named graph that describes the | |
| possible payload of the affordance. Graph might need a different entailment - | |
| allowing e.g. a blank node to be the object of a property whose domain is | |
| Literal... i.e. only using RDF entailment, not RDFS""" . |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment