Module: Newsmlg2
- Defined in:
- lib/newsmlg2.rb,
lib/newsmlg2/base.rb,
lib/newsmlg2/i18n.rb,
lib/newsmlg2/types.rb,
lib/newsmlg2/utils.rb,
lib/newsmlg2/errors.rb,
lib/newsmlg2/scheme.rb,
lib/newsmlg2/builder.rb,
lib/newsmlg2/catalog.rb,
lib/newsmlg2/version.rb,
lib/newsmlg2/document.rb,
lib/newsmlg2/nar_model.rb,
lib/newsmlg2/types/bag.rb,
lib/newsmlg2/types/geo.rb,
lib/newsmlg2/types/ids.rb,
lib/newsmlg2/types/poi.rb,
lib/newsmlg2/types/link.rb,
lib/newsmlg2/catalog_ref.rb,
lib/newsmlg2/types/facet.rb,
lib/newsmlg2/builder/node.rb,
lib/newsmlg2/types/rights.rb,
lib/newsmlg2/catalog_cache.rb,
lib/newsmlg2/catalog_store.rb,
lib/newsmlg2/configuration.rb,
lib/newsmlg2/nar_namespace.rb,
lib/newsmlg2/types/concept.rb,
lib/newsmlg2/types/same_as.rb,
lib/newsmlg2/items/any_item.rb,
lib/newsmlg2/items/item_ref.rb,
lib/newsmlg2/nitf_namespace.rb,
lib/newsmlg2/same_as_scheme.rb,
lib/newsmlg2/types/xml_base.rb,
lib/newsmlg2/types/xml_lang.rb,
lib/newsmlg2/items/news_item.rb,
lib/newsmlg2/items/part_meta.rb,
lib/newsmlg2/types/concept_id.rb,
lib/newsmlg2/types/block_types.rb,
lib/newsmlg2/items/catalog_item.rb,
lib/newsmlg2/items/concept_item.rb,
lib/newsmlg2/items/content_meta.rb,
lib/newsmlg2/items/news_message.rb,
lib/newsmlg2/items/package_item.rb,
lib/newsmlg2/types/ext_property.rb,
lib/newsmlg2/types/inline_types.rb,
lib/newsmlg2/items/planning_item.rb,
lib/newsmlg2/types/event_details.rb,
lib/newsmlg2/types/party_details.rb,
lib/newsmlg2/base/flex_attributes.rb,
lib/newsmlg2/base/i18n_attributes.rb,
lib/newsmlg2/items/knowledge_item.rb,
lib/newsmlg2/types/flex_prop_type.rb,
lib/newsmlg2/types/hierarchy_info.rb,
lib/newsmlg2/types/object_details.rb,
lib/newsmlg2/types/qual_prop_type.rb,
lib/newsmlg2/types/flex1_prop_type.rb,
lib/newsmlg2/types/flex_prop2_type.rb,
lib/newsmlg2/types/item_management.rb,
lib/newsmlg2/types/qcode_prop_type.rb,
lib/newsmlg2/types/related_concept.rb,
lib/newsmlg2/types/ruby_annotation.rb,
lib/newsmlg2/types/intl_string_type.rb,
lib/newsmlg2/base/ranking_attributes.rb,
lib/newsmlg2/types/concept_name_type.rb,
lib/newsmlg2/types/intl_string_type2.rb,
lib/newsmlg2/base/quantify_attributes.rb,
lib/newsmlg2/types/content_meta_types.rb,
lib/newsmlg2/types/qual_rel_prop_type.rb,
lib/newsmlg2/base/authority_attributes.rb,
lib/newsmlg2/base/entity_details_group.rb,
lib/newsmlg2/types/date_time_prop_type.rb,
lib/newsmlg2/base/item_management_group.rb,
lib/newsmlg2/base/qualifying_attributes.rb,
lib/newsmlg2/types/flex_party_prop_type.rb,
lib/newsmlg2/types/versioned_string_type.rb,
lib/newsmlg2/base/common_power_attributes.rb,
lib/newsmlg2/base/news_content_attributes.rb,
lib/newsmlg2/base/concept_definition_group.rb,
lib/newsmlg2/base/time_validity_attributes.rb,
lib/newsmlg2/types/date_opt_time_prop_type.rb,
lib/newsmlg2/types/flex_location_prop_type.rb,
lib/newsmlg2/base/arbitrary_value_attributes.rb,
lib/newsmlg2/base/deprecated_link_attributes.rb,
lib/newsmlg2/base/descriptive_metadata_group.rb,
lib/newsmlg2/base/persistent_edit_attributes.rb,
lib/newsmlg2/base/recurrence_rule_attributes.rb,
lib/newsmlg2/base/target_resource_attributes.rb,
lib/newsmlg2/base/concept_relationships_group.rb,
lib/newsmlg2/base/news_content_characteristics.rb,
lib/newsmlg2/base/news_content_type_attributes.rb,
lib/newsmlg2/types/date_time_or_null_prop_type.rb,
lib/newsmlg2/base/administrative_metadata_group.rb,
lib/newsmlg2/base/confirmation_status_attributes.rb,
lib/newsmlg2/base/media_content_characteristics1.rb,
lib/newsmlg2/types/truncated_date_time_prop_type.rb,
lib/newsmlg2/types/approximate_date_time_prop_type.rb
Overview
Newsmlg2 is a lutaml-model-based object model for IPTC NewsML-G2 (NAR): parse, manipulate, build and serialize NewsML-G2 XML with round-trip fidelity. Targets specification version 2.35, power conformance.
Defined Under Namespace
Modules: Base, CatalogCache, Configuration, I18n, Types, Utils Classes: Action, AliasNotFoundInCatalogs, AltLoc, AnyItem, Assert, AssignedTo, Builder, Catalog, CatalogContainer, CatalogItem, CatalogRef, CatalogStore, Channel, ConceptItem, ConceptRef, ConceptSet, ContentMeta, ContentMetaAcD, ContentMetaCat, ContentSet, DeliveredItemRef, Delivery, DerivedFrom, DerivedFromValue, Destination, Document, Error, G2ContentType, Group, GroupRef, GroupSet, Header, Hop, HopHistory, InlineData, InlineRef, InlineXML, ItemCount, ItemMeta, ItemRef, ItemSet, KnowledgeItem, MessageChannel, MessageTimestamp, MissingGuidError, NarModel, NarNamespace, NewsContentCharacteristicsElement, NewsCoverage, NewsCoverageSet, NewsItem, NewsMessage, NitfNamespace, Origin, PackageItem, PartMeta, PartMetaRole, Planning, PlanningItem, Priority, PubHistory, Published, RegionDelim, RemoteContent, SameAsScheme, Scheduled, Scheme, SchemeMeta, Sender, Sent, StringType, TimeDelim, Timestamp, TransmitId, UnknownRootElement, UriNotFoundInCatalogs
Constant Summary collapse
- SPEC_VERSION =
The NewsML-G2 specification version this library models; used as the default standardversion of serialized items.
'2.35'- URINotFoundInCatalogs =
UriNotFoundInCatalogs- VERSION =
'0.1.1'
Class Method Summary collapse
- .build_catalog_item(**attributes) ⇒ Object
- .build_concept_item(**attributes) ⇒ Object
-
.build_item(klass, **attributes) ⇒ Object
Builder DSL entry points (see Newsmlg2::Builder).
- .build_knowledge_item(**attributes) ⇒ Object
- .build_news_item(**attributes) ⇒ Object
- .build_news_message(**attributes) ⇒ Object
- .build_package_item(**attributes) ⇒ Object
- .build_planning_item(**attributes) ⇒ Object
-
.parse(xml) ⇒ Newsmlg2::Document
Parses NewsML-G2 XML (any item type or a newsMessage envelope).
-
.parse_file(path) ⇒ Newsmlg2::Document
Parses a NewsML-G2 XML file.
-
.qcode_to_uri(qcode, document) ⇒ Object
Expands a qcode (e.g. "ninat:text") to its full concept URI using the catalogs registered with the given document.
-
.uri_to_qcode(uri, document) ⇒ Object
Compresses a concept URI back to a qcode using the given document's catalogs.
Class Method Details
.build_catalog_item(**attributes) ⇒ Object
158 159 160 |
# File 'lib/newsmlg2.rb', line 158 def build_catalog_item(**attributes, &) Builder.build_catalog_item(**attributes, &) end |
.build_concept_item(**attributes) ⇒ Object
150 151 152 |
# File 'lib/newsmlg2.rb', line 150 def build_concept_item(**attributes, &) Builder.build_concept_item(**attributes, &) end |
.build_item(klass, **attributes) ⇒ Object
Builder DSL entry points (see Newsmlg2::Builder).
138 139 140 |
# File 'lib/newsmlg2.rb', line 138 def build_item(klass, **attributes, &) Builder.build(klass, attributes, &) end |
.build_knowledge_item(**attributes) ⇒ Object
154 155 156 |
# File 'lib/newsmlg2.rb', line 154 def build_knowledge_item(**attributes, &) Builder.build_knowledge_item(**attributes, &) end |
.build_news_item(**attributes) ⇒ Object
142 143 144 |
# File 'lib/newsmlg2.rb', line 142 def build_news_item(**attributes, &) Builder.build_news_item(**attributes, &) end |
.build_news_message(**attributes) ⇒ Object
166 167 168 |
# File 'lib/newsmlg2.rb', line 166 def (**attributes, &) Builder.(**attributes, &) end |
.build_package_item(**attributes) ⇒ Object
146 147 148 |
# File 'lib/newsmlg2.rb', line 146 def build_package_item(**attributes, &) Builder.build_package_item(**attributes, &) end |
.build_planning_item(**attributes) ⇒ Object
162 163 164 |
# File 'lib/newsmlg2.rb', line 162 def build_planning_item(**attributes, &) Builder.build_planning_item(**attributes, &) end |
.parse(xml) ⇒ Newsmlg2::Document
Parses NewsML-G2 XML (any item type or a newsMessage envelope).
110 111 112 |
# File 'lib/newsmlg2.rb', line 110 def parse(xml) Document.parse(xml) end |
.parse_file(path) ⇒ Newsmlg2::Document
Parses a NewsML-G2 XML file.
117 118 119 |
# File 'lib/newsmlg2.rb', line 117 def parse_file(path) Document.parse_file(path) end |
.qcode_to_uri(qcode, document) ⇒ Object
Expands a qcode (e.g. "ninat:text") to its full concept URI using the catalogs registered with the given document.
125 126 127 |
# File 'lib/newsmlg2.rb', line 125 def qcode_to_uri(qcode, document) Utils.qcode_to_uri(qcode, document) end |
.uri_to_qcode(uri, document) ⇒ Object
Compresses a concept URI back to a qcode using the given document's catalogs.
133 134 135 |
# File 'lib/newsmlg2.rb', line 133 def uri_to_qcode(uri, document) Utils.uri_to_qcode(uri, document) end |