
This class designates the provider of one or more Resources. Providers claim ownership of resources and are anticipated to be associated with actual organizations such as universities, web sites, etc. Providers may state that they provide multiple resources by using multiple sswap:providesResource properties. Dereferencing the URL that claims to be of rdf:type sswap:Provider must return the provider's Provider Description Graph (PDG).
Properties
| sswap:name | Required property for the Provider's preferred name |
| sswap:oneLineDescription | Optional property for a brief (one line) description of the provider. Should be human readable for display and use by search engines |
| sswap:aboutURI | Optional reference to a web page for additional information about the provider |
| sswap:metadata | Optional reference to a text resource that may be used by search engines to richen the association of words with the provider. The provider has no control as to how, or if at all, the text used by third-party engines. |
| sswap:providesResource | Optional reference to a Resource that this provider is offering. Providers can have more than one sswap:providesResource predicates. Resources must either explicitly reciprocate the relationship by using a sswap:providedBy predicate, or their URI must be a subpath of the Provider's path; e.g., http://sswap.info/examples/resourceProvider and http://sswap.info/examples/resources/canonical/canonicalResource. If resourceProvider would claim to provide www.YourWebsite.org/yourResource, yourResource must reciprocate the relationship by using the sswap:providedBy predicate pointing back to resourceProvider. See also Resource. |
Examples of a PDG (Provider Description Graph)
1. resourceProvider is a sswap:Provider:
<?xml version="1.0" encoding="UTF-8"?gt;
<rdf:RDF
xmlns:rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:sswap = "http://sswapmeet.sswap.info/sswap/&"
>
<sswap:Provider rdf:about="http://sswap.info/examples/resourceProvider">
<sswap:name>An example SSWAP web resource provider</sswap:name>
</sswap:Provider>
</rdf:RDF>
2. resourceProvider is a sswap:Provider and has a sswap:providesResource relationship to the SSWAP Resource canonicalResource:
<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF
xmlns:rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:sswap = "http://sswapmeet.sswap.info/sswap/"
>
<sswap:Provider rdf:about="http://sswap.info/examples/resourceProvider">
<sswap:name>An example SSWAP web resource provider</sswap:name>
<sswap:providesResource>
<sswap:Resource rdf:about="http://sswap.info/examples/resources/canonical/canonicalResource"/>
</sswap:providesResource>
</sswap:Provider>
</rdf:RDF>
You can see the complete description graph with all its predicates at sswap.info/examples/resourceProvider. (On some browsers use View Page Source to see the RDF/XML in its entirety).
| Hint: Use the HTTP API You never need to write raw RDF/XML. Write your PDG (Provider Description Graph) in JSON (Javascript Object Notation) and use the HTTP API to automatically generate the RDF/XML document. See /make, Semantic Pipeline RESTful API /make, and /makePDG. |
JSON encoding for a PDG. Use the HTTP API to convert it to RDF/XML prior to hosting.
{
"api" : "/makePDG",
"prefix" : {
"myExample" : "http://sswap.info/examples/",
"myResources" : "http://sswap.info/examples/resources/canonical/"
},
"myExample:resourceProvider" : {
"sswap:name" : "An example SSWAP web resource provider",
"sswap:oneLineDescription" : "This is an example resource provider",
"sswap:providesResource" : [ "myExample:canonicalResource" ]
}
}