@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/Compact-shape.ttl> .

<#Compact>  a           oslc:ResourceShape ;
        oslc:describes  oslc:Compact ;
        dcterms:title   "Describes how to display a resource preview." ;
        oslc:property
            <#dctermsTitle>,
            <#shortTitle>,
            <#icon>,
            <#iconSrcSet>,
            <#iconAltLabel>,
            <#iconTitle>,
            <#smallPreview>,
            <#largePreview>
        .

<#icon>  a                       oslc:Property ;
        oslc:name                "icon" ;
        oslc:occurs              oslc:Zero-or-one ;
        oslc:propertyDefinition  oslc:icon ;
        oslc:readOnly            true ;
        oslc:valueType           oslc:Resource ;
        oslc:representation      oslc:Reference ;
        dcterms:description      "URI of an image which may be used in the display of a link to the resource."^^rdf:XMLLiteral .

<#iconSrcSet>  a                       oslc:Property ;
        oslc:name                "iconSrcSet" ;
        oslc:occurs              oslc:Zero-or-one ;
        oslc:propertyDefinition  oslc:iconSrcSet ;
        oslc:readOnly            true ;
        oslc:valueType           xsd:string ;
        dcterms:description      "Specification of a set of images of different sizes based on HTML img element srcset attribute."^^rdf:XMLLiteral .

<#iconAltLabel>  a               oslc:Property ;
        oslc:name                "iconAltLabel" ;
        oslc:occurs              oslc:Zero-or-one ;
        oslc:propertyDefinition  oslc:iconAltLabel ;
        oslc:readOnly            true ;
        oslc:valueType           xsd:string ;
        dcterms:description      "Alternative label used in association with the oslc:icon, such as HTML img tag's alt attribute."^^rdf:XMLLiteral .

<#iconTitle>  a                  oslc:Property ;
        oslc:name                "iconTitle" ;
        oslc:occurs              oslc:Zero-or-one ;
        oslc:propertyDefinition  oslc:iconTitle ;
        oslc:readOnly            true ;
        oslc:valueType           xsd:string ;
        dcterms:description      "Title used in association with the oslc:icon, such as HTML img tag's title attribute."^^rdf:XMLLiteral .

<#largePreview>  a               oslc:Property ;
        oslc:name                "largePreview" ;
        oslc:occurs              oslc:Zero-or-one ;
        oslc:propertyDefinition  oslc:largePreview ;
        oslc:range               oslc:Preview ;
        oslc:readOnly            true ;
        oslc:valueType           oslc:AnyResource ;
        oslc:representation      oslc:Either ;
        dcterms:description      "URI and sizing properties for an HTML document to be used for a large preview."^^rdf:XMLLiteral .

<#shortTitle>  a                 oslc:Property ;
        oslc:name                "shortTitle" ;
        oslc:occurs              oslc:Zero-or-one ;
        oslc:propertyDefinition  oslc:shortTitle ;
        oslc:readOnly            true ;
        oslc:valueType           xsd:string ;
        dcterms:description      "Abbreviated title which may be used in the display of a link to the resource. The value should include only content that is valid inside an HTML &lt;span&gt; element. Providers should include an abbreviated title for the resource when possible. The abbreviated title is typically shown to a user as a hyperlink in presentations where visual space is limited. As a general guideline, the length of the abbreviated title should be 5 characters or less. A user-visible identifier that ordinarily appears in the dcterms:title, such as a defect number, makes for a good oslc:shortTitle value. When a resource has no obvious identifier or handle, Providers should omit the oslc:shortTitle property. Providers must first HTML escape the contents of the oslc:shortTitle before sending the response."^^rdf:XMLLiteral .

<#smallPreview>  a               oslc:Property ;
        oslc:name                "smallPreview" ;
        oslc:occurs              oslc:Zero-or-one ;
        oslc:propertyDefinition  oslc:smallPreview ;
        oslc:range               oslc:Preview ;
        oslc:readOnly            true ;
        oslc:valueType           oslc:AnyResource ;
        oslc:representation      oslc:Either ;
        dcterms:description      "URI and sizing properties for an HTML document to be used for a small preview."^^rdf:XMLLiteral .

<#dctermsTitle>  a               oslc:Property ;
        oslc:name                "title" ;
        oslc:occurs              oslc:Zero-or-one ;
        oslc:propertyDefinition  dcterms:title ;
        oslc:readOnly            true ;
        oslc:valueType           xsd:string ;
        dcterms:description      "Title that may be used in the display of a link to the resource. The value should include only content that is valid inside an HTML &lt;span&gt; element. Providers should include a dcterms:title property with an informative label for the resource. The title is typically shown to a user as a hyperlink. For a resource with no obvious title, Providers should omit the dcterms:title property. Providers must first HTML escape the contents of the dcterms:title before sending the response."^^rdf:XMLLiteral .
