Module: Uniword::Ooxml::Namespaces
- Defined in:
- lib/uniword/ooxml/namespaces.rb
Defined Under Namespace
Classes: Bibliography, Characteristics, Chart, ChartEx, ChartEx1, ChartEx2, ChartEx3, ChartEx4, ChartEx5, ChartEx6, ChartEx7, ChartEx8, ContentTypes, CoreProperties, CustomProperties, CustomXml, Diagram, DocumentVariables, Drawing2010, DrawingML, DublinCore, DublinCoreMitype, DublinCoreTerms, ExtendedProperties, Glossary, InkDrawing, MarkupCompatibility, MathML, Model3D, Office, OfficeExtensionList, PackageRelationships, Picture, PresentationalML, Relationships, SchemaLibrary, SharedTypes, SpreadsheetML, ThemeML, VariantTypes, Vml, VmlWord, Word2010, Word2010Drawing, Word2012, Word2015, Word2015Symex, Word2016, Word2016Cid, Word2018, Word2018Cex, Word2020SdtDataHash, Word2023Du, Word2024SdtFormatLock, WordNumberingEquations, WordProcessingDrawing, WordProcessingML, WordprocessingCanvas, WordprocessingGroup, WordprocessingInk, WordprocessingShape, XML, XmlSchemaInstance
Constant Summary collapse
- DOCUMENT_PART_SCOPES =
Shared namespace_scope for document-level OOXML parts.
Used by footnotes, endnotes, header, footer, and numbering models to declare all extension namespace prefixes that may appear in mc:Ignorable. Declared with declare: :always so serialization emits all needed xmlns declarations regardless of parse state.
[ { namespace: WordprocessingCanvas, declare: :always }, { namespace: ChartEx, declare: :always }, { namespace: ChartEx1, declare: :always }, { namespace: ChartEx2, declare: :always }, { namespace: ChartEx3, declare: :always }, { namespace: ChartEx4, declare: :always }, { namespace: ChartEx5, declare: :always }, { namespace: ChartEx6, declare: :always }, { namespace: ChartEx7, declare: :always }, { namespace: ChartEx8, declare: :always }, { namespace: MarkupCompatibility, declare: :always }, { namespace: InkDrawing, declare: :always }, { namespace: Model3D, declare: :always }, { namespace: Office, declare: :always }, { namespace: OfficeExtensionList, declare: :always }, { namespace: Relationships, declare: :always }, { namespace: MathML, declare: :always }, { namespace: Vml, declare: :always }, { namespace: Word2010Drawing, declare: :always }, { namespace: WordProcessingDrawing, declare: :always }, { namespace: VmlWord, declare: :always }, { namespace: Word2010, declare: :always }, { namespace: Word2012, declare: :always }, { namespace: Word2018Cex, declare: :always }, { namespace: Word2016Cid, declare: :always }, { namespace: Word2018, declare: :always }, { namespace: Word2023Du, declare: :always }, { namespace: Word2020SdtDataHash, declare: :always }, { namespace: Word2024SdtFormatLock, declare: :always }, { namespace: Word2015Symex, declare: :always }, { namespace: WordprocessingGroup, declare: :always }, { namespace: WordprocessingInk, declare: :always }, { namespace: WordNumberingEquations, declare: :always }, { namespace: WordprocessingShape, declare: :always }, ].freeze
- EXTENSION_NAMESPACES =
Extension namespaces whose prefixes appear in mc:Ignorable on document-level parts. Single source of truth — prefixes are derived from the namespace class definitions above.
[ Word2010, Word2012, Word2015Symex, Word2016Cid, Word2018, Word2018Cex, Word2023Du, Word2020SdtDataHash, Word2024SdtFormatLock, ].freeze
- EXTENSION_PREFIXES =
mc:Ignorable prefixes for settings/fontTable/styles/webSettings (document-level parts without wp14). Sorted for canonical output.
EXTENSION_NAMESPACES.map { |ns| ns.new.prefix }.sort.join(" ").freeze
- FULL_IGNORABLE_PREFIXES =
mc:Ignorable prefixes for document body parts that also include the wp14 (Word 2010 Drawing) namespace. Sorted for canonical output.
(EXTENSION_NAMESPACES + [Word2010Drawing]).map { |ns| ns.new.prefix }.sort.join(" ").freeze