Data types as representations of dynamic capabilities

By establishing a communication mechanism between nodes in the O-RAN system, determining and managing data type status, the problem of difficulty in real-time update of data type availability and production capacity is solved, and the dynamic capability representation and management of the system is realized.

CN120188145APending Publication Date: 2025-06-20TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380078062.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-11-08
Filing Date
2023-11-07
Publication Date
2025-06-20

AI Technical Summary

Technical Problem

In O-RAN systems, dynamic capabilities between data producers and consumers are difficult to manage effectively, resulting in difficult notification and updates on the availability and production capacity of data types in real time.

Method used

By establishing a communication mechanism between the producer node, the management node and the consumer node, the data type status is determined, and a request is sent to the management node to register, update or remove registration of the data type.

Benefits of technology

Real-time monitoring and management of data type status is realized, ensuring that data consumers can obtain dynamic changes in data producer capabilities in a timely manner, thereby improving the flexibility and reliability of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120188145A_ABST
    Figure CN120188145A_ABST
Patent Text Reader

Abstract

A method in a producer node configured to communicate with a management node and a consumer node is described. The method includes determining a data type state corresponding to a data type. The data type is associated with data that a producer node is configurable to produce to a consumer node. The data type status indicates the ability of the producer node to produce data of the data type. The method further includes sending a first request to the management node, the first request requesting the management node to register the data type. The first request comprises a corresponding data type state.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to data communication and, in particular, to data types as representations of dynamic capabilities (e.g., of a system). Background Art

[0002] The Open Radio Access Network (O-RAN) Alliance has developed and is developing O-RAN specifications and standards for mobile operators, vendors, and institutions. The O-RAN R1 interface specification describes that data producers register, as part of the Data Management and Exposure (DME) service, the data types that they can produce data for. The R1 interface can refer to the Open Logic Interface. Data consumers can utilize the DME service producer to discover available data types and further request or subscribe to data of a specific data type.

[0003] A data type can be a pattern-based model of how to request and deliver data of a specific type. Data producers and data consumers can be installable applications (e.g., called rApps), and thus, the system capabilities for producing and using data can be dynamic. However, there may be more than one data producer registered for each data type, and a data consumer may not know which data producer produced the data, e.g., based on a request or subscription for data of that type. Additionally, other interfaces can also be used, such as the O-RAN A1 interface (i.e., an interface configurable for discovering, requesting, and delivering rich information). However, the applications that produce and / or consume data may reside in different functions that communicate via the A1 interface.

[0004] Furthermore, the ability of a data producer to produce data of the data types that the data producer has registered at a given time may depend on dynamic aspects, such as the volume and availability of the input data that it depends on. An application can utilize a machine learning (ML) model, where updates or retraining are performed before becoming available for producing data. In other words, the data producer may become unavailable for producing data when other steps are being performed. Additionally, a data consumer may not be notified and / or may not know of the unavailability of the data producer. Summary of the Invention

[0005] Some embodiments advantageously provide methods, systems, and apparatuses for determining a data type as a representation of a dynamic capability (e.g., a system's capability, including the availability of a producer node for a data type).

[0006] According to one aspect, a method in a producer node is described. The producer node is configured to communicate with a management node and a consumer node. The method includes determining a data type state corresponding to a data type. The data type is associated with data that the producer node is configurable to produce for the consumer node. The data type state indicates the ability of the producer node to produce data of the data type. The method further includes sending a first request to the management node. The first request requests the management node to register the data type. The first request includes the corresponding data type state.

[0007] In some embodiments, the first request further includes one or more of the following: a data type identifier, data type information associated with a data job mode, a job status mode, a job constraint mode, and a job result mode, metadata related to the data type, data job constraint information.

[0008] In some other embodiments, the method further includes sending a second request. The second request requests the management node to update or remove the registration of the data type based on one or both of state transitions between the data type state and another data type state of the data type.

[0009] In some embodiments, the method further includes determining that a state transition has occurred based on a change of the data type state to another data type state.

[0010] In some other embodiments, the data type state includes one of the following: available, busy, disabled, closed, locked.

[0011] In some embodiments, when the data type state includes available, the data type state indicates one or more of the following: the data type is available for use, the data type is discoverable, data requests are accepted.

[0012] In some other embodiments, when the data type state includes busy, the data type state indicates one or more of the following: the data type is available for use, there is no free capacity, data requests are accepted, and new jobs are idle until there is free capacity.

[0013] In some embodiments, when the data type state includes disabled, the data type state indicates one or more of the following: the data type is not available for use, existing jobs are not enabled, data requests are not accepted.

[0014] In some other embodiments, when the data type state includes closed, the data type state indicates one or more of the following: the data type is not available for use, existing jobs are enabled, data requests are not accepted.

[0015] In some embodiments, when the data type includes locked, the data type status indicates one or more of the following: the data type is not available for use, existing jobs are idle, and data requests are not accepted.

[0016] According to another aspect, a producer node is described. The producer node is configured to communicate with a management node and a consumer node. The producer node is configured to determine a data type status corresponding to a data type. The data type is associated with data that the producer node is configurable to produce for the consumer node. The data type status indicates the ability of the producer node to produce data of the data type. The producer node is further configured to send a first request to the management node. The first request requests the management node to register the data type. The first request includes the corresponding data type status.

[0017] In some embodiments, the first request further includes one or more of the following: a data type identifier, data type information associated with a data job mode, a job status mode, a job constraint mode, and a job result mode, metadata related to the data type, and data job constraint information.

[0018] In some other embodiments, the producer node is further configured to send a second request. The second request requests the management node to update or remove the registration of the data type based on one or both of a state transition of the data type status and another data type status of the data type.

[0019] In some embodiments, the producer node is further configured to determine that a state transition has occurred based on a change of the data type status from one data type status to another.

[0020] In some other embodiments, the data type status includes one of the following: available, busy, disabled, closed, locked.

[0021] In some embodiments, when the data type status includes available, the data type status indicates one or more of the following: the data type is available for use, the data type is discoverable, and data requests are accepted.

[0022] In some other embodiments, when the data type status includes busy, the data type status indicates one or more of the following: the data type is available for use, there is no free capacity, data requests are accepted, and new jobs are idle until there is free capacity.

[0023] In some embodiments, when the data type status includes disabled, the data type status indicates one or more of the following: the data type is not available for use, existing jobs are not enabled, and data requests are not accepted.

[0024] In some other embodiments, when the data type status includes "closed", the data type status indicates one or more of the following: the data type is not available for use, existing jobs are enabled, and data requests are not accepted.

[0025] In some embodiments, when the data type includes "locked", the data type status indicates one or more of the following: the data type is not available for use, existing jobs are idle, and data requests are not accepted.

[0026] According to one aspect, a method in a management node is described. The management node is configured to communicate with a producer node and a consumer node. The method includes registering a data type at the management node. The registration includes a data type status corresponding to the data type. The data type is associated with data that the producer node is configurable to produce for the consumer node. The data type status indicates the ability of the producer node to produce data of the data type. The method further includes making at least the data type status available to the consumer node.

[0027] In some embodiments, the method further includes receiving a first request from the producer node. The first request requests the management node to register a data type and includes a data type status.

[0028] In some other embodiments, the first request further includes one or more of the following: a data type identifier, data type information associated with a data job mode, a job status mode, a job constraint mode, and a job result mode, metadata associated with the data type, and data job constraint information.

[0029] In some embodiments, the method further includes one or both of the following: (A) receiving a second request from the producer node, where the second request requests the management node to update or remove the registration of the data type based on one or both of a state transition of the data type status and another data type status of the data type; and (B) in response to the second request, updating or removing the registration of the data type.

[0030] In some other embodiments, the data type status includes one of the following: available, busy, disabled, closed, locked.

[0031] In some embodiments, the method further includes receiving a third request from the consumer node. The third request is a subscription request to make at least the data type status available to the consumer node.

[0032] In some other embodiments, the method further includes receiving a fourth request from the consumer node for a data type identifier. The fourth request includes a filtering criterion associated with the data type. The method further includes matching the filtering criterion to the registered metadata associated with the data type, and sending a first response to the consumer node, where the first response includes at least a subset of the data type identifier and the registered metadata.

[0033] In some embodiments, the method further includes receiving, from a consumer node, a fifth request for information associated with a data type. The fifth request includes a data type identifier. The method further includes sending, to the consumer node, a second response including the information. The information is determined based on an integration of information registered for the data type, and the data type is associated with at least one other data producer node.

[0034] In some other embodiments, the method further includes: receiving, from a consumer node, a sixth request for a data type status, wherein the sixth request includes a data type identifier; in response to receiving the sixth request, determining an object available to the consumer node to validate the object according to an open application programming interface schema; and sending, to the consumer node, a third response including the object.

[0035] According to another aspect, a management node is described that is configured to communicate with a producer node and a consumer node. The management node is configured to register a data type at the management node. The registration includes a data type status corresponding to the data type. The data type is associated with data that a producer node is configurable to produce for a consumer node. The data type status indicates the ability of the producer node to produce data of the data type. The management node is further configured to make at least the data type status available to the consumer node.

[0036] In some embodiments, the management node is further configured to receive a first request from a producer node. The first request requests the management node to register a data type and includes a data type status.

[0037] In some other embodiments, the first request further includes one or more of the following: a data type identifier, data type information associated with a data job mode, a job status mode, a job constraint mode, and a job result mode, metadata associated with the data type, data job constraint information.

[0038] In some embodiments, the management node is further configured to one or more of the following: (A) receive a second request from a producer node, wherein the second request requests the management node to update or remove the registration of the data type based on one or both of a state transition of the data type status of the data type and another data type status; and (B) in response to the second request, update or remove the registration of the data type.

[0039] In some other embodiments, the data type status includes one of the following: available, busy, disabled, closed, locked.

[0040] In some embodiments, the management node is further configured to receive a third request from a consumer node. The third request is a subscription request to make at least the data type status available to the consumer node.

[0041] In some other embodiments, the management node is further configured to receive a fourth request for a data type identifier from a consumer node. The fourth request includes a filtering criterion associated with the data type. The management node is further configured to match the filtering criterion to registered metadata associated with the data type, and send a first response to the consumer node. The first response includes at least a subset of the data type identifier and the registered metadata.

[0042] In some embodiments, the management node is further configured to receive a fifth request for information associated with a data type from a consumer node. The fifth request includes a data type identifier. The management node is further configured to send a second response including the information to the consumer node. The information is determined based on an integration of information registered for the data type. The data type is associated with at least one other data producer node.

[0043] In some other embodiments, the management node is further configured to receive a sixth request for a data type status from a consumer node. The sixth request includes a data type identifier. The management node is further configured to, in response to receiving the sixth request, determine an object available to the consumer node to verify the object according to an open application programming interface schema. A third response including the object is sent to the consumer node.

[0044] According to one aspect, a method implemented in a consumer node is described, the consumer node being configured to communicate with a producer node and a management node. The method includes obtaining at least a data type status corresponding to a data type from the management node, where the data type is associated with data that a producer node is configurable to produce for the consumer node, and the data type status indicates the ability of the producer node to produce data of the data type. One or more actions are performed based at least on the obtained data type status.

[0045] In some embodiments, the data type is registered at the management node and is further associated with one or more of the following: a data type identifier, data type information associated with a data job mode, a job status mode, a job constraint mode, and a job result mode, metadata associated with the data type, data job constraint information.

[0046] In some other embodiments, the data type status includes one of the following: available, busy, disabled, closed, locked.

[0047] In some embodiments, the method further includes sending a first request to the consumer node. The first request is a subscription request that at least makes the data type status available to the consumer node, and the data type status is obtained when the data type status is made available to the management node.

[0048] In some other embodiments, the method further includes: sending a second request for a data type identifier to a management node, where the second request includes a filtering criterion associated with the data type; and receiving a first response from the management node. The first response includes at least a subset of the data type identifier and the registered metadata.

[0049] In some embodiments, the method further includes sending a third request for information associated with a data type to a management node. The third request includes the data type identifier. The method further includes receiving a second response from the management node that includes information associated with the data type. The information is determined based on an integration of information registered for the data type. The data type is associated with at least one other data producer node.

[0050] In some other embodiments, the method further includes, in response to the second response, validating data associated with a job constraint object according to a job constraint mode.

[0051] In some embodiments, the method further includes sending a fourth request for a data type status to a management node, where the fourth request includes the data type identifier. The method further includes receiving a third response from the management node, the third response including an object available for use by a consumer node to validate the object according to an open application programming interface mode.

[0052] In some other embodiments, the method further includes validating an object according to an open application programming interface mode.

[0053] In some embodiments, performing one or more actions includes requesting data of a data type from a producer node based on the data type status, or avoiding a request for data of the data type.

[0054] According to another aspect, a consumer node is configured to communicate with a producer node and a management node. The consumer node is configured to obtain at least a data type status corresponding to a data type from the management node. The data type is associated with data that a producer node is configurable to produce for the consumer node, and the data type status indicates the ability of the producer node to produce data of the data type. The consumer node is further configured to perform one or more actions based at least on the obtained data type status.

[0055] In some embodiments, the data type is registered at the management node and is also associated with one or more of the following: a data type identifier, data type information associated with a data job mode, a job condition mode, a job constraint mode, and a job result mode, metadata associated with the data type, data job constraint information.

[0056] In some other embodiments, the data type status includes one of the following: available, busy, disabled, closed, locked.

[0057] In some embodiments, the consumer node is further configured to:

[0058] Send a first request to the consumer node, where the first request is a subscription request that at least makes the data type status available to the consumer node. The data type status is obtained when the data type status is made available to the management node.

[0059] In some other embodiments, the consumer node is further configured to send a second request for a data type identifier to the management node. The second request includes a filtering criterion associated with the data type. The first response is received from the management node. The first response includes at least a subset of the data type identifier and the registered metadata.

[0060] In some embodiments, the consumer node is further configured to send a third request for information associated with the data type to the management node, where the third request includes the data type identifier, and receive a second response including the information associated with the data type from the management node. The information is determined based on the integration of the information registered for the data type, and the data type is associated with at least one other data producer node.

[0061] In some other embodiments, the consumer node is further configured to verify the data associated with the job constraint object according to the job constraint mode in response to the second response.

[0062] In some embodiments, the consumer node is further configured to: send a fourth request for the data type status to the management node, where the fourth request includes the data type identifier; and receive a third response from the management node, the third response including an object available to the consumer node to verify the object according to the open application programming interface mode.

[0063] In some other embodiments, the consumer node is further configured to verify the object according to the open application programming interface mode.

[0064] In some embodiments, performing one or more actions includes requesting data of the data type from the producer node based on the data type status, or avoiding requesting data of the data type. BRIEF DESCRIPTION OF THE DRAWINGS

[0065] With reference to the following detailed description and considering the accompanying drawings, a more complete understanding of the embodiments and their attendant advantages and features will be more readily understood, where:

[0066] Figure 1 is a schematic diagram showing an example network architecture of a system according to the principles in the present disclosure;

[0067] Figure 2is a block diagram of an example node according to some embodiments of the present disclosure;

[0068] Figure 3 is a flowchart of an example process in a producer node according to some embodiments of the present disclosure;

[0069] Figure 4 is a flowchart of an example process in an administrative node according to some embodiments of the present disclosure;

[0070] Figure 5 is a flowchart of an example process in a consumer node according to some embodiments of the present disclosure;

[0071] Figure 6 is a flowchart of an example process in a producer node according to some embodiments of the present disclosure;

[0072] Figure 7 is a flowchart of an example process in an administrative node according to some embodiments of the present disclosure;

[0073] Figure 8 is a flowchart of an example process in a consumer node according to some embodiments of the present disclosure;

[0074] Figure 9 is an example system overview according to some embodiments of the present disclosure;

[0075] Figure 10 is an example state diagram according to some embodiments of the present disclosure; and

[0076] Figure 11 is a diagram associated with an example data registration process according to some embodiments of the present disclosure;

[0077] Figure 12 is a diagram associated with an example data type discovery process and data type status and registration update processes according to some embodiments of the present disclosure;

[0078] Figure 13 illustrates example data type status and conversion according to some embodiments of the present disclosure;

[0079] Figure 14 illustrates other example data type status and conversion according to some embodiments of the present disclosure;

[0080] Figure 15 illustrates an example model for type management according to some embodiments of the present disclosure;

[0081] Figure 16 illustrates example type lifecycle management (LCM) aspects according to some embodiments of the present disclosure;

[0082] Figure 17 Shows an example model for job management according to some embodiments of the present disclosure;

[0083] Figure 18 Shows example job LCM aspect management according to some embodiments of the present disclosure;

[0084] Figure 19 Shows an example dependency between types and job operation statuses according to some embodiments of the present disclosure;

[0085] Figure 20 Shows a part of an example combination of models for type management according to some embodiments of the present disclosure;

[0086] Figure 21 Shows other parts of an example combination of models for type management according to some embodiments of the present disclosure;

[0087] Figure 22 Shows still other parts of an example combination of models for type management according to some embodiments of the present disclosure; and

[0088] Figure 23 Shows a type state transition diagram from the perspective of job management according to some embodiments of the present disclosure. Detailed Description

[0089] Before describing the example embodiments in detail, note that the embodiments mainly reside in combinations of device components and processing steps related to representing data types as dynamic capabilities. Accordingly, components are represented by conventional symbols in the drawings where appropriate, and only those specific details relevant to understanding the embodiments are shown so as not to obscure the present disclosure with details readily understandable to those of ordinary skill in the art who benefit from the description herein. Throughout the specification, the same numbers refer to the same elements.

[0090] As used herein, relational terms such as “first” and “second,” “top” and “bottom,” etc. may be used solely to distinguish one entity or element from another entity or element, and do not necessarily require or imply any physical or logical relationship or order between these entities or elements. The terms used herein are for the purpose of describing particular embodiments only and are not intended to limit the concepts described herein. As used herein, the singular forms “a,” “an,” and “the” are also intended to include the plural forms unless the context clearly indicates otherwise. It will be further understood that the terms “comprises,” “comprising,” “includes,” and / or “including,” when used herein, specify the presence of the stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.

[0091] In the embodiments described herein, terms such as "communicate with" can be used to indicate electrical or data communication, which can be achieved, for example, by physical contact, induction, electromagnetic radiation, wireless signaling, infrared signaling, or optical signaling. Those of ordinary skill in the art will understand that multiple components can interoperate, and modifications and variations for achieving electrical and data communication are possible.

[0092] In some embodiments described herein, terms such as "coupled", "connected", etc. can be used herein to indicate a connection, but not necessarily a direct connection, and can include wired and / or wireless connections.

[0093] The term "node" (or "network node") used herein can be any type of network node that can be included in a network. A node can also include any one of a producer node (e.g., a data producer node, a service producer node), a management node, a management and / or open node (e.g., a data management and open (DME) function), a DME service producer, a consumer node (e.g., a data consumer node), a server, a client, etc. A network can refer to any network, such as an O-RAN network, a 3rd Generation Partnership Project (3GPP) network, etc.

[0094] In some embodiments, a producer node can be configured to communicate with a management node via a control plane. In some other embodiments, a producer node can be configured to communicate with a consumer node via a data plane.

[0095] In addition, the term "rApp" is used in the present disclosure, which can refer to an application (e.g., a software application) in a non-real-time (Non-RT) radio access network (RAN) intelligent controller (RIC), and the application can be designed and / or configured to consume and / or produce services produced / consumed by the Non-RT RIC framework and / or other rApps.

[0096] In some embodiments, the term node (e.g., one or more nodes described in one or more embodiments of the present disclosure, such as any recited embodiment) includes (e.g., encompasses) virtual / logical nodes as well as physical nodes. In a non-limiting example, a virtual / logical node can be and / or include an rApp. In one or more embodiments (e.g., preferred embodiments), a producer node and / or a consumer node are each (and / or each can include) an rApp.

[0097] 3GPP has developed and is developing standards for fourth generation (4G) (also known as Long Term Evolution (LTE)), fifth generation (5G) (also known as New Radio (NR)), and sixth generation (6G) wireless communication systems. Among other features, such systems provide broadband communication between network nodes (such as base stations) and mobile wireless devices (WDs), as well as communication between network nodes and between WDs.

[0098] In some embodiments, a node may include a base station (BS), radio base station, base transceiver station (BTS), base station controller (BSC), radio network controller (RNC), gNodeB (gNB), evolved Node B (eNB or eNodeB), Node B, multi-standard radio (MSR) radio node (such as an MSR BS), multi-cell / multicast coordination entity (MCE), relay node, host node controlling the relay, radio access point (AP), transmission point, transmission node, remote radio unit (RRU), remote radio head (RRH), core network node (e.g., mobility management entity (MME), self-organizing network (SON) node, coordination node, positioning node, MDT node, etc.), external node (e.g., third-party node, node external to the current network), node in a distributed antenna system (DAS), spectrum access system (SAS) node, element management system (EMS), etc. A node may also include test equipment and / or radio nodes. The term "radio node" as used herein may also be used to denote a wireless device (WD), such as a wireless device (WD) or a radio network node.

[0099] In some embodiments, the non-limiting terms wireless device (WD) or user equipment (UE) may be used interchangeably. A WD herein may be any type of wireless device capable of communicating with a network node or another WD via radio signals, such as a wireless device (WD). A WD may also be a radio communication device, target device, device-to-device (D2D) WD, machine type WD or WD capable of machine-to-machine communication (M2M), low-cost and / or low-complexity WD, sensor equipped with a WD, tablet, mobile terminal, smart phone, laptop embedded equipment (LEE), laptop mounted equipment (LME), USB dongle, customer premise equipment (CPE), Internet of Things (IoT) device, or narrowband IoT (NB-IoT) device, etc.

[0100] In some embodiments, the term "node" may refer to a WD, UE, or radio network node.

[0101] In addition, in some embodiments, the general term "radio network node" is used. It can be any kind of radio network node, which can include any one of a base station, radio base station, base station transceiver, base station controller, network controller, RNC, evolved Node B (eNB), Node B, gNB, multi-cell / multicast coordination entity (MCE), relay node, access point, radio access point, remote radio unit (RRU), remote radio head (RRH).

[0102] Note that although terms from a particular system (such as, for example, O-RAN, 3GPP LTE, and / or New Radio (NR)) may be used in this disclosure, this should not be considered as limiting the scope of this disclosure to the above systems. Other networks and / or systems, including but not limited to any network configured for data communication (and / or sending / receiving of control signals), Wideband Code Division Multiple Access (WCDMA), Worldwide Interoperability for Microwave Access (WiMax), Ultra Mobile Broadband (UMB), and Global System for Mobile Communications (GSM), may also benefit from the ideas covered by this disclosure.

[0103] It should also be noted that the functions described herein as being performed by any node (such as, for example, a consumer node, a management node, a producer node, a network node, and / or a wireless device) can be distributed across multiple nodes. In other words, it is contemplated that the functions of the nodes described herein are not limited to the performance of a single physical device and can actually be distributed among several physical devices.

[0104] Unless otherwise defined, all terms used herein (including technical and scientific terms) have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure belongs. It should also be understood that the terms used herein should be interpreted as having a meaning consistent with their meaning in the context of this specification and the relevant art, and they will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.

[0105] Referring to the accompanying drawings, in which like elements are represented by like reference numerals, a schematic diagram of a system 10 according to an embodiment is shown in Figure 1 in which. The system 10 can be an O-RAN system or any other system, such as a 3GPP system. In addition, the system 10 can include one or more of the following: a producer node 12, a management node 14, and a consumer node 16 that communicate via a network 17. Any one of the producer node 12, the management node 14, and the consumer node 16 can be configured to communicate with at least one of the other nodes.

[0106] The producer node 12 is configured to include a producer unit 22, and the producer unit 22 is configured to perform any steps and / or tasks and / or processes and / or methods and / or features described in the present disclosure, such as determining data type information and / or registering data type information with another node.

[0107] The management node 14 is configured to include a management unit 24, and the management unit 24 is configured to perform any steps and / or tasks and / or processes and / or methods and / or features described in the present disclosure, such as registering data type information and / or opening data type information and / or making data type information discoverable.

[0108] The consumer node 16 is configured to include a consumer unit 26, and the consumer unit 26 is configured to perform any steps and / or tasks and / or processes and / or methods and / or features described in the present disclosure, such as obtaining data type information and / or performing at least one action based on the data type information.

[0109] In some embodiments, any one of the producer node 12, the management node 14, and the consumer node 16 is one or more open RAN (ORAN) network nodes. An ORAN network node is a node in the system 10 that supports ORAN specifications (e.g., specifications published by the O-RAN Alliance or any similar organization) and can operate alone or with other nodes to implement one or more functions of any node in the system 10, including one or more access network nodes and / or core network nodes. Examples of ORAN network nodes include an open radio unit (O-RU), an open distributed unit (O-DU), an open central unit (O-CU) (which includes an O-CU control plane (O-CU-CP) or an O-CU user plane (O-CU-UP)), a RAN intelligent controller (near real-time or non-real-time) hosting software or software plugins such as a near real-time control application (e.g., xApp) or a non-real-time control application (e.g., rApp), or any combination thereof (the adjective "open" indicates support for ORAN specifications). A network node can support the specifications by, for example, supporting interfaces defined by the ORAN specifications, such as A1, F1, W1, E1, E2, X2, Xn interfaces, an open fronthaul user plane interface, or an open fronthaul management plane interface. In addition, an ORAN access node can be a logical node in a physical node. Further, an ORAN network node can be implemented in a virtualized environment that virtualizes one or more network functions. For example, the virtualized environment can include an O-Cloud computing platform coordinated by an O-2 interface defined by a service management and orchestration framework via the O-RAN Alliance or similar technologies. The access network node facilitates the direct or indirect connection of user equipment (UE), such as connecting the UE to the core network (e.g., network 17) over one or more wireless connections.

[0110] Reference will now be made to Figure 2 an example implementation of the producer node 12, the consumer node 16, and the management node 14 discussed in the foregoing paragraphs according to an embodiment. In the system 10, the producer node 12 may have hardware 30, which may include a communication interface 32 configured to establish and maintain connections 90, 92 with the management node 14 and the consumer node 16, respectively. The communication interface 32 may be formed as or may include, for example, one or more transmitters (e.g., RF transmitters), one or more receivers (e.g., RF receivers), and / or one or more transceivers (e.g., RF transceivers).

[0111] The hardware 30 of the producer node 12 further includes processing circuitry 34. The processing circuitry 34 may include a processor 36 and a memory 38. Specifically, in addition to or instead of a processor (such as a central processing unit) and a memory, the processing circuitry 34 may include an integrated circuit for processing and / or control, e.g., one or more processors and / or processor cores and / or an FPGA (field programmable gate array) and / or an ASIC (application specific integrated circuit) suitable for executing instructions. The processor 36 may be configured to access (e.g., write to and / or read from) the memory 38, which may include any kind of volatile and / or non-volatile memory, e.g., cache and / or buffer memory and / or RAM (random access memory) and / or ROM (read only memory) and / or optical memory and / or EPROM (erasable programmable read only memory).

[0112] Thus, the producer node 12 may also include software 40, which is stored, for example, in the memory 38 at the producer node 12 or in an external memory (e.g., a database, a storage array, a network storage device, etc.) accessible to the producer node 12. The software 40 may be executed by the processing circuitry 34. The software 40 may include a software application 42. The software application 42 may be operable to provide one or more functions, e.g., to provide services to a human or non-human user via the producer node 12, which may support the management node 14 and / or the consumer node 16. In the management node 14, the executing software application 62 may communicate with the executing software application 42 via the connection 92 terminated at the producer node 12 and the management node 14. When providing services to a user, the software application 42 may receive request data from the software application 62 and provide user data in response to the request data. The connection 90 may convey both the request data and the user data. The software application 42 may interact with the user to generate the user data it provides. In some embodiments, the software application 42 includes an application associated with an O-RAN system such as rApp.

[0113] The processing circuit 34 may be configured to control any of the methods and / or processes described herein and / or cause such methods and / or processes to be performed, for example, by the producer node 12. The processor 36 corresponds to one or more processors 36 for performing the functions of the producer node 12 described herein. The producer node 12 includes a memory 38 configured to store data, programming software code, and / or other information described herein. In some embodiments, the software 40 and / or software application 42 may include instructions that, when executed by the processor 36 and / or the processing circuit 34, cause the processor 36 and / or the processing circuit 34 to perform the processes described herein with respect to the producer node 12. For example, the processing circuit 34 of the producer node may include a producer unit 22 configured to perform any of the steps and / or tasks and / or processes and / or methods and / or features described in this disclosure, such as determining data type information and / or registering data type information with another node.

[0114] The management node 14 includes hardware (HW) 50, and the hardware (HW) 50 includes a communication interface 52 configured to establish and maintain a wired or wireless connection with interfaces of different communication devices of the system 10. The management node 14 also includes a processing circuit 54, which may have storage and / or processing capabilities. The processing circuit 54 may include a processor 56 and a memory 58. Specifically, in addition to or instead of a processor (such as a central processing unit) and a memory, the processing circuit 54 may include an integrated circuit for processing and / or control, for example, one or more processors and / or processor cores and / or an FPGA (field programmable gate array) and / or an ASIC (application specific integrated circuit) suitable for executing instructions. The processor 56 may be configured to access (e.g., write to and / or read from) the memory 58, which may include any kind of volatile and / or non-volatile memory, such as cache and / or buffer memory and / or RAM (random access memory) and / or ROM (read only memory) and / or optical memory and / or EPROM (erasable programmable read only memory).

[0115] The processing circuit 54 may be configured to control any method and / or process described herein and / or cause such method and / or process to be performed, for example, by the management node 14. The processor 56 corresponds to one or more processors 56 for performing the functions of the management node 14 described herein. The management node 14 includes a memory 58 configured to store data, programming software code, and / or other information described herein. The management node 14 may also include software 60. The software 60 may include software applications 62. In some embodiments. In some embodiments, the software 60 and / or the software application 62 may include instructions that, when executed by the processor 56 and / or the processing circuit 54, cause the processor 56 and / or the processing circuit 54 to perform the processes described herein with respect to the management node 14. The instructions may be software associated with the management node 14.

[0116] The software 60 may be executed by the processing circuit 54. The software application 62 may be operable to provide services to a user such as a remote user, for example, as a producer node 12 connected via a connection 90 terminated at the producer node 12 and the management node 14. When providing services to a remote user, the software application 62 may provide user data transmitted using the connection 90. "User data" may be the data and information described herein for implementing the described functions. In one embodiment, the management node 14 may be configured to provide control and functionality to a service provider and may be operated by or on behalf of a service provider. The processing circuit 54 of the management node 14 may enable the management node 14 to manage one or more functions associated with data communication. The processing circuit 54 of the management node 14 may include a management unit 24 configured to perform any step and / or task and / or process and / or method and / or feature described in the present disclosure, for example, registering data type information and exposing data type information and / or making data type information discoverable.

[0117] The system 10 further includes a consumer node 16 provided in the system 10 and includes hardware 70 that enables it to communicate with the management node 14 and the producer node 12. The hardware 70 may include a communication interface 72 for establishing and maintaining a wired or wireless connection to interfaces of different communication devices in the system 10, such as a wired or wireless connection to the producer node 12 via a connection 92 and / or to the management node 14 via a connection 94. The communication interface 72 may be formed as or may include, for example, one or more transmitters (e.g., RF transmitters), one or more receivers (e.g., RF receivers), and / or one or more transceivers (e.g., RF transceivers).

[0118] In the illustrated embodiment, the hardware 70 of the consumer node 16 further includes processing circuitry 74. The processing circuitry 74 may include a processor 76 and a memory 78. Specifically, in addition to or instead of a processor (such as a central processing unit) and a memory, the processing circuitry 74 may include an integrated circuit for processing and / or control, e.g., one or more processors and / or processor cores and / or an FPGA (field programmable gate array) and / or an ASIC (application specific integrated circuit) adapted to execute instructions. The processor 76 may be configured to access (e.g., write to and / or read from) the memory 78, which may include any kind of volatile and / or non-volatile memory, e.g., cache and / or buffer memory and / or RAM (random access memory) and / or ROM (read only memory) and / or optical memory and / or EPROM (erasable programmable read only memory).

[0119] Accordingly, the consumer node 16 also has software 80 stored internally, e.g., in the memory 78 or in an external memory (e.g., a database, a storage array, a network storage device, etc.) accessible to the consumer node 16 via an external connection. The software 80 may include software applications 82. In some embodiments, the software applications 82 may be operable to provide services to a human or non-human user via the consumer node 16, e.g., with the support of the management node 14 and / or the producer node 12. The software 80 may be executed by the processing circuitry 74. The processing circuitry 74 may be configured to control any method and / or process described herein and / or cause such method and / or process to be executed by the consumer node 16, for example. The processor 76 corresponds to one or more processors 76 for performing the functions of the consumer node 16 described herein. The memory 78 is configured to store data, programming software code, and / or other information described herein. In some embodiments, the software 80 may include instructions that, when executed by the processor 76 and / or the processing circuitry system 74, cause the processor 76 and / or the processing circuitry system 74 to perform the processes described herein with respect to the consumer node 16. For example, the processing circuitry 74 of the consumer node 16 may include a consumer unit 26 configured to perform any step and / or task and / or process and / or method and / or feature described in the present disclosure, e.g., obtaining data type information and / or performing at least one action based on the data type information. In some embodiments, the software application 42 includes an application associated with an O-RAN system such as an rApp.

[0120] In some embodiments, the internal workings of the consumer node 16, the producer node 12, and the management node 14 may be as Figure 2 shown, and independently, the surrounding network topology may be Figure 1 of a network topology.

[0121] In Figure 2In [the figure], the connections 90, 92, 94 have been abstractly drawn to show the communication between nodes without explicitly referring to any intermediate devices and the exact routing of messages through these devices. The network infrastructure can determine the routing, which can be configured to be hidden from the producer node 12 and / or from the management node 14 and / or from the consumer node 16. When any of the connections 90, 92, 94 is active, the network infrastructure can further decide that it dynamically changes the routing (e.g., based on network load balancing considerations or reconfiguration).

[0122] One or more improvements in various embodiments are provided by the performance of data communication using any one of the connections 90, 92, 94 by the producer node 12 (and / or the management node 14 and / or the consumer node 16). In some embodiments, the connection 90, the connection 92, and / or the connection 94 can be made via the network 17 ( Figure 2 not shown in [the figure]). More precisely, the teachings of some of these embodiments can improve the data rate, latency, and / or power consumption and thereby provide benefits such as reduced user wait time, better responsiveness, etc.

[0123] Although Figure 1 and Figure 2 various “units” such as the producer unit 22, the management unit 24, and the consumer unit 26 are shown as being within the respective processors, it is contemplated that these units can be implemented such that a portion of the unit is stored in the corresponding memory within the processing circuit. In other words, the units can be implemented in hardware or a combination of hardware and software within the processing circuit.

[0124] Figure 3 is a flowchart of an example process in the producer node 12. One or more of the blocks described herein can be executed by one or more elements of the producer node 12, such as by one or more of the processing circuit 34 (including the producer unit 22), the processor 36, and the communication interface 32. The producer node 12 is configured (block S100) to determine data type information at least in part based on the data type. The data type information includes one or more data type states, and the data type is associated with data that the producer node 12 is configurable to produce to at least one of the management node 14 and the consumer node 16. The producer node 12 is also configured to register (block S102) the data type information with the management node 14.

[0125] In some embodiments, the data type information further includes at least one of the following: a data type definition; metadata associated with the data type; and one or more producer constraints.

[0126] In some other embodiments, one or more of the data type states include available, busy, disabled, off, and locked.

[0127] In some embodiments, the method further includes at least one of the following: based at least on one or more data type states, performing one of the following with the management node 14: updating the registration of data type information, removing the registration of data type information; and causing a notification indicating at least one of the following to be sent to the consumer node 16: registration of data type information, updating of the registration of data type information, removal of the registration of data type information, and change in data type information.

[0128] Figure 4 It is a flowchart of an example process in the management node 14. One or more of the boxes described herein may be performed by one or more components of the management node 14, such as by one or more of the processing circuitry 54 (including the management unit 24), the processor 56, and the communication interface 52. The management node 14 is configured to determine (block S104) data type information associated with the data type based on the received registration of data type information. The data type information includes one or more data type states, and the data type is associated with data that the producer node 12 is configurable to produce to at least one of the management node 14 and the consumer node 16. The management node 14 is further configured to make (block S106) the data type information available to the consumer node 16.

[0129] In some embodiments, the data type information further includes at least one of the following: a data type definition; metadata associated with the data type; and one or more producer constraints.

[0130] In some other embodiments, one or more data type states include available, busy, disabled, off, and locked.

[0131] In some embodiments, the method further includes at least one of the following: based at least on one or more data type states, performing one of the following with the management node 14: updating the registration of data type information, removing the registration of data type information; and causing a notification indicating at least one of the following to be sent to the consumer node 16: registration of data type information, updating of the registration of data type information, removal of the registration of data type information, and change in data type information.

[0132] Figure 5It is a flowchart of an example process in the consumer node 16. One or more of the boxes described herein may be executed by one or more components of the consumer node 16, such as by one or more of the processing circuitry 74 (including the consumer unit 26), the processor 76, and the communication interface 72. The consumer node 16 is configured to obtain (block S108) data type information associated with a data type from the management node 14, where the data type information includes one or more data type states, and the data type is associated with data that the producer node 12 is configurable to produce to at least one of the management node 14 and the consumer node 16; and perform (block S110) at least one action based on the obtained data type information.

[0133] In some embodiments, the data type information further includes at least one of the following: a data type definition; metadata associated with the data type; and one or more producer constraints.

[0134] In some other embodiments, one or more data type states include available, busy, disabled, closed, and locked.

[0135] In some embodiments, the method further includes at least one of the following: receiving a notification indicating at least one of the following: registration of data type information, update of the registration of data type information, removal of data type information, and change of data type information; and performing at least one or more actions based on the received notification.

[0136] Figure 6 It is a flowchart of an example process in the producer node 12. One or more of the boxes described herein may be executed by one or more components of the producer node 12, such as by one or more of the processing circuitry 34 (including the producer unit 22), the processor 36, and the communication interface 32. The producer node 12 is configured to determine (block S112) a data type state corresponding to a data type. The data type is associated with data that the producer node 12 is configurable to produce to the consumer node 16, and the data type state indicates the ability of the producer node 12 to produce data of the data type. The producer node 12 is further configured to send (block S114) a first request to the management node 14. The first request requests the management node 14 to register the data type and includes the corresponding data type state.

[0137] In some embodiments, the first request further includes one or more of the following: a data type identifier, data type information associated with a data job mode, a job status mode, a job constraint mode, a job result mode, metadata associated with the data type, and data job constraint information.

[0138] In some other embodiments, the method further includes sending a second request. The second request requests the management node 14 to update or remove the registration of the data type based on one or both of the state transition of the data type state and another data type state of the data type.

[0139] In some embodiments, the method further includes determining that the state transition 102 has occurred based on the change of the data type state to another data type state.

[0140] In some other embodiments, the data type state includes one of the following: available, busy, disabled, closed, and locked.

[0141] In some embodiments, when the data type state includes available, the data type state indicates one or more of the following: the data type is available for use, the data type is discoverable, and data requests are accepted.

[0142] In some other embodiments, when the data type state includes busy, the data type state indicates one or more of the following: the data type is available for use, there is no free capacity, data requests are accepted, and new jobs are idle until there is free capacity.

[0143] In some embodiments, when the data type state includes disabled, the data type state indicates one or more of the following: the data type is not available for use, existing jobs are not enabled, and data requests are not accepted.

[0144] In some other embodiments, when the data type state includes closed, the data type state indicates one or more of the following: the data type is not available for use, existing jobs are enabled, and data requests are not accepted.

[0145] In some embodiments, when the data type includes locked, the data type state indicates one or more of the following: the data type is not available for use, existing jobs are idle, and data requests are not accepted.

[0146] Figure 7 is a flowchart of an example process in the management node 14. One or more of the blocks described herein may be executed by one or more elements of the management node 14, such as by one or more of the processing circuitry 54 (including the management unit 24), the processor 56, and the communication interface 52. The management node 14 is configured to register (block S116) the data type at the management node 14. The registration includes the data type state corresponding to the data type. The data type is associated with the data that the producer node 12 is configurable to produce for the consumer node 16, and the data type state indicates the ability of the producer node 12 to produce data of the data type. The management node 14 is further configured to make at least (block S118) the data type state available to the consumer node.

[0147] In some embodiments, the method further includes receiving a first request from producer node 12. The first request requests the management node 14 to register a data type and includes a data type status.

[0148] In some other embodiments, the first request further includes one or more of the following: a data type identifier, data type information associated with a data job mode, a job status mode, a job constraint mode, and a job result mode, metadata associated with the data type, data job constraint information.

[0149] In some embodiments, the method further includes one or both of the following: (A) receiving a second request from producer node 12, where the second request requests the management node 14 to update or remove the registration of the data type based on one or both of a status transition of the data type status and another data type status of the data type; and (B) in response to the second request, updating or removing the registration of the data type.

[0150] In some other embodiments, the data type status includes one of the following: available, busy, disabled, closed, locked.

[0151] In some embodiments, the method further includes receiving a third request from a consumer node. The third request is a subscription request that at least makes the data type status available to the consumer node.

[0152] In some other embodiments, the method further includes receiving a fourth request for a data type identifier from consumer node 16. The fourth request includes a filtering criterion associated with the data type. The method further includes matching the filtering criterion to the registered metadata associated with the data type, and sending a first response to consumer node 16, where the first response includes at least a subset of the data type identifier and the registered metadata.

[0153] In some embodiments, the method further includes receiving a fifth request for information associated with the data type from consumer node 16. The fifth request includes a data type identifier. The method further includes sending a second response including the information to consumer node 16. The information is determined based on an integration of the information registered for the data type, and the data type is associated with at least one other data producer node.

[0154] In some other embodiments, the method further includes: receiving a sixth request for a data type status from consumer node 16, where the sixth request includes a data type identifier; in response to receiving the sixth request, determining an object available to consumer node 16 to verify the object according to an open application programming interface mode; and sending a third response including the object to consumer node 16.

[0155] Figure 8FIG. 0 is a flowchart of an example process in consumer node 16. One or more of the blocks described herein may be performed by one or more components of consumer node 16, such as by one or more of processing circuitry 74 (including consumer unit 26), processor 76, communication interface 72. Consumer node 16 is configured to obtain (block S120) at least a data type status corresponding to a data type from management node 14. The data type is associated with data that producer node 12 is configurable to produce for consumer node 16. The data type status indicates the ability of producer node 12 to produce data of the data type. Consumer node 16 is further configured to perform (block S122) one or more actions based at least on the obtained data type status.

[0156] In some embodiments, the data type is registered at management node 14 and is also associated with one or more of: a data type identifier, data type information associated with a data job mode, a job status mode, a job constraint mode, and a job result mode, metadata associated with the data type, data job constraint information.

[0157] In some other embodiments, the data type status includes one of: available, busy, disabled, off, locked.

[0158] In some embodiments, the method further includes sending a first request to management node 14. The first request is a subscription request that at least makes the data type status available to consumer node 14, and the data type status is obtained when the data type status is made available to management node 14.

[0159] In some other embodiments, the method further includes: sending a second request to the management node for a data type identifier, where the second request includes a filtering criterion associated with the data type; and receiving a first response from the management node. The first response includes at least a subset of the data type identifier and the registered metadata.

[0160] In some embodiments, the method further includes sending a third request to management node 14 for information associated with the data type. The third request includes the data type identifier. The method further includes receiving a second response from management node 14 that includes information associated with the data type. The information is determined based on an integration of information registered for the data type. The data type is associated with at least one other data producer node.

[0161] In some other embodiments, the method further includes validating data associated with a job constraint object according to a job constraint mode in response to the second response.

[0162] In some embodiments, the method further includes sending a fourth request for a data type status to a management node, where the fourth request includes a data type identifier. The method further includes receiving a third response from the management node 14, the third response including an object usable by the consumer node 16 to verify the object according to an open application programming interface schema.

[0163] In some other embodiments, the method further includes verifying the object according to an open application programming interface schema.

[0164] In some embodiments, performing one or more actions includes requesting data of a data type from a producer node based on the data type status, or avoiding a request for data of the data type.

[0165] Having described the general process flow of the arrangement of the present disclosure and having provided examples of the hardware and software arrangements for implementing the processes and functions of the present disclosure, the following sections provide details and examples of arrangements for determining a data type as a representation of a dynamic capability.

[0166] A data producer as described herein may refer to the producer node 12. Any one of a DME service producer and / or a DME producer and / or a DME and / or a DME function may refer to the management node 14. A data consumer may refer to the consumer node 16.

[0167] In some embodiments, one or more data type states are determined, which may represent the ability of the system 10 to serve a data consumer with data of the data type. The data consumer may request or subscribe to data. In some other embodiments, status information is determined, for example, that can be used to guide the data consumer during the lifecycle management of the data consumer. In some embodiments, the status information may be determined if a request or subscription has been initiated.

[0168] In some other embodiments, information associated with the data type may be determined and may include "data type registered" and "data type available". The information may include the data type status or be associated with or based on the data type status.

[0169] In some embodiments, one or more data types may be used as a representation of the dynamic capabilities of a system (e.g., a DME function or each data producer) to produce data and / or define a data type status that expresses the degree to which production resources are available for use.

[0170] In some other embodiments, the data type may be considered a "managed resource", and the management model may apply the following definitions:

[0171] A state diagram may describe the data type, i.e., represent the data production resource;

[0172] States (e.g., management, operation, and use in a management model) can be applied to data types;

[0173] The "users" of resources in a management model correspond to "data jobs" that represent instantiations of resources for handling a particular data request or subscription; and

[0174] Data jobs can be described using a management model and can compose state diagrams.

[0175] Based on data type states and related state transitions, messages such as R1 messages can be defined, which can allow data consumers to query the state of a data type and / or be notified of changes in the state of a data type or data types that are registered / deregistered.

[0176] Using the data type state, a data consumer can determine (or have) information about whether a data type is available for use (e.g., whether a subscription request will be accepted) and / or whether the data type is in a particular state. In other words, the information and / or state can indicate that an existing data job is deactivated or idle or that a data job should be deleted.

[0177] In some embodiments, the producer node 12 can register a data type definition (schema), metadata related to the data type, the data type state, and / or its producer constraints with the management node 14. In some other embodiments, the management node 14 can perform the registration without a request from the producer node 12. In a non-limiting example, the management node 14 can obtain any data type definition (schema), metadata related to the data type, the data type state, and / or its producer constraints and register any data type definition (schema), metadata related to the data type, the data type state, and / or its producer constraints at the management node 14. In some embodiments, the term state can refer to status. The data type definition and producer constraints can be schema-based and / or specific to each data type. The metadata and data type state can have a common format for all data types and can be defined as part of an R1 application programming interface (API). The producer node 12 can update its registration and / or delete it. In some other embodiments, the producer node 12 can update its registration (e.g., in addition to the data type definition).

[0178] In some other embodiments, the management node 14 can be configured to handle registrations for the same data type and / or at least provide a merged view to the consumer node 16 of the registered data types, their states, and the constraints related to data production.

[0179] One or more embodiments enable separation of a control plane from a data plane (or user plane). After accepting a data job, mechanisms such as those for the control plane can then be used for data delivery.

[0180] In some embodiments, the schema-based data types are machine-readable and enable producer node 12 and consumer node 16 to deploy new data type definitions at runtime, as relevant in, for example, an artificial intelligence (AI) / ML pipeline. The job schema enables consumer node 16 to formulate data jobs corresponding to what producer node 12 can produce and deliver, while the job result schema enables consumer node 16 to interpret data delivered as a result of an accepted data job.

[0181] Including a constraint schema in the data type definition enables producer node 12 to express details about its production capabilities and constraints associated with the data type, and enables consumer node 16 to formulate (better) data requests and subscriptions corresponding to what producer node 12 can deliver.

[0182] In some embodiments, management node 14 is a DME service producer. Producer node 12 can be configured to register with and / or update management node 14 (i.e., the DME service producer) data that producer node 12 can produce data type state for and its producer constraints, such that management node 14 (i.e., the DME service producer) can expose at any time a current view of system capabilities and / or constraints relevant to serving consumer node 16 with data of the data types they request and subscribe to. In these embodiments, management node 14 is described as a DME service producer. However, management node 14 is not limited thereto and can be any other entity, such as a DME producer and / or DME and / or DME functionality, etc.

[0183] When a data type is dynamically registered or deregistered, consumer node 16 can be notified. Consumer node 16 can request or subscribe to data when the data type is available, such that the system does not need to track the "needs" for data that cannot be provided by the system in the current state.

[0184] When the state of a registered data type changes, consumer node 16 can be notified. The data type state can indicate whether:

[0185] The data type is now available for use (e.g., data jobs can be accepted and data can be delivered);

[0186] The data type is now available for use but currently busy (e.g., data jobs can be accepted, but data can be delivered when there is capacity);

[0187] The data type is currently deactivated and / or data production is currently inoperable for the data type, e.g., dependencies are not in place;

[0188] For administrative reasons, the data type is locked or closed. The consumer node 16 should consider deleting the existing data jobs for the data type.

[0189] When the producer constraints associated with the data type change, the consumer node 16 can be notified. The consumer node 16 can then consider creating or updating data jobs, e.g., since data can now be delivered in a way that (better) meets the needs of the job and / or the node.

[0190] If a data request or subscription is rejected, the reason for rejection can correspond to the data type status available for query and notification.

[0191] If a data job is idle or deactivated, the reason can correspond to the data type status available for query and notification.

[0192] Figure 9 An overview of an example system 10 including one or more producer nodes 12, a management node 14, and one or more consumer nodes 16 is shown. In some embodiments, the system 10 can be defined by an O-RAN non-real-time (Non-RT) RAN intelligent controller (RIC) architecture and Non-RT RIC framework, a software application such as an rApp, a communication interface such as an R1 interface, and R1 DME services and roles.

[0193] In some other embodiments, the R1 DME services can be produced by the management node 14 (DME service producer) in the Non-RT RIC framework. The producer node 12 (e.g., data producer (rApp)) registers its data type capabilities using a data registration service. More than one producer node 12 can register the same data type. The consumer node 16 (e.g., data consumer (rApp)) can use a data discovery service to discover a comprehensive view of the registered data type capabilities and / or use data request and subscription services to request or subscribe to data of the data type. The consumer node 16 may not know which producer nodes 12 will produce data of the data type upon request or subscription.

[0194] In some embodiments, the management node 14 uses inputs from the producer node 12 to provide the consumer node 16 with a comprehensive view of the current system capabilities for producing data of the data type.

[0195] Figure 10 Is shown that can be used to describe a data type and by as Figure 9An example state diagram configured, determined, operated, controlled, etc. by the management node 14 (and / or management unit 24) shown in [figure reference]. The state diagram can be based on a management model. In some embodiments, one or more data type states 100 (and / or corresponding short names) are used. For example, five data type states 100 can be used (e.g., the short names for each of available, busy, disabled, shutting down, locked). However, the present disclosure is not limited to this, and other data type states 100 can be used. The data type state 100 can be associated with one or more state transitions 102. The state transition 102 can refer to one or more transitions between the data type states 100. The state transition 102 can be unidirectional (from one state to another) or multi-directional (from one state to another and back to that state or transitioning to yet another state).

[0196] In some embodiments, the states can be defined as in Table 1 below. Table 1 - List of example data type states

[0197] A data type can be associated with one or more usage states. The usage state can refer to the usage of the data type (or job, or resource, etc.). In some embodiments, the usage state refers to the administrator state or operational state associated with the data type. Additionally, the usage state can refer to the X.371 state. The X.371 state can refer to a recommendation promulgated by the International Telecommunication Union (ITU). The state transitions 102 in the figure can include one or more of the following: · State transition 102a: When the capacity (e.g., of the producer node 12) is fully utilized, the data type state 100 becomes BUSY (e.g., transitions to BUSY). If the capacity is available, the data type state 100 becomes AVAILABLE (e.g., transitions back to AVAILABLE). This can be caused by the creation or deletion of a data job. · State transition 102b: If the production resource becomes inoperable, the data type state 100 becomes DISABLED. If the inoperability of the production resource is resolved (i.e., the resource becomes operable), the data type state 100 becomes AVAILABLE. · State transition 102c: If the production resource becomes inoperable, the data type state 100 becomes DISABLED. If the problem is resolved and the resource becomes operable, and the capacity is not available to accept new data jobs, the data type state 100 becomes BUSY. · State Transitions 102d, 102e: If the production resources are locked, e.g., for administrative reasons, the data type state 100 becomes LOCKED. If the production resources are unlocked for administrative reasons, the data type state 100 becomes DISABLED (e.g., when the resources are inoperable) or ENABLED (e.g., when the resources are operable). · State Transitions 102f, 102g: If the production resources are shut down for administrative reasons, the data type state 100 becomes SHUTTING_DOWN. If the production resources are unlocked for administrative reasons, the data type state 100 becomes AVAILABLE (e.g., when the capacity allows accepting new data jobs) or BUSY (e.g., when the capacity is not available for accepting new data jobs). · State Transition 102h: If the production resources are locked, e.g., for administrative reasons, the data type state 100 becomes LOCKED. If the production resources are unlocked, e.g., for administrative reasons, the data type state 100 becomes AVAILABLE or DISABLED.

[0198] Figure 11 A diagram showing an example data registration process according to some embodiments of the present disclosure. The example management model allows registering the status and / or state for queries, subscriptions, notifications, and updates. For example, a node can query the data type state 100 and / or subscribe to and / or notify the data type state 100 and / or update the data type registration. In addition, the payloads of the registered data type (i.e., the registration of the data type) and query data type (i.e., the query of the data type) response messages can be extended.

[0199] More specifically, in step S200, the consumer node 16 sends a request to subscribe to the data type state 100 (subscription information). In step S202, the data type information is defined. In step S204, the job constraints are formulated based on the job constraint mode. In step S206, the producer node 12 sends a register data type request, which can include one or more of the following: data type identifier, data type information, data type state 100, metadata, data job constraint information, etc. In step S208, the management node 14 validates the registration request, and in step S210, sends a register data type response. In step S212, the data type is registered by the management node 14, and in step S214, the management node 14 sends a notification including the data type state 100 to the consumer node 16. In step S216, the consumer node 16 validates the DataTypeStatusObject according to the Open API mode. Any one of steps S200 to S216 can be part of the data registration process.

[0200] Figure 12 FIG. shows a diagram associated with an example data type discovery process and data type status and registration update processes, in accordance with some embodiments of the present disclosure. At step S218, the consumer node 16 sends a query data type identifier request, which may include discriminators, such as filters or filtering criteria associated with the data type identifier and / or metadata. At step S220, the management node 14 determines that the discriminator is matched according to the registered metadata. At step S222, a query data type identifier response is sent, which may include the data type identifier and / or metadata. At step S224, the management node 14 receives a query data type request from the consumer node 16. The request may include the data type identifier. At step S226, the management node 14 performs an integration of information registered for the data type, such as from one or more data producer nodes 12. At step S228, the management node 14 sends a query data type response, which may include one or more objects, such as a DataTypeObject (data type object), a DataTypeStatusObject (data type status object), a JobConstraintsObject (job constraints object), etc. At step S230, the data may be verified, which may be associated with the JobsConstrintsObject. The verification may be according to a pattern such as a "job constraint pattern". Any of steps S218 to S230 may be part of the data type discovery process.

[0201] At step S232, the consumer node 16 sends a query data type status request. At step S234, the management node 14 sends a query data type status response. At step S236, the consumer node 16 may verify the object according to a pattern (e.g., verify the DataTypeStatusObject against an open API pattern). At step S238, the producer node 12 may send a request to update the data type registration, and at step S240, the management node 14 notifies the consumer node 16 of the data type status 100, which may include the DataTypeStatusObject. In some embodiments, the term "status" may refer to "state", such as the data type status 100.

[0202] The following is a list of non-limiting example embodiments:

[0203] Embodiment A1. A producer node configured to communicate with at least one of a management node and a consumer node, the producer node configured to and / or including a communication interface and / or including a processing circuit, the communication interface and / or the processing circuit configured to:

[0204] Determine data type information at least in part based on a data type, the data type information including one or more data type states, the data type being associated with data that a producer node is configurable to produce to at least one of a management node and a consumer node; and

[0205] Register the data type information with the management node.

[0206] Example A2. The producer node according to Example A1, wherein the data type information further includes one or more of the following:

[0207] Data type definition;

[0208] Metadata associated with the data type; and

[0209] One or more producer constraints.

[0210] Example A3. The producer node according to any one of Examples A1 and A2, wherein the one or more data type states include available, busy, disabled, closed, and locked.

[0211] Example A4. The producer node according to any one of Examples A1 to A3, wherein the producer node and / or processing circuitry is configured to at least one of the following:

[0212] At least based on one or more data type states, communicate with the management node to do one of the following: update the registration of the data type information, remove the registration of the data type information; and

[0213] Cause a notification to be sent to the consumer node, the notification indicating at least one of the following: registration of the data type information, update of the registration of the data type information, removal of the registration of the data type information, and change of the data type information.

[0214] Example B1. A method implemented in a producer node, the producer node being configured to communicate with at least one of a management node and a consumer node, the method comprising:

[0215] Determine data type information at least in part based on a data type, the data type information including one or more data type states, the data type being associated with data that a producer node is configurable to produce to at least one of a management node and a consumer node; and

[0216] Register the data type information with the management node.

[0217] Example B2. The method according to Example B1, wherein the data type information further includes at least one of the following:

[0218] Data type definition;

[0219] Metadata related to data types; and

[0220] One or more producer constraints.

[0221] Example B3. The method according to any one of Examples B1 and B2, wherein one or more data type states include available, busy, disabled, closed, and locked.

[0222] Example B4. The method according to any one of Examples B1 to B3, wherein the method further comprises at least one of the following:

[0223] At least based on one or more data type states, perform one of the following with the management node: update the registration of data type information, remove the registration of data type information; and

[0224] Cause a notification to be sent to the consumer node, the notification indicating at least one of the following: registration of data type information, update of the registration of data type information, removal of the registration of data type information, and change of data type information.

[0225] Example C1. A management node configured to communicate with at least one of a producer node and a consumer node, the management node being configured to and / or including a communication interface and / or a processing circuit, the communication interface and / or the processing circuit being configured to:

[0226] Determine data type information associated with a data type based on the received registration of data type information, the data type information including one or more data type states, the data type being associated with data that a producer node is configurable to produce for at least one of the management node and the consumer node; and

[0227] Make the data type information available to the consumer node.

[0228] Example C2. The management node according to Example C1, wherein the data type information further comprises at least one of the following:

[0229] Data type definition;

[0230] Metadata related to the data type; and

[0231] One or more producer constraints.

[0232] Example C3. The management node according to any one of Examples C1 and C2, wherein one or more data type states include available, busy, disabled, closed, and locked.

[0233] Example C4. The management node according to any one of Examples C1 to C3, wherein the management node and / or the processing circuit is configured to at least one of the following:

[0234] Based on at least one or more data type states, perform one of the following with the management node: update the registration of data type information, remove the registration of data type information; and

[0235] Cause a notification to be sent to the consumer node, the notification indicating at least one of the following: registration of data type information, update of the registration of data type information, removal of the registration of data type information, and change of data type information.

[0236] Example D1. A method implemented in a management node, the management node being configured to communicate with at least one of a producer node and a consumer node, the method comprising:

[0237] Determine data type information associated with a data type based on the received registration of data type information, the data type information including one or more data type states, the data type being associated with data that a producer node is configurable to produce for at least one of the management node and the consumer node; and

[0238] Make the data type information available to the consumer node.

[0239] Example D2. The method according to Example D1, wherein the data type information further includes at least one of the following:

[0240] Data type definition;

[0241] Metadata related to the data type; and

[0242] One or more producer constraints.

[0243] Example D3. The method according to any one of Examples D1 and D2, wherein the one or more data type states include available, busy, disabled, closed, and locked.

[0244] Example D4. The method according to any one of Examples D1 to D3, wherein the method further includes at least one of the following:

[0245] Based on at least one or more data type states, perform one of the following with the management node: update the registration of data type information, remove the registration of data type information; and

[0246] Cause a notification to be sent to the consumer node, the notification indicating at least one of the following: registration of data type information, update of the registration of data type information, removal of the registration of data type information, and change of data type information.

[0247] Example E1. A consumer node, configured to communicate with at least one of a management node and a producer node, the consumer node being configured to and / or including a communication interface and / or a processing circuit, the communication interface and / or the processing circuit being configured to:

[0248] Obtain data type information associated with a data type from a management node, the data type information including one or more data type states, the data type being associated with data that a producer node is configurable to produce to at least one of the management node and a consumer node; and

[0249] Perform at least one action based on the obtained data type information.

[0250] Example E2. The consumer node according to Example E1, wherein the data type information further includes at least one of the following:

[0251] Data type definition;

[0252] Metadata associated with the data type; and

[0253] One or more producer constraints.

[0254] Example E3. The consumer node according to any one of Examples E1 and E2, wherein the one or more data type states include available, busy, disabled, closed, and locked.

[0255] Example E4. The consumer node according to any one of Examples E1 to E3, wherein the management node and / or processing circuitry is configured to at least one of the following:

[0256] Receive a notification indicating at least one of the following: registration of data type information, update of registration of data type information, removal of registration of data type information, change in data type information; and

[0257] Perform at least one or more actions based on the received notification.

[0258] Example F1. A method in a consumer node, the consumer node being configured to communicate with at least one of a management node and a producer node, the method comprising:

[0259] Obtain data type information associated with a data type from a management node, the data type information including one or more data type states, the data type being associated with data that a producer node is configurable to produce to at least one of the management node and a consumer node; and

[0260] Perform at least one action based on the obtained data type information.

[0261] Example F2. The method according to Example F1, wherein the data type information further includes at least one of the following:

[0262] Data type definition;

[0263] Metadata associated with the data type; and

[0264] One or more producer constraints.

[0265] Example F3. A method according to any one of Examples F1 and F2, wherein one or more data type states include available, busy, deactivated, closed, and locked.

[0266] Example F4. A method according to any one of Examples F1 to F3, wherein the method further comprises at least one of the following:

[0267] Receiving a notification indicating at least one of the following: registration of data type information, update of the registration of data type information, removal of the registration of data type information, change of data type information; and

[0268] Performing at least one or more actions based on the received notification.

[0269] Additional non - limiting examples and embodiments are provided below.

[0270] Data type status resource representation

[0271] 1.3.1 Definition

[0272] For the purposes of this document, the terms and definitions given in 3GPP TR 21.905 and below apply. The terms defined in this document take precedence over the definitions of the same terms (if any) in 3GPP TR 21.905.

[0273] Non-RT RIC (Non-Real-Time RIC): The O-RAN non-real-time RAN intelligent controller: A logical function in the SMO framework that implements non-real-time control and optimization of RAN elements and resources, including AI / ML workflows for model training and update, and policy-based guidance for applications / functions in the Near-RT RIC. The Non-RT RIC includes the Non-RT RIC framework and the Non-RT RIC application (rApp).

[0274] Non-RT RIC framework: A function within the SMO framework that logically terminates the A1 interface at one end and provides R1 services to the rApp through the R1 interface.

[0275] rApp: Non-RT RIC application: An application designed to consume and / or produce R1 services.

[0276] Note: The rApp can utilize the functions provided by the SMO and the Non-RT RIC framework to deliver value-added services related to intelligent RAN optimization and operation.

[0277] R1 Interface: The interface between the rApp and the Non-RT RIC framework. Through this interface, R1 services can be produced and consumed.

[0278] R1 Services: A collection of services, including but not limited to service registration and discovery services, authentication and authorization services, AI / ML workflow services, and services related to A1, O1, and O2.

[0279] Data Type: The model on which data jobs, data job results, and data job constraints are based.

[0280] Data Instance: The result of a data job.

[0281] Registration and discovery of 3.2.2.x data types

[0282] The following processes are defined:

[0283] Register Data Type: The data producer service consumer uses this process to register as a producer for a data type for which it can generate data instances. The information provided in the request includes the data type identifier, data type schema, metadata, producer constraints, and data type status.

[0284] Update Data Type Registration: The data producer service consumer uses this process to update its registration as a producer for a data type. The information provided in the request may include producer constraints and / or data type status.

[0285] Deregister Data Type: The data producer service consumer can use this process to deregister as a producer for a data type for which it was previously registered.

[0286] Discover Data Type: The data consumer service consumer uses this process to discover available data types. The information provided in the request may include a discriminator based on registered metadata. The information provided in the response includes the data type identifier.

[0287] Query Data Type: The data consumer service consumer uses this process to query information about a data type. The information provided in the request includes the data type identifier. The information provided in the response includes the data type schema and consolidated information about the registered producer constraints and data type status.

[0288] Status of 3.2.2.y data types

[0289] The following processes are defined:

[0290] Query Data Type Change Status: The data producer service consumer uses this process to query the data type status. The information provided in the request includes the data type identifier. The information provided in the response includes consolidated information about the registered data type status.

[0291] Subscription data type change: The data producer service consumer uses this process to subscribe to changes related to the data type. The information provided in the request indicates whether availability changes, producer constraint changes, and / or data type status changes are subscribed to.

[0292] Notify data type change: The service producer can use this process to notify subscribed service consumers of changes in data type availability, changes in integrated producer constraints, and / or changes in integrated data type status.

[0293] 5.2.3 Lifecycle aspects

[0294] 5.2.3.1 Registration of data sources

[0295] Before a service producer can provide a specific data type through an interface, it needs to set a collection of input information from internal and / or external data sources and set the function to produce data instances. When the setting is complete, the data type can be discovered.

[0296] 5.2.3.2 Discovery of rich information

[0297] The service consumer discovers available data types. The service producer controls which data types can be discovered and accessed by a specific service consumer.

[0298] For a specific data type, the service consumer can request a detailed description of the provided data type and how to formulate a request for delivering data instances.

[0299] 5.2.3.3 Lifecycle aspects of data types

[0300] The service producer is responsible for ensuring that discoverable data types can be used for data jobs and the delivery of data job results. The status of a data type represents the current capabilities of the data jobs that process the data type.

[0301] Based on the model described in Appendix A, the status of a data type can be one of the following:

[0302] AVAILABLE;

[0303] BUSY;

[0304] DISABLED; or

[0305] LOCKED.

[0306] When the status of a data type is AVAILABLE or BUSY, data job requests can be accepted.

[0307] Data job requests cannot be accepted when the status of the data type is DISABLED, SHUTTING_DOWN, or LOCKED.

[0308] In Figure 13 the data type status and transitions are shown.

[0309] The state transitions in the figure indicate that: 1. When the capacity is fully utilized, the data type status becomes BUSY. 2. If the capacity is available, the data type status becomes AVAILABLE. This can be caused by creating or deleting a data job. 3. If the production resources become inoperable, the data type status becomes DISABLED. 4. If the problem is resolved and the resources become operable, the data type status becomes AVAILABLE or BUSY when the capacity is unavailable. 5. If the production resources are locked for administrative reasons, the data type status becomes LOCKED, and if the production resources are shut down for administrative reasons, the data type status becomes SHITTUNG_DOWN. 6. If the production resources are unlocked for administrative reasons, the data type status becomes DISABLED when the resources are inoperable and ENABLED when the resources are operable. If the production resources are unlocked for administrative reasons, the data type status becomes AVAILABLE when the capacity is available to accept new data jobs and BUSY when the capacity is unavailable to accept new data jobs. 7. If the production resources are shut down for administrative reasons and all data jobs have become IDLE or are deleted, the data type status becomes LOCKED.

[0310] 5.2.3.4 Request and Delivery of Data Job Results

[0311] After finding that the data type is available, the request and delivery of data instances are completed in two steps:

[0312] First, the service consumer requests the data job result of the data type by creating a data job that contains a description of the requested information and which delivery mechanism to use.

[0313] Then, the service producer establishes an appropriate connection and delivers the data instance according to the agreed-upon details of the data job.

[0314] 5.2.3.5 Lifecycle Aspects of Data Jobs

[0315] Service consumers can initiate the creation, update, and deletion of data jobs. A data job is created when a service consumer needs data instances of a specific data type, and is deleted when the service consumer no longer needs the data.

[0316] Based on the model described in Appendix A, the status of a data job (also known as the data job condition) can be one of the following:

[0317] ENABLED;

[0318] PENDING; or

[0319] DISABLED.

[0320] When the status of a data job is ENABLED, the data job result can be delivered.

[0321] When the status of a data job is PENDING or DISABLED, the data job result cannot be delivered.

[0322] When the status of the data type is SHUTTING_DOWN, the data job result can be delivered.

[0323] In Figure 14 the data job status and transitions are shown.

[0324] The state transitions in the figure indicate that: 1. When the data type status changes to BUSY, the data job status can change to PENDING. 2. When capacity becomes available for data job result production and delivery, the data job status changes to ENABLED. 3. If the job-producing resources become inoperable, the data job status changes to DISABLED. 4. If the problem is resolved and the resources become operable, then in the case where capacity is unavailable, the data job status changes to ENABLED or PENDING.

[0325] 5.2.3.6 Aspects of the Lifecycle of Data Job Results

[0326] The service producer is responsible for setting up the connection to the service consumer to deliver the data job result according to the agreed data job. The delivery of the data job result starts when the data job is created and stops when the data job is deleted.

[0327] The service consumer can evaluate the received data job result. If the received data result is not as expected, the service consumer can update the data job or delete it.

[0328] Appendix A (Information)

[0329] LCM state machine

[0330] A.1 Modeling of the Status for the R1 Interface

[0331] A.1.1 Overview

[0332] This clause describes the model of the management status related to data management and opening, which is a general status of the model described in ITU X.731

[13] . The model involves "Type" and "Job", where a job is a resource that can be created based on the type.

[0333] Note: In ITU X.731

[13] , a resource is called a user of the managed entity. In the model of this specification, "a (new) job is created" corresponds to "a new user", and "(the last) job is deleted" corresponds to "(the last) user exits".

[0334] The specific model for data management and opening is described in A.2.

[0335] A.1.2 Type Management Model

[0336] A.1.2.1 Type Operation Status

[0337] Two operation statuses are defined: Type ENABLED (type is enabled) and Type DISABLED (type is disabled).

[0338] In Type ENABLED, the type is fully or partially operable. In Type DISABLED, the type is completely inoperable.

[0339] Note: When the type is inoperable, all existing jobs of this type are inoperable.

[0340] The events that trigger the transition between type operation statuses are Type enable (enable the type) and Type disable (disable the type). These events are internal and not caused by any signaling on the A1 interface. The status can be queried through the A1 interface, and the status change can be notified.

[0341] A.1.2.2 Type Usage Status

[0342] Three usage statuses are defined: Type IDLE (idle type), Type ACTIVE (active type), and Type BUSY (busy type).

[0343] In Type IDLE, there are no jobs created for the Type, or all existing jobs are in Job IDLE (see Clause A.1.3). In Type ACTIVE, there are jobs for the type, new jobs can be created for the type, and existing jobs can be deleted for the type. In Type BUSY, there are jobs for the type, new jobs cannot be created for the type, but existing jobs can be deleted for Type.

[0344] Note: The Type BUSY state means that all capacity is being used to process existing jobs, so new jobs cannot be processed. When capacity becomes available, e.g., due to one or more jobs being deleted, the state changes to Type ACTIVE.

[0345] The events that trigger the transition between Type IDLE and Type ACTIVE states are Job created and Last job deleted. Except for increasing or decreasing capacity, the events that trigger the transition between Type ACTIVE and Type BUSY states are Job created and Job deleted. In the Type ACTIVE state, the events Job created and Job deleted may not trigger a state transition. These events correspond to the create and delete operations on the A1 interface.

[0346] Note: In addition to Job create / delete, Job update can also trigger the transition between Type ACTIVE and Type IDLE.

[0347] A.1.2.3 Type Management States

[0348] Three management states are defined: Type UNLOCKED (unlock type), Type SHUTTING_DOWN (shut down type), and Type LOCKED (lock type).

[0349] In Type UNLOCKED, jobs can be created for the type according to the dominance of the type operation state and the type usage state. In Type SHUTTING_DOWN, new jobs cannot be created for the type, and when the last job is deleted, the management state changes to Type LOCKED. In Type LOCKED, the usage state is Type IDLE (see Clause A.1.2.2).

[0350] When no jobs exist in Type LOCKED or Type UNLOCKED, the type may be made unavailable for discovery and querying through the A1 interface.

[0351] The events that trigger the transition between Type UNLOCKED and Type SHUTTING_DOWN are the Shut down and Unlock types. In the absence of a job, the events that trigger the transition between Type UNLOCKED and Type LOCKED are the Lock type and the Unlock type and Shut down. The transition between Type SHUTTING_DOWN and Type LOCKED can be triggered by a Lock type event and / or by a Last job deleted event and by Type disable, Last job disabled, and Last job locked. Except for the Last job deleted and Last job locked events corresponding to operations on the A1 interface, these events are internal and are not caused by signaling on the A1 interface. The status can be queried through the A1 interface, and status changes can be notified. Detecting that a type has entered the Type SHUTTING_DOWN or LOCKED state is an indication that an existing job of that type should be considered for deletion (through the A1 interface).

[0352] A.1.2.4 Type states dependencies

[0353] exist Figure 15 The states related to the management of types and the events that can trigger transitions between them are shown in .

[0354] A.1.2.5 Type LCM

[0355] When a new type is available, i.e. becomes discoverable and queryable over the A1 interface, the management state entered is TypeUNLOCKED or Type LOCKED. If it starts as Type LOCKED, it needs to be unlocked before it can be used. Unlock type events are internal and are not caused by signaling over the A1 interface.

[0356] When the existing type is about to become unavailable, the administrative state is Type LOCKED or Type UNLOCKED, and there are no jobs, or all jobs are in Job IDLE. If there are existing jobs in the Type UNLOCKED state, the type can first be set to Type SHUTTING_DOWN, where jobs can be deleted before the type enters Type LOCKED. In SHUTTING_DOWN, existing jobs can remain ENABLED until they are deleted. The LOCKED state can also be entered by disabling the type or all jobs or by locking the type or all jobs.

[0357] Based on Figure 16 the administrative state in

[0358] Based on Figure 16 the Type LCM aspect of the administrative state in

[0359] A.1.2.6 Type state symbols

[0360] The following symbols are used to express the type state based on the model for the administrative state:

[0361] typeState = [{administrative state}, {operational state}, {usage state}]

[0362] If one or both of the state values are not relevant, they are filled with X. If two of the three values are relevant, they can be separated by " / ".

[0363] Example 1: When typeState = [UNLOCKED, ENABLED, IDLE / ACTIVE], new jobs can be created.

[0364] Example 2: When typeState = [UNLOCKED, ENABLED, ACTIVE], (multiple) jobs can be processed and new jobs can be created.

[0365] Example 3: When typeState = [UNLOCKED, DISABLED, X], jobs cannot be created.

[0366] A.1.3 Model for type-based job management

[0367] A.1.3.1 Job operation state

[0368] Two operation states are defined: Job ENABLED (the job is enabled) and Job DISABLED (the job is disabled).

[0369] In Job ENABLED, the job is fully or partially operable. In Job DISABLED, the job is completely inoperable and cannot deliver any results.

[0370] The events that trigger the transition between the job operation states are Job enable (enable the job) and Job disable (disable the job). These events can be internal, e.g., related to required resources or to the type of operation state, and are not caused by any signaling on the A1 interface. The status can be queried via the A1 interface, and the status change is notified.

[0371] A.1.3.2 Job management states

[0372] Two management states are defined: Job UNLOCKED (the job is unlocked) and Job LOCKED (the job is locked).

[0373] In Job UNLOCKED, the job can deliver results according to the domination of the job operation state. In Job LOCKED, the job does not deliver results.

[0374] The events that trigger the transition between Job UNLOCKED and Job LOCKED are Job lock (lock the job) and Job unlock (unlock the job). These events will correspond to operations on the A1 interface.

[0375] A.1.3.3 Job usage states

[0376] Two usage states are defined: Job IDLE (the job is idle) and Job ACTIVE (the job is active).

[0377] In Job IDLE, even if the job is in Job ENABLED, the job does not deliver any results.

[0378] In Job ACTIVE, the job delivers results. The job can be in Job ACTIVE only when it is in Job ENABLED.

[0379] No events are defined that trigger the transition between Job ACTIVE and Job IDLE. Entering and exiting the job usage state is dominated by the job management state.

[0380] A.1.3.4 Job states dependency

[0381] The states related to job management and the events that can trigger transitions between them are shown in Figure 17 .

[0382] A.1.3.5 Job LCM aspects

[0383] When a new job is created for a type, the operational state entered is Job ENABLED.

[0384] When a job is deleted, the operational state exited can be Job ENABLED or Job DISABLED.

[0385] Based on the Figure 18 operational states shown in

[0386] A.1.3.6 Job state notation

[0387] The following notations are used to express job states based on the model for managing states:

[0388] jobState = [{administrative state}, {operational state}, {usage state}]

[0389] If one or both of the state values are not relevant, they can be filled with X.

[0390] Example 1: When jobState = [UNLOCKED, ENABLED, ACTIVE], the job can deliver results.

[0391] Example 2: When jobState = [LOCKED, X, IDLE], the job does not deliver results.

[0392] A.1.4 Dependencies between job states and type states

[0393] A.1.4.1 General principles

[0394] The following principles apply to the models defined in this appendix:

[0395] Type LOCKED implies Type IDLE;

[0396] Type DISABLED implies all Job DISABLED;

[0397] Type IDLE implies that there are no jobs, or all Job IDLE;

[0398] The type ACTIVE means that there are jobs and at least one Job is ACTIVE;

[0399] Job LOCKED means the Job is IDLE;

[0400] Job DISABLED means the Job is IDLE;

[0401] Job ENABLED means the Job is ACTIVE under Job UNLOCKED.

[0402] A.1.4.2 Dependencies between Jobs and Type Operational States

[0403] The operational state of a job for a type depends on the operational state of the type, in the following way:

[0404] If the type is non - operational, then all jobs of that type are also non - operational;

[0405] Even if the type is fully operational, a job can be partially operational, and even if the type is fully or partially operational, a job can be non - operational.

[0406] In Figure 19 the dependencies between operational states are shown.

[0407] Note: Jobs can be created for a type only when typeState = [UNLOCKED, ENABLED, IDLE] or [UNLOCKED, ENABLED, ACTIVE].

[0408] More specifically, Figure 19 shows the dependencies between the type and job operational states applicable to Type UNLOCKED.

[0409] A.1.4.3 Combined Job State and Type State

[0410] After applying the principles and dependencies listed in clauses A.1.4.1 and A1.4.2, in Figures 20 to 22 is shown the combination of the model for type management ( Figure 15 ) and the model for job management ( Figure 17 ).

[0411] A.1.4.4 Type LCM Aspects for Job Management

[0412] The responsibilities of Job LCM and Type LCM are borne by different functions on either side of the A1 interface. Based on the type state notification when the type state changes and the create / update / delete job operations that may cause state changes,Figure 23 The state diagram in

[0413] shows a view of type states and state transitions from the perspective of job management. Figure 23 In

[0414] , the type states are drawn in a separate box only when the type state may have a significant impact on job management operations or when the type state has a significant impact due to job management operations. The notification process name indicates the notified transition. The create / update / delete job process name indicates that the type state transition (which is notified) can be caused by the successful result of the job management process.

[0415] A.2 Data Types for the Service Model

[0416] The service producer can make data types available and unavailable through an interface. When a data type is available, it can be discovered and queried by service consumers.

[0417] When a data type is available, it has a state that can be queried and its change can be notified through an interface. The data type state for the interface is defined based on the type states of the model described in Clause A.1 in Table A.3.1-1.

[0418] Table A.2.1-1 Data Type States

[0419] A.2.2 Data Job States

[0420] Service consumers can create and delete data jobs through an interface. Data jobs are based on data types. When the data type state is UNLOCKED and ENABLED, data jobs can be created based on that data type. When a data job exists, it can be discovered and queried by service consumers.

[0421] When a data job exists, it has a state that can be queried and its change can be notified. The data job state for the interface is defined based on the job states of the model described in Clause A.1 in Table A.3.2-1.

[0422] Table A.2.2-1 Data Job States

[0423] As those skilled in the art will appreciate, the concepts described herein can be embodied as methods, data processing systems, computer program products, and / or computer storage media storing executable computer programs. Thus, the concepts described herein can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects, all of which are generally referred to herein as "circuits" or "modules" in this document. Any process, step, action, and / or functionality described herein can be performed by and / or associated with corresponding modules, which can be implemented in software and / or firmware and / or hardware. In addition, the present disclosure can take the form of a computer program product on a tangible computer-usable storage medium having computer program code embodied in the medium that can be executed by a computer. Any suitable tangible computer-readable medium can be utilized, including hard disks, CD-ROMs, electronic storage devices, optical storage devices, or magnetic storage devices.

[0424] Some embodiments are described herein with reference to flowcharts and / or block diagrams of methods, systems, and computer program products. It should be understood that each block of the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer (thereby creating a special-purpose computer), a special-purpose computer, or other programmable data processing apparatus to produce a machine such that the instructions executed via the processor of the computer or other programmable data processing apparatus create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0425] These computer program instructions can also be stored in a computer-readable memory or storage medium, which can direct a computer or other programmable data processing apparatus to operate in a particular manner such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0426] The computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable device to produce a computer-implemented process such that the instructions executed on the computer or other programmable device provide steps for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0427] It should be understood that the functions / actions indicated in the boxes may not occur in the order indicated in the operating instructions. For example, depending on the functions / actions involved, two consecutively shown boxes may actually be executed substantially simultaneously, or the boxes may sometimes be executed in the reverse order. Although some of the figures include arrows on communication paths to indicate the main communication direction, it should be understood that communication may occur in a direction opposite to that of the depicted arrows.

[0428] The computer program code for performing the operations of the concepts described herein may be written in an object-oriented programming language (such as Python or C++). However, the computer program code for performing the operations of the present disclosure may also be written in a conventional procedural programming language (such as the "C" programming language). The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer. In the latter case, the remote computer may be connected to the user's computer through a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., through the Internet using an Internet service provider).

[0429] Numerous different embodiments have been disclosed herein in connection with the above description and the drawings. It should be understood that it would be inappropriate to repeat and obscure each combination and sub-combination of these embodiments by literal description and illustration. Accordingly, all embodiments may be combined in any manner and / or combination, and this specification (including the drawings) should be construed as constituting a complete written description of all combinations and sub-combinations of the embodiments described herein, as well as the manner and process of making and using them, and should support claims to any such combination or sub-combination.

[0430] Those skilled in the art will understand that the embodiments described herein are not limited to what has been specifically shown and described above. Additionally, unless stated to the contrary above, it should be noted that all of the drawings are not drawn to scale. Various modifications and variations can be made in accordance with the above teachings without departing from the scope of the appended claims.

Claims

1. A method in a producer node (12), the producer node (12) being configured to communicate with a management node (14) and a consumer node (16), the method comprising: Determine (S112) a data type status (100) corresponding to a data type, the data type being associated with data that the producer node (12) is configurable to produce for the consumer node (16), the data type status (100) indicating the ability of the producer node (12) to produce the data of the data type; And Send (S114) a first request to the management node (14), the first request requesting the management node (14) to register the data type and including the corresponding data type status (100).

2. The method according to claim 1, wherein the first request further comprises one or more of the following: A data type identifier; Data type information associated with a data job mode, a job status mode, a job constraint mode, a job result mode; Metadata related to the data type; and Data job constraint information.

3. The method according to any one of claims 1 and 2, wherein the method further comprises: Send a second request, the second request requesting the management node (14) to update or remove the registration of the data type based on one or both of state transitions (102) between the data type status (100) and another data type status (100) of the data type.

4. The method according to claim 3, wherein the method further comprises: Based on a change of the data type status (100) to the another data type status (100), determine that the state transition (102) has occurred.

5. The method according to any one of claims 1 to 4, wherein the data type status (100) comprises one of the following: available, busy, disabled, closed, locked.

6. The method according to claim 5, wherein when the data type status (100) comprises available, the data type status (100) indicates one or more of the following: the data type is available for use, the data type is discoverable, a data request is accepted.

7. The method according to claim 5, wherein when the data type status (100) comprises busy, the data type status (100) indicates one or more of the following: the data type is available for use, there is no free capacity, a data request is accepted, and a new job is idle until there is free capacity.

8. The method according to claim 5, wherein when the data type status (100) comprises disabled, the data type status (100) indicates one or more of the following: the data type is not available for use, existing jobs are not enabled, a data request is not accepted.

9. The method according to claim 5, wherein when the data type status (100) comprises closed, the data type status (100) indicates one or more of the following: the data type is not available for use, existing jobs are enabled, a data request is not accepted.

10. The method according to claim 5, wherein when the data type includes locked, the data type status indicates one or more of the following: the data type is not available for use, an existing job is idle, and a data request is not accepted.

11. A producer node (12) configured to communicate with a management node (14) and a consumer node (16), the producer node (12) being configured to: Determine a data type status (100) corresponding to a data type, the data type being associated with data that the producer node (12) is configurable to produce for the consumer node (16), the data type status (100) indicating the ability of the producer node (12) to produce the data of the data type; and Send a first request to the management node (14), the first request requesting the management node (14) to register the data type and including the corresponding data type status (100).

12. The producer node (12) according to claim 11, wherein the first request further includes one or more of the following: A data type identifier; Data type information associated with a data job mode, a job status mode, a job constraint mode, and a job result mode; Metadata related to the data type; and Data job constraint information.

13. The producer node (12) according to any one of claims 11 and 12, wherein the producer node (12) is further configured to: Send a second request, the second request requesting the management node (14) to update or remove the registration of the data type based on one or both of the data type status (100) and a state transition (102) of another data type status (100) of the data type.

14. The producer node (12) according to claim 13, wherein the producer node (12) is further configured to: Determine that the state transition (102) has occurred based on a change of the data type status (100) to the another data type status (100).

15. The producer node (12) according to any one of claims 11 to 14, wherein the data type status (100) includes one of the following: available, busy, disabled, closed, locked.

16. The producer node (12) according to claim 15, wherein when the data type status (100) includes available, the data type status (100) indicates one or more of the following: the data type is available for use, the data type is discoverable, a data request is accepted.

17. The producer node (12) according to claim 15, wherein when the data type status (100) includes busy, the data type status (100) indicates one or more of the following: the data type is available for use, there is no free capacity, a data request is accepted, and new jobs are idle until there is free capacity.

18. The producer node (12) according to claim 15, wherein when the data type status (100) includes disabled, the data type status (100) indicates one or more of the following: the data type is not available for use, existing jobs are not enabled, a data request is not accepted.

19. The producer node (12) according to claim 15, wherein when the data type status (100) includes closed, the data type status (100) indicates one or more of the following: the data type is not available for use, existing jobs are enabled, a data request is not accepted.

20. The producer node (12) according to claim 15, wherein when the data type includes locked, the data type status indicates one or more of the following: the data type is not available for use, existing jobs are idle, a data request is not accepted.

21. A method in a management node (14), the management node (14) being configured to communicate with a producer node (12) and a consumer node (16), the method comprising: Register (S116) a data type at the management node (14), the registration including a data type status (100) corresponding to the data type, the data type being associated with data that the producer node (12) is configurable to produce for the consumer node (16), the data type status (100) indicating the ability of the producer node (12) to produce the data of the data type; And At least make (S118) the data type status (100) available to the consumer node (16).

22. The method according to claim 21, wherein the method further comprises: Receive a first request from the producer node (12), the first request requesting the management node (14) to register the data type and including the data type status (100).

23. The method according to claim 22, wherein the first request further comprises one or more of the following: A data type identifier; Data type information associated with a data job mode, a job status mode, a job constraint mode, and a job result mode; Metadata related to the data type; and Data job constraint information.

24. The method according to any one of claims 21 to 23, wherein the method further comprises one or more of the following: Receive a second request from the producer node (12), the second request requesting the management node (14) to update or remove the registration of the data type based on one or both of the data type status (100) and the state transition (102) of another data type status (100) of the data type; and In response to the second request, update or remove the registration of the data type.

25. The method according to any one of claims 21 to 24, wherein the data type status (100) includes one of the following: available, busy, disabled, closed, locked.

26. The method according to any one of claims 21 to 25, wherein the method further comprises: Receive a third request from the consumer node (16), the third request being a subscription request to at least make the data type status (100) available to the consumer node (16).

27. The method according to any one of claims 21 to 26, wherein the method further comprises: Receive a fourth request for a data type identifier from the consumer node (16), the fourth request including a filtering criterion associated with the data type; Match the filtering criterion to registered metadata associated with the data type; And Send a first response to the consumer node (16), the first response including at least a subset of the data type identifier and the registered metadata.

28. The method according to claim 27, wherein the method further comprises: Receive a fifth request for information associated with the data type from the consumer node (16), the fifth request including the data type identifier; And Send a second response including the information to the consumer node (16), the information being determined based on an integration of information registered for the data type, the data type being associated with at least one other data producer node (12).

29. The method according to any one of claims 27 and 28, wherein the method further comprises: Receive a sixth request for the data type status (100) from the consumer node (16), the sixth request including the data type identifier; In response to receiving the sixth request, determine an object available to the consumer node (16) to verify the object according to an open application programming interface mode; and Send a third response including the object to the consumer node (16).

30. A management node (14) configured to communicate with a producer node (12) and a consumer node (16), the management node (14) being configured to: Register a data type at the management node (14), the registration including a data type status (100) corresponding to the data type, the data type being associated with data that the producer node (12) is configurable to produce for the consumer node (16), the data type status (100) indicating the ability of the producer node (12) to produce the data of the data type; and At least make the data type status (100) available to the consumer node (16).

31. The management node (14) according to claim 32, wherein the management node (14) is further configured to: Receive a first request from the producer node (12), the first request requesting the management node (14) to register the data type and including the data type status (100).

32. The management node (14) according to claim 31, wherein the first request further includes one or more of the following: Data type identifier; Data type information associated with a data job mode, a job status mode, a job constraint mode, and a job result mode; Metadata related to the data type; and Data job constraint information.

33. The management node (14) according to any one of claims 30 to 32, wherein the management node (14) is further configured to one or more of the following: Receive a second request from the producer node (12), the second request requesting the management node (14) to update or remove the registration of the data type based on one or both of the state transitions (102) of the data type status (100) and another data type status (100) of the data type; and In response to the second request, update or remove the registration of the data type.

34. The management node (14) according to any one of claims 30 to 33, wherein the data type status (100) includes one of the following: available, busy, disabled, closed, locked.

35. The management node (14) according to any one of claims 30 to 34, wherein the management node (14) is further configured to: Receive a third request from the consumer node (16), the third request being a subscription request that at least makes the data type status (100) available to the consumer node (16).

36. The management node (14) according to any one of claims 30 to 35, wherein the management node (14) is further configured to: Receive a fourth request for a data type identifier from the consumer node (16), the fourth request including a filtering criterion associated with the data type; Match the filtering criteria to registered metadata associated with the data type; And Send a first response to the consumer node (16), the first response including at least a subset of the data type identifier and the registered metadata.

37. The management node (14) according to claim 36, wherein the management node (14) is further configured to: Receiving, from the consumer node (16), a fifth request for information associated with the data type, the fifth request including the data type identifier; and Sending a second response to the consumer node (16), the response including the information determined based on an integration of information registered for the data type, the data type being associated with at least one other data producer node (12).

38. The management node (14) according to any one of claims 36 and 37, wherein the management node (14) is further configured to: Receiving, from the consumer node (16), a sixth request for the data type status (100), the sixth request including the data type identifier; In response to receiving the sixth request, determining an object available to the consumer node (16) to authenticate the object according to an open application programming interface schema; and Sending a third response to the consumer node (16), the response including the object.

39. A method implemented in a consumer node (16), the consumer node (16) being configured to communicate with a producer node (12) and a management node (14), the method comprising: Obtain (S120) at least from the management node (14) a data type status (100) corresponding to a data type, the data type being associated with data that the producer node (12) is configurable to produce for the consumer node (16), the data type status (100) indicating the ability of the producer node (12) to produce the data of the data type; And Perform (S122) one or more actions based at least on the obtained data type status (100).

40. The method according to claim 39, wherein the data type is registered at the management node (14) and is further associated with one or more of the following: Data type identifier; Data type information associated with a data job schema, a job status schema, a job constraint schema, and a job result schema; Metadata associated with the data type; and Data job constraint information.

41. The method according to any one of claims 39 and 40, wherein the data type status (100) includes one of the following: available, busy, disabled, closed, locked.

42. The method according to any one of claims 39 to 41, wherein the method further comprises: Send a first request to the management node (14), the first request being at least a subscription request for making the data type status (100) available to the consumer node (16), the data type status (100) being obtained when the data type status (100) is made available to the management node (14).

43. The method according to any one of claims 39 to 42, wherein the method further comprises: Send a second request for a data type identifier to the management node (14), the second request including filtering criteria associated with the data type; And Receive a first response from the management node (14), the first response including at least a subset of the data type identifier and registered metadata.

44. The method according to claim 43, wherein the method further comprises: Send a third request for information associated with the data type to the management node (14), the third request including the data type identifier; And Receive a second response from the management node (14) including the information associated with the data type, the information being determined based on an integration of information registered for the data type, the data type being associated with at least one other data producer node (12).

45. The method according to claim 44, wherein the method further comprises: In response to the second response, verify the data associated with the job constraint object according to a job constraint mode.

46. The method according to any one of claims 43 to 45, wherein the method further comprises: Send a fourth request for the data type status (100) to the management node (14), the fourth request including the data type identifier; And Receive a third response from the management node (14), the third response including an object available to the consumer node (16) to verify the object according to an open application programming interface mode.

47. The method according to claim 46, wherein the method further comprises: Verify the object according to an open application programming interface mode.

48. The method according to any one of claims 39 to 47, wherein performing the one or more actions comprises: Request data of the data type from the producer node (12) based on the data type status (100), or avoid the request for data of the data type.

49. A consumer node (16) configured to communicate with a producer node (12) and an administrative node (14), the consumer node (16) being configured to: obtain at least a data type status (100) corresponding to a data type from the administrative node (14), the data type being associated with data that the producer node (12) is configurable to produce for the consumer node (16), the data type status (100) indicating the ability of the producer node (12) to produce the data of the data type; and perform one or more actions based at least on the obtained data type status (100).

50. The consumer node (16) according to claim 49, wherein the data type is registered at the administrative node (14) and is further associated with one or more of the following: A data type identifier; Data type information associated with a data job mode, a job status mode, a job constraint mode, and a job result mode; Metadata associated with the data type; and Data job constraint information.

51. The consumer node (16) according to any one of claims 49 and 50, wherein the data type status (100) comprises one of the following: available, busy, disabled, closed, locked.

52. The consumer node (16) according to any one of claims 49 to 51, wherein the consumer node (16) is further configured to: Send a first request to the management node, the first request being a subscription request for at least making the data type status (100) available to the consumer node (16), the data type status (100) being obtained when the data type status (100) is made available to the management node (14).

53. The consumer node (16) according to any one of claims 49 to 52, wherein the consumer node (16) is further configured to: Send a second request for a data type identifier to the management node (14), the second request including a filtering criterion associated with the data type; and Receive a first response from the management node (14), the first response including at least a subset of the data type identifier and the registered metadata.

54. The consumer node (16) according to claim 53, wherein the consumer node (16) is further configured to: Send a third request for information associated with the data type to the management node (14), the third request including the data type identifier; and Receive a second response from the management node (14) including the information associated with the data type, the information being determined based on an integration of the information registered for the data type, the data type being associated with at least one other data producer node (12).

55. The consumer node (16) according to claim 54, wherein the consumer node (16) is further configured to: In response to the second response, verify the data associated with the job constraint object according to the job constraint mode.

56. The consumer node (16) according to any one of claims 53 to 55, wherein the consumer node (16) is further configured to: Send a fourth request for the data type status (100) to the management node (14), the fourth request including the data type identifier; and Receive a third response from the management node (14), the third response including an object available to the consumer node (16) to verify the object according to the open application programming interface mode.

57. The consumer node (16) according to claim 56, wherein the consumer node (16) is further configured to: Verify the object according to the open application programming interface mode. The consumer node (16) according to any one of claims 49 to 57, wherein performing the one or more actions comprises: Request data of the data type from the producer node (12) based on the data type status (100), or avoid the request for data of the data type.