This wiki is locked. Future workgroup activity and specification development must take place at
our new wiki
. For more information, see
this blog post about the new governance model
and
this post about changes to the website
.
<table cellspacing="1" cellpadding="5" border="0"> <tbody><tr><td valign="center"><img width="59" alt="OSLC_logo.png" src="/pub/Main/OslcCoreSpecification/OSLC_logo.png" height="66" /></td><td valign="top"> ---+!! Open Services for Lifecycle Collaboration<br />Core Specification Version 2.0 <br />Appendix A: Common Properties </td></tr></tbody></table> *This Version* * [[http://open-services.net/bin/view/Main/OSLCCoreSpecAppendixA]] *Latest Version* * [[http://open-services.net/bin/view/Main/OSLCCoreSpecAppendixA]] *Authors* * Dave Johnson *Contributors* * The [[OslcCore][OSLC Core Specification Workgroup]] *Table of Contents* %TOC{depth="2"}% ---+ Overview This is a list of common properties and resources defined by or used by the Core spec. Unlike the rest of the Core specification, this Appendix will change and grow as new common properties are added by the Core workgroup. The properties that we list here are available for use in OSLC specification in defining OSLC resources, but this does not mean that they are required to be in OSLC resources. OSLC domain specifications decide which properties are allowed and required for each resource use case. ---+ Dublin Core Properties These are the Dublin Core Metadata Element Set properties that are considered common (reference: Dublin Core). * *Namespace URI*: =http://purl.org/dc/terms/= * *Suggested Namespace Prefix*: =dcterms= | *Prefixed Name* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* | | =dcterms:contributor= | unspecified | Either Resource or Local Resource | Either Reference or Inline | =any= | Contributor or contributors to the resource. It is likely that the target resource will be a [[OSLCCoreSpecAppendixA#foaf_Person_Resource][ =foaf:Person= ]] but that is not necessarily the case. | | =dcterms:creator= | unspecified | Either Resource or Local Resource | Either Reference or Inline | =any= | Creator or creators of the resource. It is likely that the target resource will be a [[OSLCCoreSpecAppendixA#foaf_Person_Resource][ =foaf:Person= ]] but that is not necessarily the case. | | =dcterms:created= | unspecified | !DateTime | n/a | n/a | Timestamp of resource creation | | =dcterms:description= | unspecified | XMLLiteral | n/a | n/a | Descriptive text about resource represented as rich text in XHTML content. *SHOULD* include only content that is valid and suitable inside an XHTML <div> element. | | =dcterms:identifier= | unspecified | String | n/a | n/a | A unique identifier for a resource. Typically read-only and assigned by the service provider when a resource is created. Not typically intended for end-user display. | | =dcterms:modified= | unspecified | !DateTime | n/a | n/a | Timestamp of latest resource modification | | =dcterms:relation= | unspecified | Either Resource or Local Resource | Either Reference or Inline | Any | Relation which identifies a related resource. | | =dcterms:subject= | unspecified | String | n/a | n/a | Tag or keyword for a resource. Each occurrence of a dcterms:subject property denotes an additional tag for the resource. | | =dcterms:title= | unspecified | XMLLiteral | n/a | n/a | Title of the resource represented as rich text in XHTML content. *SHOULD* include only content that is valid inside an XHTML <span> element. | ---+ RDF Properties These are the RDF/XML properties that are considered common. * *Namespace URI*: =http://www.w3.org/1999/02/22-rdf-syntax-ns#= * *Suggested Namespace Prefix*: =rdf= | *Prefixed Name* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* | | =rdf:type= | unspecified | Resource | Reference | n/a | The resource type URIs | ---+ RDFS Properties These are the RDFS properties that are considered common. * *Namespace URI*: =http://www.w3.org/2000/01/rdf-schema#= * *Suggested Namespace Prefix*: =rdfs= | *Prefixed Name* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* | | =rdfs:member= | unspecified | Resource | Either | unspecified | OSLC domains might define a number of member or contains relationships between resources. The rdfs:member property is suitable for use when only one such relationship needs to be defined, or when no additional semantics need to be implied by the property name | ---+ OSLC Properties These are the OSLC defined properties that are considered common. * *Namespace URI*: =http://open-services.net/ns/core#= * *Suggested Namespace Prefix*: =oslc= | *Prefixed Name* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* || | =oslc:serviceProvider= | unspecified | Resource | Reference | =oslc:ServiceProvider= | A link to the resource's OSLC Service Provider. There may be cases when the subject resource is available from a service provider that implements multiple domain specifications, which could result in multiple values for this property. || | =oslc:instanceShape= | unspecified | Resource | Reference | =oslc:ResourceShape= | <p>The URI of a Resource Shape that describes the possible properties, occurrence, value types, allowed values and labels. This shape information is useful in displaying the subject resource as well as guiding clients in performing modifications. Instance shapes may be specific to the authenticated user associated with the request that retrieved the resource, the current state of the resource and other factors and thus should not be cached.</p> || | =oslc:shortTitle= | unspecified | XMLLiteral | n/a | n/a | Shorter form of =dcterms:title= for the resource represented as rich text in XHTML content. *SHOULD* include only content that is valid inside an XHTML <span> element. || | =oslc:shortId= | unspecified | String | n/a | n/a | Shorter form of =dcterms:identifier= for the resource, such as a number. || | =oslc:discussedBy= | unspecified | Resource | Either | [[OSLCCoreSpecAppendixA#oslc_Discussion_Resource][ =oslc:Discussion= ]] | A series of notes and comments about this resource. || | =oslc:modifiedBy= | unspecified | Resource | Either | Any | The URI of a resource describing the entity that most recently modified the subject resource. The link target is usually a foaf:Person or foaf:Agent, but could be any type. This is modeled after dcterms:creator, but Dublin Core currently has no equivalent property. || ---+ foaf:Person Resource Person is a common resource because a Person resource is required as the value for a =dcterms:creator= or =dcterms:contributor= property. * *Resource:* =foaf:Person= * *Namespace URI*: =http://xmlns.com/foaf/0.1/= (reference: FOAF) * *Suggested Namespace Prefix*: =foaf= | *Prefixed Name* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* | | =foaf:name= | unspecified | String | n/a | n/a | The full name of a person expressed as simple text string. | | =foaf:givenName= | unspecified | String | n/a | n/a | Given name of person expressed as simple text string. | | =foaf:familyName= | unspecified | String | n/a | n/a | Family name of person expressed as simple text string. | OSLC adds one additional constraint for =foaf:Person=. Each =foaf:Person= resource *SHOULD* specify either a non-empty =foaf:name= value or both a non-empty =foaf:givenName= and =foaf:familyName= values. ---+ oslc:ResourceShape Resource In some cases, to create resources and to query those that already exist within an OSLC Service, OSLC clients needs a way to learn which properties are commonly used in or required by the service. Resource Shape Resources meet this need by providing a machine-readable definition of one or more OSLC resource types or instances. An OSLC Creation Factory *MAY* provide one or more Resource Shapes so that you know what properties are allowed and required to create resources. An OSLC Query Capability *MAY* provide a Resource Shape so that you know what properties are available for query. Within a Resource Shape, a resource value-type *MAY* provide its own Resource Shape. Resource Shapes are intended to provide simple "hints" to clients at resource creation, update or query time. They are not intended to form a rigid constraint system for validating inputs or a schema system that can be used for generating "bindings" for programming languages. OSLC implementations that provide Resource Shapes representing resources defined by OSLC specifications *SHOULD* provide the very same information provided in the specifications without changing or removing any of the Properties specified. Resource Shapes *MAY* include new implementation specific properties as long as such "custom" properties are defined in non-OSLC namespaces (i.e. not rooted at http://open-services.net). ---+++ Conceptual Model A Resource Shape describes the properties that are allowed or required by one or more types or instances of resource. It does not define the properties, but it does tell how the properties are to be used in OSLC for one or more specific scenarios: the value-type to be used for the property, the number of times the property is expected to occur and whether the property is required. As you can see in the exemplary diagram below a Resource Shape provides Properties, and Properties which have Resource value-types can specify their own shapes. <img alt="" src="http://open-services.net/pub/Main/OSLCCoreSpecAppendixA/oslc-core-shapes.png" /> The next sections define the Resource Shape and Property resources. ---+++ Resource: Resource Shape A Resource Shape resource can have a title and a set of types. * *Resource*: =oslc:ResourceShape= * *Namespace URI*: =http://open-services.net/ns/core#= * *Suggested Namespace Prefix*: =oslc= | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* | | =dcterms:title= | zero-or-one | True | XMLLiteral | n/a | n/a | Title of the resource shape. *SHOULD* include only content that is valid and suitable inside an XHTML <span> element. | | =oslc:describes= | zero-or-many | True | Resource | Reference | n/a | This shape describes resources that are of any of these types. Formally, a shape S applies to a resource R if there is a triple =R rdf:type T= and there is a triple =S oslc:describes T=. | | =oslc:property= | zero-or-many | True | Resource | Inline | =oslc:Property= | The properties that are allowed or required by this shape. | ---+++ Resource: Allowed Values Allowed values for one property. * *Resource*: =oslc:AllowedValues= * *Namespace URI*: =http://open-services.net/ns/core#= * *Suggested Namespace Prefix*: =oslc= | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* | | =oslc:allowedValue= | one-or-many | True | Same value-type as property | n/a | n/a | value allowed for a property | ---+++ Value-type: Property A Property resource describes one allowed or required property of a resource. * *Resource*: =oslc:Property= * *Namespace URI*: =http://open-services.net/ns/core#= * *Suggested Namespace Prefix*: =oslc= | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* | | =dcterms:description= | zero-or-one | True | XMLLiteral | n/a | n/a | Description of the property. *SHOULD* include only content that is valid and suitable inside an XHTML <div> element. | | =dcterms:title= | zero-or-one | True | XMLLiteral | n/a | n/a | Title of the property. *SHOULD* include only content that is valid and suitable inside an XHTML <span> element. | | =oslc:allowedValues= | zero-or-one | True | Resource | Reference | =oslc:AllowedValues= | Resource with allowed values for the property being defined. | | =oslc:allowedValue= | zero-or-many | True | Same value-type as the property being defined | n/a | n/a | A value allowed for property, inlined into property definition. If there are both =oslc:allowedValue= elements and an =oslc:allowedValue= resource, then the full-set of allowed values is the union of both. | | =oslc:defaultValue= | zero-or-one | True | Same as property defined | n/a | n/a | A default value for property, inlined into property definition. | | =oslc:hidden= | zero-or-one | True | Boolean | n/a | n/a | A hint that indicates that property *MAY* be hidden when presented in a user interface | | =oslc:isMemberProperty= | zero-or-one | True | Boolean | n/a | n/a | If set to true, this indicates that the property is a membership property, as described in the [[OSLCCoreSpecQuery#Member_List_Patterns][Query Syntax Specification: Member List Patterns]]. This is useful when the resource whose shape is being defined is viewed as a container of other resources. For example, look at the last example in Appendix B's [[OSLCCoreSpecRDFXMLExamples#Specifying_the_shape_of_a_query][RDF/XML Representation Examples: Specifying the shape of a query result]], where =blog:comment= is defined as a membership property and comment that matches the query is returned as value of that property. | | =oslc:name= | exactly-one | True | String | n/a | n/a | Name of property being defined, i.e. second part of property's Prefixed Name | | =oslc:maxSize= | zero-or-one | True | Integer | n/a | n/a | For String properties only, specifies maximum characters allowed. If not set, then there is no maximum or maximum is specified elsewhere. | | =oslc:occurs= | exactly-one | True | Resource | Reference | n/a | *MUST* be either =[[http://open-services.net/ns/core#Exactly-one]]= (property is required), =[[http://open-services.net/ns/core#Zero-or-one]]= (property is optional), =[[http://open-services.net/ns/core#Zero-or-many]]= (property is optional), or =[[http://open-services.net/ns/core#One-or-many]]= (property is required) | | =oslc:propertyDefinition= | exactly-one | True | Resource | Reference | n/a | URI of the property whose usage is being described. | | =oslc:range= | zero-or-many | True | Resource | Reference | n/a | For properties with a resource value-type, Providers MAY also specify the range of possible resource types allowed, each specified by URI. The default range is =[[http://open-services.net/ns/core#Any]]=. | | =oslc:readOnly= | zero-or-one | True | Boolean | n/a | n/a | =true= if the property is read-only. If omitted, or set to =false=, then the property is writable. Providers *SHOULD* declare a property read-only when changes to the value of that property will not be accepted after the resource has been created, e.g. on PUT/PATCH requests. Consumers should note that the converse does not apply: Providers *MAY* reject a change to the value of a writable property. | | =oslc:representation= | zero-or-one | True | Resource | Reference | n/a | Should be =[[http://open-services.net/ns/core#Reference]]=, =[[http://open-services.net/ns/core#Inline]]= or =[[http://open-services.net/ns/core#Either]]= | | =oslc:valueType= | zero-or-many | True | Resource | Reference | n/a | See below for list of allowed values for =oslc:valueType=. If this property is omitted, then the value type is unconstrained. | | =oslc:valueShape= | zero-or-one | True | Resource | Reference | =oslc:ResourceShape= | if the value-type is a resource type, then Property *MAY* provide a shape value to indicate the Resource Shape that applies to the resource. | Allowed values for =oslc:valueType=: * *Literal value-types* * *Boolean* - =http://www.w3.org/2001/XMLSchema#boolean= * *DateTime* - =http://www.w3.org/2001/XMLSchema#dateTime= * *Decimal* - =http://www.w3.org/2001/XMLSchema#decimal= * *Double* - =http://www.w3.org/2001/XMLSchema#double= * *Float* - =http://www.w3.org/2001/XMLSchema#float= * *Integer* - =http://www.w3.org/2001/XMLSchema#integer= * *String* - =http://www.w3.org/2001/XMLSchema#string= * *XMLLiteral* - =[[http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral]]= * *Resource value-types* * *Resource* - =[[http://open-services.net/ns/core#Resource]]= * *Local Resource* - =[[http://open-services.net/ns/core#LocalResource]]= * *Either Resource or Local Resource* - =[[http://open-services.net/ns/core#AnyResource]]= ---+ oslc:Comment Resource A Comment resource represents a single note, or comment, in a discussion thread. * *Resource*: =oslc:Comment= * *Namespace URI*: =http://open-services.net/ns/core#= * *Suggested Namespace Prefix*: =oslc= | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* | | =dcterms:identifier= | exactly-one | True | String | n/a | n/a | A service defined identifier | | =dcterms:creator= | exactly-one | True | Resource or Local Resource | Either | =any= | The person who created the comment. It is likely that the target resource will be a [[OSLCCoreSpecAppendixA#foaf_Person_Resource][ =foaf:Person= ]] but that is not necessarily the case | | =dcterms:title= | zero-or-one | unspecified | XMLLiteral | n/a | n/a | A brief title for the comment. *SHOULD* include only content that is valid and suitable inside an XHTML <span> element. | | =dcterms:created= | exactly-one | True | !DateTime | n/a | n/a | When the comment resource was created | | =dcterms:description= | exactly-one | unspecified | XMLLiteral | n/a | n/a | Details or body of the comment. *SHOULD* include only content that is valid and suitable inside an XHTML <div> element. | | =oslc:partOfDiscussion= | exactly-one | unspecified | Resource | Reference | =oslc:Discussion= | Reference to owning Discussion resource | | =oslc:inReplyTo= | zero-or-one | unspecified | Resource | Reference | =oslc:Comment= | Reference to comment this comment is in reply to | ---+ oslc:Discussion Resource A Discussion resource is intended to represent a sequence of comments or notes regarding the associated resource. * *Resource*: =oslc:Discussion= * *Namespace URI*: =http://open-services.net/ns/core#= * *Suggested Namespace Prefix*: =oslc= | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* | | =oslc:discussionAbout= | exactly-one | False | Resource | Reference | Any | Reference to associated resource | | =oslc:comment= | zero-or-many | False | Resource or Local Resource | Reference or Inline | =oslc:Comment= | Comment about resource |
Attachments
Attachments
Topic attachments
I
Attachment
Action
Size
Date
Who
Comment
png
oslc-core-shapes.png
manage
37.4 K
04 Aug 2010 - 18:47
DaveJohnson
This topic: Main
>
WebHome
>
OslcCore
>
OslcCoreSpecification
>
OSLCCoreSpecAppendixA
Topic revision: r34 - 17 Jul 2013 - 14:34:11 -
JohnArwe
Copyright � by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Contributions are governed by our
Terms of Use
Ideas, requests, problems regarding this site?
Send feedback