rdf-vocab 3.1.4 → 3.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (85) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +69 -45
  4. data/VERSION +1 -1
  5. data/lib/rdf/vocab.rb +14 -28
  6. data/lib/rdf/vocab/acl.rb +84 -1
  7. data/lib/rdf/vocab/as.rb +466 -1
  8. data/lib/rdf/vocab/bf2.rb +1317 -1
  9. data/lib/rdf/vocab/bibframe.rb +1 -2
  10. data/lib/rdf/vocab/bibo.rb +496 -1
  11. data/lib/rdf/vocab/cc.rb +107 -1
  12. data/lib/rdf/vocab/cert.rb +68 -1
  13. data/lib/rdf/vocab/cnt.rb +79 -1
  14. data/lib/rdf/vocab/crm.rb +1303 -1
  15. data/lib/rdf/vocab/datacite.rb +1 -1
  16. data/lib/rdf/vocab/dbo.rb +10463 -1
  17. data/lib/rdf/vocab/dc.rb +1 -1
  18. data/lib/rdf/vocab/dc11.rb +63 -1
  19. data/lib/rdf/vocab/dcat.rb +152 -4
  20. data/lib/rdf/vocab/dcmitype.rb +1 -1
  21. data/lib/rdf/vocab/disco.rb +228 -1
  22. data/lib/rdf/vocab/doap.rb +175 -1
  23. data/lib/rdf/vocab/dwc.rb +753 -1
  24. data/lib/rdf/vocab/earl.rb +135 -1
  25. data/lib/rdf/vocab/ebucore.rb +7335 -1974
  26. data/lib/rdf/vocab/edm.rb +150 -1
  27. data/lib/rdf/vocab/exif.rb +650 -1
  28. data/lib/rdf/vocab/extensions.rb +253 -203
  29. data/lib/rdf/vocab/fcrepo4.rb +377 -1
  30. data/lib/rdf/vocab/foaf.rb +305 -1
  31. data/lib/rdf/vocab/geo.rb +39 -1
  32. data/lib/rdf/vocab/geojson.rb +66 -1
  33. data/lib/rdf/vocab/geonames.rb +166 -1
  34. data/lib/rdf/vocab/gr.rb +684 -1
  35. data/lib/rdf/vocab/gs1.rb +1597 -1
  36. data/lib/rdf/vocab/ht.rb +164 -1
  37. data/lib/rdf/vocab/hydra.rb +236 -2
  38. data/lib/rdf/vocab/iana.rb +230 -1
  39. data/lib/rdf/vocab/ical.rb +462 -1
  40. data/lib/rdf/vocab/identifiers.rb +462 -1
  41. data/lib/rdf/vocab/iiif.rb +136 -1
  42. data/lib/rdf/vocab/jsonld.rb +135 -1
  43. data/lib/rdf/vocab/ldp.rb +130 -1
  44. data/lib/rdf/vocab/lrmi.rb +1 -1
  45. data/lib/rdf/vocab/ma.rb +381 -1
  46. data/lib/rdf/vocab/mads.rb +600 -22
  47. data/lib/rdf/vocab/{marc_relators.rb → marcrelators.rb} +809 -1
  48. data/lib/rdf/vocab/mo.rb +919 -1
  49. data/lib/rdf/vocab/mods.rb +516 -1
  50. data/lib/rdf/vocab/nfo.rb +1 -1
  51. data/lib/rdf/vocab/oa.rb +275 -1
  52. data/lib/rdf/vocab/og.rb +78 -1
  53. data/lib/rdf/vocab/ogc.rb +34 -1
  54. data/lib/rdf/vocab/ore.rb +56 -1
  55. data/lib/rdf/vocab/org.rb +189 -1
  56. data/lib/rdf/vocab/pcdm.rb +47 -1
  57. data/lib/rdf/vocab/pplan.rb +64 -1
  58. data/lib/rdf/vocab/premis.rb +1266 -779
  59. data/lib/rdf/vocab/{premis_event_type.rb → premiseventtype.rb} +155 -1
  60. data/lib/rdf/vocab/prov.rb +619 -1
  61. data/lib/rdf/vocab/ptr.rb +138 -1
  62. data/lib/rdf/vocab/rightsstatements.rb +5 -1
  63. data/lib/rdf/vocab/rsa.rb +30 -1
  64. data/lib/rdf/vocab/rss.rb +1 -1
  65. data/lib/rdf/vocab/schema.rb +10032 -12
  66. data/lib/rdf/vocab/sd.rb +372 -0
  67. data/lib/rdf/vocab/sh.rb +736 -1
  68. data/lib/rdf/vocab/sioc.rb +401 -1
  69. data/lib/rdf/vocab/{sioc_services.rb → siocservices.rb} +38 -1
  70. data/lib/rdf/vocab/{sioct.rb → sioctypes.rb} +158 -1
  71. data/lib/rdf/vocab/skos.rb +119 -1
  72. data/lib/rdf/vocab/skosxl.rb +30 -1
  73. data/lib/rdf/vocab/v.rb +291 -1
  74. data/lib/rdf/vocab/vcard.rb +508 -1
  75. data/lib/rdf/vocab/vmd.rb +291 -1
  76. data/lib/rdf/vocab/void.rb +121 -1
  77. data/lib/rdf/vocab/vs.rb +19 -1
  78. data/lib/rdf/vocab/wdrs.rb +90 -1
  79. data/lib/rdf/vocab/wot.rb +78 -1
  80. data/lib/rdf/vocab/xhtml.rb +2 -1
  81. data/lib/rdf/vocab/xhv.rb +338 -1
  82. data/lib/rdf/vocab/xkos.rb +150 -1
  83. data/spec/extensions_spec.rb +68 -0
  84. data/spec/vocab_spec.rb +10 -0
  85. metadata +15 -8
@@ -5,9 +5,197 @@ require 'rdf'
5
5
  module RDF::Vocab
6
6
  # @!parse
7
7
  # # Vocabulary for <http://www.w3.org/ns/org#>
8
+ # #
9
+ # # Core organization ontology
10
+ # #
11
+ # # Core organization ontology
12
+ # #
13
+ # # Vocabulary for describing organizational structures, specializable to a broad variety of types of organization.
14
+ # # @version 0.8
15
+ # # @see http://www.w3.org/TR/vocab-org/
8
16
  # class ORG < RDF::StrictVocabulary
17
+ # # Represents an event which resulted in a major change to an organization such as a merger or complete restructuring. It is intended for situations where the resulting organization is sufficient distinct from the original organizations that it has a distinct identity and distinct URI. Extension vocabularies should define sub-classes of this to denote particular categories of event. The instant or interval at which the event occurred should be given by `prov:startAtTime` and `prov:endedAtTime`, a description should be given by `dct:description`.
18
+ # # @return [RDF::Vocabulary::Term]
19
+ # attr_reader :ChangeEvent
20
+ #
21
+ # # An Organization which is recognized in the world at large, in particular in legal jurisdictions, with associated rights and responsibilities. Examples include a Corporation, Charity, Government or Church. Note that this is a super class of `gr:BusinessEntity` and it is recommended to use the GoodRelations vocabulary to denote Business classifications such as DUNS or NAICS.
22
+ # # @return [RDF::Vocabulary::Term]
23
+ # attr_reader :FormalOrganization
24
+ #
25
+ # # Indicates the nature of an Agent's membership of an organization. Represents an n-ary relation between an Agent, an Organization and a Role. It is possible to directly indicate membership, independent of the specific Role, through use of the `org:memberOf` property.
26
+ # # @return [RDF::Vocabulary::Term]
27
+ # attr_reader :Membership
28
+ #
29
+ # # Represents a collection of people organized together into a community or other social, commercial or political structure. The group has some common purpose or reason for existence which goes beyond the set of people belonging to it and can act as an Agent. Organizations are often decomposable into hierarchical structures. It is recommended that SKOS lexical labels should be used to label the Organization. In particular `skos:prefLabel` for the primary (possibly legally recognized name), `skos:altLabel` for alternative names (trading names, colloquial names) and `skos:notation` to denote a code from a code list. Alternative names: _Collective_ _Body_ _Org_ _Group_
30
+ # # @return [RDF::Vocabulary::Term]
31
+ # attr_reader :Organization
32
+ #
33
+ # # A collaboration between two or more Organizations such as a project. It meets the criteria for being an Organization in that it has an identity and defining purpose independent of its particular members but is neither a formally recognized legal entity nor a sub-unit within some larger organization. Might typically have a shorter lifetime than the Organizations within it, but not necessarily. All members are `org:Organization`s rather than individuals and those Organizations can play particular roles within the venture. Alternative names: _Project_ _Venture_ _Endeavour_ _Consortium_ _Endeavour_
34
+ # # @return [RDF::Vocabulary::Term]
35
+ # attr_reader :OrganizationalCollaboration
36
+ #
37
+ # # An Organization such as a University Support Unit which is part of some larger FormalOrganization and only has full recognition within the context of that FormalOrganization, it is not a Legal Entity in its own right. Units can be large and complex containing other Units and even FormalOrganizations. Alternative names: _OU_ _Unit_ _Department_
38
+ # # @return [RDF::Vocabulary::Term]
39
+ # attr_reader :OrganizationalUnit
40
+ #
41
+ # # A Post represents some position within an organization that exists independently of the person or persons filling it. Posts may be used to represent situations where a person is a member of an organization ex officio (for example the Secretary of State for Scotland is part of UK Cabinet by virtue of being Secretary of State for Scotland, not as an individual person). A post can be held by multiple people and hence can be treated as a organization in its own right.
42
+ # # @return [RDF::Vocabulary::Term]
43
+ # attr_reader :Post
44
+ #
45
+ # # Denotes a role that a Person or other Agent can take in an organization. Instances of this class describe the abstract role; to denote a specific instance of a person playing that role in a specific organization use an instance of `org:Membership`. It is common for roles to be arranged in some taxonomic structure and we use SKOS to represent that. The normal SKOS lexical properties should be used when labelling the Role. Additional descriptive properties for the Role, such as a Salary band, may be added by extension vocabularies.
46
+ # # @return [RDF::Vocabulary::Term]
47
+ # attr_reader :Role
48
+ #
49
+ # # An office or other premise at which the organization is located. Many organizations are spread across multiple sites and many sites will host multiple locations. In most cases a Site will be a physical location. However, we don't exclude the possibility of non-physical sites such as a virtual office with an associated post box and phone reception service. Extensions may provide subclasses to denote particular types of site.
50
+ # # @return [RDF::Vocabulary::Term]
51
+ # attr_reader :Site
52
+ #
53
+ # # Indicates the site at which a person is based. We do not restrict the possibility that a person is based at multiple sites.
54
+ # # @return [RDF::Vocabulary::Term]
55
+ # attr_reader :basedAt
56
+ #
57
+ # # Indicates a change event which resulted in a change to this organization. Depending on the event the organization may or may not have continued to exist after the event. Inverse of `org:originalOrganization`.
58
+ # # @return [RDF::Vocabulary::Term]
59
+ # attr_reader :changedBy
60
+ #
61
+ # # Indicates a classification for this Organization within some classification scheme. Extension vocabularies may wish to specialize this property to have a range corresponding to a specific `skos:ConceptScheme`. This property is under discussion and may be revised or removed - in many cases organizations are best categorized by defining a sub-class hierarchy in an extension vocabulary.
62
+ # # @return [RDF::Vocabulary::Term]
63
+ # attr_reader :classification
64
+ #
65
+ # # Indicates a person who is a member of the subject Organization. Inverse of `org:memberOf`, see that property for further clarification. Provided for compatibility with `foaf:member`.
66
+ # # @return [RDF::Vocabulary::Term]
67
+ # attr_reader :hasMember
68
+ #
69
+ # # Indicates a membership relationship that the Agent plays. Inverse of `org:member`.
70
+ # # @return [RDF::Vocabulary::Term]
71
+ # attr_reader :hasMembership
72
+ #
73
+ # # Indicates a Post which exists within the Organization.
74
+ # # @return [RDF::Vocabulary::Term]
75
+ # attr_reader :hasPost
76
+ #
77
+ # # Indicates a primary site for the Organization, this is the default means by which an Organization can be contacted and is not necessarily the formal headquarters.
78
+ # # @return [RDF::Vocabulary::Term]
79
+ # attr_reader :hasPrimarySite
80
+ #
81
+ # # Indicates the legally registered site for the organization, in many legal jurisdictions there is a requirement that FormalOrganizations such as Companies or Charities have such a primary designed site.
82
+ # # @return [RDF::Vocabulary::Term]
83
+ # attr_reader :hasRegisteredSite
84
+ #
85
+ # # Indicates a site at which the Organization has some presence even if only indirect (e.g. virtual office or a professional service which is acting as the registered address for a company). Inverse of `org:siteOf`.
86
+ # # @return [RDF::Vocabulary::Term]
87
+ # attr_reader :hasSite
88
+ #
89
+ # # Represents hierarchical containment of Organizations or Organizational Units; indicates an organization which is a sub-part or child of this organization. Inverse of `org:subOrganizationOf`.
90
+ # # @return [RDF::Vocabulary::Term]
91
+ # attr_reader :hasSubOrganization
92
+ #
93
+ # # Indicates a unit which is part of this Organization, e.g. a Department within a larger FormalOrganization. Inverse of `org:unitOf`.
94
+ # # @return [RDF::Vocabulary::Term]
95
+ # attr_reader :hasUnit
96
+ #
97
+ # # Indicates that a person is the leader or formal head of the Organization. This will normally mean that they are the root of the `org:reportsTo` (acyclic) graph, though an organization may have more than one head.
98
+ # # @return [RDF::Vocabulary::Term]
99
+ # attr_reader :headOf
100
+ #
101
+ # # Indicates an Agent which holds a Post.
102
+ # # @return [RDF::Vocabulary::Term]
103
+ # attr_reader :heldBy
104
+ #
105
+ # # Indicates a Post held by some Agent.
106
+ # # @return [RDF::Vocabulary::Term]
107
+ # attr_reader :holds
108
+ #
109
+ # # Gives an identifier, such as a company registration number, that can be used to used to uniquely identify the organization. Many different national and international identier schemes are available. The org ontology is neutral to which schemes are used. The particular identifier scheme should be indicated by the datatype of the identifier value. Using datatypes to distinguish the notation scheme used is consistent with recommended best practice for `skos:notation` of which this property is a specialization.
110
+ # # @return [RDF::Vocabulary::Term]
111
+ # attr_reader :identifier
112
+ #
113
+ # # Indicates an arbitrary relationship between two organizations. Specializations of this can be used to, for example, denote funding or supply chain relationships.
114
+ # # @return [RDF::Vocabulary::Term]
115
+ # attr_reader :linkedTo
116
+ #
117
+ # # Gives a location description for a person within the organization, for example a _Mail Stop_ for internal posting purposes.
118
+ # # @return [RDF::Vocabulary::Term]
119
+ # attr_reader :location
120
+ #
121
+ # # Indicates the Person (or other Agent including Organization) involved in the Membership relationship. Inverse of `org:hasMembership`
122
+ # # @return [RDF::Vocabulary::Term]
123
+ # attr_reader :member
124
+ #
125
+ # # Optional property to indicate the interval for which the membership is/was valid.
126
+ # # @return [RDF::Vocabulary::Term]
127
+ # attr_reader :memberDuring
128
+ #
129
+ # # Indicates that a person is a member of the Organization with no indication of the nature of that membership or the role played. Note that the choice of property name is not meant to limit the property to only formal membership arrangements, it is also indended to cover related concepts such as affilliation or other involvement in the organization. Extensions can specialize this relationship to indicate particular roles within the organization or more nuanced relationships to the organization. Has an optional inverse, `org:hasmember`.
130
+ # # @return [RDF::Vocabulary::Term]
131
+ # attr_reader :memberOf
132
+ #
133
+ # # Indicates Organization in which the Agent is a member.
134
+ # # @return [RDF::Vocabulary::Term]
135
+ # attr_reader :organization
136
+ #
137
+ # # Indicates one or more organizations that existed before the change event. Depending on the event they may or may not have continued to exist after the event. Inverse of `org:changedBy`.
138
+ # # @return [RDF::Vocabulary::Term]
139
+ # attr_reader :originalOrganization
140
+ #
141
+ # # Indicates the Organization in which the Post exists.
142
+ # # @return [RDF::Vocabulary::Term]
143
+ # attr_reader :postIn
144
+ #
145
+ # # Indicates the purpose of this Organization. There can be many purposes at different levels of abstraction but the nature of an organization is to have a reason for existence and this property is a means to document that reason. An Organization may have multiple purposes. It is recommended that the purpose be denoted by a controlled term or code list, ideally a `skos:Concept`. However, the range is left open to allow for other types of descriptive schemes. It is expected that specializations or application profiles of this vocabulary will constrain the range of the purpose. Alternative names: _remit_ _responsibility_ (esp. if applied to OrganizationalUnits such as Government Departments).
146
+ # # @return [RDF::Vocabulary::Term]
147
+ # attr_reader :purpose
148
+ #
149
+ # # Indicates a salary or other reward associated with the role. Typically this will be denoted using an existing representation scheme such as `gr:PriceSpecification` but the range is left open to allow applications to specialize it (e.g. to remunerationInGBP).
150
+ # # @return [RDF::Vocabulary::Term]
151
+ # attr_reader :remuneration
152
+ #
153
+ # # Indicates a reporting relationship as might be depicted on an organizational chart. The precise semantics of the reporting relationship will vary by organization but is intended to encompass both direct supervisory relationships (e.g. carrying objective and salary setting authority) and more general reporting or accountability relationships (e.g. so called _dotted line_ reporting).
154
+ # # @return [RDF::Vocabulary::Term]
155
+ # attr_reader :reportsTo
156
+ #
157
+ # # Indicates an event which resulted in this organization. Inverse of `org:resultingOrganization`.
158
+ # # @return [RDF::Vocabulary::Term]
159
+ # attr_reader :resultedFrom
160
+ #
161
+ # # Indicates an organization which was created or changed as a result of the event. Inverse of `org:resultedFrom`.
162
+ # # @return [RDF::Vocabulary::Term]
163
+ # attr_reader :resultingOrganization
164
+ #
165
+ # # Indicates the Role that the Agent plays in a Membership relationship with an Organization.
166
+ # # @return [RDF::Vocabulary::Term]
167
+ # attr_reader :role
168
+ #
169
+ # # This is a metalevel property which is used to annotate an `org:Role` instance with a sub-property of `org:memberOf` that can be used to directly indicate the role for easy of query. The intended semantics is a Membership relation involving the Role implies the existence of a direct property relationship through an inference rule of the form: `{ [] org:member ?p; org:organization ?o; org:role [org:roleProperty ?r] } -> {?p ?r ?o}`.
170
+ # # @return [RDF::Vocabulary::Term]
171
+ # attr_reader :roleProperty
172
+ #
173
+ # # Indicates an address for the site in a suitable encoding. Use of vCard (using the http://www.w3.org/TR/vcard-rdf/ vocabulary) is encouraged but the range is left open to allow other encodings to be used. The address may include email, telephone, and geo-location information and is not restricted to a physical address.
174
+ # # @return [RDF::Vocabulary::Term]
175
+ # attr_reader :siteAddress
176
+ #
177
+ # # Indicates an Organization which has some presence at the given site. This is the inverse of `org:hasSite`.
178
+ # # @return [RDF::Vocabulary::Term]
179
+ # attr_reader :siteOf
180
+ #
181
+ # # Represents hierarchical containment of Organizations or OrganizationalUnits; indicates an Organization which contains this Organization. Inverse of `org:hasSubOrganization`.
182
+ # # @return [RDF::Vocabulary::Term]
183
+ # attr_reader :subOrganizationOf
184
+ #
185
+ # # The transitive closure of subOrganizationOf, giving a representation of all organizations that contain this one. Note that technically this is a super property of the transitive closure so it could contain additional assertions but such usage is discouraged.
186
+ # # @return [RDF::Vocabulary::Term]
187
+ # attr_reader :transitiveSubOrganizationOf
188
+ #
189
+ # # Indicates an Organization of which this Unit is a part, e.g. a Department within a larger FormalOrganization. This is the inverse of `org:hasUnit`.
190
+ # # @return [RDF::Vocabulary::Term]
191
+ # attr_reader :unitOf
192
+ #
193
+ # # A role corresponding to the `org:headOf` property
194
+ # # @return [RDF::Vocabulary::Term]
195
+ # attr_reader :Head
196
+ #
9
197
  # end
10
- class ORG < RDF::StrictVocabulary("http://www.w3.org/ns/org#")
198
+ ORG = Class.new(RDF::StrictVocabulary("http://www.w3.org/ns/org#")) do
11
199
 
12
200
  # Ontology definition
13
201
  ontology :"http://www.w3.org/ns/org#",
@@ -5,9 +5,55 @@ require 'rdf'
5
5
  module RDF::Vocab
6
6
  # @!parse
7
7
  # # Vocabulary for <http://pcdm.org/models#>
8
+ # #
9
+ # # Portland Common Data Model
10
+ # #
11
+ # # Ontology for the Portland Common Data Model, intended to underlie a wide array of repository and DAMS applications.
12
+ # # @version 2016/04/18
13
+ # # @see https://github.com/duraspace/pcdm/wiki
8
14
  # class PCDM < RDF::StrictVocabulary
15
+ # # An AlternateOrder is an alternate ordering of its parent's members. It should only order the parent's members, and otherwise has all of the features of ordering (some members may be omitted from the order, members may appear more than once in the order, etc.).
16
+ # # @return [RDF::Vocabulary::Term]
17
+ # attr_reader :AlternateOrder
18
+ #
19
+ # # A Collection is a group of resources. Collections have descriptive metadata, access metadata, and may links to works and/or collections. By default, member works and collections are an unordered set, but can be ordered using the ORE Proxy class.
20
+ # # @return [RDF::Vocabulary::Term]
21
+ # attr_reader :Collection
22
+ #
23
+ # # A File is a sequence of binary data and is described by some accompanying metadata. The metadata typically includes at least basic technical metadata (size, content type, modification date, etc.), but can also include properties related to preservation, digitization process, provenance, etc. Files MUST be contained by exactly one Object.
24
+ # # @return [RDF::Vocabulary::Term]
25
+ # attr_reader :File
26
+ #
27
+ # # An Object is an intellectual entity, sometimes called a "work", "digital object", etc. Objects have descriptive metadata, access metadata, may contain files and other Objects as member "components". Each level of a work is therefore represented by an Object instance, and is capable of standing on its own, being linked to from Collections and other Objects. Member Objects can be ordered using the ORE Proxy class.
28
+ # # @return [RDF::Vocabulary::Term]
29
+ # attr_reader :Object
30
+ #
31
+ # # Links from a File to its containing Object.
32
+ # # @return [RDF::Vocabulary::Term]
33
+ # attr_reader :fileOf
34
+ #
35
+ # # Links to a File contained by this Object.
36
+ # # @return [RDF::Vocabulary::Term]
37
+ # attr_reader :hasFile
38
+ #
39
+ # # Links to a subsidiary Object or Collection. Typically used to link to component parts, such as a book linking to a page. Note on transitivity: hasMember is not defined as transitive, but applications may treat it as transitive as local needs dictate.
40
+ # # @return [RDF::Vocabulary::Term]
41
+ # attr_reader :hasMember
42
+ #
43
+ # # Links to a related Object that is not a component part, such as an object representing a donor agreement or policies that govern the resource.
44
+ # # @return [RDF::Vocabulary::Term]
45
+ # attr_reader :hasRelatedObject
46
+ #
47
+ # # Links from an Object or Collection to a containing Object or Collection.
48
+ # # @return [RDF::Vocabulary::Term]
49
+ # attr_reader :memberOf
50
+ #
51
+ # # Links from an Object to a Object or Collection that it is related to.
52
+ # # @return [RDF::Vocabulary::Term]
53
+ # attr_reader :relatedObjectOf
54
+ #
9
55
  # end
10
- class PCDM < RDF::StrictVocabulary("http://pcdm.org/models#")
56
+ PCDM = Class.new(RDF::StrictVocabulary("http://pcdm.org/models#")) do
11
57
 
12
58
  # Ontology definition
13
59
  ontology :"http://pcdm.org/models#",
@@ -5,9 +5,72 @@ require 'rdf'
5
5
  module RDF::Vocab
6
6
  # @!parse
7
7
  # # Vocabulary for <http://purl.org/net/p-plan#>
8
+ # #
9
+ # # The P-Plan ontology
10
+ # #
11
+ # # PROV extension for linking Plans and parts of plans to their respective executions. Created by Daniel Garijo and Yolanda Gil
12
+ # #
13
+ # # PROV extension for linking Plans and parts of plans to their respective executions.
14
+ # # @version 1.3
8
15
  # class PPLAN < RDF::StrictVocabulary
16
+ # # A p-plan:Activity represents the execution process planned in a p-plan:Step
17
+ # # @return [RDF::Vocabulary::Term]
18
+ # attr_reader :Activity
19
+ #
20
+ # # @return [RDF::Vocabulary::Term]
21
+ # attr_reader :Bundle
22
+ #
23
+ # # @return [RDF::Vocabulary::Term]
24
+ # attr_reader :Entity
25
+ #
26
+ # # @return [RDF::Vocabulary::Term]
27
+ # attr_reader :MultiStep
28
+ #
29
+ # # @return [RDF::Vocabulary::Term]
30
+ # attr_reader :Plan
31
+ #
32
+ # # @return [RDF::Vocabulary::Term]
33
+ # attr_reader :Step
34
+ #
35
+ # # @return [RDF::Vocabulary::Term]
36
+ # attr_reader :Variable
37
+ #
38
+ # # @return [RDF::Vocabulary::Term]
39
+ # attr_reader :correspondsToStep
40
+ #
41
+ # # @return [RDF::Vocabulary::Term]
42
+ # attr_reader :correspondsToVariable
43
+ #
44
+ # # @return [RDF::Vocabulary::Term]
45
+ # attr_reader :hasInputVar
46
+ #
47
+ # # @return [RDF::Vocabulary::Term]
48
+ # attr_reader :hasOutputVar
49
+ #
50
+ # # @return [RDF::Vocabulary::Term]
51
+ # attr_reader :isDecomposedAsPlan
52
+ #
53
+ # # @return [RDF::Vocabulary::Term]
54
+ # attr_reader :isInputVarOf
55
+ #
56
+ # # @return [RDF::Vocabulary::Term]
57
+ # attr_reader :isOutputVarOf
58
+ #
59
+ # # Property that asserts which Step preceeds the current one.
60
+ # # @return [RDF::Vocabulary::Term]
61
+ # attr_reader :isPrecededBy
62
+ #
63
+ # # @return [RDF::Vocabulary::Term]
64
+ # attr_reader :isStepOfPlan
65
+ #
66
+ # # @return [RDF::Vocabulary::Term]
67
+ # attr_reader :isSubPlanOfPlan
68
+ #
69
+ # # @return [RDF::Vocabulary::Term]
70
+ # attr_reader :isVariableOfPlan
71
+ #
9
72
  # end
10
- class PPLAN < RDF::StrictVocabulary("http://purl.org/net/p-plan#")
73
+ PPLAN = Class.new(RDF::StrictVocabulary("http://purl.org/net/p-plan#")) do
11
74
 
12
75
  # Ontology definition
13
76
  ontology :"http://purl.org/net/p-plan#",
@@ -5,40 +5,1055 @@ require 'rdf'
5
5
  module RDF::Vocab
6
6
  # @!parse
7
7
  # # Vocabulary for <http://www.loc.gov/premis/rdf/v1#>
8
+ # #
9
+ # # Preservation Metadata: Implementation Strategies (PREMIS) Ontology
10
+ # #
11
+ # # This ontology identifies the classes and properties used to describe preservation metadata in RDF. It aligns with PREMIS Data Dictionary version 2.2.
12
+ # # @version 1.0.0
13
+ # # @see http://multimedialab.elis.ugent.be/users/samcoppe/ontologies/Premis/index.html for the OWL Documentation of the ontology.
8
14
  # class PREMIS < RDF::StrictVocabulary
15
+ # # The Agent entity aggregates information about attributes or characteristics of agents (persons, organizations, or software) associated with rights management and preservation events in the life of a data object. Agent information serves to identify an agent unambiguously from all other Agent entities.
16
+ # #
17
+ # # Entity properties: May hold or grant one or more rights. May carry out, authorize, or compel one or more events. May create or act upon one or more objects through an event or with respect to a rights statement.
18
+ # # @return [RDF::Vocabulary::Term]
19
+ # attr_reader :Agent
20
+ #
21
+ # # Rationale Specific dates may apply to the particular rights statement.
22
+ # #
23
+ # # Definition: The date range during which the particular rights statement applies or is applied to the content.
24
+ # # @return [RDF::Vocabulary::Term]
25
+ # attr_reader :ApplicableDates
26
+ #
27
+ # # Definition: Contiguous or non-contiguous data within a file that has meaningful properties for preservation purposes.
28
+ # # @return [RDF::Vocabulary::Term]
29
+ # attr_reader :Bitstream
30
+ #
31
+ # # Definition: Information needed to retrieve a file from the storage system, or to access a bitstream within a file.
32
+ # #
33
+ # # Usage Notes: If the preservation repository uses the objectIdentifier as a handle for retrieving data, contentLocation is implicit and does not need to be recorded.
34
+ # #
35
+ # # Creation / Maintenance Notes: A preservation repository should never refer to content that it does not control. Therefore, the PREMIS working group assumed that the repository will always assign the contentLocation, probably by program.
36
+ # # @return [RDF::Vocabulary::Term]
37
+ # attr_reader :ContentLocation
38
+ #
39
+ # # Definition: Information about the copyright status of the object(s).
40
+ # #
41
+ # # Usage Notes: When rights basis is a copyright, copyrightInformation should be provided. Repositories may need to extend this with more detailed information. See the California Digital Library's copyrightMD schema (www.cdlib.org/inside/projects/rights/schema/) for an example of a more detailed scheme.
42
+ # # @return [RDF::Vocabulary::Term]
43
+ # attr_reader :CopyrightInformation
44
+ #
45
+ # # Creation / Maintenance Notes: If the object was created by the repository, assignment of creating application information should be straightforward. If the object was created outside the repository, it is possible this information could be supplied by the depositor. It might also be extracted from the file itself; the name of the creating application is often embedded within the file.
46
+ # #
47
+ # # Definition: Information about the application that created the object.
48
+ # #
49
+ # # Rationale: Information about the creating application, including the version of the application and the date the file was created, can be useful for problem solving purposes. For example, it is not uncommon for certain versions of software to be known for causing conversion errors or introducing artifacts. It is also useful to determine which rendering software is available for the digital object. For example, if you know that the Distiller program created the PDF file, you know it will be renderable with (among other programs) Adobe Reader.
50
+ # #
51
+ # # Usage Notes: This semantic unit applies to both objects created external to the repository and subsequently ingested, and to objects created by the repository, for example, through migration events. The creatingApplication container is repeatable if more than one application processed the object in turn. For example, a file could be created by Microsoft Word and later turned into a PDF using Adobe Acrobat. Details of both the Word and Acrobat applications may be recorded. However, if both files are stored in the repository, each file should be completely described as an Object entity and linked by using relationship information with a relationshipType “derivation.” It may also be repeated to record the creating application before the object was ingested as well as the creating application used as part of the ingest process. For example, an HTML file was created pre-ingest using Dreamweaver, and the Web crawler Heritrix then captured a snapshot of the files as part of the ingest. The amount of information needed for creatingApplication given here is minimal. For more granularity, extensibility is provided. Rather than having each repository record this locally, it would be preferable to have a registry of this information similar to format or environment registries.
52
+ # # @return [RDF::Vocabulary::Term]
53
+ # attr_reader :CreatingApplication
54
+ #
55
+ # # Usage Notes: This semantic unit is for additional objects that are necessary to render a file or representation, not for required software or hardware. It may also be used for a non-executable component of the object, such as a font or style sheet. For things that the software requires, see swDependency. This semantic unit does not include objects required by structural relationships, such as child content objects (e.g., figures that are part of an article), which are recorded under relationship with a relationshipType of “structural”. It is up to the repository to determine what constitutes a dependency in the context of the designated community. The objects noted may be internal or external to the preservation repository.
56
+ # #
57
+ # # Creation / Maintenance Notes: Recommended practice is for a repository to archive objects on which other objects depend. These may be sent by the submitter of the primary object, or they may in some cases be automatically obtained by the repository. For example, a markup file will often contain links to other objects it requires such as DTDs or XML Schema. If it does, these objects can often be identified by the link and downloaded by the repository.
58
+ # #
59
+ # # Definition: Information about a non-software component or associated file needed in order to use or render the representation or file, for example, a schema, a DTD, or an entity file declaration.
60
+ # # @return [RDF::Vocabulary::Term]
61
+ # attr_reader :Dependency
62
+ #
63
+ # # Usage Notes: All of this semantic units’ subunits are optional. At least one subunit (i.e. environmentNote, dependency, software, hardware, and/or environmentExtension) must be present if this container is included.
64
+ # #
65
+ # # Creation / Maintenance Notes: This information may be omitted when the repository is doing only bit-level preservation on the object. Rather than having each repository record this locally, it would be preferable to have a registry of environment information similar to proposed registries of format information. Repositories may choose to design mechanisms for inheritance, so that if the environment required for each file within a representation is identical to the environment recorded for the representation as a whole, it is not necessary to store this information in each file.
66
+ # #
67
+ # # Definition: Hardware/software combinations supporting use of the object.
68
+ # #
69
+ # # Rationale: Environment is the means by which the user renders and interacts with content. Separation of digital content from its environmental context can result in the content becoming unusable.
70
+ # # @return [RDF::Vocabulary::Term]
71
+ # attr_reader :Environment
72
+ #
73
+ # # The Event entity aggregates information about an action that involves one or more Object entities. Metadata about an Event would normally be recorded and stored separately from the digital object. Whether or not a preservation repository records an Event depends upon the importance of the event. Actions that modify objects should always be recorded. Other actions such as copying an object for backup purposes may be recorded in system logs or an audit trail but not necessarily in an Event entity. Mandatory semantic units are: eventIdentifier, eventType, and eventDateTime.
74
+ # #
75
+ # # Entity properties: Must be related to one or more objects. Can be related to one or more agents. Links between entities may be recorded from either direction and need not be bi-directional.
76
+ # # @return [RDF::Vocabulary::Term]
77
+ # attr_reader :Event
78
+ #
79
+ # # Usage Notes: This may be used to record all error and warning messages issued by a program involved in the event or to record a pointer to an error log. If the event was a validity check (e.g., profile conformance) any anomalies or quirks discovered would be recorded here. All subunits of this semantic unit are optional. At least one subunit (i.e. eventOutcomeDetailNote and/or eventOutcomeDetailExtension) must be present if this container is included.
80
+ # #
81
+ # # Rationale: An event outcome may be sufficiently complex that a coded description is not adequate to document it.
82
+ # #
83
+ # # Definition: A detailed description of the result or product of the event.
84
+ # # @return [RDF::Vocabulary::Term]
85
+ # attr_reader :EventOutcomeDetail
86
+ #
87
+ # # Definition: Information about the outcome of an event.
88
+ # #
89
+ # # Usage Notes: A repository may wish to supplement a coded eventOutcome value with additional information in eventOutcomeDetail. Since events may have more than one outcome, the container is repeatable. All subunits of this semantic unit are optional. At least one subunit (i.e. eventOutcome or eventOutcomeDetail) must be present if this container is included.
90
+ # # @return [RDF::Vocabulary::Term]
91
+ # attr_reader :EventOutcomeInformation
92
+ #
93
+ # # Definition: A named and ordered sequence of bytes that is known to an operating system.
94
+ # # @return [RDF::Vocabulary::Term]
95
+ # attr_reader :File
96
+ #
97
+ # # Definition: Information used to verify whether an object has been altered in an undocumented or unauthorized way.
98
+ # #
99
+ # # Usage Notes: To perform a fixity check, a message digest calculated at some earlier time is compared with a message digest calculated at a later time. If the digests are the same, the object was not altered in the interim. Recommended practice is to use two or more message digests calculated by different algorithms. (Note that the terms “message digest” and “checksum” are commonly used interchangeably. However, the term “checksum” is more correctly used for the product of a cyclical redundancy check (CRC), whereas the term “message digest” refers to the result of a cryptographic hash function, which is what is referred to here.) The act of performing a fixity check and the date it occurred would be recorded as an Event. The result of the check would be recorded as the eventOutcome. Therefore, only the messageDigestAlgorithm and messageDigest need to be recorded as objectCharacteristics for future comparison. Representation level: It could be argued that if a representation consists of a single file or if all the files comprised by a representation are combined (e.g., zipped) into a single file, then a fixity check could be performed on the representation. However, in both cases the fixity check is actually being performed on a file, which in this case happens to be coincidental with a representation. Bitstream level: Message digests can be computed for bitstreams although they are not as common as with files. For example, the JPX format, which is a JPEG2000 format, supports the inclusion of MD5 or SHA-1 message digests in internal metadata that was calculated on any range of bytes of the file.
100
+ # #
101
+ # # Creation / Maintenance Notes: Automatically calculated and recorded by repository.
102
+ # # @return [RDF::Vocabulary::Term]
103
+ # attr_reader :Fixity
104
+ #
105
+ # # Usage Notes: A bitstream embedded within a file may have different characteristics than the larger file. For example, a bitstream in LaTex format could be embedded within an SGML file, or multiple images using different colorspaces could be embedded within a TIFF file. format must be recorded for every object. When the bitstream format can be recognized by the repository and the repository might want to treat the bitstream differently from the embedding file for preservation purposes, format can be recorded for embedded bitstreams. Although this semantic unit is mandatory, both of its subunits are optional. At least one subunit (i.e. either formatDesignation or formatRegistry) must be present if this container is included or both may be used. If the subunit (formatDesignation or formatRegistry) needs to be repeated, the entire format container is repeated. This allows for association of format designation with a particular set of format registry information. For example, if the precise format cannot be determined and two format designations are recorded, each is given within a separate format container. The format container may also be repeated for multiple format registry entries.
106
+ # #
107
+ # # Definition: Identification of the format of a file or bitstream where format is the organization of digital information according to preset specifications.
108
+ # #
109
+ # # Creation / Maintenance Notes: The format of a file or bitstream should be ascertained by the repository on ingest. Even if this information is provided by the submitter, directly in metadata or indirectly via the file name extension, recommended practice is to independently identify the format by parsing the file when possible. If the format cannot be identified at the time of ingest, it is valid to record that it is unknown, but the repository should subsequently make an effort to identify the format, even if manual intervention is required.
110
+ # #
111
+ # # Rationale: Many preservation activities depend on detailed knowledge about the format of the digital object. An accurate identification of format is essential. The identification provided, whether by name or pointer into a format registry, should be sufficient to associate the object with more detailed format information.
112
+ # # @return [RDF::Vocabulary::Term]
113
+ # attr_reader :Format
114
+ #
115
+ # # Usage Notes: Either formatDesignation or at least one instance of formatRegistry is required. Both may be included. The most specific format (or format profile) should be recorded. A repository (or formats registry) may wish to use multipart format names (e.g., “TIFF_GeoTIFF” or “WAVE_MPEG_BWF”) to achieve this specificity.
116
+ # #
117
+ # # Definition: An identification of the format of the object.
118
+ # # @return [RDF::Vocabulary::Term]
119
+ # attr_reader :FormatDesignation
120
+ #
121
+ # # Definition: Identifies and/or gives further information about the format by reference to an entry in a format registry.
122
+ # #
123
+ # # Rationale: If central format registries are available to the preservation repository, they may provide an excellent way of referencing detailed format information.
124
+ # #
125
+ # # Usage Notes: Either formatDesignation or at least one instance of formatRegistry is required. If more than one formatRegistry needs to be recorded the format container should be repeated to include each additional set of formatRegistry information. The PREMIS working group assumed that a number of format registries will be developed and maintained to support digital preservation efforts. The proposal for a Global Digital Format Registry (GDFR) (http://hul.harvard.edu/gdfr/documents.html#data), for example, would create a network-accessible registry designed to store detailed specifications on formats and profiles.
126
+ # # @return [RDF::Vocabulary::Term]
127
+ # attr_reader :FormatRegistry
128
+ #
129
+ # # Creation / Maintenance Notes: Hardware environment information can be very difficult to provide. Many different hardware environments may apply; there are a huge number of combinations of maker and type of CPU, memory, video drivers, and so on. Although at least one hardware environment should be recorded, it is not necessary to record them all and each repository will have to make its own decisions about which hardware environments to record. Because of the difficulty recording this information comprehensively, it would be optimal if central registries of environment information existed. In many cases the environment of a file object is directly associated with the format, making registry lookup by format feasible. In the absence of a global mechanism, repositories may be forced to develop their own local “registries” relating format to hwEnvironment.
130
+ # #
131
+ # # Definition: Hardware components needed by the software referenced in swName or the human user of the referenced software.
132
+ # # @return [RDF::Vocabulary::Term]
133
+ # attr_reader :Hardware
134
+ #
135
+ # # This class is used in PREMIS OWL to describe identifiers if the identifiers are not http URIs.
136
+ # # @return [RDF::Vocabulary::Term]
137
+ # attr_reader :Identifier
138
+ #
139
+ # # Definition: Features of the object intended to inhibit access, use, or migration.
140
+ # #
141
+ # # Creation / Maintenance Notes: Inhibitors are more likely to be present on an object ingested by the repository than applied by the repository itself. It is often not possible to tell that a file has been encrypted by parsing it; the file may appear to be ASCII text. Therefore, information about inhibitors should be supplied as metadata with submitted objects when possible.
142
+ # #
143
+ # # Usage Notes: Some file formats allow encryption for embedded bitstreams. Some file formats such as PDF use passwords to control access to content or specific functions. Although this is actually implemented at the bitstream level, for preservation purposes it is effectively managed at the file level; that is, passwords would not be recorded for individually addressable bitstreams. For certain types of inhibitor keys, more granularity may be required. If the inhibitor key information is identical to key information in digital signatures, use those semantic units.
144
+ # #
145
+ # # Rationale: Format information may indicate whether a file is encrypted, but the nature of the encryption also must be recorded, as well as the access key.
146
+ # # @return [RDF::Vocabulary::Term]
147
+ # attr_reader :Inhibitors
148
+ #
149
+ # # Definition: a set of content that is considered a single intellectual unit for purposes of management and description: for example, a particular book, map, photograph, or database. An Intellectual Entity can include other Intellectual Entities; for example, a Web site can include a Web page; a Web page can include an image. An Intellectual Entity may have one or more digital representations.
150
+ # #
151
+ # # Intellectual entities are described via Descriptive metadata models. These are very domain-specific and are out of scope for PREMIS. Examples: Dublin Core, Mets, MARC
152
+ # # @return [RDF::Vocabulary::Term]
153
+ # attr_reader :IntellectualEntity
154
+ #
155
+ # # Usage Note: When rights basis is a license, licenseInformation should be provided.
156
+ # #
157
+ # # Definition: Information about a license or other agreement granting permissions related to an object.
158
+ # # @return [RDF::Vocabulary::Term]
159
+ # attr_reader :LicenseInformation
160
+ #
161
+ # # The object class aggregates information about a digital object held by a preservation repository and describes those characteristics relevant to preservation management. The only mandatory property is objectIdentifier. The object class has three subclasses: Representation, File, and Bitstream.
162
+ # #
163
+ # # Entity types: Representation: A digital object instantiating or embodying an Intellectual Entity. A representation is the set of stored digital files and structural metadata needed to provide a complete and reasonable rendition of the Intellectual Entity. File: A named and ordered sequence of bytes that is known to an operating system. Bitstream: Contiguous or non-contiguous data within a file that has meaningful properties for preservation purposes.
164
+ # #
165
+ # # Entity properties: Can be associated with one or more rights statements. Can participate in one or more events. Links between entities may be recorded from either direction and need not be bi-directional.
166
+ # # @return [RDF::Vocabulary::Term]
167
+ # attr_reader :Object
168
+ #
169
+ # # Usage Notes: The semantic units included in objectCharacteristics should be treated as a set of information that pertains to a single object at a single compositionLevel. Object characteristics may be repeated when an object was created by applying two or more encodings, such as compression and encryption. In this case each repetition of objectCharacteristics would have an incrementally higher compositionLevel. When encryption is applied, the objectCharacteristics block must include an inhibitors semantic unit. A bitstream embedded within a file may have different object characteristics than the file. Where these characteristics are relevant for preservation, they should be recorded. When a single file is equivalent to a representation, objectCharacteristics may be applied and thus associated with the representation. In these cases, the relationship between the file comprising the representation and other associated files may be expressed using relationshipSubType.
170
+ # #
171
+ # # Rationale: There are some important technical properties that apply to objects of any format. Detailed definition of format-specific properties is outside the scope of this Data Dictionary, although such properties may be included within objectCharacteristicsExtension.
172
+ # #
173
+ # # Definition: Technical properties of a file or bitstream that are applicable to all or most formats.
174
+ # # @return [RDF::Vocabulary::Term]
175
+ # attr_reader :ObjectCharacteristics
176
+ #
177
+ # # Definition: Basicly, the preservation information in PREMIS OWL consists of five entities related to each other. The entities are: Agent, Event, IntellectualEntity, Object, and RightsStatement.
178
+ # # @return [RDF::Vocabulary::Term]
179
+ # attr_reader :PremisEntity
180
+ #
181
+ # # Definition: Information indicating the decision or policy on the set of preservation functions to be applied to an object and the context in which the decision or policy was made.
182
+ # #
183
+ # # Creation / Maintenance Notes: The preservation level may be assigned by the repository or requested by the depositor and submitted as metadata. The repository may also choose to record additional metadata indicating the context for the assignment of the preservation level.
184
+ # #
185
+ # # Usage Notes: If the repository offers only a single preservation level, this value does not need to be explicitly recorded within the repository. Application of a particular set of preservationLevel semantic units may only cover a single representation of an object: representations in other technical forms or serving other functions may have a different preservationLevel applied. The container may be repeated if a preservation level value needs to be recorded in additional contexts (see preservationLevelRole).
186
+ # #
187
+ # # Rationale: Some preservation repositories will offer multiple preservation options depending on factors such as the value or uniqueness of the material, the “preservability” of the format, the amount the customer is willing to pay, etc. The context surrounding the choice of a particular preservation option for an object may also require further explanation.
188
+ # # @return [RDF::Vocabulary::Term]
189
+ # attr_reader :PreservationLevel
190
+ #
191
+ # # Usage Notes: The related object may or may not be held within the preservation repository. Recommended practice is that objects reside within the repository unless there is a good reason to reference an object outside. Internal and external references should be clear.
192
+ # #
193
+ # # Definition: The identifier and sequential context of the related resource
194
+ # # @return [RDF::Vocabulary::Term]
195
+ # attr_reader :RelatedObjectIdentification
196
+ #
197
+ # # Definition: A digital object instantiating or embodying an Intellectual Entity. A representation is the set of stored digital files and structural metadata needed to provide a complete and reasonable rendition of the Intellectual Entity.
198
+ # # @return [RDF::Vocabulary::Term]
199
+ # attr_reader :Representation
200
+ #
201
+ # # Definition: A designation used to uniquely identify documentation supporting the specified rights within the repository system.
202
+ # # @return [RDF::Vocabulary::Term]
203
+ # attr_reader :RightsDocumentation
204
+ #
205
+ # # Definition: The action(s) that the granting agency has allowed the repository.
206
+ # # @return [RDF::Vocabulary::Term]
207
+ # attr_reader :RightsGranted
208
+ #
209
+ # # Definition: Documentation of the repository's right to perform one or more acts.
210
+ # #
211
+ # # Usage Notes: This semantic unit is optional because in some cases rights may be unknown. Institutions are encouraged to record rights information when possible. Either rightsStatement or rightsExtension must be present if the Rights entity is included. The rightsStatement should be repeated when the act(s) described has more than one basis, or when different acts have different bases.
212
+ # #
213
+ # # Extensions: In OWL one can define its own subclasses to the the RightsStatement class to denote OtherRightsInformation of the PREMIS data dictionary.
214
+ # # @return [RDF::Vocabulary::Term]
215
+ # attr_reader :RightsStatement
216
+ #
217
+ # # Definition: Information needed to use a digital signature to authenticate the signer of an object and/or the information contained in the object.
218
+ # #
219
+ # # Usage Notes: Several of the semantic components of signatureInformation are taken from the W3C’s XML-Signature Syntax and Processing; see www.w3.org/TR/2002/REC-xmldsig-core-20020212/ for more information on the structure and application of these semantic units.
220
+ # #
221
+ # # Rationale: A repository may have a policy of generating digital signatures for files on ingest, or may have a need to store and later validate incoming digital signatures.
222
+ # # @return [RDF::Vocabulary::Term]
223
+ # attr_reader :Signature
224
+ #
225
+ # # Definition: Characteristics of a particular object subjectively determined to be important to maintain through preservation actions.
226
+ # #
227
+ # # Rationale: Objects that have the same technical properties may still differ as to the properties that should be preserved for future presentation or use.
228
+ # #
229
+ # # Usage Notes: All of this semantic unit’s subunits are optional. At least one of the significantPropertiesValue and significantPropertiesExtension subunits must be present if this container is included or both may be used. Significant properties may be objective technical characteristics subjectively considered important, or subjectively determined characteristics. For example, a PDF may contain links that are not considered important and JavaScript that is considered important. Or future migrations of a TIFF image may require optimization for line clarity or for color; the option chosen would depend upon a curatorial judgment of the significant properties of the image. Listing significant properties implies that the repository plans to preserve these properties across time and requires them to acceptably survive preservation action; for example, to be maintained during emulation or after format migration. It also implies that the repository would note when preservation action results in modification of significant properties. In practice, significant properties might be used as measures of preservation success, as part of quality checking the results of a preservation action or evaluating the efficacy of a preservation method. For example, if the listed significant properties are not maintained after application of a particular preservation method, it may indicate a failure of the process or that the method is not well suited to the type of material. More experience with digital preservation is needed to determine the best ways of representing significant properties in general, and of representing modification of significant properties. The semantic units included in the significantProperties container aim to provide a flexible structure for describing significant properties, allowing general types of aspects, facets or attributes of an object to be declared and to be paired with specific significant details about the object pertaining to that aspect, facet or attribute. For example, some repositories may define significant properties for objects related to facets of content, appearance, structure, behavior, and context. Examples of facet:detail pairs in this case could include: significantPropertiesType = “content” significantPropertiesValue = “all textual content and images” significantPropertiesType = “behavior” significantPropertiesValue = “editable” Other repositories may choose to describe significant properties at a more granular attribute level; for example: significantPropertiesType = “page count” significantPropertiesValue = “7” significantPropertiesType = “page width” significantPropertiesValue = “210 mm” Each facet:detail pair should be contained in a separate, repeated significantProperties container. Further work on determining and describing significant properties may yield more detailed schemes to facilitate general description. Representing modification of significant properties as a result of preservation action also requires further work. One possible way involves the use of Object and Event information: Object A has significant properties volume and timing, which are recorded as significantProperties of A. In migrated version B, the timing is modified, which is noted in the eventOutcome of the migration event. Only volume is listed as a significant property of B.
230
+ # #
231
+ # # Creation / Maintenance Notes: Significant properties may pertain to all objects of a certain class; for example, the repository can decide that for all PDF files, only the content need be preserved. In other cases, for example, for media art, the significant properties may be unique to each individual object. Where values are unique, they must be supplied by the submitter or provided by the curatorial staff of the repository.
232
+ # # @return [RDF::Vocabulary::Term]
233
+ # attr_reader :SignificantProperties
234
+ #
235
+ # # Definition: Software required to render or use the object.
236
+ # #
237
+ # # Creation / Maintenance Notes: If recording this explicitly, many different software environments may apply; for example, a particular object such as a PDF file may be viewable by several versions of several applications running under several operating systems and operating system versions. Although at least one software environment should be recorded, it is not necessary to record them all and each repository will have to make its own decisions about which software environments to record. Also, what appears to the user as a single rendering program can have many dependencies, including system utilities, runtime libraries, and so on, which each might have their own dependencies in turn. As with environment, metadata may be more efficiently managed in conjunction with a format registry either internal or external to a repository. In the absence of a global mechanism, repositories may be forced to develop their own local “registries” relating format to software environment.
238
+ # # @return [RDF::Vocabulary::Term]
239
+ # attr_reader :Software
240
+ #
241
+ # # Usage Notes: When rights basis is a statute, statuteInformation should be provided.
242
+ # #
243
+ # # Definition: Information about the statute allowing use of the object.
244
+ # # @return [RDF::Vocabulary::Term]
245
+ # attr_reader :StatuteInformation
246
+ #
247
+ # # Rationale: It is necessary for a repository to associate the contentLocation with the storageMedium.
248
+ # #
249
+ # # Usage Notes: Normally there would be a single storage location and medium for an object, because an object in another location would be considered a different object. The storage composite should be repeated if there are two or more copies that are identical bit-wise and managed as a unit except for the medium on which they are stored. They must have a single objectIdentifier and be managed as a single object by the repository. Although this semantic unit is mandatory, both of its subunits are optional. At least one subunit (i.e. either contentLocation or storageMedium) must be present or both may be used.
250
+ # #
251
+ # # Definition: Information about how and where a file is stored in the storage system.
252
+ # # @return [RDF::Vocabulary::Term]
253
+ # attr_reader :Storage
254
+ #
255
+ # # Rationale: The permission to preserve may be time bounded.
256
+ # #
257
+ # # Definition: The time period for the permissions granted.
258
+ # # @return [RDF::Vocabulary::Term]
259
+ # attr_reader :TermOfGrant
260
+ #
261
+ # # Definition: The time period for the restriction granted.
262
+ # #
263
+ # # Rationale: The current definition of termOfGrant is "time period for the permissions granted." This allows for expressing information about the rights granted, but some repositories may need to express timebounded restrictions like embargoes. If this is applicable startDate for the beginning of the embargo and endDate for the end of the embargo should be recorded.
264
+ # # @return [RDF::Vocabulary::Term]
265
+ # attr_reader :TermOfRestriction
266
+ #
267
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
268
+ # #
269
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/actionsGranted
270
+ # #
271
+ # # Definition: The action the preservation repository is allowed to take.
272
+ # # @return [RDF::Vocabulary::Term]
273
+ # attr_reader :hasAct
274
+ #
275
+ # # Rationale: Digital provenance requires often that relationships between agents and events are documented. The role of the associated agent may need to be documented. For this, a SKOS vocabulary can be used. The LOC will publish a vocabulary at http://id.loc.gov/, denoting the agent's role. These vocabulary will publish the concepts also as subproperties to the linkingAgent property, for denoting the role of the agent in the event or rightsstatement.
276
+ # #
277
+ # # Definition: link to the associated Agent.
278
+ # # @return [RDF::Vocabulary::Term]
279
+ # attr_reader :hasAgent
280
+ #
281
+ # # Rationale: This semantic unit provides a more reader-friendly version of the agent identified by the agentIdentifier.
282
+ # #
283
+ # # Usage Note: The value is not necessarily unique.
284
+ # #
285
+ # # Definition: A text string which could be used in addition to agentIdentifier to identify an agent.
286
+ # #
287
+ # # Examples: Erik Owens, Pc
288
+ # # @return [RDF::Vocabulary::Term]
289
+ # attr_reader :hasAgentName
290
+ #
291
+ # # Definition: Additional information about the agent.
292
+ # #
293
+ # # Rationale: Additional information may be needed to describe or disambiguate the agent.
294
+ # # @return [RDF::Vocabulary::Term]
295
+ # attr_reader :hasAgentNote
296
+ #
297
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
298
+ # #
299
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/agentType
300
+ # #
301
+ # # Definition: A high-level characterization of the type of agent.
302
+ # # @return [RDF::Vocabulary::Term]
303
+ # attr_reader :hasAgentType
304
+ #
305
+ # # @return [RDF::Vocabulary::Term]
306
+ # attr_reader :hasApplicableDates
307
+ #
308
+ # # Usage Notes: A file or bitstream can be subject to multiple encodings that must be decoded in reverse order (highest to lowest). For example, file A may be compressed to create file B, which is encrypted to create file C. To recreate a copy of the base file A, one would have to unencrypt file C to create file B and then uncompress file B to create file A. A compositionLevel of zero indicates that the object is a base object and not subject to further decoding, while a level of 1 or higher indicates that one or more decodings must be applied. Numbering goes lowest to highest (first encoded = 0). 0 is base object; 1-n are subsequent encodings. Use 0 as the default if there is only one compositionLevel. When multiple file objects are bundled together as filestreams within a package file object (e.g., a ZIP file), the individual filestream objects are not composition levels of the package file object. They should be considered separate objects, each with their own composition levels. For example, two encrypted files zipped together and stored in an archive as one file object would be described as three separate objects, each with its own associated metadata. The storage location of the two inner objects would point to the ZIP file, but the ZIP file itself would have only a single composition level (of zero) whose format would be “zip.”
309
+ # #
310
+ # # Rationale: A file or bitstream can be encoded with compression, encryption, etc., or bundled with other files or bitstreams into larger packages. Knowing the order in which these actions are taken is important if the original object or objects must be recovered.
311
+ # #
312
+ # # Examples: 0, 1, 2
313
+ # #
314
+ # # Definition: An indication of whether the object is subject to one or more processes of decoding or unbundling.
315
+ # #
316
+ # # Creation / Maintenance Notes: Composition level will generally be supplied by the repository, which should attempt to supply this value automatically. If the object was created by the repository, the creating routine knows the composition level and can supply this metadata. If the object is being ingested by the repository, repository programs will have to attempt to identify the composition level from the object itself or from externally supplied metadata.
317
+ # #
318
+ # # Data Constraints: Non-negative integers.
319
+ # # @return [RDF::Vocabulary::Term]
320
+ # attr_reader :hasCompositionLevel
321
+ #
322
+ # # @return [RDF::Vocabulary::Term]
323
+ # attr_reader :hasContentLocation
324
+ #
325
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/contentLocationType
326
+ # #
327
+ # # Rationale: To understand the meaning of the value it is necessary to know what location scheme is used.
328
+ # #
329
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
330
+ # #
331
+ # # Definition: The means of referencing the location of the content.
332
+ # # @return [RDF::Vocabulary::Term]
333
+ # attr_reader :hasContentLocationType
334
+ #
335
+ # # Definition: The reference to the location of the content used by the storage system.
336
+ # #
337
+ # # Usage Notes: This could be a fully qualified path and filename, or the information used by a resolution system (e.g., a handle) or the native information used by a storage management system. For a bitstream or filestream, this would probably be the reference point and offset of the starting position of the bitstream. It is up to the repository to determine the level of granularity that should be recorded.
338
+ # #
339
+ # # Examples: http://wwasearch.loc.gov/107th/200212107035/http://house.gov/langevin/ (file), c:\apache2\htdocs\index.html (file), 64 [offset from start of file c:\apache2\htdocs\image\logo.gif] (bitstream)
340
+ # # @return [RDF::Vocabulary::Term]
341
+ # attr_reader :hasContentLocationValue
342
+ #
343
+ # # Data Constraint: Values should be taken from ISO 3166.
344
+ # #
345
+ # # Definition: The country whose copyright laws apply.
346
+ # #
347
+ # # Rationale: Copyright law can vary from country to country.
348
+ # #
349
+ # # Examples: us, de, be
350
+ # # @return [RDF::Vocabulary::Term]
351
+ # attr_reader :hasCopyrightJurisdiction
352
+ #
353
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/copyrightStatus
354
+ # #
355
+ # # Definition: A coded designation for the copyright status of the object at the time the rights statement is recorded.
356
+ # #
357
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
358
+ # # @return [RDF::Vocabulary::Term]
359
+ # attr_reader :hasCopyrightStatus
360
+ #
361
+ # # Example: 2001-10-26T19:32:52+00:00
362
+ # #
363
+ # # Definition: The date that the copyright status recorded in copyrightStatus was determined.
364
+ # #
365
+ # # Data Constraint: To aid machine processing, value should use a structured form: xsd:dateTime
366
+ # # @return [RDF::Vocabulary::Term]
367
+ # attr_reader :hasCopyrightStatusDeterminationDate
368
+ #
369
+ # # @return [RDF::Vocabulary::Term]
370
+ # attr_reader :hasCreatingApplication
371
+ #
372
+ # # Definition: A designation for the name of the software program that created the object.
373
+ # #
374
+ # # Usage Notes: The creatingApplication is the application that created the object in its current format, not the application that created the copy written to storage. For example, if a document is created by Microsoft Word and subsequently copied to archive storage by a repository’s Ingest program, the creatingApplication is Word, not the Ingest program.
375
+ # #
376
+ # # Example: MSWord
377
+ # # @return [RDF::Vocabulary::Term]
378
+ # attr_reader :hasCreatingApplicationName
379
+ #
380
+ # # Definition: The version of the software program that created the object.
381
+ # #
382
+ # # Example: 2000
383
+ # # @return [RDF::Vocabulary::Term]
384
+ # attr_reader :hasCreatingApplicationVersion
385
+ #
386
+ # # Example: 2001-10-26T19:32:52+00:00
387
+ # #
388
+ # # Definition: The actual or approximate date and time the object was created.
389
+ # #
390
+ # # Usage Notes: Use the most precise date available. This is the date the object was created by the creating application, not the date any copy was made externally or by the repository. For example, if a file is created by Microsoft Word in 2001 and two copies are made in 2003, the dateCreatedByApplication of all three files is 2001. The date a file is written to storage can be recorded as an Event. If the object itself contains internal creation and modification dates, the modification date should be used as dateCreatedByApplication. If the application is a Web harvester capturing an object at a point of time, use for date captured.
391
+ # #
392
+ # # Data Constraint: To aid machine processing, value should use a structured form: xsd:dateTime
393
+ # # @return [RDF::Vocabulary::Term]
394
+ # attr_reader :hasDateCreatedByApplication
395
+ #
396
+ # # @return [RDF::Vocabulary::Term]
397
+ # attr_reader :hasDependency
398
+ #
399
+ # # Rationale: It may not be self-evident from the dependencyIdentifier what the name of the object actually is.
400
+ # #
401
+ # # Example: Additional Element Set for Language Corpora
402
+ # #
403
+ # # Definition: A designation for a component or associated file needed by the representation or file.
404
+ # # @return [RDF::Vocabulary::Term]
405
+ # attr_reader :hasDependencyName
406
+ #
407
+ # # Usage Notes: Use “0000-00-00T00:00:00+00:00” for an open ended term of grant. Omit endDate if the ending date is unknown or the permission statement applies to many objects with different end dates.
408
+ # #
409
+ # # Definition: The ending date of the permission granted.
410
+ # #
411
+ # # Data Constraint: To aid machine processing, value should use a structured form: xsd:dateTime
412
+ # # @return [RDF::Vocabulary::Term]
413
+ # attr_reader :hasEndDate
414
+ #
415
+ # # @return [RDF::Vocabulary::Term]
416
+ # attr_reader :hasEnvironment
417
+ #
418
+ # # Rationale: If multiple environments are described, this element can help to distinguish among them.
419
+ # #
420
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/environmentCharacteristic
421
+ # #
422
+ # # Definition: An assessment of the extent to which the described environment supports its purpose.
423
+ # #
424
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
425
+ # # @return [RDF::Vocabulary::Term]
426
+ # attr_reader :hasEnvironmentCharacteristic
427
+ #
428
+ # # Rationale: There may be a need to give a textual description of the environment for additional explanation.
429
+ # #
430
+ # # Example: This environment assumes that the PDF will be stored locally and used with a standalone PDF reader.
431
+ # #
432
+ # # Usage Notes: This note could be used to record the context of the environment information. For example, if a file can be rendered through a PC client application or through a browser with a plug-in, this note could be used to identify which situation applies. The note should not be used for a textual description of environment information recorded more rigorously elsewhere.
433
+ # #
434
+ # # Definition: Additional information about the environment.
435
+ # # @return [RDF::Vocabulary::Term]
436
+ # attr_reader :hasEnvironmentNote
437
+ #
438
+ # # Definition: The use(s) supported by the specified environment.
439
+ # #
440
+ # # Rationale: Different environments can support different uses of objects. For example, the environment needed to edit and modify a file can be quite different than the environment needed to render it.
441
+ # #
442
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/environmentPurpose
443
+ # #
444
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
445
+ # # @return [RDF::Vocabulary::Term]
446
+ # attr_reader :hasEnvironmentPurpose
447
+ #
448
+ # # Definition: The event associated with the object or an agent.
449
+ # #
450
+ # # Usage Notes: Use to link to events that are not associated with relationships between objects, such as format validation, virus checking, etc.
451
+ # # @return [RDF::Vocabulary::Term]
452
+ # attr_reader :hasEvent
453
+ #
454
+ # # Usage Notes: Recommended practice is to record the most specific time possible and to designate the time zone.
455
+ # #
456
+ # # Example: 2001-10-26T19:32:52+00:00
457
+ # #
458
+ # # Definition: The single date and time, or date and time range, at or during which the event occurred.
459
+ # #
460
+ # # Data Constraint: To aid machine processing, value should use a structured form: xsd:dateTime
461
+ # # @return [RDF::Vocabulary::Term]
462
+ # attr_reader :hasEventDateTime
463
+ #
464
+ # # Usage Notes: eventDetail is not intended to be processed by machine. It may record any information about an event and/or point to information stored elsewhere.
465
+ # #
466
+ # # Examples: Object permanently withdrawn by request of Caroline Hunt, Program=“MIGJP2JP2K”; version=“2.2”
467
+ # #
468
+ # # Definition: Additional information about the event.
469
+ # # @return [RDF::Vocabulary::Term]
470
+ # attr_reader :hasEventDetail
471
+ #
472
+ # # Rationale: A coded way of representing the outcome of an event may be useful for machine processing and reporting. If, for example, a fixity check fails, the event record provides both an actionable and a permanent record.
473
+ # #
474
+ # # Usage Notes: Recommended practice is to use a controlled vocabulary that a system can act upon automatically. More detail about the outcome may be recorded in eventOutcomeDetail. Recommended practice is to define events with sufficient granularity that each event has a single outcome.
475
+ # #
476
+ # # Examples: 00 [a code meaning “action successfully completed”], CV-01 [a code meaning “checksum validated”]
477
+ # #
478
+ # # Data Constraint: Value should be taken from a controlled vocabulary.
479
+ # #
480
+ # # Definition: A categorization of the overall result of the event in terms of success, partial success, or failure.
481
+ # # @return [RDF::Vocabulary::Term]
482
+ # attr_reader :hasEventOutcome
483
+ #
484
+ # # @return [RDF::Vocabulary::Term]
485
+ # attr_reader :hasEventOutcomeDetail
486
+ #
487
+ # # Rationale: Additional information in textual form may be needed about the outcome of the event.
488
+ # #
489
+ # # Examples: LZW compressed file, Non-standard tags found in header
490
+ # #
491
+ # # Definition: A detailed description of the result or product of the event in textual form.
492
+ # # @return [RDF::Vocabulary::Term]
493
+ # attr_reader :hasEventOutcomeDetailNote
494
+ #
495
+ # # @return [RDF::Vocabulary::Term]
496
+ # attr_reader :hasEventOutcomeInformation
497
+ #
498
+ # # This propety links a Event instance to an Agent instance. Via this property a distinction can be made in the linkingAgent properties based on the domain.
499
+ # #
500
+ # # Extensions: One can extend this property to use more fine grained properties by defining the fine grained properties as subproperties of this property.
501
+ # # @return [RDF::Vocabulary::Term]
502
+ # attr_reader :hasEventRelatedAgent
503
+ #
504
+ # # Extensions: One can extend this property to use more fine grained properties by defining the fine grained properties as subproperties of this property.
505
+ # #
506
+ # # Rationale: Digital provenance often requires that relationships between objects and events are documented.
507
+ # #
508
+ # # Definition: Information about an object associated with an event.
509
+ # # @return [RDF::Vocabulary::Term]
510
+ # attr_reader :hasEventRelatedObject
511
+ #
512
+ # # Rationale: Categorizing events will aid the preservation repository in machine processing of event information, particularly in reporting.
513
+ # #
514
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/eventType
515
+ # #
516
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
517
+ # #
518
+ # # Definition: A categorization of the nature of the event.
519
+ # # @return [RDF::Vocabulary::Term]
520
+ # attr_reader :hasEventType
521
+ #
522
+ # # @return [RDF::Vocabulary::Term]
523
+ # attr_reader :hasFixity
524
+ #
525
+ # # @return [RDF::Vocabulary::Term]
526
+ # attr_reader :hasFormat
527
+ #
528
+ # # @return [RDF::Vocabulary::Term]
529
+ # attr_reader :hasFormatDesignation
530
+ #
531
+ # # Examples: Text/sgml, image/tiff/geotiff, Adobe PDF, DES, PGP, base64, unknown, LaTex
532
+ # #
533
+ # # Data Constraint: Value should be taken from a controlled vocabulary.
534
+ # #
535
+ # # Definition: A designation of the format of the file or bitstream.
536
+ # #
537
+ # # Usage Notes: For unidentified formats, formatName may be recorded as “unknown”.
538
+ # # @return [RDF::Vocabulary::Term]
539
+ # attr_reader :hasFormatName
540
+ #
541
+ # # Usage Notes: The formatNote may contain free text, a reference pointer, or a value from a controlled list.
542
+ # #
543
+ # # Definition: Additional information about format.
544
+ # #
545
+ # # Rationale: Qualifying information may be needed to supplement format designation and registry information or record a status for identification.
546
+ # #
547
+ # # Examples: tentative identification, disjunction, multiple format identifications found
548
+ # # @return [RDF::Vocabulary::Term]
549
+ # attr_reader :hasFormatNote
550
+ #
551
+ # # @return [RDF::Vocabulary::Term]
552
+ # attr_reader :hasFormatRegistry
553
+ #
554
+ # # Definition: The unique key used to reference an entry for this format in a format registry.
555
+ # #
556
+ # # Examples: info:gdfr/fred/f/tiff, TIFF/6.0
557
+ # # @return [RDF::Vocabulary::Term]
558
+ # attr_reader :hasFormatRegistryKey
559
+ #
560
+ # # Definition: A designation identifying the referenced format registry.
561
+ # #
562
+ # # Usage Notes: This can be a formal name, internally used name, or URI.
563
+ # #
564
+ # # Examples: PRONOM, www.nationalarchives.gov.uk/pronom, Representation Information Registry Repository, FRED: A format registry demonstration, release 0.07
565
+ # # @return [RDF::Vocabulary::Term]
566
+ # attr_reader :hasFormatRegistryName
567
+ #
568
+ # # Rationale: The same format may be defined in different registries for different purposes. For example, one registry may give detailed format specifications while another has profile information. If multiple registries are recorded, this semantic unit can be used to distinguish among them.
569
+ # #
570
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/formatRegistryRole
571
+ # #
572
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
573
+ # #
574
+ # # Definition: The purpose or expected use of the registry.
575
+ # # @return [RDF::Vocabulary::Term]
576
+ # attr_reader :hasFormatRegistryRole
577
+ #
578
+ # # Examples: 6.0, 2003
579
+ # #
580
+ # # Definition: The version of the format named in formatName.
581
+ # #
582
+ # # Rationale: Many authority lists of format names are not granular enough to indicate version, for example, MIME Media types.
583
+ # #
584
+ # # Usage Notes: If the format is versioned, formatVersion should be recorded. It can be either a numeric or chronological designation.
585
+ # # @return [RDF::Vocabulary::Term]
586
+ # attr_reader :hasFormatVersion
587
+ #
588
+ # # @return [RDF::Vocabulary::Term]
589
+ # attr_reader :hasHardware
590
+ #
591
+ # # Usage Notes: Include manufacturer when this helps to identify or disambiguate the product. Include version for firmware or other components where that information is pertinent.
592
+ # #
593
+ # # Examples: Intel Pentium III, 1 GB DRAM, Windows XPcompatible joystick
594
+ # #
595
+ # # Definition: Manufacturer, model, and version (if applicable) of the hardware.
596
+ # # @return [RDF::Vocabulary::Term]
597
+ # attr_reader :hasHardwareName
598
+ #
599
+ # # Usage Notes: This could be an identifier or URI used to point to hardware documentation.
600
+ # #
601
+ # # Definition: Additional requirements or instructions related to the hardware referenced in hwName.
602
+ # #
603
+ # # Examples: 32MB minimum, Required RAM for Apache is unknown
604
+ # #
605
+ # # Rationale: For hardware, the amount of computing resource needed (such as memory, storage, processor speed, etc.) may need to be documented. In addition, more detailed instructions may be needed to install and/or operate the hardware.
606
+ # # @return [RDF::Vocabulary::Term]
607
+ # attr_reader :hasHardwareOtherInformation
608
+ #
609
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/hardwareType
610
+ # #
611
+ # # Definition: Class or category of the hardware.
612
+ # #
613
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
614
+ # # @return [RDF::Vocabulary::Term]
615
+ # attr_reader :hasHardwareType
616
+ #
617
+ # # @return [RDF::Vocabulary::Term]
618
+ # attr_reader :hasIdentifier
619
+ #
620
+ # # Usage Notes: The type of the identifier may be implicit within the repository as long it can be explicitly communicated when the item is disseminated outside of it.
621
+ # #
622
+ # # Rationale: Identifier values cannot be assumed to be unique across domains. The combination of identifierType and identifierValue should ensure uniqueness.
623
+ # #
624
+ # # Data Constraint: Value should be taken from controlled vocabulary.
625
+ # #
626
+ # # Definition: A designation of the domain within which the identifier is unique.
627
+ # #
628
+ # # Examples: DLC, DRS, hdl:4263537
629
+ # # @return [RDF::Vocabulary::Term]
630
+ # attr_reader :hasIdentifierType
631
+ #
632
+ # # Defnition: The value of the Identifier.
633
+ # #
634
+ # # Examples: 0000000312 (Representation), IU2440 (File), WAC1943.56 (File), http://nrs.harvard.edu/urn-3:FHCL.Loeb:sal (File), IU2440-1 (Bitstream)
635
+ # # @return [RDF::Vocabulary::Term]
636
+ # attr_reader :hasIdentifierValue
637
+ #
638
+ # # Usage Notes: The key should be provided if known. However, it is not advisable to actually store the inhibitorKey in plain text in an unsecure database.
639
+ # #
640
+ # # Definition: The decryption key or password.
641
+ # #
642
+ # # Example: [DES decryption key]
643
+ # # @return [RDF::Vocabulary::Term]
644
+ # attr_reader :hasInhibitorKey
645
+ #
646
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/inhibitorTarget
647
+ # #
648
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
649
+ # #
650
+ # # Definition: The content or function protected by the inhibitor.
651
+ # # @return [RDF::Vocabulary::Term]
652
+ # attr_reader :hasInhibitorTarget
653
+ #
654
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/inhibitorType
655
+ # #
656
+ # # Definition: The inhibitor method employed.
657
+ # #
658
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
659
+ # # @return [RDF::Vocabulary::Term]
660
+ # attr_reader :hasInhibitorType
661
+ #
662
+ # # @return [RDF::Vocabulary::Term]
663
+ # attr_reader :hasInhibitors
664
+ #
665
+ # # Definition: An intellectual entity associated with the object.
666
+ # #
667
+ # # Usage Notes: Use to link to an intellectual entity that is related to the object. This may be a link to descriptive metadata that describes the intellectual entity or some other surrogate for it that can be referenced. This link will likely be to an identifier of an object that is at a higher conceptual level than the object for which the metadata is provided, for example, to a collection or parent object.
668
+ # # @return [RDF::Vocabulary::Term]
669
+ # attr_reader :hasIntellectualEntity
670
+ #
671
+ # # @return [RDF::Vocabulary::Term]
672
+ # attr_reader :hasKeyInformation
673
+ #
674
+ # # Usage Notes: This could contain the actual text of the license or agreement or a paraphrase or summary.
675
+ # #
676
+ # # Definition: Text describing the license or agreement by which permission was granted.
677
+ # # @return [RDF::Vocabulary::Term]
678
+ # attr_reader :hasLicenseTerms
679
+ #
680
+ # # Definition: The output of the message digest algorithm.
681
+ # #
682
+ # # Rationale: This must be stored so that it can be compared in future fixity checks.
683
+ # #
684
+ # # Example: 7c9b35da4f2ebd436f1cf88e5a39b3a257edf4a22be3c955ac49da2e2107b67a1924419563
685
+ # # @return [RDF::Vocabulary::Term]
686
+ # attr_reader :hasMessageDigest
687
+ #
688
+ # # Definition: The specific algorithm used to construct the message digest for the digital object.
689
+ # #
690
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
691
+ # #
692
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/cryptographicHashFunctions
693
+ # # @return [RDF::Vocabulary::Term]
694
+ # attr_reader :hasMessageDigestAlgorithm
695
+ #
696
+ # # Rationale: A preservation repository may ingest files that have had message digests calculated by the submitter; checking these ensures that the file as received is the same as the file as sent. The repository may also ingest files that do not have message digests, and so must calculate the initial value upon ingest. It can be useful to know who calculated the initial value of the message digest.
697
+ # #
698
+ # # Usage Notes: The originator of the message digest could be represented by a string representing the agent (e.g., “NRS” referring to the archive itself) or a pointer to an agent description (e.g., “A0000987” taken here to be an agentIdentifierValue).
699
+ # #
700
+ # # Examples: DRS, A0000978
701
+ # #
702
+ # # Definition: The agent that created the original message digest that is compared in a fixity check.
703
+ # #
704
+ # # Creation / Maintenance Notes: If the calculation of the initial message digest is treated by the repository as an Event, this information could be obtained from an Event record.
705
+ # # @return [RDF::Vocabulary::Term]
706
+ # attr_reader :hasMessageDigestOriginator
707
+ #
708
+ # # Definition: Information about an object associated with an event or rightsstatement.
709
+ # #
710
+ # # Rationale: Digital provenance often requires that relationships between objects and events are documented. / Rights statements must be associated with the objects to which they pertain, either by linking from the rights statement to the object(s) or by linking from the object(s) to the rights statement. This provides the mechanism for the link from the rights statement to an object. For denoting the role of the object, when related to an event,one can extend this ontology be defining your own subproperties, such as those given by http://id.loc.gov/vocabulary/preservation/eventRelatedObjectRole.
711
+ # #
712
+ # # Extensions: One can extend this property to use more fine grained properties by defining the fine grained properties as subproperties of this property.
713
+ # # @return [RDF::Vocabulary::Term]
714
+ # attr_reader :hasObject
715
+ #
716
+ # # @return [RDF::Vocabulary::Term]
717
+ # attr_reader :hasObjectCharacteristics
718
+ #
719
+ # # Usage Notes: This is the name of the object as designated in the Submission Information Package (SIP). The object may have other names in different contexts. When two repositories are exchanging content, it would be important for the receiving repository to know and record the name of the representation at the originating repository. In the case of representations, this may be a directory name.
720
+ # #
721
+ # # Definition: The name of the object as submitted to or harvested by the repository, before any renaming by the repository.
722
+ # #
723
+ # # Rationale: The name used within the preservation repository may not be known outside of the repository. A depositor might need to request a file by its original name. Also, the repository may need to reconstruct internal links for dissemination.
724
+ # #
725
+ # # Creation / Maintenance Notes: This value would always be supplied to the repository by the submitter or harvesting application. How much of the file path to preserve would be up to the repository.
726
+ # #
727
+ # # Example: N419.pdf
728
+ # # @return [RDF::Vocabulary::Term]
729
+ # attr_reader :hasOriginalName
730
+ #
731
+ # # @return [RDF::Vocabulary::Term]
732
+ # attr_reader :hasPreservationLevel
733
+ #
734
+ # # Examples: 2001-10-26T19:32:52+00:00
735
+ # #
736
+ # # Rationale: The preservationLevel applicable to an object is expected to be reviewed and changed over time, in response to changes in repository preservation requirements, policies, or capabilities relevant to the object. The date that the current preservationLevelValue was assigned aids review of decisions.
737
+ # #
738
+ # # Definition: The date, or date and time, when a particular preservationLevelValue was assigned to the object.
739
+ # #
740
+ # # Data Constraint: To aid machine processing, value should use a structured form: xsd:dateTime
741
+ # # @return [RDF::Vocabulary::Term]
742
+ # attr_reader :hasPreservationLevelDateAssigned
743
+ #
744
+ # # Examples: user pays, legislation, defective file, bit-level preservation only available for this format
745
+ # #
746
+ # # Usage Notes: This optional semantic unit records the reason for applying the preservationLevelValue. This information can be particularly important when the assigned preservationLevelValue differs from usual repository policy. For example, a repository may normally assign a preservationLevelValue of “full preservation” for JPEG2000 files, but detects that a particular file is defective. This may mean that the repository’s preservation strategy for JPEG2000 may not be effective for this particular file, so the repository may assign a preservationLevelValue of “bit-level preservation” to this file, recording “defective file” as the rationale. Similarly, legislative requirements or contractual agreements may require a higher level of preservation to be assigned to a particular object than would be assigned to that class of object according to usual policy. In this case, the rationale for the assignment may be recorded as “legislation” or “user pays”, for example. preservationLevelRationale may be repeated if more than one reason needs to be recorded.
747
+ # #
748
+ # # Definition: The reason a particular preservationLevelValue was applied to the object.
749
+ # #
750
+ # # Rationale: Application of a particular preservationLevelValue may require justification, especially if it differs from that usually applied according to repository policy.
751
+ # # @return [RDF::Vocabulary::Term]
752
+ # attr_reader :hasPreservationLevelRationale
753
+ #
754
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/preservationLevelRole
755
+ # #
756
+ # # Definition: A value indicating the context in which a set of preservation options is applicable.
757
+ # #
758
+ # # Rationale: Repositories may assign preservationLevelValues in different contexts which must be differentiated, and may need to record more than one context.
759
+ # #
760
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
761
+ # # @return [RDF::Vocabulary::Term]
762
+ # attr_reader :hasPreservationLevelRole
763
+ #
764
+ # # Usage Notes: Only one preservationLevelValue may be recorded per preservationLevel container. If a further preservationLevelValue applies to the object in a different context, a separate preservationLevel container should be repeated.
765
+ # #
766
+ # # Rationale: Some preservation repositories will offer multiple preservation options depending on factors such as the value or uniqueness of the material, the “preservability” of the format, the amount the customer is willing to pay, etc.
767
+ # #
768
+ # # Examples: bit-level, full, fully supported with future migrations (File), 0
769
+ # #
770
+ # # Data Constraint: Value should be taken from a controlled vocabulary.
771
+ # #
772
+ # # Definition: A value indicating the set of preservation functions expected to be applied to the object.
773
+ # #
774
+ # # Creation / Maintenance Notes: The preservation level may be assigned by the repository or requested by the depositor and submitted as metadata.
775
+ # # @return [RDF::Vocabulary::Term]
776
+ # attr_reader :hasPreservationLevelValue
777
+ #
778
+ # # Definition: This property related to all object belonging to a RelatedObjectIdentification to describe the related objects as an aggregation.
779
+ # # @return [RDF::Vocabulary::Term]
780
+ # attr_reader :hasRelatedObject
781
+ #
782
+ # # Definition: The order of the related object relative to other objects with the same type of relationship.
783
+ # #
784
+ # # Rationale: This semantic unit is particularly useful for structural relationships. In order to reconstruct a representation, it may be necessary to know the order of components with sibling or part-whole relationships. For example, to render a page-image book, it is necessary to know the order of files representing pages.
785
+ # # @return [RDF::Vocabulary::Term]
786
+ # attr_reader :hasRelatedObjectSequence
787
+ #
788
+ # # Definition: This property is used to relate certain StatuteInformation instances. The rationale for this is that in the PREMIS data dictionary, a RightsStatement instance can consist of several StatuteInformation instances. In the PREMIS OWL ontology, the StatuteInformation class is subclassed to RightsStatement. The restore the relation between the grouped StatuteInformation instances of a RightsStatement of the PREMIS data dictionary, this property is used is PREMIS OWL.
789
+ # # @return [RDF::Vocabulary::Term]
790
+ # attr_reader :hasRelatedStatuteInformation
791
+ #
792
+ # # The LOC will provide a SKOS vocabulary, where the concepts can also be used as object properties at http://id.loc.gov/. These relationships will capture the relationship type and subtype. One can define its own relationships, but for interoperability reasons, these should be linked to or made a subproperty of the properties of the LOC vocabulary.
793
+ # #
794
+ # # Extensions: One can extend this property to use more fine grained properties by defining the fine grained properties as subproperties of this property.
795
+ # #
796
+ # # Definition: This property links one object to one or more other objects.
797
+ # # @return [RDF::Vocabulary::Term]
798
+ # attr_reader :hasRelationship
799
+ #
800
+ # # Definition: A condition or limitation on the act.
801
+ # #
802
+ # # Examples: No more than three, Allowed only after one year of archival retention has elapsed, Rightsholder must be notified after completion of act
803
+ # # @return [RDF::Vocabulary::Term]
804
+ # attr_reader :hasRestriction
805
+ #
806
+ # # @return [RDF::Vocabulary::Term]
807
+ # attr_reader :hasRightsDocumentation
808
+ #
809
+ # # Definition: This property denotes the role of the related documentation. The value must be taken from a skos vocabulary. A value indicating the purpose or expected use of the documentation being identified.
810
+ # #
811
+ # # Rationale: This information distinguishes the purpose of the supporting documentation especially when there are multiple documentation identifiers.
812
+ # # @return [RDF::Vocabulary::Term]
813
+ # attr_reader :hasRightsDocumentationRole
814
+ #
815
+ # # @return [RDF::Vocabulary::Term]
816
+ # attr_reader :hasRightsGranted
817
+ #
818
+ # # Usage Notes: This semantic unit may include a statement about risk assessment, for example, when a repository is not certain about what permissions have been granted.
819
+ # #
820
+ # # Definition: Additional information about the rights granted.
821
+ # #
822
+ # # Rationale: A textual description of the rights granted may be needed for additional explanation.
823
+ # # @return [RDF::Vocabulary::Term]
824
+ # attr_reader :hasRightsGrantedNote
825
+ #
826
+ # # Extensions: One can extend this property to use more fine grained properties by defining the fine grained properties as subproperties of this property.
827
+ # #
828
+ # # This propety links a RightsStatement instance to an Agent instance. Via this property a distinction can be made in the linkingAgent properties based on the domain.
829
+ # # @return [RDF::Vocabulary::Term]
830
+ # attr_reader :hasRightsRelatedAgent
831
+ #
832
+ # # Rationale: A repository may choose to link from a rights statement to an object or from an object to a rights statement or both.
833
+ # #
834
+ # # Definition: A rights statement associated with the object.
835
+ # # @return [RDF::Vocabulary::Term]
836
+ # attr_reader :hasRightsStatement
837
+ #
838
+ # # Definition: Additional information about the RightsStatement of an object.
839
+ # #
840
+ # # Examples: Copyright expiration expected in 2010 unless renewed. License is embedded in XMP block in file header.
841
+ # # @return [RDF::Vocabulary::Term]
842
+ # attr_reader :hasRightsStatementNote
843
+ #
844
+ # # @return [RDF::Vocabulary::Term]
845
+ # attr_reader :hasSignature
846
+ #
847
+ # # Definition: The encoding used for the values of signatureValue, keyInformation.
848
+ # #
849
+ # # Rationale: These values cannot be interpreted correctly if the encoding is unknown.
850
+ # #
851
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/signatureEncoding
852
+ # #
853
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
854
+ # # @return [RDF::Vocabulary::Term]
855
+ # attr_reader :hasSignatureEncoding
856
+ #
857
+ # # Definition: A designation for the encryption and hash algorithms used for signature generation.
858
+ # #
859
+ # # Rationale: The same algorithms must be used for signature validation.
860
+ # #
861
+ # # Data Constraint: Values are taken from a SKOS vocabulary
862
+ # #
863
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
864
+ # # @return [RDF::Vocabulary::Term]
865
+ # attr_reader :hasSignatureMethod
866
+ #
867
+ # # Definition: Additional information about the generation of the signature.
868
+ # #
869
+ # # Usage Notes: This may include the date/time of signature generation, the serial number of the cryptographic hardware used, or other information related to the generation of the signature. Repositories will likely want to define a suitably granular structure to signatureProperties.
870
+ # # @return [RDF::Vocabulary::Term]
871
+ # attr_reader :hasSignatureProperties
872
+ #
873
+ # # Definition: The operations to be performed in order to validate the digital signature.
874
+ # #
875
+ # # Rationale: The repository should not assume that the procedure for validating any particular signature will be known many years in the future without documentation.
876
+ # #
877
+ # # Usage Notes: This may include the canonicalization method used before calculating the message digest, if the object was normalized before signing. This value could also be a pointer to archive documentation.
878
+ # # @return [RDF::Vocabulary::Term]
879
+ # attr_reader :hasSignatureValidationRules
880
+ #
881
+ # # Example: juS5RhJ884qoFR8flVXd/rbrSDVGn40CapgB7qeQiT+rr0NekEQ6BHhUA8dT3+BCTBUQI0dBjlml9lwzENXvS83zRECjzXbMRTUtVZiPZG2pqKPnL2YU3A9645UCjTXU+jgFumv7k78hieAGDzNci+PQ9KRmm//icT7JaYztgt4=
882
+ # #
883
+ # # Definition: The digital signature; a value generated from the application of a private key to a message digest.
884
+ # # @return [RDF::Vocabulary::Term]
885
+ # attr_reader :hasSignatureValue
886
+ #
887
+ # # Rationale: The signer might also be carried in the keyInformation, but it can be accessed more conveniently if recorded here.
888
+ # #
889
+ # # Definition: The individual, institution, or authority responsible for generating the signature.
890
+ # #
891
+ # # Usage Notes: If the signer is an Agent known to the repository, this property can directly link to this agent. The consequence is punning: a datatype property and object property with the same name, i.e., :signer
892
+ # # @return [RDF::Vocabulary::Term]
893
+ # attr_reader :hasSigner
894
+ #
895
+ # # @return [RDF::Vocabulary::Term]
896
+ # attr_reader :hasSignificantProperties
897
+ #
898
+ # # Definition: The aspect, facet, or attribute of an object about which significant properties are being described.
899
+ # #
900
+ # # Examples: content, structure, behavior, page count, page width, typeface, hyperlinks (representation), image count (representation), color space [for an embedded image] (bitstream)
901
+ # #
902
+ # # Rationale: Repositories may choose to describe significant properties based on a particular aspect or attribute of an object.
903
+ # #
904
+ # # Usage Notes: This semantic unit is optional and may be used as part of a facet:detail pair with significantPropertiesValue.
905
+ # # @return [RDF::Vocabulary::Term]
906
+ # attr_reader :hasSignificantPropertiesType
907
+ #
908
+ # # Definition: Description of the characteristics of a particular object subjectively determined to be important to maintain through preservation actions.
909
+ # #
910
+ # # Usage Notes: If facet:detail pairs are used, the content of significantPropertiesValue should describe the significant properties of object relevant to the aspect, facet, or attribute declared in the significantPropertiesType with which it is paired. If facet:detail pairs are not used, significantPropertiesValue may be used to freely describe any characteristic of an object. significantPropertiesValue is not repeatable. Multiple significant properties should be described in separate, repeated significantProperties container units.
911
+ # #
912
+ # # Examples: [For a Web page containing animation that is not considered essential] Content only, [For detail associated with a significantPropertiesType of "behavior"] Hyperlinks traversable, [For a Word document with embedded links that are not considered essential] Content only, [For detail associated with significantPropertiesType of "behavior"] Editable, [For detail associated with a significantPropertiesType of "page width"] 210 mm, [For a PDF with an embedded graph, where the lines' color determines the lines' meaning] Color, [For detail associated with a significantPropertiesType of "appearance"] Color
913
+ # #
914
+ # # Rationale: Repositories may choose to describe significant properties based on a particular aspect or attribute of an object.
915
+ # # @return [RDF::Vocabulary::Term]
916
+ # attr_reader :hasSignificantPropertiesValue
917
+ #
918
+ # # Definition: The size in bytes of the file or bitstream stored in the repository.
919
+ # #
920
+ # # Usage Notes: Defining this semantic unit as size in bytes makes it unnecessary to record a unit of measurement. However, for the purpose of data exchange the unit of measurement should be stated or understood by both partners.
921
+ # #
922
+ # # Example: 2038937
923
+ # #
924
+ # # Rationale: Size is useful for ensuring the correct number of bytes from storage have been retrieved and that an application has enough room to move or process files. It might also be used when billing for storage.
925
+ # #
926
+ # # Creation / Maintenance Notes: Automatically obtained by the repository.
927
+ # # @return [RDF::Vocabulary::Term]
928
+ # attr_reader :hasSize
929
+ #
930
+ # # @return [RDF::Vocabulary::Term]
931
+ # attr_reader :hasSoftware
932
+ #
933
+ # # Example: GNU gcc >=2.7.2
934
+ # #
935
+ # # Usage Notes: The value should be constructed in a way that is consistent with the construction of swName and swVersion. This semantic unit identifies the software that is needed by what is recorded in swName, for example, a Perl script that depends on a Perl module. In this case the Perl script is listed in swName, with the module in swDependency within a software container.
936
+ # #
937
+ # # Definition: The name and, if applicable, version of any software component needed by the software referenced in swName in the context of using this object.
938
+ # # @return [RDF::Vocabulary::Term]
939
+ # attr_reader :hasSoftwareDependency
940
+ #
941
+ # # Definition: Manufacturer and title of the software application.
942
+ # #
943
+ # # Usage Notes: Include manufacturer when this helps to identify or disambiguate the product, for example, use “Adobe Photoshop” rather than “Photoshop.”
944
+ # #
945
+ # # Examples: Adobe Photoshop, Adobe Acrobat Reader
946
+ # # @return [RDF::Vocabulary::Term]
947
+ # attr_reader :hasSoftwareName
948
+ #
949
+ # # Example: Install Acroread (Adobe Acrobat) first; copy nppdf.so (the plug-in) to your Mozilla plug-ins directory, and make sure a copy of (or symlink to) Acroread is in your PATH.
950
+ # #
951
+ # # Definition: Additional requirements or instructions related to the software referenced in swName.
952
+ # #
953
+ # # Usage Notes: This could be a reliable persistent identifier or URI pointing to software documentation within or outside the repository.
954
+ # # @return [RDF::Vocabulary::Term]
955
+ # attr_reader :hasSoftwareOtherInformation
956
+ #
957
+ # # Rationale: Several different layers of software can be required to support an object.
958
+ # #
959
+ # # Definition: Class or category of software.
960
+ # #
961
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/softwareType
962
+ # #
963
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
964
+ # # @return [RDF::Vocabulary::Term]
965
+ # attr_reader :hasSoftwareType
966
+ #
967
+ # # Definition: The version or versions of the software referenced in swName.
968
+ # #
969
+ # # Usage Notes: If there is no formal version, the date of issuance can be used.
970
+ # #
971
+ # # Examples: >=2.2.0, 6.0, 2003
972
+ # # @return [RDF::Vocabulary::Term]
973
+ # attr_reader :hasSoftwareVersion
974
+ #
975
+ # # Definition: The beginning date of the permission granted.
976
+ # #
977
+ # # Data Constraint: To aid machine processing, value should use a structured form: xsd:dateTime
978
+ # # @return [RDF::Vocabulary::Term]
979
+ # attr_reader :hasStartDate
980
+ #
981
+ # # Examples: Legal Deposit (Jersey) Law 200, National Library of New Zealand (Te Puna Mātauranga o Aotearoa) Act 2003 no 19 part 4 s 34
982
+ # #
983
+ # # Usage Notes: Use standard citation form when applicable.
984
+ # #
985
+ # # Definition: An identifying designation for the statute.
986
+ # # @return [RDF::Vocabulary::Term]
987
+ # attr_reader :hasStatuteCitation
988
+ #
989
+ # # Definition: The date that the determination was made that the statute authorized the permission(s) noted.
990
+ # #
991
+ # # Rationale: The permission in question may be the subject of some interpretation. These assessments are made within a specific context and at a specific time. At another time the context, and therefore the assessment, could change. For this reason it can be important to record the date of the decision.
992
+ # #
993
+ # # Example: 2001-10-26T19:32:52+00:00
994
+ # #
995
+ # # Data Constraint: To aid machine processing, value should use a structured form: xsd:dateTime
996
+ # # @return [RDF::Vocabulary::Term]
997
+ # attr_reader :hasStatuteInformationDeterminationDate
998
+ #
999
+ # # Data Constraint: Values should be taken from a controlled vocabulary.
1000
+ # #
1001
+ # # Definition: The country or other political body enacting the statute.
1002
+ # #
1003
+ # # Rationale: The connection between the object and the rights granted is based on jurisdiction.
1004
+ # #
1005
+ # # Examples: us, de, be
1006
+ # # @return [RDF::Vocabulary::Term]
1007
+ # attr_reader :hasStatuteJurisdiction
1008
+ #
1009
+ # # @return [RDF::Vocabulary::Term]
1010
+ # attr_reader :hasStorage
1011
+ #
1012
+ # # Rationale: The repository needs to know the medium on which an object is stored in order to know how and when to do media refreshment and media migration.
1013
+ # #
1014
+ # # Definition: The physical medium on which the object is stored (e.g., magnetic tape, hard disk, CD-ROM, DVD).
1015
+ # #
1016
+ # # Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.
1017
+ # #
1018
+ # # Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/storageMedium
1019
+ # # @return [RDF::Vocabulary::Term]
1020
+ # attr_reader :hasStorageMedium
1021
+ #
1022
+ # # @return [RDF::Vocabulary::Term]
1023
+ # attr_reader :hasTermOfGrant
1024
+ #
1025
+ # # @return [RDF::Vocabulary::Term]
1026
+ # attr_reader :hasTermOfRestriction
1027
+ #
9
1028
  # end
10
- class PREMIS < RDF::StrictVocabulary("http://www.loc.gov/premis/rdf/v1#")
1029
+ PREMIS = Class.new(RDF::StrictVocabulary("http://www.loc.gov/premis/rdf/v1#")) do
11
1030
 
12
1031
  # Ontology definition
13
1032
  ontology :"http://www.loc.gov/premis/rdf/v1#",
14
- comment: %(This ontology identifies the classes and
15
- properties used to describe preservation metadata in RDF.).freeze,
1033
+ comment: %(
1034
+ This ontology identifies the classes and properties used to describe preservation metadata in RDF.
1035
+ It aligns with PREMIS Data Dictionary version 2.2.).freeze,
16
1036
  "dc:modified": "2012-09-14T00:00:00Z".freeze,
17
1037
  isDefinedBy: "http://www.loc.gov/standards/premis/v2/premis-2-2.pdf".freeze,
18
- label: "Preservation Metadata: Implementation\n Strategies (PREMIS) Ontology".freeze,
1038
+ label: "Preservation Metadata: Implementation Strategies (PREMIS) Ontology".freeze,
19
1039
  "owl:imports": ["http://id.loc.gov/vocabulary/preservation/actionsGranted".freeze, "http://id.loc.gov/vocabulary/preservation/agentType".freeze, "http://id.loc.gov/vocabulary/preservation/contentLocationType".freeze, "http://id.loc.gov/vocabulary/preservation/copyrightStatus".freeze, "http://id.loc.gov/vocabulary/preservation/cryptographicHashFunctions".freeze, "http://id.loc.gov/vocabulary/preservation/environmentCharacteristic".freeze, "http://id.loc.gov/vocabulary/preservation/environmentPurpose".freeze, "http://id.loc.gov/vocabulary/preservation/eventRelatedAgentRole".freeze, "http://id.loc.gov/vocabulary/preservation/eventRelatedObjectRole".freeze, "http://id.loc.gov/vocabulary/preservation/eventType".freeze, "http://id.loc.gov/vocabulary/preservation/formatRegistryRole".freeze, "http://id.loc.gov/vocabulary/preservation/hardwareType".freeze, "http://id.loc.gov/vocabulary/preservation/inhibitorTarget".freeze, "http://id.loc.gov/vocabulary/preservation/inhibitorType".freeze, "http://id.loc.gov/vocabulary/preservation/objectCategory".freeze, "http://id.loc.gov/vocabulary/preservation/preservationLevelRole".freeze, "http://id.loc.gov/vocabulary/preservation/relationshipSubType".freeze, "http://id.loc.gov/vocabulary/preservation/relationshipType".freeze, "http://id.loc.gov/vocabulary/preservation/rightsBasis".freeze, "http://id.loc.gov/vocabulary/preservation/rightsRelatedAgentRole".freeze, "http://id.loc.gov/vocabulary/preservation/signatureEncoding".freeze, "http://id.loc.gov/vocabulary/preservation/signatureMethod".freeze, "http://id.loc.gov/vocabulary/preservation/softwareType".freeze, "http://id.loc.gov/vocabulary/preservation/storageMedium".freeze],
20
- "owl:versionInfo": "version\n 2.2.1".freeze,
21
- "rdfs:seeAlso": "http://multimedialab.elis.ugent.be/users/samcoppe/ontologies/Premis/index.html for the OWL\n Documentation of the ontology.".freeze,
1040
+ "owl:versionInfo": "1.0.0".freeze,
1041
+ "rdfs:seeAlso": "http://multimedialab.elis.ugent.be/users/samcoppe/ontologies/Premis/index.html for the OWL Documentation of the ontology.".freeze,
22
1042
  type: "owl:Ontology".freeze
23
1043
 
24
1044
  # Class definitions
25
1045
  term :Agent,
26
- comment: %(The Agent entity aggregates information
27
- about attributes or characteristics of agents \(persons, organizations, or software\) associated
28
- with rights management and preservation events in the life of a data object. Agent information
29
- serves to identify an agent unambiguously from all other Agent entities.).freeze,
30
- editorialNote: %(Entity properties: May hold or grant one or
31
- more rights. May carry out, authorize, or compel one or more events. May create or act upon
32
- one or more objects through an event or with respect to a rights
33
- statement.).freeze,
1046
+ comment: [%(Entity properties:
1047
+ May hold or grant one or more rights.
1048
+ May carry out, authorize, or compel one or more events.
1049
+ May create or act upon one or more objects through an event or with respect to a rights statement.).freeze, %(The Agent entity aggregates information about attributes or characteristics of agents \(persons, organizations, or software\) associated with rights management and preservation events in the life of a data object. Agent information serves to identify an agent unambiguously from all other
1050
+ Agent entities.).freeze],
34
1051
  subClassOf: ["dc:Agent".freeze, "foaf:Agent".freeze, "premis:PremisEntity".freeze],
35
1052
  type: "owl:Class".freeze,
36
1053
  "vs:term_status": "stable".freeze
37
1054
  term :ApplicableDates,
38
- definition: %(Definition: The date range during which the
39
- particular rights statement applies or is applied to the content.).freeze,
40
- editorialNote: %(Rationale Specific dates
41
- may apply to the particular rights statement.).freeze,
1055
+ comment: [%(Definition: The date range during which the particular rights statement applies or is
1056
+ applied to the content.).freeze, %(Rationale Specific dates may apply to the particular rights statement.).freeze],
42
1057
  subClassOf: [term(
43
1058
  maxCardinality: "1".freeze,
44
1059
  onProperty: "premis:hasEndDate".freeze,
@@ -51,8 +1066,7 @@ module RDF::Vocab
51
1066
  type: "owl:Class".freeze,
52
1067
  "vs:term_status": "stable".freeze
53
1068
  term :Bitstream,
54
- definition: %(Definition: Contiguous or non-contiguous
55
- data within a file that has meaningful properties for preservation purposes.).freeze,
1069
+ comment: %(Definition: Contiguous or non-contiguous data within a file that has meaningful properties for preservation purposes.).freeze,
56
1070
  "rdfs:seeAlso": "Object class definition".freeze,
57
1071
  subClassOf: ["premis:Object".freeze, term(
58
1072
  minCardinality: "1".freeze,
@@ -62,10 +1076,7 @@ module RDF::Vocab
62
1076
  type: "owl:Class".freeze,
63
1077
  "vs:term_status": "stable".freeze
64
1078
  term :ContentLocation,
65
- definition: %(Definition: Information needed to retrieve a
66
- file from the storage system, or to access a bitstream within a file.).freeze,
67
- "skos:historyNote": "Creation / Maintenance Notes: A preservation\n repository should never refer to content that it does not control. Therefore, the PREMIS\n working group assumed that the repository will always assign the contentLocation, probably by\n program.".freeze,
68
- "skos:scopeNote": "Usage Notes: If the preservation repository\n uses the objectIdentifier as a handle for retrieving data, contentLocation is implicit and\n does not need to be recorded.".freeze,
1079
+ comment: [%(Creation / Maintenance Notes: A preservation repository should never refer to content that it does not control. Therefore, the PREMIS working group assumed that the repository will always assign the contentLocation, probably by program.).freeze, %(Definition: Information needed to retrieve a file from the storage system, or to access a bitstream within a file.).freeze, %(Usage Notes: If the preservation repository uses the objectIdentifier as a handle for retrieving data, contentLocation is implicit and does not need to be recorded.).freeze],
69
1080
  subClassOf: term(
70
1081
  intersectionOf: list(term(
71
1082
  cardinality: "1".freeze,
@@ -81,9 +1092,8 @@ module RDF::Vocab
81
1092
  type: "owl:Class".freeze,
82
1093
  "vs:term_status": "stable".freeze
83
1094
  term :CopyrightInformation,
84
- definition: %(Definition: Information about the copyright
85
- status of the object\(s\).).freeze,
86
- "skos:scopeNote": "Usage Notes: When rights basis is a\n copyright, copyrightInformation should be provided. Repositories may need to extend this with\n more detailed information. See the California Digital Library's copyrightMD schema\n (www.cdlib.org/inside/projects/rights/schema/) for an example of a more detailed\n scheme.".freeze,
1095
+ comment: [%(Definition: Information about the copyright status of the object\(s\).).freeze, %(Usage Notes: When rights basis is a copyright, copyrightInformation should be provided.
1096
+ Repositories may need to extend this with more detailed information. See the California Digital Library's copyrightMD schema \(www.cdlib.org/inside/projects/rights/schema/\) for an example of a more detailed scheme.).freeze],
87
1097
  subClassOf: ["premis:RightsStatement".freeze, term(
88
1098
  intersectionOf: list(term(
89
1099
  cardinality: "1".freeze,
@@ -99,17 +1109,12 @@ module RDF::Vocab
99
1109
  type: "owl:Class".freeze,
100
1110
  "vs:term_status": "stable".freeze
101
1111
  term :CreatingApplication,
102
- definition: %(Definition: Information about the
103
- application that created the object.).freeze,
104
- editorialNote: %(Rationale: Information about the creating
105
- application, including the version of the application and the date the file was created, can
106
- be useful for problem solving purposes. For example, it is not uncommon for certain versions
107
- of software to be known for causing conversion errors or introducing artifacts. It is also
108
- useful to determine which rendering software is available for the digital object. For example,
109
- if you know that the Distiller program created the PDF file, you know it will be renderable
110
- with \(among other programs\) Adobe Reader.).freeze,
111
- "skos:historyNote": "Creation / Maintenance Notes: If the object\n was created by the repository, assignment of creating application information should be\n straightforward. If the object was created outside the repository, it is possible this\n information could be supplied by the depositor. It might also be extracted from the file\n itself; the name of the creating application is often embedded within the\n file.".freeze,
112
- "skos:scopeNote": "Usage Notes: This semantic unit applies to\n both objects created external to the repository and subsequently ingested, and to objects\n created by the repository, for example, through migration events. The creatingApplication\n container is repeatable if more than one application processed the object in turn. For\n example, a file could be created by Microsoft Word and later turned into a PDF using Adobe\n Acrobat. Details of both the Word and Acrobat applications may be recorded. However, if both\n files are stored in the repository, each file should be completely described as an Object\n entity and linked by using relationship information with a relationshipType “derivation.” It\n may also be repeated to record the creating application before the object was ingested as well\n as the creating application used as part of the ingest process. For example, an HTML file was\n created pre-ingest using Dreamweaver, and the Web crawler Heritrix then captured a snapshot of\n the files as part of the ingest. The amount of information needed for creatingApplication\n given here is minimal. For more granularity, extensibility is provided. Rather than having\n each repository record this locally, it would be preferable to have a registry of this\n information similar to format or environment registries.".freeze,
1112
+ comment: [%(Creation / Maintenance Notes: If the object was created by the repository, assignment of creating application information should be straightforward.
1113
+ If the object was created outside the repository, it is possible this information could be supplied by the depositor. It might also be extracted from the file itself; the name of the creating application is often embedded within the file.).freeze, %(Definition: Information about the application that created the object.).freeze, %(Rationale: Information about the creating application, including the version of the application and the date the file was created, can be useful for problem solving purposes. For example, it is not uncommon for certain versions of software to be known for causing conversion errors or introducing artifacts. It is also useful to determine which rendering software is available for the digital object. For example, if you know that the Distiller program created the PDF file, you know it will be renderable with \(among other programs\) Adobe Reader.).freeze, %(Usage Notes: This semantic unit applies to both objects created external to the repository and subsequently ingested, and to objects created by the repository, for example, through migration events.
1114
+ The creatingApplication container is repeatable if more than one application processed the object in turn. For example, a file could be created by Microsoft Word and later turned into a PDF using Adobe Acrobat. Details of both the Word and Acrobat applications may be recorded. However, if both files are stored in the repository, each file should be completely described as an Object entity and linked by using relationship information with a relationshipType “derivation.”
1115
+ It may also be repeated to record the creating application before the object was ingested as well as the creating application used as part of the ingest process. For example, an HTML file was created pre-ingest using Dreamweaver, and the Web crawler Heritrix then captured a snapshot of the files as part of the ingest.
1116
+ The amount of information needed for creatingApplication given here is minimal. For more granularity, extensibility is provided.
1117
+ Rather than having each repository record this locally, it would be preferable to have a registry of this information similar to format or environment registries.).freeze],
113
1118
  subClassOf: term(
114
1119
  type: "owl:Class".freeze,
115
1120
  unionOf: list(term(
@@ -129,11 +1134,10 @@ module RDF::Vocab
129
1134
  type: "owl:Class".freeze,
130
1135
  "vs:term_status": "stable".freeze
131
1136
  term :Dependency,
132
- definition: %(Definition: Information about a non-software
133
- component or associated file needed in order to use or render the representation or file, for
134
- example, a schema, a DTD, or an entity file declaration.).freeze,
135
- "skos:historyNote": "Creation / Maintenance Notes: Recommended\n practice is for a repository to archive objects on which other objects depend. These may be\n sent by the submitter of the primary object, or they may in some cases be automatically\n obtained by the repository. For example, a markup file will often contain links to other\n objects it requires such as DTDs or XML Schema. If it does, these objects can often be\n identified by the link and downloaded by the repository.".freeze,
136
- "skos:scopeNote": "Usage Notes: This semantic unit is for\n additional objects that are necessary to render a file or representation, not for required\n software or hardware. It may also be used for a non-executable component of the object, such\n as a font or style sheet. For things that the software requires, see swDependency. This\n semantic unit does not include objects required by structural relationships, such as child\n content objects (e.g., figures that are part of an article), which are recorded under\n relationship with a relationshipType of “structural”. It is up to the repository to determine\n what constitutes a dependency in the context of the designated community. The objects noted\n may be internal or external to the preservation repository.".freeze,
1137
+ comment: [%(Creation / Maintenance Notes: Recommended practice is for a repository to archive objects on which other objects depend. These may be sent by the submitter of the primary object, or they may in some cases be automatically obtained by the repository. For example, a markup file will often contain links to other objects it requires such as DTDs or XML Schema. If it does, these objects can often be identified by the link and downloaded by the repository.).freeze, %(Definition: Information about a non-software component or associated file needed in order to use or render the representation or file, for example, a schema, a DTD, or an entity file declaration.).freeze, %(Usage Notes: This semantic unit is for additional objects that are necessary to render a file or representation, not for required software or hardware. It may also be used for a non-executable component of the object, such as a font or style sheet. For things that the software requires, see swDependency.
1138
+ This semantic unit does not include objects required by structural relationships, such as child content objects \(e.g., figures that are part of an article\), which are recorded under relationship with a relationshipType of “structural”.
1139
+ It is up to the repository to determine what constitutes a dependency in the context of the designated community.
1140
+ The objects noted may be internal or external to the preservation repository.).freeze],
137
1141
  subClassOf: term(
138
1142
  type: "owl:Class".freeze,
139
1143
  unionOf: list(term(
@@ -149,13 +1153,9 @@ module RDF::Vocab
149
1153
  type: "owl:Class".freeze,
150
1154
  "vs:term_status": "stable".freeze
151
1155
  term :Environment,
152
- definition: %(Definition: Hardware/software combinations
153
- supporting use of the object.).freeze,
154
- editorialNote: %(Rationale: Environment is the means by which
155
- the user renders and interacts with content. Separation of digital content from its
156
- environmental context can result in the content becoming unusable.).freeze,
157
- "skos:historyNote": "Creation / Maintenance Notes: This\n information may be omitted when the repository is doing only bit-level preservation on the\n object. Rather than having each repository record this locally, it would be preferable to have\n a registry of environment information similar to proposed registries of format information.\n Repositories may choose to design mechanisms for inheritance, so that if the environment\n required for each file within a representation is identical to the environment recorded for\n the representation as a whole, it is not necessary to store this information in each\n file.".freeze,
158
- "skos:scopeNote": "Usage Notes: All of this semantic units’\n subunits are optional. At least one subunit (i.e. environmentNote, dependency, software,\n hardware, and/or environmentExtension) must be present if this container is\n included.".freeze,
1156
+ comment: [%(Creation / Maintenance Notes: This information may be omitted when the repository is doing only bit-level preservation on the object.
1157
+ Rather than having each repository record this locally, it would be preferable to have a registry of environment information similar to proposed registries of format information.
1158
+ Repositories may choose to design mechanisms for inheritance, so that if the environment required for each file within a representation is identical to the environment recorded for the representation as a whole, it is not necessary to store this information in each file.).freeze, %(Definition: Hardware/software combinations supporting use of the object.).freeze, %(Rationale: Environment is the means by which the user renders and interacts with content. Separation of digital content from its environmental context can result in the content becoming unusable.).freeze, %(Usage Notes: All of this semantic units’ subunits are optional. At least one subunit \(i.e. environmentNote, dependency, software, hardware, and/or environmentExtension\) must be present if this container is included.).freeze],
159
1159
  subClassOf: term(
160
1160
  maxCardinality: "1".freeze,
161
1161
  onProperty: "premis:hasEnvironmentCharacteristic".freeze,
@@ -164,17 +1164,13 @@ module RDF::Vocab
164
1164
  type: "owl:Class".freeze,
165
1165
  "vs:term_status": "stable".freeze
166
1166
  term :Event,
167
- comment: %(The Event entity aggregates information
168
- about an action that involves one or more Object entities. Metadata about an Event would
169
- normally be recorded and stored separately from the digital object. Whether or not a
170
- preservation repository records an Event depends upon the importance of the event. Actions
171
- that modify objects should always be recorded. Other actions such as copying an object for
172
- backup purposes may be recorded in system logs or an audit trail but not necessarily in an
173
- Event entity. Mandatory semantic units are: eventIdentifier, eventType, and
174
- eventDateTime.).freeze,
175
- editorialNote: %(Entity properties: Must be related to one or
176
- more objects. Can be related to one or more agents. Links between entities may be recorded
177
- from either direction and need not be bi-directional.).freeze,
1167
+ comment: [%(Entity properties:
1168
+ Must be related to one or more objects.
1169
+ Can be related to one or more agents.
1170
+ Links between entities may be recorded from either direction and need not be bi-directional.).freeze, %(The Event entity aggregates information about an action that involves one or more Object entities. Metadata about an Event would normally be recorded and stored separately from the digital object.
1171
+ Whether or not a preservation repository records an Event depends upon the importance of the event. Actions that modify objects should always be recorded. Other actions such as copying an object for backup purposes may be recorded in system logs or an audit trail but not necessarily in
1172
+ an Event entity.
1173
+ Mandatory semantic units are: eventIdentifier, eventType, and eventDateTime.).freeze],
178
1174
  subClassOf: ["premis:PremisEntity".freeze, term(
179
1175
  intersectionOf: list(term(
180
1176
  cardinality: "1".freeze,
@@ -194,12 +1190,9 @@ module RDF::Vocab
194
1190
  type: "owl:Class".freeze,
195
1191
  "vs:term_status": "stable".freeze
196
1192
  term :EventOutcomeDetail,
197
- definition: %(Definition: A detailed description of the
198
- result or product of the event.).freeze,
199
- editorialNote: %(Rationale: An event outcome may be
200
- sufficiently complex that a coded description is not adequate to document
201
- it.).freeze,
202
- "skos:scopeNote": "Usage Notes: This may be used to record all\n error and warning messages issued by a program involved in the event or to record a pointer to\n an error log. If the event was a validity check (e.g., profile conformance) any anomalies or\n quirks discovered would be recorded here. All subunits of this semantic unit are optional. At\n least one subunit (i.e. eventOutcomeDetailNote and/or eventOutcomeDetailExtension) must be\n present if this container is included.".freeze,
1193
+ comment: [%(Definition: A detailed description of the result or product of the event.).freeze, %(Rationale: An event outcome may be sufficiently complex that a coded description is not adequate to document it.).freeze, %(Usage Notes: This may be used to record all error and warning messages issued by a program involved in the event or to record a pointer to an error log.
1194
+ If the event was a validity check \(e.g., profile conformance\) any anomalies or quirks discovered would be recorded here.
1195
+ All subunits of this semantic unit are optional. At least one subunit \(i.e. eventOutcomeDetailNote and/or eventOutcomeDetailExtension\) must be present if this container is included.).freeze],
203
1196
  subClassOf: term(
204
1197
  maxCardinality: "1".freeze,
205
1198
  onProperty: "premis:hasEventOutcomeDetailNote".freeze,
@@ -208,9 +1201,8 @@ module RDF::Vocab
208
1201
  type: "owl:Class".freeze,
209
1202
  "vs:term_status": "stable".freeze
210
1203
  term :EventOutcomeInformation,
211
- definition: %(Definition: Information about the outcome of
212
- an event.).freeze,
213
- "skos:scopeNote": "Usage Notes: A repository may wish to\n supplement a coded eventOutcome value with additional information in eventOutcomeDetail. Since\n events may have more than one outcome, the container is repeatable. All subunits of this\n semantic unit are optional. At least one subunit (i.e. eventOutcome or eventOutcomeDetail)\n must be present if this container is included.".freeze,
1204
+ comment: [%(Definition: Information about the outcome of an event.).freeze, %(Usage Notes: A repository may wish to supplement a coded eventOutcome value with additional information in eventOutcomeDetail. Since events may have more than one outcome, the container is repeatable.
1205
+ All subunits of this semantic unit are optional. At least one subunit \(i.e. eventOutcome or eventOutcomeDetail\) must be present if this container is included.).freeze],
214
1206
  subClassOf: term(
215
1207
  maxCardinality: "1".freeze,
216
1208
  onProperty: "premis:hasEventOutcome".freeze,
@@ -219,8 +1211,7 @@ module RDF::Vocab
219
1211
  type: "owl:Class".freeze,
220
1212
  "vs:term_status": "stable".freeze
221
1213
  term :File,
222
- definition: %(Definition: A named and ordered sequence of
223
- bytes that is known to an operating system.).freeze,
1214
+ comment: %(Definition: A named and ordered sequence of bytes that is known to an operating system.).freeze,
224
1215
  "rdfs:seeAlso": "Object class definition".freeze,
225
1216
  subClassOf: ["premis:Object".freeze, term(
226
1217
  minCardinality: "1".freeze,
@@ -230,10 +1221,10 @@ module RDF::Vocab
230
1221
  type: "owl:Class".freeze,
231
1222
  "vs:term_status": "stable".freeze
232
1223
  term :Fixity,
233
- definition: %(Definition: Information used to verify
234
- whether an object has been altered in an undocumented or unauthorized way.).freeze,
235
- "skos:historyNote": "Creation / Maintenance Notes: Automatically\n calculated and recorded by repository.".freeze,
236
- "skos:scopeNote": "Usage Notes: To perform a fixity check, a\n message digest calculated at some earlier time is compared with a message digest calculated at\n a later time. If the digests are the same, the object was not altered in the interim.\n Recommended practice is to use two or more message digests calculated by different algorithms.\n (Note that the terms “message digest” and “checksum” are commonly used interchangeably.\n However, the term “checksum” is more correctly used for the product of a cyclical redundancy\n check (CRC), whereas the term “message digest” refers to the result of a cryptographic hash\n function, which is what is referred to here.) The act of performing a fixity check and the\n date it occurred would be recorded as an Event. The result of the check would be recorded as\n the eventOutcome. Therefore, only the messageDigestAlgorithm and messageDigest need to be\n recorded as objectCharacteristics for future comparison. Representation level: It could be\n argued that if a representation consists of a single file or if all the files comprised by a\n representation are combined (e.g., zipped) into a single file, then a fixity check could be\n performed on the representation. However, in both cases the fixity check is actually being\n performed on a file, which in this case happens to be coincidental with a representation.\n Bitstream level: Message digests can be computed for bitstreams although they are not as\n common as with files. For example, the JPX format, which is a JPEG2000 format, supports the\n inclusion of MD5 or SHA-1 message digests in internal metadata that was calculated on any\n range of bytes of the file.".freeze,
1224
+ comment: [%(Creation / Maintenance Notes: Automatically calculated and recorded by repository.).freeze, %(Definition: Information used to verify whether an object has been altered in an undocumented or unauthorized way.).freeze, %(Usage Notes: To perform a fixity check, a message digest calculated at some earlier time is compared with a message digest calculated at a later time. If the digests are the same, the object was not altered in the interim. Recommended practice is to use two or more message digests calculated by different algorithms. \(Note that the terms “message digest” and “checksum” are commonly used interchangeably. However, the term “checksum” is more correctly used for the product of a cyclical redundancy check \(CRC\), whereas the term “message digest” refers to the result of a cryptographic hash function, which is what is referred to here.\)
1225
+ The act of performing a fixity check and the date it occurred would be recorded as an Event. The result of the check would be recorded as the eventOutcome. Therefore, only the messageDigestAlgorithm and messageDigest need to be recorded as objectCharacteristics for future comparison.
1226
+ Representation level: It could be argued that if a representation consists of a single file or if all the files comprised by a representation are combined \(e.g., zipped\) into a single file, then a fixity check could be performed on the representation. However, in both cases the fixity check is actually being performed on a file, which in this case happens to be coincidental with a representation.
1227
+ Bitstream level: Message digests can be computed for bitstreams although they are not as common as with files. For example, the JPX format, which is a JPEG2000 format, supports the inclusion of MD5 or SHA-1 message digests in internal metadata that was calculated on any range of bytes of the file.).freeze],
237
1228
  subClassOf: term(
238
1229
  intersectionOf: list(term(
239
1230
  cardinality: "1".freeze,
@@ -249,16 +1240,8 @@ module RDF::Vocab
249
1240
  type: "owl:Class".freeze,
250
1241
  "vs:term_status": "stable".freeze
251
1242
  term :Format,
252
- definition: %(Definition: Identification of the format of
253
- a file or bitstream where format is the organization of digital information according to
254
- preset specifications.).freeze,
255
- editorialNote: %(Rationale: Many preservation activities
256
- depend on detailed knowledge about the format of the digital object. An accurate
257
- identification of format is essential. The identification provided, whether by name or pointer
258
- into a format registry, should be sufficient to associate the object with more detailed format
259
- information.).freeze,
260
- "skos:historyNote": "Creation / Maintenance Notes: The format of\n a file or bitstream should be ascertained by the repository on ingest. Even if this\n information is provided by the submitter, directly in metadata or indirectly via the file name\n extension, recommended practice is to independently identify the format by parsing the file\n when possible. If the format cannot be identified at the time of ingest, it is valid to record\n that it is unknown, but the repository should subsequently make an effort to identify the\n format, even if manual intervention is required.".freeze,
261
- "skos:scopeNote": "Usage Notes: A bitstream embedded within a\n file may have different characteristics than the larger file. For example, a bitstream in\n LaTex format could be embedded within an SGML file, or multiple images using different\n colorspaces could be embedded within a TIFF file. format must be recorded for every object.\n When the bitstream format can be recognized by the repository and the repository might want to\n treat the bitstream differently from the embedding file for preservation purposes, format can\n be recorded for embedded bitstreams. Although this semantic unit is mandatory, both of its\n subunits are optional. At least one subunit (i.e. either formatDesignation or formatRegistry)\n must be present if this container is included or both may be used. If the subunit\n (formatDesignation or formatRegistry) needs to be repeated, the entire format container is\n repeated. This allows for association of format designation with a particular set of format\n registry information. For example, if the precise format cannot be determined and two format\n designations are recorded, each is given within a separate format container. The format\n container may also be repeated for multiple format registry entries.".freeze,
1243
+ comment: [%(Creation / Maintenance Notes: The format of a file or bitstream should be ascertained by the repository on ingest. Even if this information is provided by the submitter, directly in metadata or indirectly via the file name extension, recommended practice is to independently identify the format by parsing the file when possible. If the format cannot be identified at the time of ingest, it is valid to record that it is unknown, but the repository should subsequently make an effort to identify the format, even if manual intervention is required.).freeze, %(Definition: Identification of the format of a file or bitstream where format is the organization of digital information according to preset specifications.).freeze, %(Rationale: Many preservation activities depend on detailed knowledge about the format of the digital object. An accurate identification of format is essential. The identification provided, whether by name or pointer into a format registry, should be sufficient to associate the object with more detailed format information.).freeze, %(Usage Notes: A bitstream embedded within a file may have different characteristics than the larger file. For example, a bitstream in LaTex format could be embedded within an SGML file, or multiple images using different colorspaces could be embedded within a TIFF file. format must be recorded for every object. When the bitstream format can be recognized by the repository and the repository might want to treat the bitstream differently from the embedding file for preservation purposes, format can be recorded for embedded bitstreams.
1244
+ Although this semantic unit is mandatory, both of its subunits are optional. At least one subunit \(i.e. either formatDesignation or formatRegistry\) must be present if this container is included or both may be used. If the subunit \(formatDesignation or formatRegistry\) needs to be repeated, the entire format container is repeated. This allows for association of format designation with a particular set of format registry information. For example, if the precise format cannot be determined and two format designations are recorded, each is given within a separate format container. The format container may also be repeated for multiple format registry entries.).freeze],
262
1245
  subClassOf: term(
263
1246
  type: "owl:Class".freeze,
264
1247
  unionOf: list(term(
@@ -274,9 +1257,8 @@ module RDF::Vocab
274
1257
  type: "owl:Class".freeze,
275
1258
  "vs:term_status": "stable".freeze
276
1259
  term :FormatDesignation,
277
- definition: %(Definition: An identification of the format
278
- of the object.).freeze,
279
- "skos:scopeNote": "Usage Notes: Either formatDesignation or at\n least one instance of formatRegistry is required. Both may be included. The most specific\n format (or format profile) should be recorded. A repository (or formats registry) may wish to\n use multipart format names (e.g., “TIFF_GeoTIFF” or “WAVE_MPEG_BWF”) to achieve this\n specificity.".freeze,
1260
+ comment: [%(Definition: An identification of the format of the object.).freeze, %(Usage Notes: Either formatDesignation or at least one instance of formatRegistry is required. Both may be included.
1261
+ The most specific format \(or format profile\) should be recorded. A repository \(or formats registry\) may wish to use multipart format names \(e.g., “TIFF_GeoTIFF” or “WAVE_MPEG_BWF”\) to achieve this specificity.).freeze],
280
1262
  subClassOf: term(
281
1263
  cardinality: "1".freeze,
282
1264
  onProperty: "premis:hasFormatName".freeze,
@@ -285,12 +1267,8 @@ module RDF::Vocab
285
1267
  type: "owl:Class".freeze,
286
1268
  "vs:term_status": "stable".freeze
287
1269
  term :FormatRegistry,
288
- definition: %(Definition: Identifies and/or gives further
289
- information about the format by reference to an entry in a format registry.).freeze,
290
- editorialNote: %(Rationale: If central format registries are
291
- available to the preservation repository, they may provide an excellent way of referencing
292
- detailed format information.).freeze,
293
- "skos:scopeNote": "Usage Notes: Either formatDesignation or at\n least one instance of formatRegistry is required. If more than one formatRegistry needs to be\n recorded the format container should be repeated to include each additional set of\n formatRegistry information. The PREMIS working group assumed that a number of format\n registries will be developed and maintained to support digital preservation efforts. The\n proposal for a Global Digital Format Registry (GDFR)\n (http://hul.harvard.edu/gdfr/documents.html#data), for example, would create a\n network-accessible registry designed to store detailed specifications on formats and\n profiles.".freeze,
1270
+ comment: [%(Definition: Identifies and/or gives further information about the format by reference to an entry in a format registry.).freeze, %(Rationale: If central format registries are available to the preservation repository, they may provide an excellent way of referencing detailed format information.).freeze, %(Usage Notes: Either formatDesignation or at least one instance of formatRegistry is required. If more than one formatRegistry needs to be recorded the format container should be repeated to include each additional set of formatRegistry information.
1271
+ The PREMIS working group assumed that a number of format registries will be developed and maintained to support digital preservation efforts. The proposal for a Global Digital Format Registry \(GDFR\) \(http://hul.harvard.edu/gdfr/documents.html#data\), for example, would create a network-accessible registry designed to store detailed specifications on formats and profiles.).freeze],
294
1272
  subClassOf: [term(
295
1273
  cardinality: "1".freeze,
296
1274
  onProperty: "premis:hasFormatRegistryKey".freeze,
@@ -303,10 +1281,8 @@ module RDF::Vocab
303
1281
  type: "owl:Class".freeze,
304
1282
  "vs:term_status": "stable".freeze
305
1283
  term :Hardware,
306
- definition: %(Definition: Hardware components needed by
307
- the software referenced in swName or the human user of the referenced
308
- software.).freeze,
309
- "skos:historyNote": "Creation / Maintenance Notes: Hardware\n environment information can be very difficult to provide. Many different hardware environments\n may apply; there are a huge number of combinations of maker and type of CPU, memory, video\n drivers, and so on. Although at least one hardware environment should be recorded, it is not\n necessary to record them all and each repository will have to make its own decisions about\n which hardware environments to record. Because of the difficulty recording this information\n comprehensively, it would be optimal if central registries of environment information existed.\n In many cases the environment of a file object is directly associated with the format, making\n registry lookup by format feasible. In the absence of a global mechanism, repositories may be\n forced to develop their own local “registries” relating format to\n hwEnvironment.".freeze,
1284
+ comment: [%(Creation / Maintenance Notes: Hardware environment information can be very difficult to provide. Many different hardware environments may apply; there are a huge number of combinations of maker and type of CPU, memory, video drivers, and so on. Although at least one hardware environment should be recorded, it is not necessary to record them all and each repository will have to make its own decisions about which hardware environments to record.
1285
+ Because of the difficulty recording this information comprehensively, it would be optimal if central registries of environment information existed. In many cases the environment of a file object is directly associated with the format, making registry lookup by format feasible. In the absence of a global mechanism, repositories may be forced to develop their own local “registries” relating format to hwEnvironment.).freeze, %(Definition: Hardware components needed by the software referenced in swName or the human user of the referenced software.).freeze],
310
1286
  subClassOf: term(
311
1287
  intersectionOf: list(term(
312
1288
  cardinality: "1".freeze,
@@ -322,8 +1298,7 @@ module RDF::Vocab
322
1298
  type: "owl:Class".freeze,
323
1299
  "vs:term_status": "stable".freeze
324
1300
  term :Identifier,
325
- comment: %(This class is used in PREMIS OWL to
326
- describe identifiers if the identifiers are not http URIs.).freeze,
1301
+ comment: %(This class is used in PREMIS OWL to describe identifiers if the identifiers are not http URIs.).freeze,
327
1302
  subClassOf: [term(
328
1303
  cardinality: "1".freeze,
329
1304
  onProperty: "premis:hasIdentifierType".freeze,
@@ -336,13 +1311,9 @@ module RDF::Vocab
336
1311
  type: "owl:Class".freeze,
337
1312
  "vs:term_status": "stable".freeze
338
1313
  term :Inhibitors,
339
- definition: %(Definition: Features of the object intended
340
- to inhibit access, use, or migration.).freeze,
341
- editorialNote: %(Rationale: Format information may indicate
342
- whether a file is encrypted, but the nature of the encryption also must be recorded, as well
343
- as the access key.).freeze,
344
- "skos:historyNote": "Creation / Maintenance Notes: Inhibitors are\n more likely to be present on an object ingested by the repository than applied by the\n repository itself. It is often not possible to tell that a file has been encrypted by parsing\n it; the file may appear to be ASCII text. Therefore, information about inhibitors should be\n supplied as metadata with submitted objects when possible.".freeze,
345
- "skos:scopeNote": "Usage Notes: Some file formats allow\n encryption for embedded bitstreams. Some file formats such as PDF use passwords to control\n access to content or specific functions. Although this is actually implemented at the\n bitstream level, for preservation purposes it is effectively managed at the file level; that\n is, passwords would not be recorded for individually addressable bitstreams. For certain types\n of inhibitor keys, more granularity may be required. If the inhibitor key information is\n identical to key information in digital signatures, use those semantic units.".freeze,
1314
+ comment: [%(Creation / Maintenance Notes: Inhibitors are more likely to be present on an object ingested by the repository than applied by the repository itself. It is often not possible to tell that a file has been encrypted by parsing it; the file may appear to be ASCII text. Therefore, information about inhibitors should be supplied as metadata with submitted objects when possible.).freeze, %(Definition: Features of the object intended to inhibit access, use, or migration.).freeze, %(Rationale: Format information may indicate whether a file is encrypted, but the nature of the encryption also must be recorded, as well as the access key.).freeze, %(Usage Notes: Some file formats allow encryption for embedded bitstreams.
1315
+ Some file formats such as PDF use passwords to control access to content or specific functions. Although this is actually implemented at the bitstream level, for preservation purposes it is effectively managed at the file level; that is, passwords would not be recorded for individually addressable bitstreams.
1316
+ For certain types of inhibitor keys, more granularity may be required. If the inhibitor key information is identical to key information in digital signatures, use those semantic units.).freeze],
346
1317
  subClassOf: term(
347
1318
  cardinality: "1".freeze,
348
1319
  onProperty: "premis:hasInhibitorType".freeze,
@@ -351,22 +1322,12 @@ module RDF::Vocab
351
1322
  type: "owl:Class".freeze,
352
1323
  "vs:term_status": "stable".freeze
353
1324
  term :IntellectualEntity,
354
- comment: %(Intellectual entities are described via
355
- Descriptive metadata models. These are very domain-specific and are out of scope for PREMIS.
356
- Examples: Dublin Core, Mets, MARC).freeze,
357
- definition: %(Definition: a set of content that is
358
- considered a single intellectual unit for purposes of management and description: for example,
359
- a particular book, map, photograph, or database. An Intellectual Entity can include other
360
- Intellectual Entities; for example, a Web site can include a Web page; a Web page can include
361
- an image. An Intellectual Entity may have one or more digital
362
- representations.).freeze,
1325
+ comment: [%(Definition: a set of content that is considered a single intellectual unit for purposes of management and description: for example, a particular book, map, photograph, or database. An Intellectual Entity can include other Intellectual Entities; for example, a Web site can include a Web page; a Web page can include an image. An Intellectual Entity may have one or more digital representations.).freeze, %(Intellectual entities are described via Descriptive metadata models. These are very domain-specific and are out of scope for PREMIS. Examples: Dublin Core, Mets, MARC).freeze],
363
1326
  subClassOf: "premis:PremisEntity".freeze,
364
1327
  type: "owl:Class".freeze,
365
1328
  "vs:term_status": "stable".freeze
366
1329
  term :LicenseInformation,
367
- definition: %(Definition: Information about a license or
368
- other agreement granting permissions related to an object.).freeze,
369
- "skos:scopeNote": "Usage Note: When rights basis is a license,\n licenseInformation should be provided.".freeze,
1330
+ comment: [%(Definition: Information about a license or other agreement granting permissions related to an object.).freeze, %(Usage Note: When rights basis is a license, licenseInformation should be provided.).freeze],
370
1331
  subClassOf: ["premis:RightsStatement".freeze, term(
371
1332
  maxCardinality: "1".freeze,
372
1333
  onProperty: "premis:hasLicenseTerms".freeze,
@@ -375,29 +1336,22 @@ module RDF::Vocab
375
1336
  type: "owl:Class".freeze,
376
1337
  "vs:term_status": "stable".freeze
377
1338
  term :Object,
378
- comment: %(The object class aggregates information
379
- about a digital object held by a preservation repository and describes those characteristics
380
- relevant to preservation management. The only mandatory property is objectIdentifier. The
381
- object class has three subclasses: Representation, File, and Bitstream.).freeze,
382
- editorialNote: [%(Entity properties: Can be associated with
383
- one or more rights statements. Can participate in one or more events. Links between entities
384
- may be recorded from either direction and need not be bi-directional.).freeze, %(Entity types: Representation: A digital
385
- object instantiating or embodying an Intellectual Entity. A representation is the set of
386
- stored digital files and structural metadata needed to provide a complete and reasonable
387
- rendition of the Intellectual Entity. File: A named and ordered sequence of bytes that is
388
- known to an operating system. Bitstream: Contiguous or non-contiguous data within a file that
389
- has meaningful properties for preservation purposes.).freeze],
1339
+ comment: [%(Entity properties:
1340
+ Can be associated with one or more rights statements.
1341
+ Can participate in one or more events.
1342
+ Links between entities may be recorded from either direction and need not be bi-directional.).freeze, %(Entity types:
1343
+ Representation: A digital object instantiating or embodying an Intellectual Entity. A representation is the set of stored digital files and structural metadata needed to provide a complete and reasonable rendition of the Intellectual Entity.
1344
+ File: A named and ordered sequence of bytes that is known to an operating system.
1345
+ Bitstream: Contiguous or non-contiguous data within a file that has meaningful properties for preservation purposes.).freeze, %(The object class aggregates information about a digital object held by a preservation repository and describes those characteristics relevant to preservation management. The only mandatory property is objectIdentifier.
1346
+ The object class has three subclasses: Representation, File, and Bitstream.).freeze],
390
1347
  subClassOf: "premis:PremisEntity".freeze,
391
1348
  type: "owl:Class".freeze,
392
1349
  "vs:term_status": "stable".freeze
393
1350
  term :ObjectCharacteristics,
394
- definition: %(Definition: Technical properties of a file
395
- or bitstream that are applicable to all or most formats.).freeze,
396
- editorialNote: %(Rationale: There are some important
397
- technical properties that apply to objects of any format. Detailed definition of
398
- format-specific properties is outside the scope of this Data Dictionary, although such
399
- properties may be included within objectCharacteristicsExtension.).freeze,
400
- "skos:scopeNote": "Usage Notes: The semantic units included in\n objectCharacteristics should be treated as a set of information that pertains to a single\n object at a single compositionLevel. Object characteristics may be repeated when an object was\n created by applying two or more encodings, such as compression and encryption. In this case\n each repetition of objectCharacteristics would have an incrementally higher compositionLevel.\n When encryption is applied, the objectCharacteristics block must include an inhibitors\n semantic unit. A bitstream embedded within a file may have different object characteristics\n than the file. Where these characteristics are relevant for preservation, they should be\n recorded. When a single file is equivalent to a representation, objectCharacteristics may be\n applied and thus associated with the representation. In these cases, the relationship between\n the file comprising the representation and other associated files may be expressed using\n relationshipSubType.".freeze,
1351
+ comment: [%(Definition: Technical properties of a file or bitstream that are applicable to all or most formats.).freeze, %(Rationale: There are some important technical properties that apply to objects of any format. Detailed definition of format-specific properties is outside the scope of this Data Dictionary, although such properties may be included within objectCharacteristicsExtension.).freeze, %(Usage Notes: The semantic units included in objectCharacteristics should be treated as a set of information that pertains to a single object at a single compositionLevel. Object characteristics may be repeated when an object was created by applying two or more encodings, such as compression and encryption. In this case each repetition of objectCharacteristics would have an incrementally higher compositionLevel.
1352
+ When encryption is applied, the objectCharacteristics block must include an inhibitors semantic unit.
1353
+ A bitstream embedded within a file may have different object characteristics than the file. Where these characteristics are relevant for preservation, they should be recorded.
1354
+ When a single file is equivalent to a representation, objectCharacteristics may be applied and thus associated with the representation. In these cases, the relationship between the file comprising the representation and other associated files may be expressed using relationshipSubType.).freeze],
401
1355
  subClassOf: [term(
402
1356
  cardinality: "1".freeze,
403
1357
  onProperty: "premis:hasCompositionLevel".freeze,
@@ -410,24 +1364,15 @@ module RDF::Vocab
410
1364
  type: "owl:Class".freeze,
411
1365
  "vs:term_status": "stable".freeze
412
1366
  term :PremisEntity,
413
- definition: %(Definition: Basicly, the preservation
414
- information in PREMIS OWL consists of five entities related to each other. The entities are:
415
- Agent, Event, IntellectualEntity, Object, and RightsStatement.).freeze,
416
- "owl:versionInfo": "PREMIS 2.2 Owl\n v2".freeze,
1367
+ comment: %(Definition: Basicly, the preservation information in PREMIS OWL consists of five entities related to each other. The entities are: Agent, Event, IntellectualEntity, Object, and RightsStatement.).freeze,
1368
+ "owl:versionInfo": "PREMIS 2.2 Owl v2".freeze,
417
1369
  subClassOf: "owl:Thing".freeze,
418
1370
  type: "owl:Class".freeze,
419
1371
  "vs:term_status": "stable".freeze
420
1372
  term :PreservationLevel,
421
- definition: %(Definition: Information indicating the
422
- decision or policy on the set of preservation functions to be applied to an object and the
423
- context in which the decision or policy was made.).freeze,
424
- editorialNote: %(Rationale: Some preservation repositories
425
- will offer multiple preservation options depending on factors such as the value or uniqueness
426
- of the material, the “preservability” of the format, the amount the customer is willing to
427
- pay, etc. The context surrounding the choice of a particular preservation option for an object
428
- may also require further explanation.).freeze,
429
- "skos:historyNote": "Creation / Maintenance Notes: The\n preservation level may be assigned by the repository or requested by the depositor and\n submitted as metadata. The repository may also choose to record additional metadata indicating\n the context for the assignment of the preservation level.".freeze,
430
- "skos:scopeNote": "Usage Notes: If the repository offers only a\n single preservation level, this value does not need to be explicitly recorded within the\n repository. Application of a particular set of preservationLevel semantic units may only cover\n a single representation of an object: representations in other technical forms or serving\n other functions may have a different preservationLevel applied. The container may be repeated\n if a preservation level value needs to be recorded in additional contexts (see\n preservationLevelRole).".freeze,
1373
+ comment: [%(Creation / Maintenance Notes: The preservation level may be assigned by the repository or requested by the depositor and submitted as metadata. The repository may also choose to record additional metadata indicating the context for the assignment of the preservation level.).freeze, %(Definition: Information indicating the decision or policy on the set of preservation functions to be applied to an object and the context in which the decision or policy was made.).freeze, %(Rationale: Some preservation repositories will offer multiple preservation options depending on factors such as the value or uniqueness of the material, the “preservability” of the format, the amount the customer is willing to pay, etc. The context surrounding the choice of a particular preservation option for an object may also require further explanation.).freeze, %(Usage Notes: If the repository offers only a single preservation level, this value does not need to be explicitly recorded within the repository.
1374
+ Application of a particular set of preservationLevel semantic units may only cover a single representation of an object: representations in other technical forms or serving other functions may have a different preservationLevel applied.
1375
+ The container may be repeated if a preservation level value needs to be recorded in additional contexts \(see preservationLevelRole\).).freeze],
431
1376
  subClassOf: [term(
432
1377
  cardinality: "1".freeze,
433
1378
  onProperty: "premis:hasPreservationLevelValue".freeze,
@@ -440,9 +1385,7 @@ module RDF::Vocab
440
1385
  type: "owl:Class".freeze,
441
1386
  "vs:term_status": "stable".freeze
442
1387
  term :RelatedObjectIdentification,
443
- definition: %(Definition: The identifier and sequential
444
- context of the related resource).freeze,
445
- "skos:scopeNote": "Usage Notes: The related object may or may\n not be held within the preservation repository. Recommended practice is that objects reside\n within the repository unless there is a good reason to reference an object outside. Internal\n and external references should be clear.".freeze,
1388
+ comment: [%( Definition: The identifier and sequential context of the related resource).freeze, %(Usage Notes: The related object may or may not be held within the preservation repository. Recommended practice is that objects reside within the repository unless there is a good reason to reference an object outside. Internal and external references should be clear.).freeze],
446
1389
  subClassOf: term(
447
1390
  intersectionOf: list(term(
448
1391
  cardinality: "1".freeze,
@@ -458,18 +1401,14 @@ module RDF::Vocab
458
1401
  type: "owl:Class".freeze,
459
1402
  "vs:term_status": "stable".freeze
460
1403
  term :Representation,
461
- definition: %(Definition: A digital object instantiating
462
- or embodying an Intellectual Entity. A representation is the set of stored digital files and
463
- structural metadata needed to provide a complete and reasonable rendition of the Intellectual
464
- Entity.).freeze,
1404
+ comment: %(Definition: A digital object instantiating or embodying an Intellectual Entity. A representation is the set of stored digital files and structural metadata needed to provide a complete and reasonable rendition of the Intellectual Entity.).freeze,
465
1405
  "rdfs:seeAlso": "Object class definition".freeze,
466
1406
  subClassOf: "premis:Object".freeze,
467
1407
  type: "owl:Class".freeze,
468
1408
  "vs:term_status": "stable".freeze
469
1409
  term :RightsDocumentation,
470
- definition: %(Definition: A designation used to uniquely
471
- identify documentation supporting the specified rights within the repository
472
- system.).freeze,
1410
+ comment: %(Definition: A designation used to uniquely identify documentation supporting the
1411
+ specified rights within the repository system.).freeze,
473
1412
  subClassOf: term(
474
1413
  maxCardinality: "1".freeze,
475
1414
  onProperty: "premis:hasRightsDocumentationRole".freeze,
@@ -478,8 +1417,7 @@ module RDF::Vocab
478
1417
  type: "owl:Class".freeze,
479
1418
  "vs:term_status": "stable".freeze
480
1419
  term :RightsGranted,
481
- definition: %(Definition: The action\(s\) that the granting
482
- agency has allowed the repository.).freeze,
1420
+ comment: %(Definition: The action\(s\) that the granting agency has allowed the repository.).freeze,
483
1421
  subClassOf: [term(
484
1422
  intersectionOf: list(term(
485
1423
  cardinality: "1".freeze,
@@ -499,12 +1437,9 @@ module RDF::Vocab
499
1437
  type: "owl:Class".freeze,
500
1438
  "vs:term_status": "stable".freeze
501
1439
  term :RightsStatement,
502
- comment: %(Extensions: In OWL one can define its own
503
- subclasses to the the RightsStatement class to denote OtherRightsInformation of the PREMIS
504
- data dictionary.).freeze,
505
- definition: %(Definition: Documentation of the
506
- repository's right to perform one or more acts.).freeze,
507
- "skos:scopeNote": "Usage Notes: This semantic unit is optional\n because in some cases rights may be unknown. Institutions are encouraged to record rights\n information when possible. Either rightsStatement or rightsExtension must be present if the\n Rights entity is included. The rightsStatement should be repeated when the act(s) described\n has more than one basis, or when different acts have different bases.".freeze,
1440
+ comment: [%(Definition: Documentation of the repository's right to perform one or more acts.).freeze, %(Extensions: In OWL one can define its own subclasses to the the RightsStatement class to denote OtherRightsInformation of the PREMIS data dictionary.).freeze, %(Usage Notes: This semantic unit is optional because in some cases rights may be unknown. Institutions are encouraged to record rights information when possible.
1441
+ Either rightsStatement or rightsExtension must be present if the Rights entity is included.
1442
+ The rightsStatement should be repeated when the act\(s\) described has more than one basis, or when different acts have different bases.).freeze],
508
1443
  subClassOf: ["dc:RightsStatement".freeze, "premis:PremisEntity".freeze, term(
509
1444
  maxCardinality: "1".freeze,
510
1445
  onProperty: "premis:hasApplicableDates".freeze,
@@ -517,13 +1452,7 @@ module RDF::Vocab
517
1452
  type: "owl:Class".freeze,
518
1453
  "vs:term_status": "stable".freeze
519
1454
  term :Signature,
520
- definition: %(Definition: Information needed to use a
521
- digital signature to authenticate the signer of an object and/or the information contained in
522
- the object.).freeze,
523
- editorialNote: %(Rationale: A repository may have a policy of
524
- generating digital signatures for files on ingest, or may have a need to store and later
525
- validate incoming digital signatures.).freeze,
526
- "skos:scopeNote": "Usage Notes: Several of the semantic\n components of signatureInformation are taken from the W3C’s XML-Signature Syntax and\n Processing; see www.w3.org/TR/2002/REC-xmldsig-core-20020212/ for more information on the\n structure and application of these semantic units.".freeze,
1455
+ comment: [%(Definition: Information needed to use a digital signature to authenticate the signer of an object and/or the information contained in the object.).freeze, %(Rationale: A repository may have a policy of generating digital signatures for files on ingest, or may have a need to store and later validate incoming digital signatures.).freeze, %(Usage Notes: Several of the semantic components of signatureInformation are taken from the W3C’s XML-Signature Syntax and Processing; see www.w3.org/TR/2002/REC-xmldsig-core-20020212/ for more information on the structure and application of these semantic units.).freeze],
527
1456
  subClassOf: term(
528
1457
  intersectionOf: list(term(
529
1458
  cardinality: "1".freeze,
@@ -547,20 +1476,31 @@ module RDF::Vocab
547
1476
  type: "owl:Class".freeze,
548
1477
  "vs:term_status": "stable".freeze
549
1478
  term :SignificantProperties,
550
- definition: %(Definition: Characteristics of a particular
551
- object subjectively determined to be important to maintain through preservation
552
- actions.).freeze,
553
- editorialNote: %(Rationale: Objects that have the same
554
- technical properties may still differ as to the properties that should be preserved for future
555
- presentation or use.).freeze,
556
- "skos:historyNote": "Creation / Maintenance Notes: Significant\n properties may pertain to all objects of a certain class; for example, the repository can\n decide that for all PDF files, only the content need be preserved. In other cases, for\n example, for media art, the significant properties may be unique to each individual object.\n Where values are unique, they must be supplied by the submitter or provided by the curatorial\n staff of the repository.".freeze,
557
- "skos:scopeNote": "Usage Notes: All of this semantic unit’s\n subunits are optional. At least one of the significantPropertiesValue and\n significantPropertiesExtension subunits must be present if this container is included or both\n may be used. Significant properties may be objective technical characteristics subjectively\n considered important, or subjectively determined characteristics. For example, a PDF may\n contain links that are not considered important and JavaScript that is considered important.\n Or future migrations of a TIFF image may require optimization for line clarity or for color;\n the option chosen would depend upon a curatorial judgment of the significant properties of the\n image. Listing significant properties implies that the repository plans to preserve these\n properties across time and requires them to acceptably survive preservation action; for\n example, to be maintained during emulation or after format migration. It also implies that the\n repository would note when preservation action results in modification of significant\n properties. In practice, significant properties might be used as measures of preservation\n success, as part of quality checking the results of a preservation action or evaluating the\n efficacy of a preservation method. For example, if the listed significant properties are not\n maintained after application of a particular preservation method, it may indicate a failure of\n the process or that the method is not well suited to the type of material. More experience\n with digital preservation is needed to determine the best ways of representing significant\n properties in general, and of representing modification of significant properties. The\n semantic units included in the significantProperties container aim to provide a flexible\n structure for describing significant properties, allowing general types of aspects, facets or\n attributes of an object to be declared and to be paired with specific significant details\n about the object pertaining to that aspect, facet or attribute. For example, some repositories\n may define significant properties for objects related to facets of content, appearance,\n structure, behavior, and context. Examples of facet:detail pairs in this case could include:\n significantPropertiesType = “content” significantPropertiesValue = “all textual content and\n images” significantPropertiesType = “behavior” significantPropertiesValue = “editable” Other\n repositories may choose to describe significant properties at a more granular attribute level;\n for example: significantPropertiesType = “page count” significantPropertiesValue = “7”\n significantPropertiesType = “page width” significantPropertiesValue = “210 mm” Each\n facet:detail pair should be contained in a separate, repeated significantProperties container.\n Further work on determining and describing significant properties may yield more detailed\n schemes to facilitate general description. Representing modification of significant properties\n as a result of preservation action also requires further work. One possible way involves the\n use of Object and Event information: Object A has significant properties volume and timing,\n which are recorded as significantProperties of A. In migrated version B, the timing is\n modified, which is noted in the eventOutcome of the migration event. Only volume is listed as\n a significant property of B.".freeze,
1479
+ comment: [%(Creation / Maintenance Notes: Significant properties may pertain to all objects of a certain class; for example, the repository can decide that for all PDF files, only the content need be preserved. In other cases, for example, for media art, the significant properties may be unique to each individual object. Where values are unique, they must be supplied by the submitter or provided by the curatorial staff of the repository.).freeze, %(Definition: Characteristics of a particular object subjectively determined to be important to maintain through preservation actions.).freeze, %(Rationale: Objects that have the same technical properties may still differ as to the properties that should be preserved for future presentation or use.).freeze, %(Usage Notes: All of this semantic unit’s subunits are optional. At least one of the significantPropertiesValue and significantPropertiesExtension subunits must be present if this container is included or both may be used.
1480
+ Significant properties may be objective technical characteristics subjectively considered important, or subjectively determined characteristics. For example, a PDF may contain links that are not considered important and JavaScript that is considered important. Or future migrations of a TIFF image may require optimization for line clarity or for color; the option chosen would depend upon a curatorial judgment of the significant properties of the image.
1481
+ Listing significant properties implies that the repository plans to preserve these properties across time and requires them to acceptably survive preservation action; for example, to be maintained during emulation or after format migration. It also implies that the repository would note when preservation action results in modification of significant properties.
1482
+ In practice, significant properties might be used as measures of preservation success, as part of quality checking the results of a preservation action or evaluating the efficacy of a preservation method. For example, if the listed significant properties are not maintained after application of a particular preservation method, it may indicate a failure of the process or that the method is not well suited to the type of material.
1483
+ More experience with digital preservation is needed to determine the best ways of representing significant properties in general, and of representing modification of significant properties.
1484
+ The semantic units included in the significantProperties container aim to provide a flexible structure for describing significant properties, allowing general types of aspects, facets or attributes of an object to be declared and to be paired with specific significant details about the object pertaining to that aspect, facet or attribute.
1485
+ For example, some repositories may define significant properties for objects related to facets of content, appearance, structure, behavior, and context. Examples of facet:detail pairs in this case could include:
1486
+ significantPropertiesType = “content”
1487
+ significantPropertiesValue = “all textual content and images”
1488
+ significantPropertiesType = “behavior”
1489
+ significantPropertiesValue = “editable”
1490
+ Other repositories may choose to describe significant properties at a more granular attribute level; for example:
1491
+ significantPropertiesType = “page count”
1492
+ significantPropertiesValue = “7”
1493
+ significantPropertiesType = “page width”
1494
+ significantPropertiesValue = “210 mm”
1495
+ Each facet:detail pair should be contained in a separate, repeated significantProperties container.
1496
+ Further work on determining and describing significant properties may yield more detailed schemes to facilitate general description.
1497
+ Representing modification of significant properties as a result of preservation action also requires further work. One possible way involves the use of Object and Event information: Object A has significant properties volume and timing, which are recorded as significantProperties of A. In migrated version B, the timing is modified, which is noted in the eventOutcome of the migration event. Only volume is listed as a significant property of B.).freeze],
558
1498
  type: "owl:Class".freeze,
559
1499
  "vs:term_status": "stable".freeze
560
1500
  term :Software,
561
- definition: %(Definition: Software required to render or
562
- use the object.).freeze,
563
- "skos:historyNote": "Creation / Maintenance Notes: If recording\n this explicitly, many different software environments may apply; for example, a particular\n object such as a PDF file may be viewable by several versions of several applications running\n under several operating systems and operating system versions. Although at least one software\n environment should be recorded, it is not necessary to record them all and each repository\n will have to make its own decisions about which software environments to record. Also, what\n appears to the user as a single rendering program can have many dependencies, including system\n utilities, runtime libraries, and so on, which each might have their own dependencies in turn.\n As with environment, metadata may be more efficiently managed in conjunction with a format\n registry either internal or external to a repository. In the absence of a global mechanism,\n repositories may be forced to develop their own local “registries” relating format to software\n environment.".freeze,
1501
+ comment: [%(Creation / Maintenance Notes: If recording this explicitly, many different software environments may apply; for example, a particular object such as a PDF file may be viewable by several versions of several applications running under several operating systems and operating system versions. Although at least one software environment should be recorded, it is not necessary to record them all and each repository will have to make its own decisions about which software environments to record.
1502
+ Also, what appears to the user as a single rendering program can have many dependencies, including system utilities, runtime libraries, and so on, which each might have their own dependencies in turn.
1503
+ As with environment, metadata may be more efficiently managed in conjunction with a format registry either internal or external to a repository. In the absence of a global mechanism, repositories may be forced to develop their own local “registries” relating format to software environment.).freeze, %(Definition: Software required to render or use the object.).freeze],
564
1504
  subClassOf: term(
565
1505
  intersectionOf: list(term(
566
1506
  cardinality: "1".freeze,
@@ -576,9 +1516,7 @@ module RDF::Vocab
576
1516
  type: "owl:Class".freeze,
577
1517
  "vs:term_status": "stable".freeze
578
1518
  term :StatuteInformation,
579
- definition: %(Definition: Information about the statute
580
- allowing use of the object.).freeze,
581
- "skos:scopeNote": "Usage Notes: When rights basis is a statute,\n statuteInformation should be provided.".freeze,
1519
+ comment: [%(Definition: Information about the statute allowing use of the object.).freeze, %(Usage Notes: When rights basis is a statute, statuteInformation should be provided.).freeze],
582
1520
  subClassOf: ["premis:RightsStatement".freeze, term(
583
1521
  intersectionOf: list(term(
584
1522
  cardinality: "1".freeze,
@@ -594,11 +1532,8 @@ module RDF::Vocab
594
1532
  type: "owl:Class".freeze,
595
1533
  "vs:term_status": "stable".freeze
596
1534
  term :Storage,
597
- definition: %(Definition: Information about how and where
598
- a file is stored in the storage system.).freeze,
599
- editorialNote: %(Rationale: It is necessary for a repository
600
- to associate the contentLocation with the storageMedium.).freeze,
601
- "skos:scopeNote": "Usage Notes: Normally there would be a\n single storage location and medium for an object, because an object in another location would\n be considered a different object. The storage composite should be repeated if there are two or\n more copies that are identical bit-wise and managed as a unit except for the medium on which\n they are stored. They must have a single objectIdentifier and be managed as a single object by\n the repository. Although this semantic unit is mandatory, both of its subunits are optional.\n At least one subunit (i.e. either contentLocation or storageMedium) must be present or both\n may be used.".freeze,
1535
+ comment: [%(Definition: Information about how and where a file is stored in the storage system.).freeze, %(Rationale: It is necessary for a repository to associate the contentLocation with the storageMedium.).freeze, %(Usage Notes: Normally there would be a single storage location and medium for an object, because an object in another location would be considered a different object. The storage composite should be repeated if there are two or more copies that are identical bit-wise and managed as a unit except for the medium on which they are stored. They must have a single objectIdentifier and be managed as a single object by the repository.
1536
+ Although this semantic unit is mandatory, both of its subunits are optional. At least one subunit \(i.e. either contentLocation or storageMedium\) must be present or both may be used.).freeze],
602
1537
  subClassOf: term(
603
1538
  type: "owl:Class".freeze,
604
1539
  unionOf: list(term(
@@ -614,10 +1549,7 @@ module RDF::Vocab
614
1549
  type: "owl:Class".freeze,
615
1550
  "vs:term_status": "stable".freeze
616
1551
  term :TermOfGrant,
617
- definition: %(Definition: The time period for the
618
- permissions granted.).freeze,
619
- editorialNote: %(Rationale: The permission to preserve may be
620
- time bounded.).freeze,
1552
+ comment: [%(Definition: The time period for the permissions granted.).freeze, %(Rationale: The permission to preserve may be time bounded.).freeze],
621
1553
  subClassOf: ["premis:ApplicableDates".freeze, term(
622
1554
  cardinality: "1".freeze,
623
1555
  onProperty: "premis:hasStartDate".freeze,
@@ -626,13 +1558,7 @@ module RDF::Vocab
626
1558
  type: "owl:Class".freeze,
627
1559
  "vs:term_status": "stable".freeze
628
1560
  term :TermOfRestriction,
629
- definition: %(Definition: The time period for the
630
- restriction granted.).freeze,
631
- editorialNote: %(Rationale: The current definition of
632
- termOfGrant is "time period for the permissions granted." This allows for expressing
633
- information about the rights granted, but some repositories may need to express timebounded
634
- restrictions like embargoes. If this is applicable startDate for the beginning of the embargo
635
- and endDate for the end of the embargo should be recorded.).freeze,
1561
+ comment: [%(Definition: The time period for the restriction granted.).freeze, %(Rationale: The current definition of termOfGrant is "time period for the permissions granted." This allows for expressing information about the rights granted, but some repositories may need to express timebounded restrictions like embargoes. If this is applicable startDate for the beginning of the embargo and endDate for the end of the embargo should be recorded.).freeze],
636
1562
  subClassOf: ["premis:ApplicableDates".freeze, term(
637
1563
  cardinality: "1".freeze,
638
1564
  onProperty: "premis:hasStartDate".freeze,
@@ -643,12 +1569,7 @@ module RDF::Vocab
643
1569
 
644
1570
  # Property definitions
645
1571
  property :hasAct,
646
- comment: [%(Data Constraint: Values are taken from the
647
- SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/actionsGranted ).freeze, %(Extensions: One can use its own SKOS
648
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
649
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
650
- definition: %(Definition: The action the preservation
651
- repository is allowed to take.).freeze,
1572
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/actionsGranted ).freeze, %(Definition: The action the preservation repository is allowed to take.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
652
1573
  domain: "premis:RightsGranted".freeze,
653
1574
  range: term(
654
1575
  onProperty: "skos:inScheme".freeze,
@@ -658,50 +1579,31 @@ module RDF::Vocab
658
1579
  type: ["owl:FunctionalProperty".freeze, "owl:ObjectProperty".freeze],
659
1580
  "vs:term_status": "stable".freeze
660
1581
  property :hasAgent,
661
- definition: %(Definition: link to the associated
662
- Agent.).freeze,
1582
+ comment: [%(Definition: link to the associated Agent.).freeze, %(Rationale: Digital provenance requires often that relationships between agents and events are documented. The role of the associated agent may need to be documented. For this, a SKOS vocabulary can be used. The LOC will publish a vocabulary at http://id.loc.gov/, denoting the agent's role. These vocabulary will publish the concepts also as subproperties to the linkingAgent property, for denoting the role of the agent in the event or rightsstatement.).freeze],
663
1583
  domain: term(
664
1584
  type: "owl:Class".freeze,
665
1585
  unionOf: list("premis:Event".freeze, "premis:RightsStatement".freeze)
666
1586
  ),
667
- editorialNote: %(Rationale: Digital provenance requires often
668
- that relationships between agents and events are documented. The role of the associated agent
669
- may need to be documented. For this, a SKOS vocabulary can be used. The LOC will publish a
670
- vocabulary at http://id.loc.gov/, denoting the agent's role. These vocabulary will publish the
671
- concepts also as subproperties to the linkingAgent property, for denoting the role of the
672
- agent in the event or rightsstatement.).freeze,
673
1587
  range: "premis:Agent".freeze,
674
1588
  "rdfs:seeAlso": "Agent class definition".freeze,
675
1589
  type: "owl:ObjectProperty".freeze,
676
1590
  "vs:term_status": "testing".freeze
677
1591
  property :hasAgentName,
678
- comment: %(Examples: Erik Owens, Pc).freeze,
679
- definition: %(Definition: A text string which could be
680
- used in addition to agentIdentifier to identify an agent.).freeze,
1592
+ comment: [%(Definition: A text string which could be used in addition to agentIdentifier to identify an agent.).freeze, %(Examples: Erik Owens, Pc).freeze, %(Rationale: This semantic unit provides a more reader-friendly version of the agent identified by the agentIdentifier.).freeze, %(Usage Note: The value is not necessarily unique.).freeze],
681
1593
  domain: "premis:Agent".freeze,
682
- editorialNote: %(Rationale: This semantic unit provides a
683
- more reader-friendly version of the agent identified by the
684
- agentIdentifier.).freeze,
685
1594
  range: "xsd:string".freeze,
686
- "skos:scopeNote": "Usage Note: The value is not necessarily\n unique.".freeze,
687
1595
  type: "owl:DatatypeProperty".freeze,
688
1596
  "vs:term_status": "stable".freeze
689
1597
  property :hasAgentNote,
690
- definition: %(Definition: Additional information about the
691
- agent.).freeze,
1598
+ comment: [%(Definition: Additional information about the agent.
1599
+ ).freeze, %(Rationale: Additional information may be needed to describe or disambiguate
1600
+ the agent.).freeze],
692
1601
  domain: "premis:Agent".freeze,
693
- editorialNote: %(Rationale: Additional information may be
694
- needed to describe or disambiguate the agent.).freeze,
695
1602
  range: "xsd:string".freeze,
696
1603
  type: "owl:DatatypeProperty".freeze,
697
1604
  "vs:term_status": "stable".freeze
698
1605
  property :hasAgentType,
699
- comment: [%(Data Constraint: Values are taken from the
700
- SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/agentType ).freeze, %(Extensions: One can use its own SKOS
701
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
702
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
703
- definition: %(Definition: A high-level characterization of
704
- the type of agent.).freeze,
1606
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/agentType ).freeze, %(Definition: A high-level characterization of the type of agent.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
705
1607
  domain: "premis:Agent".freeze,
706
1608
  range: term(
707
1609
  onProperty: "skos:inScheme".freeze,
@@ -713,40 +1615,27 @@ module RDF::Vocab
713
1615
  property :hasApplicableDates,
714
1616
  domain: "premis:RightsStatement".freeze,
715
1617
  range: "premis:ApplicableDates".freeze,
716
- "rdfs:seeAlso": "ApplicableDates class\n definition".freeze,
1618
+ "rdfs:seeAlso": "ApplicableDates class definition".freeze,
717
1619
  type: "owl:ObjectProperty".freeze,
718
1620
  "vs:term_status": "stable".freeze
719
1621
  property :hasCompositionLevel,
720
- comment: [%(Data Constraints: Non-negative
721
- integers.).freeze, %(Examples: 0, 1, 2).freeze],
722
- definition: %(Definition: An indication of whether the
723
- object is subject to one or more processes of decoding or unbundling.).freeze,
1622
+ comment: [%(Creation / Maintenance Notes: Composition level will generally be supplied by the repository, which should attempt to supply this value automatically. If the object was created by the repository, the creating routine knows the composition level and can supply this metadata. If the object is being ingested by the repository, repository programs will have to attempt to identify the composition level from the object itself or from externally supplied metadata.).freeze, %(Data Constraints: Non-negative integers.).freeze, %(Definition: An indication of whether the object is subject to one or more processes of decoding or unbundling.).freeze, %(Examples: 0, 1, 2).freeze, %(Rationale: A file or bitstream can be encoded with compression, encryption, etc., or bundled with other files or bitstreams into larger packages. Knowing the order in which these actions are taken is important if the original object or objects must be recovered.).freeze, %(Usage Notes: A file or bitstream can be subject to multiple encodings that must be decoded in reverse order \(highest to lowest\). For example, file A may be compressed to create file B, which is encrypted to create file C. To recreate a copy of the base file A, one would have to unencrypt file C to create file B and then uncompress file B to create file A. A compositionLevel of zero indicates that the object is a base object and not subject to further decoding, while a level of 1 or higher indicates that one or more decodings must be applied.
1623
+ Numbering goes lowest to highest \(first encoded = 0\). 0 is base object; 1-n are subsequent encodings.
1624
+ Use 0 as the default if there is only one compositionLevel.
1625
+ When multiple file objects are bundled together as filestreams within a package file object \(e.g., a ZIP file\), the individual filestream objects are not composition levels of the package file object. They should be considered separate objects, each with their own composition levels. For example, two encrypted files zipped together and stored in an archive as one file object would be described as three separate objects, each with its own associated metadata. The storage location of the two inner objects would point to the ZIP file, but the ZIP file itself would have only a single composition level \(of zero\) whose format would be “zip.”).freeze],
724
1626
  domain: "premis:ObjectCharacteristics".freeze,
725
- editorialNote: %(Rationale: A file or bitstream can be
726
- encoded with compression, encryption, etc., or bundled with other files or bitstreams into
727
- larger packages. Knowing the order in which these actions are taken is important if the
728
- original object or objects must be recovered.).freeze,
729
1627
  range: "xsd:int".freeze,
730
- "skos:historyNote": "Creation / Maintenance Notes: Composition\n level will generally be supplied by the repository, which should attempt to supply this value\n automatically. If the object was created by the repository, the creating routine knows the\n composition level and can supply this metadata. If the object is being ingested by the\n repository, repository programs will have to attempt to identify the composition level from\n the object itself or from externally supplied metadata.".freeze,
731
- "skos:scopeNote": "Usage Notes: A file or bitstream can be\n subject to multiple encodings that must be decoded in reverse order (highest to lowest). For\n example, file A may be compressed to create file B, which is encrypted to create file C. To\n recreate a copy of the base file A, one would have to unencrypt file C to create file B and\n then uncompress file B to create file A. A compositionLevel of zero indicates that the object\n is a base object and not subject to further decoding, while a level of 1 or higher indicates\n that one or more decodings must be applied. Numbering goes lowest to highest (first encoded =\n 0). 0 is base object; 1-n are subsequent encodings. Use 0 as the default if there is only one\n compositionLevel. When multiple file objects are bundled together as filestreams within a\n package file object (e.g., a ZIP file), the individual filestream objects are not composition\n levels of the package file object. They should be considered separate objects, each with their\n own composition levels. For example, two encrypted files zipped together and stored in an\n archive as one file object would be described as three separate objects, each with its own\n associated metadata. The storage location of the two inner objects would point to the ZIP\n file, but the ZIP file itself would have only a single composition level (of zero) whose\n format would be “zip.”".freeze,
732
1628
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
733
1629
  "vs:term_status": "stable".freeze
734
1630
  property :hasContentLocation,
735
1631
  domain: "premis:Storage".freeze,
736
1632
  range: "premis:ContentLocation".freeze,
737
- "rdfs:seeAlso": "Storage class definition and\n ContentLocation class definition".freeze,
1633
+ "rdfs:seeAlso": "Storage class definition and ContentLocation class definition".freeze,
738
1634
  type: ["owl:FunctionalProperty".freeze, "owl:InverseFunctionalProperty".freeze, "owl:ObjectProperty".freeze],
739
1635
  "vs:term_status": "stable".freeze
740
1636
  property :hasContentLocationType,
741
- comment: [%(Data Constraint: Values are taken from the
742
- SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/contentLocationType).freeze, %(Extensions: One can use its own SKOS
743
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
744
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
745
- definition: %(Definition: The means of referencing the
746
- location of the content.).freeze,
1637
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/contentLocationType).freeze, %(Definition: The means of referencing the location of the content.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze, %(Rationale: To understand the meaning of the value it is necessary to know what location scheme is used.).freeze],
747
1638
  domain: "premis:ContentLocation".freeze,
748
- editorialNote: %(Rationale: To understand the meaning of the
749
- value it is necessary to know what location scheme is used.).freeze,
750
1639
  range: term(
751
1640
  onProperty: "skos:inScheme".freeze,
752
1641
  "owl:hasValue": "http://id.loc.gov/vocabulary/preservation/contentLocationType".freeze,
@@ -755,35 +1644,19 @@ module RDF::Vocab
755
1644
  type: ["owl:FunctionalProperty".freeze, "owl:ObjectProperty".freeze],
756
1645
  "vs:term_status": "stable".freeze
757
1646
  property :hasContentLocationValue,
758
- comment: %(Examples:
759
- http://wwasearch.loc.gov/107th/200212107035/http://house.gov/langevin/ \(file\),
760
- c:\apache2\htdocs\index.html \(file\), 64 [offset from start of file
761
- c:\apache2\htdocs\image\logo.gif] \(bitstream\)).freeze,
762
- definition: %(Definition: The reference to the location of
763
- the content used by the storage system.).freeze,
1647
+ comment: [%(Definition: The reference to the location of the content used by the storage system.).freeze, %(Examples: http://wwasearch.loc.gov/107th/200212107035/http://house.gov/langevin/ \(file\), c:\apache2\htdocs\index.html \(file\), 64 [offset from start of file c:\apache2\htdocs\image\logo.gif] \(bitstream\)).freeze, %(Usage Notes: This could be a fully qualified path and filename, or the information used by a resolution system \(e.g., a handle\) or the native information used by a storage management system. For a bitstream or filestream, this would probably be the reference point and offset of the starting position of the bitstream. It is up to the repository to determine the level of granularity that should be recorded.).freeze],
764
1648
  domain: "premis:ContentLocation".freeze,
765
1649
  range: "xsd:string".freeze,
766
- "skos:scopeNote": "Usage Notes: This could be a fully qualified\n path and filename, or the information used by a resolution system (e.g., a handle) or the\n native information used by a storage management system. For a bitstream or filestream, this\n would probably be the reference point and offset of the starting position of the bitstream. It\n is up to the repository to determine the level of granularity that should be\n recorded.".freeze,
767
1650
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
768
1651
  "vs:term_status": "stable".freeze
769
1652
  property :hasCopyrightJurisdiction,
770
- comment: [%(Data Constraint: Values should be taken
771
- from ISO 3166.).freeze, %(Examples: us, de, be).freeze],
772
- definition: %(Definition: The country whose copyright laws
773
- apply.).freeze,
1653
+ comment: [%(Data Constraint: Values should be taken from ISO 3166.).freeze, %(Definition: The country whose copyright laws apply.).freeze, %(Examples: us, de, be).freeze, %(Rationale: Copyright law can vary from country to country.).freeze],
774
1654
  domain: "premis:CopyrightInformation".freeze,
775
- editorialNote: %(Rationale: Copyright law can vary from
776
- country to country.).freeze,
777
1655
  range: "xsd:string".freeze,
778
1656
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
779
1657
  "vs:term_status": "stable".freeze
780
1658
  property :hasCopyrightStatus,
781
- comment: [%(Data Constraint: Values are taken from the
782
- SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/copyrightStatus).freeze, %(Extensions: One can use its own SKOS
783
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
784
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
785
- definition: %(Definition: A coded designation for the
786
- copyright status of the object at the time the rights statement is recorded.).freeze,
1659
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/copyrightStatus).freeze, %(Definition: A coded designation for the copyright status of the object at the time the rights statement is recorded.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
787
1660
  domain: "premis:CopyrightInformation".freeze,
788
1661
  range: term(
789
1662
  onProperty: "skos:inScheme".freeze,
@@ -793,11 +1666,7 @@ module RDF::Vocab
793
1666
  type: ["owl:FunctionalProperty".freeze, "owl:ObjectProperty".freeze],
794
1667
  "vs:term_status": "stable".freeze
795
1668
  property :hasCopyrightStatusDeterminationDate,
796
- comment: [%(Data Constraint: To aid machine processing,
797
- value should use a structured form: xsd:dateTime).freeze, %(Example:
798
- 2001-10-26T19:32:52+00:00).freeze],
799
- definition: %(Definition: The date that the copyright
800
- status recorded in copyrightStatus was determined.).freeze,
1669
+ comment: [%(Data Constraint: To aid machine processing, value should use a structured form: xsd:dateTime).freeze, %(Definition: The date that the copyright status recorded in copyrightStatus was determined.).freeze, %(Example: 2001-10-26T19:32:52+00:00).freeze],
801
1670
  domain: "premis:CopyrightInformation".freeze,
802
1671
  range: "xsd:dateTime".freeze,
803
1672
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
@@ -805,81 +1674,57 @@ module RDF::Vocab
805
1674
  property :hasCreatingApplication,
806
1675
  domain: "premis:ObjectCharacteristics".freeze,
807
1676
  range: "premis:CreatingApplication".freeze,
808
- "rdfs:seeAlso": "ObjectCharacteristics class definition and\n CreatingApplication class definition".freeze,
1677
+ "rdfs:seeAlso": "ObjectCharacteristics class definition and CreatingApplication class definition".freeze,
809
1678
  type: "owl:ObjectProperty".freeze,
810
1679
  "vs:term_status": "stable".freeze
811
1680
  property :hasCreatingApplicationName,
812
- comment: %(Example: MSWord).freeze,
813
- definition: %(Definition: A designation for the name of
814
- the software program that created the object.).freeze,
1681
+ comment: [%(Definition: A designation for the name of the software program that created the object.).freeze, %(Example: MSWord).freeze, %(Usage Notes: The creatingApplication is the application that created the object in its current format, not the application that created the copy written to storage. For example, if a document is created by Microsoft Word and subsequently copied to archive storage by a repository’s Ingest program, the creatingApplication is Word, not the Ingest program.).freeze],
815
1682
  domain: "premis:CreatingApplication".freeze,
816
1683
  range: "xsd:string".freeze,
817
- "skos:scopeNote": "Usage Notes: The creatingApplication is the\n application that created the object in its current format, not the application that created\n the copy written to storage. For example, if a document is created by Microsoft Word and\n subsequently copied to archive storage by a repository’s Ingest program, the\n creatingApplication is Word, not the Ingest program.".freeze,
818
1684
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
819
1685
  "vs:term_status": "stable".freeze
820
1686
  property :hasCreatingApplicationVersion,
821
- comment: %(Example: 2000).freeze,
822
- definition: %(Definition: The version of the software
823
- program that created the object.).freeze,
1687
+ comment: [%(Definition: The version of the software program that created the object.).freeze, %(Example: 2000).freeze],
824
1688
  domain: "premis:CreatingApplication".freeze,
825
1689
  range: "xsd:string".freeze,
826
1690
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
827
1691
  "vs:term_status": "stable".freeze
828
1692
  property :hasDateCreatedByApplication,
829
- comment: [%(Data Constraint: To aid machine processing,
830
- value should use a structured form: xsd:dateTime).freeze, %(Example:
831
- 2001-10-26T19:32:52+00:00).freeze],
832
- definition: %(Definition: The actual or approximate date
833
- and time the object was created.).freeze,
1693
+ comment: [%(Data Constraint: To aid machine processing, value should use a structured form: xsd:dateTime).freeze, %(Definition: The actual or approximate date and time the object was created.).freeze, %(Example: 2001-10-26T19:32:52+00:00).freeze, %(Usage Notes: Use the most precise date available.
1694
+ This is the date the object was created by the creating application, not the date any copy was made externally or by the repository. For example, if a file is created by Microsoft Word in 2001 and two copies are made in 2003, the dateCreatedByApplication of all three files is 2001. The date a file is written to storage can be recorded as an Event.
1695
+ If the object itself contains internal creation and modification dates, the modification date should be used as dateCreatedByApplication.
1696
+ If the application is a Web harvester capturing an object at a point of time, use for date captured.).freeze],
834
1697
  domain: "premis:CreatingApplication".freeze,
835
1698
  range: "xsd:dateTime".freeze,
836
- "skos:scopeNote": "Usage Notes: Use the most precise date\n available. This is the date the object was created by the creating application, not the date\n any copy was made externally or by the repository. For example, if a file is created by\n Microsoft Word in 2001 and two copies are made in 2003, the dateCreatedByApplication of all\n three files is 2001. The date a file is written to storage can be recorded as an Event. If the\n object itself contains internal creation and modification dates, the modification date should\n be used as dateCreatedByApplication. If the application is a Web harvester capturing an object\n at a point of time, use for date captured.".freeze,
837
1699
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
838
1700
  "vs:term_status": "stable".freeze
839
1701
  property :hasDependency,
840
1702
  domain: "premis:Environment".freeze,
841
1703
  range: "premis:Dependency".freeze,
842
- "rdfs:seeAlso": "Environment class definition and Dependency\n class definition".freeze,
1704
+ "rdfs:seeAlso": "Environment class definition and Dependency class definition".freeze,
843
1705
  type: "owl:ObjectProperty".freeze,
844
1706
  "vs:term_status": "stable".freeze
845
1707
  property :hasDependencyName,
846
- comment: %(Example: Additional Element Set for
847
- Language Corpora).freeze,
848
- definition: %(Definition: A designation for a component or
849
- associated file needed by the representation or file.).freeze,
1708
+ comment: [%(Definition: A designation for a component or associated file needed by the representation or file.).freeze, %(Example: Additional Element Set for Language Corpora).freeze, %(Rationale: It may not be self-evident from the dependencyIdentifier what the name of the object actually is.).freeze],
850
1709
  domain: "premis:Dependency".freeze,
851
- editorialNote: %(Rationale: It may not be self-evident from
852
- the dependencyIdentifier what the name of the object actually is.).freeze,
853
1710
  range: "xsd:string".freeze,
854
1711
  type: "owl:DatatypeProperty".freeze,
855
1712
  "vs:term_status": "stable".freeze
856
1713
  property :hasEndDate,
857
- comment: %(Data Constraint: To aid machine processing,
858
- value should use a structured form: xsd:dateTime).freeze,
859
- definition: %(Definition: The ending date of the
860
- permission granted.).freeze,
1714
+ comment: [%(Data Constraint: To aid machine processing, value should use a structured form: xsd:dateTime).freeze, %(Definition: The ending date of the permission granted.).freeze, %(Usage Notes: Use “0000-00-00T00:00:00+00:00” for an open ended term of grant. Omit endDate if the ending date is unknown or the permission statement applies to many objects with different end dates.).freeze],
861
1715
  domain: "premis:ApplicableDates".freeze,
862
1716
  range: "xsd:dateTime".freeze,
863
- "skos:scopeNote": "Usage Notes: Use “0000-00-00T00:00:00+00:00”\n for an open ended term of grant. Omit endDate if the ending date is unknown or the permission\n statement applies to many objects with different end dates.".freeze,
864
1717
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
865
1718
  "vs:term_status": "stable".freeze
866
1719
  property :hasEnvironment,
867
1720
  domain: "premis:Object".freeze,
868
1721
  range: "premis:Environment".freeze,
869
- "rdfs:seeAlso": "Object class definition and Environment\n class definition".freeze,
1722
+ "rdfs:seeAlso": "Object class definition and Environment class definition".freeze,
870
1723
  type: "owl:ObjectProperty".freeze,
871
1724
  "vs:term_status": "stable".freeze
872
1725
  property :hasEnvironmentCharacteristic,
873
- comment: [%(Data Constraint: Values are taken from the
874
- SKOS vocabulary:
875
- http://id.loc.gov/vocabulary/preservation/environmentCharacteristic).freeze, %(Extensions: One can use its own SKOS
876
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
877
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
878
- definition: %(Definition: An assessment of the extent to
879
- which the described environment supports its purpose.).freeze,
1726
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/environmentCharacteristic).freeze, %(Definition: An assessment of the extent to which the described environment supports its purpose.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze, %(Rationale: If multiple environments are described, this element can help to distinguish among them.).freeze],
880
1727
  domain: "premis:Environment".freeze,
881
- editorialNote: %(Rationale: If multiple environments are
882
- described, this element can help to distinguish among them.).freeze,
883
1728
  range: term(
884
1729
  onProperty: "skos:inScheme".freeze,
885
1730
  "owl:hasValue": "http://id.loc.gov/vocabulary/preservation/environmentCharacteristic".freeze,
@@ -888,28 +1733,16 @@ module RDF::Vocab
888
1733
  type: ["owl:FunctionalProperty".freeze, "owl:ObjectProperty".freeze],
889
1734
  "vs:term_status": "stable".freeze
890
1735
  property :hasEnvironmentNote,
891
- comment: %(Example: This environment assumes that the
892
- PDF will be stored locally and used with a standalone PDF reader.).freeze,
893
- definition: %(Definition: Additional information about the
894
- environment.).freeze,
1736
+ comment: [%(Definition: Additional information about the environment.).freeze, %(Example: This environment assumes that the PDF will be stored locally
1737
+ and used with a standalone PDF reader.).freeze, %(Rationale: There may be a need to give a textual description of the environment for additional explanation.).freeze, %(Usage Notes: This note could be used to record the context of the environment information. For example, if a file can be rendered through a PC client application or through a browser with a plug-in, this note could be used to identify which situation applies.
1738
+ The note should not be used for a textual description of environment information recorded more rigorously elsewhere.).freeze],
895
1739
  domain: "premis:Environment".freeze,
896
- editorialNote: %(Rationale: There may be a need to give a
897
- textual description of the environment for additional explanation.).freeze,
898
1740
  range: "xsd:string".freeze,
899
- "skos:scopeNote": "Usage Notes: This note could be used to\n record the context of the environment information. For example, if a file can be rendered\n through a PC client application or through a browser with a plug-in, this note could be used\n to identify which situation applies. The note should not be used for a textual description of\n environment information recorded more rigorously elsewhere.".freeze,
900
1741
  type: "owl:DatatypeProperty".freeze,
901
1742
  "vs:term_status": "stable".freeze
902
1743
  property :hasEnvironmentPurpose,
903
- comment: [%(Data Constraint: Values are taken from the
904
- SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/environmentPurpose).freeze, %(Extensions: One can use its own SKOS
905
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
906
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
907
- definition: %(Definition: The use\(s\) supported by the
908
- specified environment.).freeze,
1744
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/environmentPurpose).freeze, %(Definition: The use\(s\) supported by the specified environment.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze, %(Rationale: Different environments can support different uses of objects. For example, the environment needed to edit and modify a file can be quite different than the environment needed to render it.).freeze],
909
1745
  domain: "premis:Environment".freeze,
910
- editorialNote: %(Rationale: Different environments can
911
- support different uses of objects. For example, the environment needed to edit and modify a
912
- file can be quite different than the environment needed to render it.).freeze,
913
1746
  range: term(
914
1747
  onProperty: "skos:inScheme".freeze,
915
1748
  "owl:hasValue": "http://id.loc.gov/vocabulary/preservation/environmentPurpose".freeze,
@@ -918,82 +1751,55 @@ module RDF::Vocab
918
1751
  type: "owl:ObjectProperty".freeze,
919
1752
  "vs:term_status": "stable".freeze
920
1753
  property :hasEvent,
921
- definition: %(Definition: The event associated with the
922
- object or an agent.).freeze,
1754
+ comment: [%(Definition: The event associated with the object or an agent.).freeze, %(Usage Notes: Use to link to events that are not associated with relationships between objects, such as format validation, virus checking, etc.).freeze],
923
1755
  domain: term(
924
1756
  type: "owl:Class".freeze,
925
1757
  unionOf: list("premis:Agent".freeze, "premis:Object".freeze)
926
1758
  ),
927
1759
  range: "premis:Event".freeze,
928
- "rdfs:seeAlso": "Object class definition, the Agent class\n Definition and Event class definition".freeze,
929
- "skos:scopeNote": "Usage Notes: Use to link to events that are\n not associated with relationships between objects, such as format validation, virus checking,\n etc.".freeze,
1760
+ "rdfs:seeAlso": "Object class definition, the Agent class Definition and Event class definition".freeze,
930
1761
  type: "owl:ObjectProperty".freeze,
931
1762
  "vs:term_status": "stable".freeze
932
1763
  property :hasEventDateTime,
933
- comment: [%(Data Constraint: To aid machine processing,
934
- value should use a structured form: xsd:dateTime).freeze, %(Example:
935
- 2001-10-26T19:32:52+00:00).freeze],
936
- definition: %(Definition: The single date and time, or
937
- date and time range, at or during which the event occurred.).freeze,
1764
+ comment: [%(Data Constraint: To aid machine processing, value should use a structured form: xsd:dateTime).freeze, %(Definition: The single date and time, or date and time range, at or during which the event occurred.).freeze, %(Example: 2001-10-26T19:32:52+00:00).freeze, %(Usage Notes: Recommended practice is to record the most specific time possible and to designate the time zone.).freeze],
938
1765
  domain: "premis:Event".freeze,
939
1766
  range: "xsd:dateTime".freeze,
940
- "skos:scopeNote": "Usage Notes: Recommended practice is to\n record the most specific time possible and to designate the time zone.".freeze,
941
1767
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
942
1768
  "vs:term_status": "stable".freeze
943
1769
  property :hasEventDetail,
944
- comment: %(Examples: Object permanently withdrawn by
945
- request of Caroline Hunt, Program=“MIGJP2JP2K”; version=“2.2”).freeze,
946
- definition: %(Definition: Additional information about the
947
- event.).freeze,
1770
+ comment: [%(Definition: Additional information about the event.).freeze, %(Examples: Object permanently withdrawn by request of Caroline Hunt,
1771
+ Program=“MIGJP2JP2K”; version=“2.2”).freeze, %(Usage Notes: eventDetail is not intended to be processed by machine. It may record any information about an event and/or point to information stored elsewhere.).freeze],
948
1772
  domain: "premis:Event".freeze,
949
1773
  range: "xsd:string".freeze,
950
- "skos:scopeNote": "Usage Notes: eventDetail is not intended to\n be processed by machine. It may record any information about an event and/or point to\n information stored elsewhere.".freeze,
951
1774
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
952
1775
  "vs:term_status": "stable".freeze
953
1776
  property :hasEventOutcome,
954
- comment: [%(Data Constraint: Value should be taken from
955
- a controlled vocabulary.).freeze, %(Examples: 00 [a code meaning “action
956
- successfully completed”], CV-01 [a code meaning “checksum validated”]).freeze],
957
- definition: %(Definition: A categorization of the overall
958
- result of the event in terms of success, partial success, or failure.).freeze,
1777
+ comment: [%(Data Constraint: Value should be taken from a controlled vocabulary.).freeze, %(Definition: A categorization of the overall result of the event in terms of success, partial success, or failure.).freeze, %(Examples: 00 [a code meaning “action successfully completed”], CV-01 [a code meaning “checksum validated”]).freeze, %(Rationale: A coded way of representing the outcome of an event may be useful for machine processing and reporting. If, for example, a fixity check fails, the event record provides both an actionable and a permanent record.).freeze, %(Usage Notes: Recommended practice is to use a controlled vocabulary that a system can act upon automatically. More detail about the outcome may be recorded in eventOutcomeDetail.
1778
+ Recommended practice is to define events with sufficient granularity that each event has a single outcome.).freeze],
959
1779
  domain: "premis:EventOutcomeInformation".freeze,
960
- editorialNote: %(Rationale: A coded way of representing the
961
- outcome of an event may be useful for machine processing and reporting. If, for example, a
962
- fixity check fails, the event record provides both an actionable and a permanent
963
- record.).freeze,
964
1780
  range: "xsd:string".freeze,
965
- "skos:scopeNote": "Usage Notes: Recommended practice is to use\n a controlled vocabulary that a system can act upon automatically. More detail about the\n outcome may be recorded in eventOutcomeDetail. Recommended practice is to define events with\n sufficient granularity that each event has a single outcome.".freeze,
966
1781
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
967
1782
  "vs:term_status": "stable".freeze
968
1783
  property :hasEventOutcomeDetail,
969
1784
  domain: "premis:EventOutcomeInformation".freeze,
970
1785
  range: "premis:EventOutcomeDetail".freeze,
971
- "rdfs:seeAlso": "EventOutcomeInformation class definition\n and EventOutcomeDetail class definition".freeze,
1786
+ "rdfs:seeAlso": "EventOutcomeInformation class definition and EventOutcomeDetail class definition".freeze,
972
1787
  type: "owl:ObjectProperty".freeze,
973
1788
  "vs:term_status": "stable".freeze
974
1789
  property :hasEventOutcomeDetailNote,
975
- comment: %(Examples: LZW compressed file, Non-standard
976
- tags found in header).freeze,
977
- definition: %(Definition: A detailed description of the
978
- result or product of the event in textual form.).freeze,
1790
+ comment: [%(Definition: A detailed description of the result or product of the event in textual form.).freeze, %(Examples: LZW compressed file, Non-standard tags found in header).freeze, %(Rationale: Additional information in textual form may be needed about the outcome of the event.).freeze],
979
1791
  domain: "premis:EventOutcomeDetail".freeze,
980
- editorialNote: %(Rationale: Additional information in textual
981
- form may be needed about the outcome of the event.).freeze,
982
1792
  range: "xsd:string".freeze,
983
1793
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
984
1794
  "vs:term_status": "stable".freeze
985
1795
  property :hasEventOutcomeInformation,
986
1796
  domain: "premis:Event".freeze,
987
1797
  range: "premis:EventOutcomeInformation".freeze,
988
- "rdfs:seeAlso": "Event class definition and\n EventOutcomeInformation class definition".freeze,
1798
+ "rdfs:seeAlso": "Event class definition and EventOutcomeInformation class definition".freeze,
989
1799
  type: "owl:ObjectProperty".freeze,
990
1800
  "vs:term_status": "stable".freeze
991
1801
  property :hasEventRelatedAgent,
992
- comment: [%(Extensions: One can extend this
993
- property to use more fine grained properties by defining the fine grained properties as
994
- subproperties of this property.).freeze, %(This propety links a Event
995
- instance to an Agent instance. Via this property a distinction can be made in the linkingAgent
996
- properties based on the domain.).freeze],
1802
+ comment: [%(Extensions: One can extend this property to use more fine grained properties by defining the fine grained properties as subproperties of this property.).freeze, %(This propety links a Event instance to an Agent instance. Via this property a distinction can be made in the linkingAgent properties based on the domain.).freeze],
997
1803
  domain: "premis:Event".freeze,
998
1804
  range: "premis:Agent".freeze,
999
1805
  "rdfs:seeAlso": "http://id.loc.gov/vocabulary/preservation/eventRelatedAgentRole".freeze,
@@ -1001,30 +1807,16 @@ module RDF::Vocab
1001
1807
  type: "owl:ObjectProperty".freeze,
1002
1808
  "vs:term_status": "unstable".freeze
1003
1809
  property :hasEventRelatedObject,
1004
- comment: %(Extensions: One can extend this
1005
- property to use more fine grained properties by defining the fine grained properties as
1006
- subproperties of this property.).freeze,
1007
- definition: %(Definition: Information about an object
1008
- associated with an event.).freeze,
1810
+ comment: [%(Definition: Information about an object associated with an event.).freeze, %(Extensions: One can extend this property to use more fine grained properties by defining the fine grained properties as subproperties of this property.).freeze, %(Rationale: Digital provenance often requires that relationships between objects and events are documented.).freeze],
1009
1811
  domain: "premis:Event".freeze,
1010
- editorialNote: %(Rationale: Digital provenance often requires
1011
- that relationships between objects and events are documented.).freeze,
1012
1812
  range: "premis:Object".freeze,
1013
- "rdfs:seeAlso": ["Event class definition and Object class\n definition".freeze, "http://id.loc.gov/vocabulary/preservation/eventRelatedObjectRole".freeze],
1813
+ "rdfs:seeAlso": ["Event class definition and Object class definition".freeze, "http://id.loc.gov/vocabulary/preservation/eventRelatedObjectRole".freeze],
1014
1814
  subPropertyOf: "premis:hasObject".freeze,
1015
1815
  type: "owl:ObjectProperty".freeze,
1016
1816
  "vs:term_status": "stable".freeze
1017
1817
  property :hasEventType,
1018
- comment: [%(Data Constraint: Values are taken from the
1019
- SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/eventType).freeze, %(Extensions: One can use its own SKOS
1020
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
1021
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
1022
- definition: %(Definition: A categorization of the nature
1023
- of the event.).freeze,
1818
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/eventType).freeze, %(Definition: A categorization of the nature of the event.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze, %(Rationale: Categorizing events will aid the preservation repository in machine processing of event information, particularly in reporting.).freeze],
1024
1819
  domain: "premis:Event".freeze,
1025
- editorialNote: %(Rationale: Categorizing events will aid the
1026
- preservation repository in machine processing of event information, particularly in
1027
- reporting.).freeze,
1028
1820
  range: term(
1029
1821
  onProperty: "skos:inScheme".freeze,
1030
1822
  "owl:hasValue": "http://id.loc.gov/vocabulary/preservation/eventType".freeze,
@@ -1035,7 +1827,7 @@ module RDF::Vocab
1035
1827
  property :hasFixity,
1036
1828
  domain: "premis:ObjectCharacteristics".freeze,
1037
1829
  range: "premis:Fixity".freeze,
1038
- "rdfs:seeAlso": "ObjectCharacteristics class definition and\n Fixity class definition".freeze,
1830
+ "rdfs:seeAlso": "ObjectCharacteristics class definition and Fixity class definition".freeze,
1039
1831
  type: ["owl:InverseFunctionalProperty".freeze, "owl:ObjectProperty".freeze],
1040
1832
  "vs:term_status": "stable".freeze
1041
1833
  property :hasFormat,
@@ -1044,76 +1836,47 @@ module RDF::Vocab
1044
1836
  type: "owl:Class".freeze,
1045
1837
  unionOf: list("premis:Format".freeze, "http://reference.data.gov.uk/technical-registry/file-format".freeze, "http://www.udfr.org/onto#AbstractFormat".freeze)
1046
1838
  ),
1047
- "rdfs:seeAlso": "ObjectCharacteristics class definition and\n Format class definition. Next to the premis:Format class this property can also link to a\n pronom:file-format or udfr:AbstractFormat .".freeze,
1839
+ "rdfs:seeAlso": "ObjectCharacteristics class definition and Format class definition. Next to the premis:Format class this property can also link to a pronom:file-format or udfr:AbstractFormat .".freeze,
1048
1840
  type: "owl:ObjectProperty".freeze,
1049
1841
  "vs:term_status": "stable".freeze
1050
1842
  property :hasFormatDesignation,
1051
1843
  domain: "premis:Format".freeze,
1052
1844
  range: "premis:FormatDesignation".freeze,
1053
- "rdfs:seeAlso": "Format class definition and\n FormatDesignation class definition".freeze,
1845
+ "rdfs:seeAlso": "Format class definition and FormatDesignation class definition".freeze,
1054
1846
  type: ["owl:FunctionalProperty".freeze, "owl:ObjectProperty".freeze],
1055
1847
  "vs:term_status": "stable".freeze
1056
1848
  property :hasFormatName,
1057
- comment: [%(Data Constraint: Value should be taken from
1058
- a controlled vocabulary.).freeze, %(Examples: Text/sgml, image/tiff/geotiff,
1059
- Adobe PDF, DES, PGP, base64, unknown, LaTex).freeze],
1060
- definition: %(Definition: A designation of the format of
1061
- the file or bitstream.).freeze,
1849
+ comment: [%(Data Constraint: Value should be taken from a controlled vocabulary.).freeze, %(Definition: A designation of the format of the file or bitstream.).freeze, %(Examples: Text/sgml, image/tiff/geotiff, Adobe PDF, DES, PGP, base64, unknown, LaTex).freeze, %(Usage Notes: For unidentified formats, formatName may be recorded as “unknown”.).freeze],
1062
1850
  domain: "premis:FormatDesignation".freeze,
1063
1851
  range: "xsd:string".freeze,
1064
- "skos:scopeNote": "Usage Notes: For unidentified formats,\n formatName may be recorded as “unknown”.".freeze,
1065
1852
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1066
1853
  "vs:term_status": "stable".freeze
1067
1854
  property :hasFormatNote,
1068
- comment: %(Examples: tentative identification,
1069
- disjunction, multiple format identifications found).freeze,
1070
- definition: %(Definition: Additional information about
1071
- format.).freeze,
1855
+ comment: [%(Definition: Additional information about format.).freeze, %(Examples: tentative identification, disjunction, multiple format identifications found).freeze, %(Rationale: Qualifying information may be needed to supplement format designation and registry information or record a status for identification.).freeze, %(Usage Notes: The formatNote may contain free text, a reference pointer, or a value from a controlled list.).freeze],
1072
1856
  domain: "premis:Format".freeze,
1073
- editorialNote: %(Rationale: Qualifying information may be
1074
- needed to supplement format designation and registry information or record a status for
1075
- identification.).freeze,
1076
1857
  range: "xsd:string".freeze,
1077
- "skos:scopeNote": "Usage Notes: The formatNote may contain free\n text, a reference pointer, or a value from a controlled list.".freeze,
1078
1858
  type: "owl:DatatypeProperty".freeze,
1079
1859
  "vs:term_status": "stable".freeze
1080
1860
  property :hasFormatRegistry,
1081
1861
  domain: "premis:Format".freeze,
1082
1862
  range: "premis:FormatRegistry".freeze,
1083
- "rdfs:seeAlso": "Format class definition and FormatRegistry\n class definition".freeze,
1863
+ "rdfs:seeAlso": "Format class definition and FormatRegistry class definition".freeze,
1084
1864
  type: ["owl:FunctionalProperty".freeze, "owl:ObjectProperty".freeze],
1085
1865
  "vs:term_status": "stable".freeze
1086
1866
  property :hasFormatRegistryKey,
1087
- comment: %(Examples: info:gdfr/fred/f/tiff,
1088
- TIFF/6.0).freeze,
1089
- definition: %(Definition: The unique key used to reference
1090
- an entry for this format in a format registry.).freeze,
1867
+ comment: [%(Definition: The unique key used to reference an entry for this format in a format registry.).freeze, %(Examples: info:gdfr/fred/f/tiff, TIFF/6.0).freeze],
1091
1868
  domain: "premis:FormatRegistry".freeze,
1092
1869
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1093
1870
  "vs:term_status": "stable".freeze
1094
1871
  property :hasFormatRegistryName,
1095
- comment: %(Examples: PRONOM,
1096
- www.nationalarchives.gov.uk/pronom, Representation Information Registry Repository, FRED: A
1097
- format registry demonstration, release 0.07).freeze,
1098
- definition: %(Definition: A designation identifying the
1099
- referenced format registry.).freeze,
1872
+ comment: [%(Definition: A designation identifying the referenced format registry.).freeze, %(Examples: PRONOM, www.nationalarchives.gov.uk/pronom, Representation Information Registry Repository, FRED: A format registry demonstration, release 0.07).freeze, %(Usage Notes: This can be a formal name, internally used name, or URI.).freeze],
1100
1873
  domain: "premis:FormatRegistry".freeze,
1101
1874
  range: "xsd:string".freeze,
1102
- "skos:scopeNote": "Usage Notes: This can be a formal name,\n internally used name, or URI.".freeze,
1103
1875
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1104
1876
  "vs:term_status": "stable".freeze
1105
1877
  property :hasFormatRegistryRole,
1106
- comment: [%(Data Constraint: Values are taken from the
1107
- SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/formatRegistryRole).freeze, %(Extensions: One can use its own SKOS
1108
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
1109
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
1110
- definition: %(Definition: The purpose or expected use of
1111
- the registry.).freeze,
1878
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/formatRegistryRole).freeze, %(Definition: The purpose or expected use of the registry.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze, %(Rationale: The same format may be defined in different registries for different purposes. For example, one registry may give detailed format specifications while another has profile information. If multiple registries are recorded, this semantic unit can be used to distinguish among them.).freeze],
1112
1879
  domain: "premis:FormatRegistry".freeze,
1113
- editorialNote: %(Rationale: The same format may be defined in
1114
- different registries for different purposes. For example, one registry may give detailed
1115
- format specifications while another has profile information. If multiple registries are
1116
- recorded, this semantic unit can be used to distinguish among them.).freeze,
1117
1880
  range: term(
1118
1881
  onProperty: "skos:inScheme".freeze,
1119
1882
  "owl:hasValue": "http://id.loc.gov/vocabulary/preservation/formatRegistryRole".freeze,
@@ -1122,54 +1885,32 @@ module RDF::Vocab
1122
1885
  type: ["owl:FunctionalProperty".freeze, "owl:ObjectProperty".freeze],
1123
1886
  "vs:term_status": "stable".freeze
1124
1887
  property :hasFormatVersion,
1125
- comment: %(Examples: 6.0, 2003).freeze,
1126
- definition: %(Definition: The version of the format named
1127
- in formatName.).freeze,
1888
+ comment: [%(Definition: The version of the format named in formatName.).freeze, %(Examples: 6.0, 2003).freeze, %(Rationale: Many authority lists of format names are not granular enough to indicate version, for example, MIME Media types.).freeze, %(Usage Notes: If the format is versioned, formatVersion should be recorded. It can be either a numeric or chronological designation.).freeze],
1128
1889
  domain: "premis:FormatDesignation".freeze,
1129
- editorialNote: %(Rationale: Many authority lists of format
1130
- names are not granular enough to indicate version, for example, MIME Media
1131
- types.).freeze,
1132
1890
  range: "xsd:string".freeze,
1133
- "skos:scopeNote": "Usage Notes: If the format is versioned,\n formatVersion should be recorded. It can be either a numeric or chronological\n designation.".freeze,
1134
1891
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1135
1892
  "vs:term_status": "stable".freeze
1136
1893
  property :hasHardware,
1137
1894
  domain: "premis:Environment".freeze,
1138
1895
  range: "premis:Hardware".freeze,
1139
- "rdfs:seeAlso": "Environment class definition and Hardware\n class definition".freeze,
1896
+ "rdfs:seeAlso": "Environment class definition and Hardware class definition".freeze,
1140
1897
  type: "owl:ObjectProperty".freeze,
1141
1898
  "vs:term_status": "stable".freeze
1142
1899
  property :hasHardwareName,
1143
- comment: %(Examples: Intel Pentium III, 1 GB DRAM,
1144
- Windows XPcompatible joystick).freeze,
1145
- definition: %(Definition: Manufacturer, model, and version
1146
- \(if applicable\) of the hardware.).freeze,
1900
+ comment: [%(Definition: Manufacturer, model, and version \(if applicable\) of the hardware.).freeze, %(Examples: Intel Pentium III, 1 GB DRAM, Windows XPcompatible joystick).freeze, %(Usage Notes: Include manufacturer when this helps to identify or disambiguate the product.
1901
+ Include version for firmware or other components where that information is pertinent.).freeze],
1147
1902
  domain: "premis:Hardware".freeze,
1148
1903
  range: "xsd:string".freeze,
1149
- "skos:scopeNote": "Usage Notes: Include manufacturer when this\n helps to identify or disambiguate the product. Include version for firmware or other\n components where that information is pertinent.".freeze,
1150
1904
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1151
1905
  "vs:term_status": "stable".freeze
1152
1906
  property :hasHardwareOtherInformation,
1153
- comment: %(Examples: 32MB minimum, Required RAM for
1154
- Apache is unknown).freeze,
1155
- definition: %(Definition: Additional requirements or
1156
- instructions related to the hardware referenced in hwName.).freeze,
1907
+ comment: [%(Definition: Additional requirements or instructions related to the hardware referenced in hwName.).freeze, %(Examples: 32MB minimum, Required RAM for Apache is unknown).freeze, %(Rationale: For hardware, the amount of computing resource needed \(such as memory, storage, processor speed, etc.\) may need to be documented. In addition, more detailed instructions may be needed to install and/or operate the hardware.).freeze, %(Usage Notes: This could be an identifier or URI used to point to hardware documentation.).freeze],
1157
1908
  domain: "premis:Hardware".freeze,
1158
- editorialNote: %(Rationale: For hardware, the amount of
1159
- computing resource needed \(such as memory, storage, processor speed, etc.\) may need to be
1160
- documented. In addition, more detailed instructions may be needed to install and/or operate
1161
- the hardware.).freeze,
1162
1909
  range: "xsd:string".freeze,
1163
- "skos:scopeNote": "Usage Notes: This could be an identifier or\n URI used to point to hardware documentation.".freeze,
1164
1910
  type: "owl:DatatypeProperty".freeze,
1165
1911
  "vs:term_status": "stable".freeze
1166
1912
  property :hasHardwareType,
1167
- comment: [%(Data Constraint: Values are taken from the
1168
- SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/hardwareType).freeze, %(Extensions: One can use its own SKOS
1169
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
1170
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
1171
- definition: %(Definition: Class or category of the
1172
- hardware.).freeze,
1913
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/hardwareType).freeze, %(Definition: Class or category of the hardware.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
1173
1914
  domain: "premis:Hardware".freeze,
1174
1915
  range: term(
1175
1916
  onProperty: "skos:inScheme".freeze,
@@ -1183,49 +1924,29 @@ module RDF::Vocab
1183
1924
  type: "owl:Class".freeze,
1184
1925
  unionOf: list("premis:Agent".freeze, "premis:Dependency".freeze, "premis:Event".freeze, "premis:LicenseInformation".freeze, "premis:Object".freeze, "premis:RightsDocumentation".freeze, "premis:RightsStatement".freeze)
1185
1926
  ),
1186
- "rdfs:seeAlso": "Identifier class\n definition".freeze,
1927
+ "rdfs:seeAlso": "Identifier class definition".freeze,
1187
1928
  type: ["owl:InverseFunctionalProperty".freeze, "owl:ObjectProperty".freeze],
1188
1929
  "vs:term_status": "stable".freeze
1189
1930
  property :hasIdentifierType,
1190
- comment: [%(Data Constraint: Value should be taken from
1191
- controlled vocabulary.).freeze, %(Examples: DLC, DRS,
1192
- hdl:4263537).freeze],
1193
- definition: %(Definition: A designation of the domain
1194
- within which the identifier is unique.).freeze,
1931
+ comment: [%(Data Constraint: Value should be taken from controlled vocabulary.).freeze, %(Definition: A designation of the domain within which the identifier is unique.).freeze, %(Examples: DLC, DRS, hdl:4263537).freeze, %(Rationale: Identifier values cannot be assumed to be unique across domains. The combination of identifierType and identifierValue should ensure uniqueness.).freeze, %(Usage Notes: The type of the identifier may be implicit within the repository as long it can be explicitly communicated when the item is disseminated outside of it.).freeze],
1195
1932
  domain: "premis:Identifier".freeze,
1196
- editorialNote: %(Rationale: Identifier values cannot be
1197
- assumed to be unique across domains. The combination of identifierType and identifierValue
1198
- should ensure uniqueness.).freeze,
1199
1933
  range: "xsd:string".freeze,
1200
- "skos:scopeNote": "Usage Notes: The type of the identifier may\n be implicit within the repository as long it can be explicitly communicated when the item is\n disseminated outside of it.".freeze,
1201
1934
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1202
1935
  "vs:term_status": "stable".freeze
1203
1936
  property :hasIdentifierValue,
1204
- comment: [%(Defnition: The value of the
1205
- Identifier.).freeze, %(Examples: 0000000312 \(Representation\),
1206
- IU2440 \(File\), WAC1943.56 \(File\), http://nrs.harvard.edu/urn-3:FHCL.Loeb:sal \(File\), IU2440-1
1207
- \(Bitstream\)).freeze],
1937
+ comment: [%(Defnition: The value of the Identifier.).freeze, %(Examples: 0000000312 \(Representation\), IU2440 \(File\), WAC1943.56 \(File\), http://nrs.harvard.edu/urn-3:FHCL.Loeb:sal \(File\), IU2440-1 \(Bitstream\)).freeze],
1208
1938
  domain: "premis:Identifier".freeze,
1209
1939
  range: "xsd:string".freeze,
1210
1940
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1211
1941
  "vs:term_status": "stable".freeze
1212
1942
  property :hasInhibitorKey,
1213
- comment: %(Example: [DES decryption
1214
- key]).freeze,
1215
- definition: %(Definition: The decryption key or
1216
- password.).freeze,
1943
+ comment: [%(Definition: The decryption key or password.).freeze, %(Example: [DES decryption key]).freeze, %(Usage Notes: The key should be provided if known. However, it is not advisable to actually store the inhibitorKey in plain text in an unsecure database.).freeze],
1217
1944
  domain: "premis:Inhibitors".freeze,
1218
1945
  range: "xsd:string".freeze,
1219
- "skos:scopeNote": "Usage Notes: The key should be provided if\n known. However, it is not advisable to actually store the inhibitorKey in plain text in an\n unsecure database.".freeze,
1220
1946
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1221
1947
  "vs:term_status": "stable".freeze
1222
1948
  property :hasInhibitorTarget,
1223
- comment: [%(Data Constraint: Values are taken from the
1224
- SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/inhibitorTarget).freeze, %(Extensions: One can use its own SKOS
1225
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
1226
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
1227
- definition: %(Definition: The content or function
1228
- protected by the inhibitor.).freeze,
1949
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/inhibitorTarget).freeze, %(Definition: The content or function protected by the inhibitor.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
1229
1950
  domain: "premis:Inhibitors".freeze,
1230
1951
  range: term(
1231
1952
  onProperty: "skos:inScheme".freeze,
@@ -1235,12 +1956,7 @@ module RDF::Vocab
1235
1956
  type: "owl:ObjectProperty".freeze,
1236
1957
  "vs:term_status": "stable".freeze
1237
1958
  property :hasInhibitorType,
1238
- comment: [%(Data Constraint: Values are taken from the
1239
- SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/inhibitorType).freeze, %(Extensions: One can use its own SKOS
1240
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
1241
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
1242
- definition: %(Definition: The inhibitor method
1243
- employed.).freeze,
1959
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/inhibitorType).freeze, %(Definition: The inhibitor method employed.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
1244
1960
  domain: "premis:Inhibitors".freeze,
1245
1961
  range: term(
1246
1962
  onProperty: "skos:inScheme".freeze,
@@ -1252,49 +1968,34 @@ module RDF::Vocab
1252
1968
  property :hasInhibitors,
1253
1969
  domain: "premis:ObjectCharacteristics".freeze,
1254
1970
  range: "premis:Inhibitors".freeze,
1255
- "rdfs:seeAlso": "ObjectCharacteristics class definition and\n Inhibitors class definition".freeze,
1971
+ "rdfs:seeAlso": "ObjectCharacteristics class definition and Inhibitors class definition".freeze,
1256
1972
  type: "owl:ObjectProperty".freeze,
1257
1973
  "vs:term_status": "stable".freeze
1258
1974
  property :hasIntellectualEntity,
1259
- definition: %(Definition: An intellectual entity
1260
- associated with the object.).freeze,
1975
+ comment: [%(Definition: An intellectual entity associated with the object.).freeze, %(Usage Notes: Use to link to an intellectual entity that is related to the object. This may be a link to descriptive metadata that describes the intellectual entity or some other surrogate for it that can be referenced. This link will likely be to an identifier of an object that is at a higher conceptual level than the object for which the metadata is provided, for example, to a collection or parent object.).freeze],
1261
1976
  domain: "premis:Object".freeze,
1262
1977
  range: "premis:IntellectualEntity".freeze,
1263
- "skos:scopeNote": "Usage Notes: Use to link to an intellectual\n entity that is related to the object. This may be a link to descriptive metadata that\n describes the intellectual entity or some other surrogate for it that can be referenced. This\n link will likely be to an identifier of an object that is at a higher conceptual level than\n the object for which the metadata is provided, for example, to a collection or parent\n object.".freeze,
1264
1978
  type: "owl:ObjectProperty".freeze,
1265
1979
  "vs:term_status": "stable".freeze
1266
1980
  property :hasKeyInformation,
1267
1981
  domain: "premis:Signature".freeze,
1268
- "rdfs:seeAlso": "Signature class definition and\n KeyInformation class definition".freeze,
1982
+ "rdfs:seeAlso": "Signature class definition and KeyInformation class definition".freeze,
1269
1983
  type: ["owl:FunctionalProperty".freeze, "owl:ObjectProperty".freeze],
1270
1984
  "vs:term_status": "unstable".freeze
1271
1985
  property :hasLicenseTerms,
1272
- definition: %(Definition: Text describing the license or
1273
- agreement by which permission was granted.).freeze,
1986
+ comment: [%(Definition: Text describing the license or agreement by which permission was granted.).freeze, %(Usage Notes: This could contain the actual text of the license or agreement or a paraphrase or summary.).freeze],
1274
1987
  domain: "premis:LicenseInformation".freeze,
1275
1988
  range: "xsd:string".freeze,
1276
- "skos:scopeNote": "Usage Notes: This could contain the actual\n text of the license or agreement or a paraphrase or summary.".freeze,
1277
1989
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1278
1990
  "vs:term_status": "stable".freeze
1279
1991
  property :hasMessageDigest,
1280
- comment: %(Example:
1281
- 7c9b35da4f2ebd436f1cf88e5a39b3a257edf4a22be3c955ac49da2e2107b67a1924419563).freeze,
1282
- definition: %(Definition: The output of the message digest
1283
- algorithm.).freeze,
1992
+ comment: [%(Definition: The output of the message digest algorithm.).freeze, %(Example: 7c9b35da4f2ebd436f1cf88e5a39b3a257edf4a22be3c955ac49da2e2107b67a1924419563).freeze, %(Rationale: This must be stored so that it can be compared in future fixity checks.).freeze],
1284
1993
  domain: "premis:Fixity".freeze,
1285
- editorialNote: %(Rationale: This must be stored so that it
1286
- can be compared in future fixity checks.).freeze,
1287
1994
  range: "xsd:string".freeze,
1288
1995
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1289
1996
  "vs:term_status": "stable".freeze
1290
1997
  property :hasMessageDigestAlgorithm,
1291
- comment: [%(Data Constraint: Values are taken from the
1292
- SKOS vocabulary:
1293
- http://id.loc.gov/vocabulary/preservation/cryptographicHashFunctions).freeze, %(Extensions: One can use its own SKOS
1294
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
1295
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
1296
- definition: %(Definition: The specific algorithm used to
1297
- construct the message digest for the digital object.).freeze,
1998
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/cryptographicHashFunctions).freeze, %(Definition: The specific algorithm used to construct the message digest for the digital object.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
1298
1999
  domain: "premis:Fixity".freeze,
1299
2000
  range: term(
1300
2001
  onProperty: "skos:inScheme".freeze,
@@ -1304,41 +2005,19 @@ module RDF::Vocab
1304
2005
  type: ["owl:FunctionalProperty".freeze, "owl:ObjectProperty".freeze],
1305
2006
  "vs:term_status": "stable".freeze
1306
2007
  property :hasMessageDigestOriginator,
1307
- comment: %(Examples: DRS, A0000978).freeze,
1308
- definition: %(Definition: The agent that created the
1309
- original message digest that is compared in a fixity check.).freeze,
2008
+ comment: [%(Creation / Maintenance Notes: If the calculation of the initial message digest is treated by the repository as an Event, this information could be obtained from an Event record.).freeze, %(Definition: The agent that created the original message digest that is compared in a fixity check.).freeze, %(Examples: DRS, A0000978).freeze, %(Rationale: A preservation repository may ingest files that have had message digests calculated by the submitter; checking these ensures that the file as received is the same as the file as sent. The repository may also ingest files that do not have message digests, and so must calculate the initial value upon ingest. It can be useful to know who calculated the initial value of the message digest.).freeze, %(Usage Notes: The originator of the message digest could be represented by a string representing the agent \(e.g., “NRS” referring to the archive itself\) or a pointer to an agent description \(e.g., “A0000987” taken here to be an agentIdentifierValue\).).freeze],
1310
2009
  domain: "premis:Fixity".freeze,
1311
- editorialNote: %(Rationale: A preservation repository may
1312
- ingest files that have had message digests calculated by the submitter; checking these ensures
1313
- that the file as received is the same as the file as sent. The repository may also ingest
1314
- files that do not have message digests, and so must calculate the initial value upon ingest.
1315
- It can be useful to know who calculated the initial value of the message
1316
- digest.).freeze,
1317
2010
  range: "xsd:string".freeze,
1318
- "skos:historyNote": "Creation / Maintenance Notes: If the\n calculation of the initial message digest is treated by the repository as an Event, this\n information could be obtained from an Event record.".freeze,
1319
- "skos:scopeNote": "Usage Notes: The originator of the message\n digest could be represented by a string representing the agent (e.g., “NRS” referring to the\n archive itself) or a pointer to an agent description (e.g., “A0000987” taken here to be an\n agentIdentifierValue).".freeze,
1320
2011
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1321
2012
  "vs:term_status": "stable".freeze
1322
2013
  property :hasObject,
1323
- comment: %(Extensions: One can extend this
1324
- property to use more fine grained properties by defining the fine grained properties as
1325
- subproperties of this property.).freeze,
1326
- definition: %(Definition: Information about an object
1327
- associated with an event or rightsstatement.).freeze,
2014
+ comment: [%(Definition: Information about an object associated with an event or rightsstatement.).freeze, %(Extensions: One can extend this property to use more fine grained properties by defining the fine grained properties as subproperties of this property.).freeze, %(Rationale: Digital provenance often requires that relationships between objects and events are documented. / Rights statements must be associated with the objects to which they pertain, either by linking from the rights statement to the object\(s\) or by linking from the object\(s\) to the rights statement. This provides the mechanism for the link from the rights statement to an object. For denoting the role of the object, when related to an event,one can extend this ontology be defining your own subproperties, such as those given by http://id.loc.gov/vocabulary/preservation/eventRelatedObjectRole.).freeze],
1328
2015
  domain: term(
1329
2016
  type: "owl:Class".freeze,
1330
2017
  unionOf: list("premis:Event".freeze, "premis:RightsStatement".freeze)
1331
2018
  ),
1332
- editorialNote: %(Rationale: Digital provenance often requires
1333
- that relationships between objects and events are documented. / Rights statements must be
1334
- associated with the objects to which they pertain, either by linking from the rights statement
1335
- to the object\(s\) or by linking from the object\(s\) to the rights statement. This provides the
1336
- mechanism for the link from the rights statement to an object. For denoting the role of the
1337
- object, when related to an event,one can extend this ontology be defining your own
1338
- subproperties, such as those given by
1339
- http://id.loc.gov/vocabulary/preservation/eventRelatedObjectRole.).freeze,
1340
2019
  range: "premis:Object".freeze,
1341
- "rdfs:seeAlso": ["Event and RightsStatement class definition\n and Object class definition".freeze, "http://id.loc.gov/vocabulary/preservation/eventRelatedObjectRole".freeze],
2020
+ "rdfs:seeAlso": ["Event and RightsStatement class definition and Object class definition".freeze, "http://id.loc.gov/vocabulary/preservation/eventRelatedObjectRole".freeze],
1342
2021
  type: "owl:ObjectProperty".freeze,
1343
2022
  "vs:term_status": "stable".freeze
1344
2023
  property :hasObjectCharacteristics,
@@ -1347,25 +2026,16 @@ module RDF::Vocab
1347
2026
  unionOf: list("premis:Bitstream".freeze, "premis:File".freeze)
1348
2027
  ),
1349
2028
  range: "premis:ObjectCharacteristics".freeze,
1350
- "rdfs:seeAlso": "Object class definition and\n ObjectCharacteristics class definition".freeze,
2029
+ "rdfs:seeAlso": "Object class definition and ObjectCharacteristics class definition".freeze,
1351
2030
  type: ["owl:InverseFunctionalProperty".freeze, "owl:ObjectProperty".freeze],
1352
2031
  "vs:term_status": "stable".freeze
1353
2032
  property :hasOriginalName,
1354
- comment: %(Example: N419.pdf).freeze,
1355
- definition: %(Definition: The name of the object as
1356
- submitted to or harvested by the repository, before any renaming by the
1357
- repository.).freeze,
2033
+ comment: [%(Creation / Maintenance Notes: This value would always be supplied to the repository by the submitter or harvesting application. How much of the file path to preserve would be up to the repository.).freeze, %(Definition: The name of the object as submitted to or harvested by the repository, before any renaming by the repository.).freeze, %(Example: N419.pdf).freeze, %(Rationale: The name used within the preservation repository may not be known outside of the repository. A depositor might need to request a file by its original name. Also, the repository may need to reconstruct internal links for dissemination.).freeze, %(Usage Notes: This is the name of the object as designated in the Submission Information Package \(SIP\). The object may have other names in different contexts. When two repositories are exchanging content, it would be important for the receiving repository to know and record the name of the representation at the originating repository. In the case of representations, this may be a directory name.).freeze],
1358
2034
  domain: term(
1359
2035
  type: "owl:Class".freeze,
1360
2036
  unionOf: list("premis:File".freeze, "premis:Representation".freeze)
1361
2037
  ),
1362
- editorialNote: %(Rationale: The name used within the
1363
- preservation repository may not be known outside of the repository. A depositor might need to
1364
- request a file by its original name. Also, the repository may need to reconstruct internal
1365
- links for dissemination.).freeze,
1366
2038
  range: "xsd:string".freeze,
1367
- "skos:historyNote": "Creation / Maintenance Notes: This value\n would always be supplied to the repository by the submitter or harvesting application. How\n much of the file path to preserve would be up to the repository.".freeze,
1368
- "skos:scopeNote": "Usage Notes: This is the name of the object\n as designated in the Submission Information Package (SIP). The object may have other names in\n different contexts. When two repositories are exchanging content, it would be important for\n the receiving repository to know and record the name of the representation at the originating\n repository. In the case of representations, this may be a directory name.".freeze,
1369
2039
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1370
2040
  "vs:term_status": "stable".freeze
1371
2041
  property :hasPreservationLevel,
@@ -1374,49 +2044,29 @@ module RDF::Vocab
1374
2044
  unionOf: list("premis:File".freeze, "premis:Representation".freeze)
1375
2045
  ),
1376
2046
  range: "premis:PreservationLevel".freeze,
1377
- "rdfs:seeAlso": "Object class definition and\n PreservationLevel class definition".freeze,
2047
+ "rdfs:seeAlso": "Object class definition and PreservationLevel class definition".freeze,
1378
2048
  type: "owl:ObjectProperty".freeze,
1379
2049
  "vs:term_status": "stable".freeze
1380
2050
  property :hasPreservationLevelDateAssigned,
1381
- comment: [%(Data Constraint: To aid machine processing,
1382
- value should use a structured form: xsd:dateTime).freeze, %(Examples:
1383
- 2001-10-26T19:32:52+00:00).freeze],
1384
- definition: %(Definition: The date, or date and time, when
1385
- a particular preservationLevelValue was assigned to the object.).freeze,
2051
+ comment: [%(Data Constraint: To aid machine processing, value should use a structured form: xsd:dateTime).freeze, %(Definition: The date, or date and time, when a particular preservationLevelValue was assigned to the object.).freeze, %(Examples: 2001-10-26T19:32:52+00:00).freeze, %(Rationale: The preservationLevel applicable to an object is expected to be reviewed and changed over time, in response to changes in repository preservation requirements, policies, or capabilities relevant to the object. The date that the current preservationLevelValue was assigned aids review of decisions.).freeze],
1386
2052
  domain: "premis:PreservationLevel".freeze,
1387
- editorialNote: %(Rationale: The preservationLevel applicable
1388
- to an object is expected to be reviewed and changed over time, in response to changes in
1389
- repository preservation requirements, policies, or capabilities relevant to the object. The
1390
- date that the current preservationLevelValue was assigned aids review of
1391
- decisions.).freeze,
1392
2053
  range: "xsd:dateTime".freeze,
1393
2054
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1394
2055
  "vs:term_status": "stable".freeze
1395
2056
  property :hasPreservationLevelRationale,
1396
- comment: %(Examples: user pays, legislation, defective
1397
- file, bit-level preservation only available for this format).freeze,
1398
- definition: %(Definition: The reason a particular
1399
- preservationLevelValue was applied to the object.).freeze,
2057
+ comment: [%(Definition: The reason a particular preservationLevelValue was applied to
2058
+ the object.).freeze, %(Examples: user pays, legislation, defective file, bit-level preservation only available for this format).freeze, %(Rationale: Application of a particular preservationLevelValue may require justification, especially if it differs from that usually applied according to repository policy.).freeze, %(Usage Notes: This optional semantic unit records the reason for applying the preservationLevelValue.
2059
+ This information can be particularly important when the assigned preservationLevelValue differs from usual repository policy.
2060
+ For example, a repository may normally assign a preservationLevelValue of “full preservation” for JPEG2000 files, but detects that a particular file is defective. This may mean that the repository’s preservation strategy for JPEG2000 may not be effective for this particular file, so the repository may assign a preservationLevelValue of “bit-level preservation” to this file, recording “defective file” as the rationale.
2061
+ Similarly, legislative requirements or contractual agreements may require a higher level of preservation to be assigned to a particular object than would be assigned to that class of object according to usual policy. In this case, the rationale for the assignment may be recorded as “legislation” or “user pays”, for example.
2062
+ preservationLevelRationale may be repeated if more than one reason needs to be recorded.).freeze],
1400
2063
  domain: "premis:PreservationLevel".freeze,
1401
- editorialNote: %(Rationale: Application of a particular
1402
- preservationLevelValue may require justification, especially if it differs from that usually
1403
- applied according to repository policy.).freeze,
1404
2064
  range: "xsd:string".freeze,
1405
- "skos:scopeNote": "Usage Notes: This optional semantic unit\n records the reason for applying the preservationLevelValue. This information can be\n particularly important when the assigned preservationLevelValue differs from usual repository\n policy. For example, a repository may normally assign a preservationLevelValue of “full\n preservation” for JPEG2000 files, but detects that a particular file is defective. This may\n mean that the repository’s preservation strategy for JPEG2000 may not be effective for this\n particular file, so the repository may assign a preservationLevelValue of “bit-level\n preservation” to this file, recording “defective file” as the rationale. Similarly,\n legislative requirements or contractual agreements may require a higher level of preservation\n to be assigned to a particular object than would be assigned to that class of object according\n to usual policy. In this case, the rationale for the assignment may be recorded as\n “legislation” or “user pays”, for example. preservationLevelRationale may be repeated if more\n than one reason needs to be recorded.".freeze,
1406
2065
  type: "owl:DatatypeProperty".freeze,
1407
2066
  "vs:term_status": "stable".freeze
1408
2067
  property :hasPreservationLevelRole,
1409
- comment: [%(Data Constraint: Values are taken from the
1410
- SKOS vocabulary:
1411
- http://id.loc.gov/vocabulary/preservation/preservationLevelRole).freeze, %(Extensions: One can use its own SKOS
1412
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
1413
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
1414
- definition: %(Definition: A value indicating the context
1415
- in which a set of preservation options is applicable.).freeze,
2068
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/preservationLevelRole).freeze, %(Definition: A value indicating the context in which a set of preservation options is applicable.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze, %(Rationale: Repositories may assign preservationLevelValues in different contexts which must be differentiated, and may need to record more than one context.).freeze],
1416
2069
  domain: "premis:PreservationLevel".freeze,
1417
- editorialNote: %(Rationale: Repositories may assign
1418
- preservationLevelValues in different contexts which must be differentiated, and may need to
1419
- record more than one context.).freeze,
1420
2070
  range: term(
1421
2071
  onProperty: "skos:inScheme".freeze,
1422
2072
  "owl:hasValue": "http://id.loc.gov/vocabulary/preservation/preservationLevelRole".freeze,
@@ -1425,62 +2075,32 @@ module RDF::Vocab
1425
2075
  type: ["owl:FunctionalProperty".freeze, "owl:ObjectProperty".freeze],
1426
2076
  "vs:term_status": "stable".freeze
1427
2077
  property :hasPreservationLevelValue,
1428
- comment: [%(Data Constraint: Value should be taken from
1429
- a controlled vocabulary.).freeze, %(Examples: bit-level, full, fully supported
1430
- with future migrations \(File\), 0).freeze],
1431
- definition: %(Definition: A value indicating the set of
1432
- preservation functions expected to be applied to the object.).freeze,
2078
+ comment: [%(Creation / Maintenance Notes: The preservation level may be assigned by the repository or requested by the depositor and submitted as metadata.).freeze, %(Data Constraint: Value should be taken from a controlled vocabulary.).freeze, %(Definition: A value indicating the set of preservation functions expected to be applied to the object.).freeze, %(Examples: bit-level, full, fully supported with future migrations \(File\), 0).freeze, %(Rationale: Some preservation repositories will offer multiple preservation options depending on factors such as the value or uniqueness of the material, the “preservability” of the format, the amount the customer is willing to pay, etc.).freeze, %(Usage Notes: Only one preservationLevelValue may be recorded per preservationLevel container. If a further preservationLevelValue applies to the object in a different context, a separate preservationLevel container should be repeated.).freeze],
1433
2079
  domain: "premis:PreservationLevel".freeze,
1434
- editorialNote: %(Rationale: Some preservation repositories
1435
- will offer multiple preservation options depending on factors such as the value or uniqueness
1436
- of the material, the “preservability” of the format, the amount the customer is willing to
1437
- pay, etc.).freeze,
1438
2080
  range: "xsd:string".freeze,
1439
- "skos:historyNote": "Creation / Maintenance Notes: The\n preservation level may be assigned by the repository or requested by the depositor and\n submitted as metadata.".freeze,
1440
- "skos:scopeNote": "Usage Notes: Only one preservationLevelValue\n may be recorded per preservationLevel container. If a further preservationLevelValue applies\n to the object in a different context, a separate preservationLevel container should be\n repeated.".freeze,
1441
2081
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1442
2082
  "vs:term_status": "stable".freeze
1443
2083
  property :hasRelatedObject,
1444
- definition: %(Definition: This property related to all
1445
- object belonging to a RelatedObjectIdentification to describe the related objects as an
1446
- aggregation.).freeze,
2084
+ comment: %(Definition: This property related to all object belonging to a RelatedObjectIdentification to describe the related objects as an aggregation.).freeze,
1447
2085
  domain: "premis:RelatedObjectIdentification".freeze,
1448
2086
  range: "premis:Object".freeze,
1449
2087
  type: "owl:ObjectProperty".freeze,
1450
2088
  "vs:term_status": "stable".freeze
1451
2089
  property :hasRelatedObjectSequence,
1452
- definition: %(Definition: The order of the related object
1453
- relative to other objects with the same type of relationship.).freeze,
2090
+ comment: [%(Definition: The order of the related object relative to other objects with the same
2091
+ type of relationship.).freeze, %(Rationale: This semantic unit is particularly useful for structural relationships. In order to reconstruct a representation, it may be necessary to know the order of components with sibling or part-whole relationships. For example, to render a page-image book, it is necessary to know the order of files representing pages.).freeze],
1454
2092
  domain: "premis:RelatedObjectIdentification".freeze,
1455
- editorialNote: %(Rationale: This semantic unit is
1456
- particularly useful for structural relationships. In order to reconstruct a representation, it
1457
- may be necessary to know the order of components with sibling or part-whole relationships. For
1458
- example, to render a page-image book, it is necessary to know the order of files representing
1459
- pages.).freeze,
1460
2093
  range: "xsd:string".freeze,
1461
2094
  type: "owl:DatatypeProperty".freeze,
1462
2095
  "vs:term_status": "stable".freeze
1463
2096
  property :hasRelatedStatuteInformation,
1464
- definition: %(Definition: This property is used to relate
1465
- certain StatuteInformation instances. The rationale for this is that in the PREMIS data
1466
- dictionary, a RightsStatement instance can consist of several StatuteInformation instances. In
1467
- the PREMIS OWL ontology, the StatuteInformation class is subclassed to RightsStatement. The
1468
- restore the relation between the grouped StatuteInformation instances of a RightsStatement of
1469
- the PREMIS data dictionary, this property is used is PREMIS OWL.).freeze,
2097
+ comment: %(Definition: This property is used to relate certain StatuteInformation instances. The rationale for this is that in the PREMIS data dictionary, a RightsStatement instance can consist of several StatuteInformation instances. In the PREMIS OWL ontology, the StatuteInformation class is subclassed to RightsStatement. The restore the relation between the grouped StatuteInformation instances of a RightsStatement of the PREMIS data dictionary, this property is used is PREMIS OWL.).freeze,
1470
2098
  domain: "premis:StatuteInformation".freeze,
1471
2099
  range: "premis:StatuteInformation".freeze,
1472
2100
  type: "owl:ObjectProperty".freeze,
1473
2101
  "vs:term_status": "stable".freeze
1474
2102
  property :hasRelationship,
1475
- comment: [%(Extensions: One can extend this
1476
- property to use more fine grained properties by defining the fine grained properties as
1477
- subproperties of this property.).freeze, %(The LOC will provide a SKOS
1478
- vocabulary, where the concepts can also be used as object properties at http://id.loc.gov/.
1479
- These relationships will capture the relationship type and subtype. One can define its own
1480
- relationships, but for interoperability reasons, these should be linked to or made a
1481
- subproperty of the properties of the LOC vocabulary.).freeze],
1482
- definition: %(Definition: This property
1483
- links one object to one or more other objects.).freeze,
2103
+ comment: [%(Definition: This property links one object to one or more other objects.).freeze, %(Extensions: One can extend this property to use more fine grained properties by defining the fine grained properties as subproperties of this property.).freeze, %(The LOC will provide a SKOS vocabulary, where the concepts can also be used as object properties at http://id.loc.gov/. These relationships will capture the relationship type and subtype. One can define its own relationships, but for interoperability reasons, these should be linked to or made a subproperty of the properties of the LOC vocabulary.).freeze],
1484
2104
  domain: "premis:Object".freeze,
1485
2105
  range: term(
1486
2106
  type: "owl:Class".freeze,
@@ -1490,11 +2110,7 @@ module RDF::Vocab
1490
2110
  type: "owl:ObjectProperty".freeze,
1491
2111
  "vs:term_status": "testing".freeze
1492
2112
  property :hasRestriction,
1493
- comment: %(Examples: No more than three, Allowed only
1494
- after one year of archival retention has elapsed, Rightsholder must be notified after
1495
- completion of act).freeze,
1496
- definition: %(Definition: A condition or limitation on the
1497
- act.).freeze,
2113
+ comment: [%(Definition: A condition or limitation on the act.).freeze, %(Examples: No more than three, Allowed only after one year of archival retention has elapsed, Rightsholder must be notified after completion of act).freeze],
1498
2114
  domain: "premis:RightsGranted".freeze,
1499
2115
  range: "xsd:string".freeze,
1500
2116
  type: "owl:DatatypeProperty".freeze,
@@ -1502,43 +2118,29 @@ module RDF::Vocab
1502
2118
  property :hasRightsDocumentation,
1503
2119
  domain: "premis:RightsStatement".freeze,
1504
2120
  range: "premis:RightsDocumentation".freeze,
1505
- "rdfs:seeAlso": "RiightsDocumentation class\n definition".freeze,
2121
+ "rdfs:seeAlso": "RiightsDocumentation class definition".freeze,
1506
2122
  type: "owl:ObjectProperty".freeze,
1507
2123
  "vs:term_status": "stable".freeze
1508
2124
  property :hasRightsDocumentationRole,
1509
- definition: %(Definition: This property denotes the role
1510
- of the related documentation. The value must be taken from a skos vocabulary. A value
1511
- indicating the purpose or expected use of the documentation being
1512
- identified.).freeze,
2125
+ comment: [%(Definition: This property denotes the role of the related documentation. The value must be taken from a skos vocabulary. A value indicating the purpose or expected use of the documentation being identified.).freeze, %(Rationale: This information distinguishes the purpose of the supporting documentation especially when there are multiple documentation identifiers.).freeze],
1513
2126
  domain: "premis:RightsDocumentation".freeze,
1514
- editorialNote: %(Rationale: This
1515
- information distinguishes the purpose of the supporting documentation especially when there
1516
- are multiple documentation identifiers.).freeze,
1517
2127
  range: "skos:Concept".freeze,
1518
2128
  type: "owl:ObjectProperty".freeze,
1519
2129
  "vs:term_status": "stable".freeze
1520
2130
  property :hasRightsGranted,
1521
2131
  domain: "premis:RightsStatement".freeze,
1522
2132
  range: "premis:RightsGranted".freeze,
1523
- "rdfs:seeAlso": "RightsStatement class definition and\n RightsGranted class definition".freeze,
2133
+ "rdfs:seeAlso": "RightsStatement class definition and RightsGranted class definition".freeze,
1524
2134
  type: "owl:ObjectProperty".freeze,
1525
2135
  "vs:term_status": "stable".freeze
1526
2136
  property :hasRightsGrantedNote,
1527
- definition: %(Definition: Additional information about the
1528
- rights granted.).freeze,
2137
+ comment: [%(Definition: Additional information about the rights granted.).freeze, %(Rationale: A textual description of the rights granted may be needed for additional explanation.).freeze, %(Usage Notes: This semantic unit may include a statement about risk assessment, for example, when a repository is not certain about what permissions have been granted.).freeze],
1529
2138
  domain: "premis:RightsGranted".freeze,
1530
- editorialNote: %(Rationale: A textual description of the
1531
- rights granted may be needed for additional explanation.).freeze,
1532
2139
  range: "xsd:string".freeze,
1533
- "skos:scopeNote": "Usage Notes: This semantic unit may include\n a statement about risk assessment, for example, when a repository is not certain about what\n permissions have been granted.".freeze,
1534
2140
  type: "owl:DatatypeProperty".freeze,
1535
2141
  "vs:term_status": "stable".freeze
1536
2142
  property :hasRightsRelatedAgent,
1537
- comment: [%(Extensions: One can extend this
1538
- property to use more fine grained properties by defining the fine grained properties as
1539
- subproperties of this property.).freeze, %(This propety links a
1540
- RightsStatement instance to an Agent instance. Via this property a distinction can be made in
1541
- the linkingAgent properties based on the domain.).freeze],
2143
+ comment: [%(Extensions: One can extend this property to use more fine grained properties by defining the fine grained properties as subproperties of this property.).freeze, %(This propety links a RightsStatement instance to an Agent instance. Via this property a distinction can be made in the linkingAgent properties based on the domain.).freeze],
1542
2144
  domain: "premis:RightsStatement".freeze,
1543
2145
  range: "premis:Agent".freeze,
1544
2146
  "rdfs:seeAlso": "http://id.loc.gov/vocabulary/preservation/rightsRelatedAgentRole".freeze,
@@ -1546,24 +2148,18 @@ module RDF::Vocab
1546
2148
  type: "owl:ObjectProperty".freeze,
1547
2149
  "vs:term_status": "unstable".freeze
1548
2150
  property :hasRightsStatement,
1549
- definition: %(Definition: A rights statement associated
1550
- with the object.).freeze,
2151
+ comment: [%(Definition: A rights statement associated with the object.).freeze, %(Rationale: A repository may choose to link from a rights statement to an object or from an object to a rights statement or both.).freeze],
1551
2152
  domain: term(
1552
2153
  type: "owl:Class".freeze,
1553
2154
  unionOf: list("premis:Agent".freeze, "premis:Object".freeze)
1554
2155
  ),
1555
- editorialNote: %(Rationale: A repository may choose to link
1556
- from a rights statement to an object or from an object to a rights statement or
1557
- both.).freeze,
1558
2156
  range: "premis:RightsStatement".freeze,
1559
- "rdfs:seeAlso": "RightsStatement class\n definition".freeze,
2157
+ "rdfs:seeAlso": "RightsStatement class definition".freeze,
1560
2158
  type: "owl:ObjectProperty".freeze,
1561
2159
  "vs:term_status": "stable".freeze
1562
2160
  property :hasRightsStatementNote,
1563
- comment: %(Examples: Copyright expiration expected in
1564
- 2010 unless renewed. License is embedded in XMP block in file header.).freeze,
1565
- definition: %(Definition: Additional information about the
1566
- RightsStatement of an object.).freeze,
2161
+ comment: [%(Definition: Additional information about the RightsStatement of an object.).freeze, %(Examples: Copyright expiration expected in 2010 unless renewed.
2162
+ License is embedded in XMP block in file header.).freeze],
1567
2163
  domain: "premis:RightsStatement".freeze,
1568
2164
  range: "xsd:string".freeze,
1569
2165
  type: "owl:DatatypeProperty".freeze,
@@ -1578,15 +2174,8 @@ module RDF::Vocab
1578
2174
  type: "owl:ObjectProperty".freeze,
1579
2175
  "vs:term_status": "stable".freeze
1580
2176
  property :hasSignatureEncoding,
1581
- comment: [%(Data Constraint: Values are taken from the
1582
- SKOS vocabulary: http://id.loc.gov/vocabulary/signatureEncoding).freeze, %(Extensions: One can use its own SKOS
1583
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
1584
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
1585
- definition: %(Definition: The encoding used for the values
1586
- of signatureValue, keyInformation.).freeze,
2177
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/signatureEncoding).freeze, %(Definition: The encoding used for the values of signatureValue, keyInformation.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze, %(Rationale: These values cannot be interpreted correctly if the encoding is unknown.).freeze],
1587
2178
  domain: "premis:Signature".freeze,
1588
- editorialNote: %(Rationale: These values cannot be
1589
- interpreted correctly if the encoding is unknown.).freeze,
1590
2179
  range: term(
1591
2180
  onProperty: "skos:inScheme".freeze,
1592
2181
  "owl:hasValue": "http://id.loc.gov/vocabulary/preservation/signatureEncoding".freeze,
@@ -1595,158 +2184,89 @@ module RDF::Vocab
1595
2184
  type: ["owl:FunctionalProperty".freeze, "owl:ObjectProperty".freeze],
1596
2185
  "vs:term_status": "stable".freeze
1597
2186
  property :hasSignatureMethod,
1598
- comment: [%(Data Constraint: Values are taken from a
1599
- SKOS vocabulary).freeze, %(Extensions: One can use its own
1600
- SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS
1601
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
1602
- definition: %(Definition: A designation for the encryption
1603
- and hash algorithms used for signature generation.).freeze,
2187
+ comment: [%(Data Constraint: Values are taken from a SKOS vocabulary).freeze, %(Definition: A designation for the encryption and hash algorithms used for signature generation.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze, %(Rationale: The same algorithms must be used for signature validation.).freeze],
1604
2188
  domain: "premis:Signature".freeze,
1605
- editorialNote: %(Rationale: The same algorithms must be used
1606
- for signature validation.).freeze,
1607
2189
  range: "skos:Concept".freeze,
1608
2190
  type: ["owl:FunctionalProperty".freeze, "owl:ObjectProperty".freeze],
1609
2191
  "vs:term_status": "stable".freeze
1610
2192
  property :hasSignatureProperties,
1611
- definition: %(Definition: Additional information about the
1612
- generation of the signature.).freeze,
2193
+ comment: [%(Definition: Additional information about the generation of the signature.).freeze, %(Usage Notes: This may include the date/time of signature generation, the serial number of the cryptographic hardware used, or other information related to the generation of the signature. Repositories will likely want to define a suitably granular structure to signatureProperties.).freeze],
1613
2194
  domain: "premis:Signature".freeze,
1614
2195
  range: "xsd:string".freeze,
1615
- "skos:scopeNote": "Usage Notes: This may include the date/time\n of signature generation, the serial number of the cryptographic hardware used, or other\n information related to the generation of the signature. Repositories will likely want to\n define a suitably granular structure to signatureProperties.".freeze,
1616
2196
  type: "owl:DatatypeProperty".freeze,
1617
2197
  "vs:term_status": "stable".freeze
1618
2198
  property :hasSignatureValidationRules,
1619
- definition: %(Definition: The operations to be performed
1620
- in order to validate the digital signature.).freeze,
2199
+ comment: [%(Definition: The operations to be performed in order to validate the digital signature.).freeze, %(Rationale: The repository should not assume that the procedure for validating any particular signature will be known many years in the future without documentation.).freeze, %(Usage Notes: This may include the canonicalization method used before calculating the message digest, if the object was normalized before signing.
2200
+ This value could also be a pointer to archive documentation.).freeze],
1621
2201
  domain: "premis:Signature".freeze,
1622
- editorialNote: %(Rationale: The repository should not assume
1623
- that the procedure for validating any particular signature will be known many years in the
1624
- future without documentation.).freeze,
1625
2202
  range: "xsd:string".freeze,
1626
- "skos:scopeNote": "Usage Notes: This may include the\n canonicalization method used before calculating the message digest, if the object was\n normalized before signing. This value could also be a pointer to archive\n documentation.".freeze,
1627
2203
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1628
2204
  "vs:term_status": "stable".freeze
1629
2205
  property :hasSignatureValue,
1630
- comment: %(Example:
1631
- juS5RhJ884qoFR8flVXd/rbrSDVGn40CapgB7qeQiT+rr0NekEQ6BHhUA8dT3+BCTBUQI0dBjlml9lwzENXvS83zRECjzXbMRTUtVZiPZG2pqKPnL2YU3A9645UCjTXU+jgFumv7k78hieAGDzNci+PQ9KRmm//icT7JaYztgt4=).freeze,
1632
- definition: %(Definition: The digital signature; a value
1633
- generated from the application of a private key to a message digest.).freeze,
2206
+ comment: [%(Definition: The digital signature; a value generated from the application of a private key to a message digest.).freeze, %(Example: juS5RhJ884qoFR8flVXd/rbrSDVGn40CapgB7qeQiT+rr0NekEQ6BHhUA8dT3+BCTBUQI0dBjlml9lwzENXvS83zRECjzXbMRTUtVZiPZG2pqKPnL2YU3A9645UCjTXU+jgFumv7k78hieAGDzNci+PQ9KRmm//icT7JaYztgt4=).freeze],
1634
2207
  domain: "premis:Signature".freeze,
1635
2208
  range: "xsd:string".freeze,
1636
2209
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1637
2210
  "vs:term_status": "stable".freeze
1638
2211
  property :hasSigner,
1639
- definition: %(Definition: The individual, institution, or
1640
- authority responsible for generating the signature.).freeze,
2212
+ comment: [%(Definition: The individual, institution, or authority responsible for generating the signature.).freeze, %(Rationale: The signer might also be carried in the keyInformation, but it can be accessed more conveniently if recorded here.).freeze, %(Usage Notes: If the signer is an Agent known to the repository, this property can directly link to this agent. The consequence is punning: a datatype property and object property with the same name, i.e., :signer).freeze],
1641
2213
  domain: "premis:Signature".freeze,
1642
- editorialNote: %(Rationale: The signer might also be carried
1643
- in the keyInformation, but it can be accessed more conveniently if recorded
1644
- here.).freeze,
1645
2214
  range: ["premis:Agent".freeze, "xsd:string".freeze],
1646
- "skos:scopeNote": "Usage Notes: If the signer is an Agent known\n to the repository, this property can directly link to this agent. The consequence is punning:\n a datatype property and object property with the same name, i.e., :signer".freeze,
1647
2215
  type: "owl:AnnotationProperty".freeze,
1648
2216
  "vs:term_status": "stable".freeze
1649
2217
  property :hasSignificantProperties,
1650
2218
  domain: "premis:Object".freeze,
1651
2219
  range: "premis:SignificantProperties".freeze,
1652
- "rdfs:seeAlso": "Object class definition and\n SignificantProperties class definition".freeze,
2220
+ "rdfs:seeAlso": "Object class definition and SignificantProperties class definition".freeze,
1653
2221
  type: "owl:ObjectProperty".freeze,
1654
2222
  "vs:term_status": "stable".freeze
1655
2223
  property :hasSignificantPropertiesType,
1656
- comment: %(Examples: content, structure, behavior,
1657
- page count, page width, typeface, hyperlinks \(representation\), image count \(representation\),
1658
- color space [for an embedded image] \(bitstream\)).freeze,
1659
- definition: %(Definition: The aspect, facet, or attribute
1660
- of an object about which significant properties are being described.).freeze,
2224
+ comment: [%(Definition: The aspect, facet, or attribute of an object about which significant properties are being described.).freeze, %(Examples: content, structure, behavior, page count, page width, typeface, hyperlinks \(representation\), image count \(representation\), color space [for an embedded image] \(bitstream\)).freeze, %(Rationale: Repositories may choose to describe significant properties based on a particular aspect or attribute of an object.).freeze, %(Usage Notes: This semantic unit is optional and may be used as part of a facet:detail pair with significantPropertiesValue.).freeze],
1661
2225
  domain: "premis:SignificantProperties".freeze,
1662
- editorialNote: %(Rationale: Repositories may choose to
1663
- describe significant properties based on a particular aspect or attribute of an
1664
- object.).freeze,
1665
2226
  range: "xsd:string".freeze,
1666
- "skos:scopeNote": "Usage Notes: This semantic unit is optional\n and may be used as part of a facet:detail pair with\n significantPropertiesValue.".freeze,
1667
2227
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1668
2228
  "vs:term_status": "stable".freeze
1669
2229
  property :hasSignificantPropertiesValue,
1670
- comment: %(Examples: [For a Web page containing
1671
- animation that is not considered essential] Content only, [For detail associated with a
1672
- significantPropertiesType of "behavior"] Hyperlinks traversable, [For a Word document with
1673
- embedded links that are not considered essential] Content only, [For detail associated with
1674
- significantPropertiesType of "behavior"] Editable, [For detail associated with a
1675
- significantPropertiesType of "page width"] 210 mm, [For a PDF with an embedded graph, where
1676
- the lines' color determines the lines' meaning] Color, [For detail associated with a
1677
- significantPropertiesType of "appearance"] Color).freeze,
1678
- definition: %(Definition: Description of the
1679
- characteristics of a particular object subjectively determined to be important to maintain
1680
- through preservation actions.).freeze,
2230
+ comment: [%(Definition: Description of the characteristics of a particular object subjectively determined to be important to maintain through preservation actions.).freeze, %(Examples: [For a Web page containing animation that is not considered essential] Content only, [For detail associated with a significantPropertiesType of "behavior"] Hyperlinks traversable, [For a Word document with embedded links that are not considered essential] Content only, [For detail associated with significantPropertiesType of "behavior"] Editable, [For detail associated with a significantPropertiesType of "page width"] 210 mm, [For a PDF with an embedded graph, where the lines' color determines the lines' meaning] Color, [For detail associated with a significantPropertiesType of "appearance"] Color).freeze, %(Rationale: Repositories may choose to describe significant properties based on a particular aspect or attribute of an object.).freeze, %(Usage Notes: If facet:detail pairs are used, the content of significantPropertiesValue should describe the significant properties of object relevant to the aspect, facet, or attribute declared in the significantPropertiesType with which it is paired.
2231
+ If facet:detail pairs are not used, significantPropertiesValue may be used to freely describe any characteristic of an object.
2232
+ significantPropertiesValue is not repeatable. Multiple significant properties should be described in separate, repeated significantProperties container units.).freeze],
1681
2233
  domain: "premis:SignificantProperties".freeze,
1682
- editorialNote: %(Rationale: Repositories may choose to
1683
- describe significant properties based on a particular aspect or attribute of an
1684
- object.).freeze,
1685
2234
  range: "xsd:string".freeze,
1686
- "skos:scopeNote": "Usage Notes: If facet:detail pairs are used,\n the content of significantPropertiesValue should describe the significant properties of object\n relevant to the aspect, facet, or attribute declared in the significantPropertiesType with\n which it is paired. If facet:detail pairs are not used, significantPropertiesValue may be used\n to freely describe any characteristic of an object. significantPropertiesValue is not\n repeatable. Multiple significant properties should be described in separate, repeated\n significantProperties container units.".freeze,
1687
2235
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1688
2236
  "vs:term_status": "stable".freeze
1689
2237
  property :hasSize,
1690
- comment: %(Example: 2038937).freeze,
1691
- definition: %(Definition: The size in bytes of the file or
1692
- bitstream stored in the repository.).freeze,
2238
+ comment: [%(Creation / Maintenance Notes: Automatically obtained by the repository.).freeze, %(Definition: The size in bytes of the file or bitstream stored in the repository.).freeze, %(Example: 2038937).freeze, %(Rationale: Size is useful for ensuring the correct number of bytes from storage have been retrieved and that an application has enough room to move or process files. It might also be used when billing for storage.).freeze, %(Usage Notes: Defining this semantic unit as size in bytes makes it unnecessary to record a unit of measurement. However, for the purpose of data exchange the unit of measurement should be stated or understood by both partners.).freeze],
1693
2239
  domain: "premis:ObjectCharacteristics".freeze,
1694
- editorialNote: %(Rationale: Size is useful for ensuring the
1695
- correct number of bytes from storage have been retrieved and that an application has enough
1696
- room to move or process files. It might also be used when billing for
1697
- storage.).freeze,
1698
2240
  range: "xsd:long".freeze,
1699
- "skos:historyNote": "Creation / Maintenance Notes: Automatically\n obtained by the repository.".freeze,
1700
- "skos:scopeNote": "Usage Notes: Defining this semantic unit as\n size in bytes makes it unnecessary to record a unit of measurement. However, for the purpose\n of data exchange the unit of measurement should be stated or understood by both\n partners.".freeze,
1701
2241
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1702
2242
  "vs:term_status": "stable".freeze
1703
2243
  property :hasSoftware,
1704
2244
  domain: "premis:Environment".freeze,
1705
2245
  range: "premis:Software".freeze,
1706
- "rdfs:seeAlso": "Environment class definition and Software\n class definition".freeze,
2246
+ "rdfs:seeAlso": "Environment class definition and Software class definition".freeze,
1707
2247
  type: "owl:ObjectProperty".freeze,
1708
2248
  "vs:term_status": "stable".freeze
1709
2249
  property :hasSoftwareDependency,
1710
- comment: %(Example: GNU gcc >=2.7.2).freeze,
1711
- definition: %(Definition: The name and, if applicable,
1712
- version of any software component needed by the software referenced in swName in the context
1713
- of using this object.).freeze,
2250
+ comment: [%(Definition: The name and, if applicable, version of any software component needed by the software referenced in swName in the context of using this object.).freeze, %(Example: GNU gcc >=2.7.2).freeze, %(Usage Notes: The value should be constructed in a way that is consistent with the construction of swName and swVersion. This semantic unit identifies the software that is needed by what is recorded in swName, for example, a Perl script that depends on a Perl module. In this case the Perl script is listed in swName, with the module in swDependency within a software container.).freeze],
1714
2251
  domain: "premis:Software".freeze,
1715
2252
  range: "xsd:string".freeze,
1716
- "skos:scopeNote": "Usage Notes: The value should be constructed\n in a way that is consistent with the construction of swName and swVersion. This semantic unit\n identifies the software that is needed by what is recorded in swName, for example, a Perl\n script that depends on a Perl module. In this case the Perl script is listed in swName, with\n the module in swDependency within a software container.".freeze,
1717
2253
  type: "owl:DatatypeProperty".freeze,
1718
2254
  "vs:term_status": "stable".freeze
1719
2255
  property :hasSoftwareName,
1720
- comment: %(Examples: Adobe Photoshop, Adobe Acrobat
1721
- Reader).freeze,
1722
- definition: %(Definition: Manufacturer and title of the
1723
- software application.).freeze,
2256
+ comment: [%(Definition: Manufacturer and title of the software application.).freeze, %(Examples: Adobe Photoshop, Adobe Acrobat Reader).freeze, %(Usage Notes: Include manufacturer when this helps to identify or disambiguate the product, for example, use “Adobe Photoshop” rather than “Photoshop.”).freeze],
1724
2257
  domain: "premis:Software".freeze,
1725
2258
  range: "xsd:string".freeze,
1726
- "skos:scopeNote": "Usage Notes: Include manufacturer when this\n helps to identify or disambiguate the product, for example, use “Adobe Photoshop” rather than\n “Photoshop.”".freeze,
1727
2259
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1728
2260
  "vs:term_status": "stable".freeze
1729
2261
  property :hasSoftwareOtherInformation,
1730
- comment: %(Example: Install Acroread \(Adobe Acrobat\)
1731
- first; copy nppdf.so \(the plug-in\) to your Mozilla plug-ins directory, and make sure a copy of
1732
- \(or symlink to\) Acroread is in your PATH.).freeze,
1733
- definition: %(Definition: Additional requirements or
1734
- instructions related to the software referenced in swName.).freeze,
2262
+ comment: [%(Definition: Additional requirements or instructions related to the software referenced in swName.).freeze, %(Example: Install Acroread \(Adobe Acrobat\) first; copy nppdf.so \(the plug-in\) to your Mozilla plug-ins directory, and make sure a copy of \(or symlink to\) Acroread is in your PATH.).freeze, %(Usage Notes: This could be a reliable persistent identifier or URI pointing to software documentation within or outside the repository.).freeze],
1735
2263
  domain: "premis:Software".freeze,
1736
2264
  range: "xsd:string".freeze,
1737
- "skos:scopeNote": "Usage Notes: This could be a reliable\n persistent identifier or URI pointing to software documentation within or outside the\n repository.".freeze,
1738
2265
  type: "owl:DatatypeProperty".freeze,
1739
2266
  "vs:term_status": "stable".freeze
1740
2267
  property :hasSoftwareType,
1741
- comment: [%(Data Constraint: Values are taken from the
1742
- SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/softwareType).freeze, %(Extensions: One can use its own SKOS
1743
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
1744
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
1745
- definition: %(Definition: Class or category of
1746
- software.).freeze,
2268
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/softwareType).freeze, %(Definition: Class or category of software.).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze, %(Rationale: Several different layers of software can be required to support an object.).freeze],
1747
2269
  domain: "premis:Software".freeze,
1748
- editorialNote: %(Rationale: Several different layers of
1749
- software can be required to support an object.).freeze,
1750
2270
  range: term(
1751
2271
  onProperty: "skos:inScheme".freeze,
1752
2272
  "owl:hasValue": "http://id.loc.gov/vocabulary/preservation/softwareType".freeze,
@@ -1755,57 +2275,32 @@ module RDF::Vocab
1755
2275
  type: ["owl:FunctionalProperty".freeze, "owl:ObjectProperty".freeze],
1756
2276
  "vs:term_status": "stable".freeze
1757
2277
  property :hasSoftwareVersion,
1758
- comment: %(Examples: >=2.2.0, 6.0,
1759
- 2003).freeze,
1760
- definition: %(Definition: The version or versions of the
1761
- software referenced in swName.).freeze,
2278
+ comment: [%(Definition: The version or versions of the software referenced in swName.).freeze, %(Examples: >=2.2.0, 6.0, 2003).freeze, %(Usage Notes: If there is no formal version, the date of issuance can be used.).freeze],
1762
2279
  domain: "premis:Software".freeze,
1763
2280
  range: "xsd:string".freeze,
1764
- "skos:scopeNote": "Usage Notes: If there is no formal version,\n the date of issuance can be used.".freeze,
1765
2281
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1766
2282
  "vs:term_status": "stable".freeze
1767
2283
  property :hasStartDate,
1768
- comment: %(Data Constraint: To aid machine processing,
1769
- value should use a structured form: xsd:dateTime).freeze,
1770
- definition: %(Definition: The beginning date of the
1771
- permission granted.).freeze,
2284
+ comment: [%(Data Constraint: To aid machine processing, value should use a structured form: xsd:dateTime).freeze, %(Definition: The beginning date of the permission granted.).freeze],
1772
2285
  domain: "premis:ApplicableDates".freeze,
1773
2286
  range: "xsd:dateTime".freeze,
1774
2287
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1775
2288
  "vs:term_status": "stable".freeze
1776
2289
  property :hasStatuteCitation,
1777
- comment: %(Examples: Legal Deposit \(Jersey\) Law 200,
1778
- National Library of New Zealand \(Te Puna Mātauranga o Aotearoa\) Act 2003 no 19 part 4 s
1779
- 34).freeze,
1780
- definition: %(Definition: An identifying designation for
1781
- the statute.).freeze,
2290
+ comment: [%(Definition: An identifying designation for the statute.).freeze, %(Examples: Legal Deposit \(Jersey\) Law 200, National Library of New Zealand \(Te Puna Mātauranga o Aotearoa\) Act 2003 no 19 part 4 s 34).freeze, %(Usage Notes: Use standard citation form when applicable.).freeze],
1782
2291
  domain: "premis:StatuteInformation".freeze,
1783
2292
  range: "xsd:string".freeze,
1784
- "skos:scopeNote": "Usage Notes: Use standard citation form when\n applicable.".freeze,
1785
2293
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1786
2294
  "vs:term_status": "stable".freeze
1787
2295
  property :hasStatuteInformationDeterminationDate,
1788
- comment: [%(Data Constraint: To aid machine processing,
1789
- value should use a structured form: xsd:dateTime).freeze, %(Example:
1790
- 2001-10-26T19:32:52+00:00).freeze],
1791
- definition: %(Definition: The date that the determination
1792
- was made that the statute authorized the permission\(s\) noted.).freeze,
2296
+ comment: [%(Data Constraint: To aid machine processing, value should use a structured form: xsd:dateTime).freeze, %(Definition: The date that the determination was made that the statute authorized the permission\(s\) noted.).freeze, %(Example: 2001-10-26T19:32:52+00:00).freeze, %(Rationale: The permission in question may be the subject of some interpretation. These assessments are made within a specific context and at a specific time. At another time the context, and therefore the assessment, could change. For this reason it can be important to record the date of the decision.).freeze],
1793
2297
  domain: "premis:StatuteInformation".freeze,
1794
- editorialNote: %(Rationale: The permission in question may be
1795
- the subject of some interpretation. These assessments are made within a specific context and
1796
- at a specific time. At another time the context, and therefore the assessment, could change.
1797
- For this reason it can be important to record the date of the decision.).freeze,
1798
2298
  range: "xsd:dateTime".freeze,
1799
2299
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1800
2300
  "vs:term_status": "stable".freeze
1801
2301
  property :hasStatuteJurisdiction,
1802
- comment: [%(Data Constraint: Values should be taken
1803
- from a controlled vocabulary.).freeze, %(Examples: us, de, be).freeze],
1804
- definition: %(Definition: The country or other political
1805
- body enacting the statute.).freeze,
2302
+ comment: [%(Data Constraint: Values should be taken from a controlled vocabulary.).freeze, %(Definition: The country or other political body enacting the statute.).freeze, %(Examples: us, de, be).freeze, %(Rationale: The connection between the object and the rights granted is based on jurisdiction.).freeze],
1806
2303
  domain: "premis:StatuteInformation".freeze,
1807
- editorialNote: %(Rationale: The connection between the object
1808
- and the rights granted is based on jurisdiction.).freeze,
1809
2304
  range: "xsd:string".freeze,
1810
2305
  type: ["owl:DatatypeProperty".freeze, "owl:FunctionalProperty".freeze],
1811
2306
  "vs:term_status": "stable".freeze
@@ -1815,20 +2310,12 @@ module RDF::Vocab
1815
2310
  unionOf: list("premis:Bitstream".freeze, "premis:File".freeze)
1816
2311
  ),
1817
2312
  range: "premis:Storage".freeze,
1818
- "rdfs:seeAlso": "Object class definition and Storage class\n definition".freeze,
2313
+ "rdfs:seeAlso": "Object class definition and Storage class definition".freeze,
1819
2314
  type: "owl:ObjectProperty".freeze,
1820
2315
  "vs:term_status": "stable".freeze
1821
2316
  property :hasStorageMedium,
1822
- comment: [%(Data Constraint: Values are taken from the
1823
- SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/storageMedium).freeze, %(Extensions: One can use its own SKOS
1824
- vocabulary to use for this property. The precondition to do this, is to link your SKOS
1825
- concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze],
1826
- definition: %(Definition: The physical medium on which the
1827
- object is stored \(e.g., magnetic tape, hard disk, CD-ROM, DVD\).).freeze,
2317
+ comment: [%(Data Constraint: Values are taken from the SKOS vocabulary: http://id.loc.gov/vocabulary/preservation/storageMedium).freeze, %(Definition: The physical medium on which the object is stored \(e.g., magnetic tape, hard disk, CD-ROM, DVD\).).freeze, %(Extensions: One can use its own SKOS vocabulary to use for this property. The precondition to do this, is to link your SKOS concepts to the SKOS concepts of the id.loc.gov vocabulary.).freeze, %(Rationale: The repository needs to know the medium on which an object is stored in order to know how and when to do media refreshment and media migration.).freeze],
1828
2318
  domain: "premis:Storage".freeze,
1829
- editorialNote: %(Rationale: The repository needs to know the
1830
- medium on which an object is stored in order to know how and when to do media refreshment and
1831
- media migration.).freeze,
1832
2319
  range: term(
1833
2320
  onProperty: "skos:inScheme".freeze,
1834
2321
  "owl:hasValue": "http://id.loc.gov/vocabulary/preservation/storageMedium".freeze,
@@ -1839,13 +2326,13 @@ module RDF::Vocab
1839
2326
  property :hasTermOfGrant,
1840
2327
  domain: "premis:RightsGranted".freeze,
1841
2328
  range: "premis:TermOfGrant".freeze,
1842
- "rdfs:seeAlso": "RightsGranted class definition and\n TermOfGrant class definition".freeze,
2329
+ "rdfs:seeAlso": "RightsGranted class definition and TermOfGrant class definition".freeze,
1843
2330
  type: ["owl:FunctionalProperty".freeze, "owl:ObjectProperty".freeze],
1844
2331
  "vs:term_status": "stable".freeze
1845
2332
  property :hasTermOfRestriction,
1846
2333
  domain: "premis:RightsGranted".freeze,
1847
2334
  range: "premis:TermOfRestriction".freeze,
1848
- "rdfs:seeAlso": "RightsGranted and TermOfRestriction class\n definitions".freeze,
2335
+ "rdfs:seeAlso": "RightsGranted and TermOfRestriction class definitions".freeze,
1849
2336
  type: "owl:ObjectProperty".freeze,
1850
2337
  "vs:term_status": "stable".freeze
1851
2338
  end