Class: ONIX::Entity

Inherits:
SubsetDSL show all
Includes:
EntityHelper, IdentifiersMethods::Gln
Defined in:
lib/onix/entity.rb

Direct Known Subclasses

Agent, Publisher, Supplier

Instance Attribute Summary

Attributes included from Attributes

#attributes

Class Method Summary collapse

Methods included from IdentifiersMethods::Gln

#gln, #gln_identifier

Methods inherited from SubsetDSL

element, elements, #get_class, get_class, inherited, #initialize, n, #parse, ref_to_short, register_elements, register_scopes, #register_subset_array, registered_elements, #registered_elements, registered_scopes, scope, short_to_ref

Methods inherited from Subset

parse, #parse, #tag_match, #unsupported

Methods included from Attributes

attribute_class, #parse_attributes, #serialized_attributes

Constructor Details

This class inherits a constructor from ONIX::SubsetDSL

Class Method Details

.entity_setup(prefix, identifier, role = nil) ⇒ Object



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'lib/onix/entity.rb', line 40

def self.entity_setup prefix, identifier, role = nil
  define_singleton_method :prefix do
    return prefix
  end
  define_singleton_method :identifier_class do
    return identifier
  end
  define_singleton_method :role_class do
    return role
  end

  self.element self.role_tag, :subset, :klass => self.role_class.to_s, :shortcut => :role, :cardinality => 1
  self.elements self.identifier_tag, :subset, :klass => self.identifier_class.to_s, :shortcut => :identifiers, :cardinality => 0..n
  self.element self.name_tag, :text, :shortcut => :name, :cardinality => 0..1
end

.identifier_classObject



32
33
34
# File 'lib/onix/entity.rb', line 32

def self.identifier_class
  nil
end

.identifier_tagString

Returns:

  • (String)


24
25
26
# File 'lib/onix/entity.rb', line 24

def self.identifier_tag
  "#{self.prefix}Identifier"
end

.name_tagString

Returns:

  • (String)


19
20
21
# File 'lib/onix/entity.rb', line 19

def self.name_tag
  "#{self.prefix}Name"
end

.prefixString

Returns:

  • (String)


29
30
# File 'lib/onix/entity.rb', line 29

def self.prefix
end

.role_classObject



36
37
38
# File 'lib/onix/entity.rb', line 36

def self.role_class
  nil
end

.role_tagString

Returns:

  • (String)


14
15
16
# File 'lib/onix/entity.rb', line 14

def self.role_tag
  "#{self.prefix}Role"
end