@prefix oslc:  <http://open-services.net/ns/core#> .
@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

@base <http://open-services.net/ns/core/shapes/3.0/ResponseInfo-shape.ttl> .

<#ResponseInfo>
      a               oslc:ResourceShape ;
      dcterms:title   "The shape of a resource providing information about a paged HTTP response body." ;
      oslc:describes  oslc:ResponseInfo ;
      oslc:property
        <#title>,
        <#description>,
        <#nextPage>,
        <#totalCount>,
        <#postBody>.

<#title> a oslc:Property ;
    oslc:name "title" ;
    oslc:propertyDefinition dcterms:title   ;
    oslc:occurs oslc:Zero-or-one;
    dcterms:description "Title of the resource represented as rich text in XHTML content."^^rdf:XMLLiteral ;
    oslc:valueType rdf:XMLLiteral .

<#description> a oslc:Property ;
    oslc:name "description" ;
    oslc:propertyDefinition dcterms:description ;
    oslc:occurs oslc:Zero-or-one;
    dcterms:description "Descriptive text about resource represented as rich text in XHTML content."^^rdf:XMLLiteral ;
    oslc:valueType rdf:XMLLiteral .

<#nextPage> a oslc:Property ;
    oslc:name "nextPage" ;
    oslc:propertyDefinition oslc:nextPage ;
    oslc:occurs oslc:Zero-or-one ;
    oslc:readOnly true ;
    dcterms:description "Link to the next page of a response."^^rdf:XMLLiteral ;
    oslc:valueType oslc:Resource ;
    oslc:representation oslc:Reference .

<#postBody> a oslc:Property ;
    oslc:name "postBody" ;
    oslc:propertyDefinition oslc:postBody ;
    oslc:occurs oslc:Zero-or-one ;
    oslc:readOnly true ;
    dcterms:description """The body of a POST request to return the next page if the response was to a POST request.
 Where a paged resource supports POST with an application/x-www-form-urlencoded body as an alternative to GET to
 avoid the request URI exceeding server limitations, the oslc:ResponseInfo in the response to the POST SHOULD
 contain this property so that a client knows what to POST to get the next page."""^^rdf:XMLLiteral ;
    oslc:valueType xsd:string .

<#totalCount> a oslc:Property ;
    oslc:name "totalCount" ;
    oslc:propertyDefinition oslc:totalCount ;
    oslc:occurs oslc:Zero-or-one ;
    oslc:readOnly true ;
    dcterms:description """This optional property indicates the total number of results across all pages,
its value should be non-negative. In the context of a query resource, this value SHOULD be the total
number of results, i.e. the number of resources that match the query. In the context of other
resources, the value SHOULD be the total number of property values (i.e. RDF triples) of the resource.
Unless Stable Paging is in effect, the total count MAY vary as a client retrieves subsequent pages."""^^rdf:XMLLiteral ;
  oslc:valueType           xsd:integer .
