pbcore 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/pbcore-2.1.xsd +1902 -0
- data/lib/pbcore.rb +17 -0
- data/lib/pbcore/annotation.rb +1 -1
- data/lib/pbcore/asset_date.rb +1 -1
- data/lib/pbcore/asset_type.rb +1 -1
- data/lib/pbcore/audience_level.rb +1 -1
- data/lib/pbcore/audience_rating.rb +1 -1
- data/lib/pbcore/content_element.rb +11 -0
- data/lib/pbcore/contributor/contributor.rb +1 -1
- data/lib/pbcore/contributor/role.rb +1 -1
- data/lib/pbcore/coverage/coverage.rb +1 -1
- data/lib/pbcore/creator/creator.rb +1 -1
- data/lib/pbcore/creator/role.rb +1 -1
- data/lib/pbcore/description.rb +1 -1
- data/lib/pbcore/element.rb +17 -61
- data/lib/pbcore/extension.rb +11 -2
- data/lib/pbcore/extension/embedded.rb +14 -7
- data/lib/pbcore/factories.rb +2 -4
- data/lib/pbcore/genre.rb +1 -1
- data/lib/pbcore/identifier.rb +1 -1
- data/lib/pbcore/instantiation.rb +2 -2
- data/lib/pbcore/instantiation/alternative_modes.rb +1 -1
- data/lib/pbcore/instantiation/annotation.rb +1 -1
- data/lib/pbcore/instantiation/channel_configuration.rb +1 -1
- data/lib/pbcore/instantiation/colors.rb +1 -1
- data/lib/pbcore/instantiation/data_rate.rb +1 -1
- data/lib/pbcore/instantiation/date.rb +1 -1
- data/lib/pbcore/instantiation/digital.rb +1 -1
- data/lib/pbcore/instantiation/dimensions.rb +1 -1
- data/lib/pbcore/instantiation/duration.rb +1 -1
- data/lib/pbcore/instantiation/essence_track/annotation.rb +1 -1
- data/lib/pbcore/instantiation/essence_track/aspect_ratio.rb +1 -1
- data/lib/pbcore/instantiation/essence_track/bit_depth.rb +1 -1
- data/lib/pbcore/instantiation/essence_track/data_rate.rb +1 -1
- data/lib/pbcore/instantiation/essence_track/duration.rb +1 -1
- data/lib/pbcore/instantiation/essence_track/encoding.rb +1 -1
- data/lib/pbcore/instantiation/essence_track/frame_rate.rb +1 -1
- data/lib/pbcore/instantiation/essence_track/frame_size.rb +1 -1
- data/lib/pbcore/instantiation/essence_track/identifier.rb +1 -1
- data/lib/pbcore/instantiation/essence_track/language.rb +1 -1
- data/lib/pbcore/instantiation/essence_track/playback_speed.rb +1 -1
- data/lib/pbcore/instantiation/essence_track/sampling_rate.rb +1 -1
- data/lib/pbcore/instantiation/essence_track/standard.rb +1 -1
- data/lib/pbcore/instantiation/essence_track/time_start.rb +1 -1
- data/lib/pbcore/instantiation/essence_track/type.rb +1 -1
- data/lib/pbcore/instantiation/extension.rb +16 -7
- data/lib/pbcore/instantiation/file_size.rb +1 -1
- data/lib/pbcore/instantiation/generations.rb +1 -1
- data/lib/pbcore/instantiation/identifier.rb +1 -1
- data/lib/pbcore/instantiation/language.rb +1 -1
- data/lib/pbcore/instantiation/location.rb +1 -1
- data/lib/pbcore/instantiation/media_type.rb +1 -1
- data/lib/pbcore/instantiation/physical.rb +1 -1
- data/lib/pbcore/instantiation/relation/identifier.rb +1 -1
- data/lib/pbcore/instantiation/relation/type.rb +1 -1
- data/lib/pbcore/instantiation/rights.rb +0 -1
- data/lib/pbcore/instantiation/rights/link.rb +1 -1
- data/lib/pbcore/instantiation/rights/summary.rb +1 -1
- data/lib/pbcore/instantiation/standard.rb +1 -1
- data/lib/pbcore/instantiation/time_start.rb +1 -1
- data/lib/pbcore/instantiation/tracks.rb +1 -1
- data/lib/pbcore/instantiation_document.rb +2 -2
- data/lib/pbcore/publisher/publisher.rb +1 -1
- data/lib/pbcore/publisher/role.rb +1 -1
- data/lib/pbcore/relation/identifier.rb +1 -1
- data/lib/pbcore/relation/type.rb +1 -1
- data/lib/pbcore/rights_summary/link.rb +1 -1
- data/lib/pbcore/rights_summary/summary.rb +1 -1
- data/lib/pbcore/subject.rb +1 -1
- data/lib/pbcore/title.rb +1 -1
- data/lib/pbcore/version.rb +1 -1
- data/lib/pbcore/vocab.rb +6 -0
- metadata +5 -4
@@ -2,20 +2,29 @@ require 'pbcore/element'
|
|
2
2
|
|
3
3
|
module PBCore
|
4
4
|
class Instantiation::Extension < Element
|
5
|
-
autoload :Wrap, 'pbcore/
|
6
|
-
autoload :Embedded, 'pbcore/
|
5
|
+
autoload :Wrap, 'pbcore/extension/wrap'
|
6
|
+
autoload :Embedded, 'pbcore/extension/embedded'
|
7
7
|
|
8
8
|
element :instantiationExtension, as: :value
|
9
|
-
# NOTE: the classes used for extensionWrap and extensionEmbedded
|
10
|
-
# here are the same as those used for PBCore::Extension, since
|
11
|
-
# inside has the same schema.
|
9
|
+
# NOTE: the classes used for <extensionWrap> and >extensionEmbedded>
|
10
|
+
# elements here are the same as those used for PBCore::Extension, since
|
11
|
+
# everything inside has the same schema.
|
12
12
|
element :extensionWrap, as: :wrap, class: PBCore::Extension::Wrap
|
13
13
|
element :extensionEmbedded, as: :embedded, class: PBCore::Extension::Embedded
|
14
14
|
|
15
15
|
build_xml do |xml|
|
16
16
|
xml.instantiationExtension(xml_attributes.compact) do |xml|
|
17
|
-
|
18
|
-
|
17
|
+
# <extensionWrap> and <extensionEmbedded> are mutually exclusive. Wrap
|
18
|
+
# takes precedence, so if you want to output <extensionEmbedded> make
|
19
|
+
# sure #wrap is set to nil.
|
20
|
+
# NOTE: Using #embedded will not produce round-trippable XML (i.e. XML
|
21
|
+
# that can be reparsed by the pbcore gem models.
|
22
|
+
# (See lib/pbcore/extension/embedded.rb)
|
23
|
+
if wrap
|
24
|
+
wrap.build(xml)
|
25
|
+
elsif embedded
|
26
|
+
embedded.build(xml)
|
27
|
+
end
|
19
28
|
end
|
20
29
|
end
|
21
30
|
end
|
@@ -9,7 +9,6 @@ module PBCore
|
|
9
9
|
element :rightsSummary, as: :summary, class: PBCore::Instantiation::Rights::Summary
|
10
10
|
element :rightsLink, as: :link, class: PBCore::Instantiation::Rights::Link
|
11
11
|
|
12
|
-
# has_time_attributes_on :instantiationRights
|
13
12
|
include PBCore::Attributes::TimeInterval
|
14
13
|
|
15
14
|
build_xml do |xml|
|
@@ -36,7 +36,7 @@ module PBCore
|
|
36
36
|
element :instantiationLocation, as: :location, class: PBCore::Instantiation::Location
|
37
37
|
element :instantiationMediaType, as: :media_type, class: PBCore::Instantiation::MediaType
|
38
38
|
elements :instantiationGenerations, as: :generations, class: PBCore::Instantiation::Generations
|
39
|
-
|
39
|
+
element :instantiationTimeStart, as: :time_start, class: PBCore::Instantiation::TimeStart
|
40
40
|
element :instantiationFileSize, as: :file_size, class: PBCore::Instantiation::FileSize
|
41
41
|
element :instantiationDuration, as: :duration, class: PBCore::Instantiation::Duration
|
42
42
|
element :instantiationDataRate, as: :data_rate, class: PBCore::Instantiation::DataRate
|
@@ -65,7 +65,7 @@ module PBCore
|
|
65
65
|
location.build(xml) if location
|
66
66
|
media_type.build(xml) if media_type
|
67
67
|
generations.each { |generations_element| generations_element.build(xml) }
|
68
|
-
|
68
|
+
time_start.build(xml) if time_start
|
69
69
|
file_size.build(xml) if file_size
|
70
70
|
duration.build(xml) if duration
|
71
71
|
data_rate.build(xml) if data_rate
|
data/lib/pbcore/relation/type.rb
CHANGED
data/lib/pbcore/subject.rb
CHANGED
data/lib/pbcore/title.rb
CHANGED
data/lib/pbcore/version.rb
CHANGED
data/lib/pbcore/vocab.rb
CHANGED
@@ -1,6 +1,12 @@
|
|
1
1
|
module PBCore
|
2
2
|
module Vocab
|
3
3
|
class << self
|
4
|
+
def asset_types
|
5
|
+
[ "Album", "Animation", "Clip", "Collection", "Compilation", "Episode",
|
6
|
+
"Miniseries", "Program", "Promo", "Raw Footage", "Segment", "Series",
|
7
|
+
"Season", "Subseries" ]
|
8
|
+
end
|
9
|
+
|
4
10
|
def date_types
|
5
11
|
[ "accepted", "available", "available end", "available start",
|
6
12
|
"broadcast", "captured", "created", "copyright", "deletion",
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pbcore
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Myers
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-10-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -181,6 +181,7 @@ files:
|
|
181
181
|
- Rakefile
|
182
182
|
- bin/console
|
183
183
|
- bin/setup
|
184
|
+
- lib/pbcore-2.1.xsd
|
184
185
|
- lib/pbcore.rb
|
185
186
|
- lib/pbcore/annotation.rb
|
186
187
|
- lib/pbcore/asset_date.rb
|
@@ -190,6 +191,7 @@ files:
|
|
190
191
|
- lib/pbcore/attributes/time_interval.rb
|
191
192
|
- lib/pbcore/audience_level.rb
|
192
193
|
- lib/pbcore/audience_rating.rb
|
194
|
+
- lib/pbcore/content_element.rb
|
193
195
|
- lib/pbcore/contributor.rb
|
194
196
|
- lib/pbcore/contributor/contributor.rb
|
195
197
|
- lib/pbcore/contributor/role.rb
|
@@ -289,8 +291,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
289
291
|
- !ruby/object:Gem::Version
|
290
292
|
version: '0'
|
291
293
|
requirements: []
|
292
|
-
|
293
|
-
rubygems_version: 2.7.6
|
294
|
+
rubygems_version: 3.1.4
|
294
295
|
signing_key:
|
295
296
|
specification_version: 4
|
296
297
|
summary: PBCore models and factories for Ruby
|