Class: Expressir::Model::Declarations::Schema
- Inherits:
-
ModelElement
- Object
- Lutaml::Model::Serializable
- ModelElement
- Expressir::Model::Declarations::Schema
- Includes:
- Identifier
- Defined in:
- lib/expressir/model/declarations/schema.rb
Overview
Specified in ISO 10303-11:2004
-
section 9.3 Schema
Constant Summary
Constants inherited from ModelElement
ModelElement::POLYMORPHIC_CLASS_MAP, ModelElement::SKIP_ATTRIBUTES
Instance Attribute Summary
Attributes inherited from ModelElement
Instance Method Summary collapse
- #children ⇒ Array<Declaration>
- #full_source ⇒ Object
- #safe_children ⇒ Array<Declaration>
- #source ⇒ Object
Methods included from Identifier
Methods inherited from ModelElement
#children_by_id, #find, #initialize, #path, #reset_children_by_id, #to_s
Constructor Details
This class inherits a constructor from Expressir::Model::ModelElement
Instance Method Details
#children ⇒ Array<Declaration>
58 59 60 61 62 63 |
# File 'lib/expressir/model/declarations/schema.rb', line 58 def children [ *interfaced_items, *safe_children, ] end |
#full_source ⇒ Object
65 66 67 |
# File 'lib/expressir/model/declarations/schema.rb', line 65 def full_source Expressir::Express::Formatter.format(self) end |
#safe_children ⇒ Array<Declaration>
43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/expressir/model/declarations/schema.rb', line 43 def safe_children [ *constants, *types, *types&.flat_map(&:enumeration_items), *entities, *subtype_constraints, *functions, *rules, *procedures, *remark_items, ] end |
#source ⇒ Object
69 70 71 72 73 74 75 |
# File 'lib/expressir/model/declarations/schema.rb', line 69 def source formatter = Class.new(Expressir::Express::Formatter) do include Expressir::Express::SchemaHeadFormatter include Expressir::Express::HyperlinkFormatter end formatter.format(self) end |