Supported filter options
Using the filtering options, it is possible to define more specific requests in case of several endpoints. To perform filtering, targetFilter and scopeFilter parameters can be used in the path.
Sample structure using target and scope filters:
GET https://<host>/topology-inventory/<API_VERSION>/domains/<domainName>?targetFilter=<targetFilter>&scopeFilter=<scopeFilter>
See Topology & Inventory API for all possible filter options and sample responses for each endpoint.
Querying simple entities
This functionality is supported by the following endpoints: /domains/{domainName}/entity-types/{entityTypeName}/entities
The entityTypeName is used as the root of the queries (from here referred as RootObject). Every other object, either in targetFilter or scopeFilter, has to relate to the RootObject. The queries are constructed starting from the RootObject and all other objects are joined to it. If there is no connection between the RootObject and the other object(s), the query is not constructed. The RootObject still can be retrieved and filtered using the /attributes.
Use case |
domain Name |
entityTypeName |
targetFilter |
scopeFilter |
Query result |
---|---|---|---|---|---|
To return the ids for all instances of
the entityTypeName used in the query.
|
RAN |
GNBDUFunction |
All ids of every
GNBDUFunction
|
||
To return all attributes of every
instance of the entityTypeName used
in the query.
|
RAN |
GNBDUFunction |
/attributes |
All GNBDUFunctions
with every attribute
|
|
To return every instance of the
entityTypeName used in the query, but
only the attribute that was
defined in the targetFilter
parameter. Note: The attribute must be
a valid field of the object.
|
RAN |
GNBDUFunction |
/attributes (gNBId) |
All gNBIds of every
GNBDUFunction
|
|
To return every instance of the
entityTypeName used in the query, but
only the attributes that were
defined in the targetFilter
parameter. Note: The attributes must
be separated by a comma “,” when
using parenthesis “()”.
|
RAN |
GNBDUFunction |
/attributes (gNBId, gNBIdLength) |
All gNBIds and
gNBIdLengths of
every GNBDUFunction
|
|
To return the ids for all instances of
the entityTypeName used in the query,
that matches the given
property in the scopeFilter
parameter.
|
RAN |
GNBDUFunction |
/sourceIds [contains (@item, ‘SubNetwork=Ireland’)] |
Unique set of ids
of GNBDUFunctions,
where sourceIds
contains
SubNetwork=Ireland
|
|
To return the ids for all instances of
the entityTypeName used in the query,
that matches the given attributes in
the scopeFilter parameter. Note: The
attributes must be separated by a
AND or OR”.
|
RAN |
GNBDUFunction |
/attributes [@gNBId Length=3 and @gNBId=111] |
Unique set of ids of
GNBDUFunctions,where
the gNBIdLength
equals 3 and the
gNBId equals 111
|
|
To return the ids for all instances of
the entityTypeName used in the query,
that satisfies one of
the conditions in the scopeFilter
parameter. A condition is a complete
unit of scopeFilter
represent OR.
parameter surrounded by square
brackets. Note: Multiple conditions
can be given in the scopeFilter
separated by a semicolon “;” to
represent AND, or a pipe symbol “|” to
|
RAN |
GNBDUFunction |
/attributes [@gNBId Length=3] | /sourceIds [contains (@item, ‘SubNetwork=Ireland’)] |
Unique set of ids of
GNBDUFunctions,
where the
gNBIdLength equals 3
or the sourceIds
contains an item
with
“SubNetwork=Ireland”
|
Querying connected entities
This functionality is achieved using associations and is supported by the following endpoints: /domains/{domainName}/entity-types/{entityTypeName}/entities
The entityTypeName is used as the root of the queries.
Use case |
domainName |
entityTypeName |
targetFilter |
scopeFilter |
Query result |
---|---|---|---|---|---|
To return the ids for all instances of
an entityTypeName related by an
association.
|
OAM_TO_RAN |
ENodeBFunction |
/managed-by-managedElement |
All ENodeBFunction entities that are managed
by any Managed Element.
|
|
To return the ids for all instances of
an entityTypeName related by an
association to another entity
specified by its id.
|
OAM_TO_RAN |
ENodeBFunction |
/managed-by-managedElement [@id = ‘urn:3gpp:dn: ManagedElement=1’] |
All ENodeBFunction entities that are managed
by the Managed Element
urn:3gpp:dn: ManagedElement=1.
|
|
To return the attributes for all
instances of an entityTypeName
related by one or more associations
to other entities specified by their
id.
|
OAM_TO_RAN |
ENodeBFunction |
/attributes |
/attributes [@enbId=1]; /managed-by-managedElement [@id=’urn:3gpp:dn: ManagedElement=1’] | /managed-by-managedElement [@id=’urn:3gpp:dn: ManagedElement=2’] ; /provided-euTranCell [@id=’urn:3gpp:dn: ManagedElement=1, EUtranCell=2’] |
All EnodeBFunction entities with enbId as 1
managed by the Managed Element
urn:3gpp:dn: ManagedElement=1 or
urn:3gpp:dn: ManagedElement=2,
and provides EuTranCell
urn:3gpp:dn: ManagedElement=1, EUtranCell=2
|
Querying entities for relationships
This functionality is supported by the following endpoints: /domains/{domainName}/entity-types/{entityTypeName}/entities/{entityId}/relationships
The entityTypeName is used as the root of the queries.
Use case |
domain Name |
entityTypeName |
entityId |
target Filter |
scopeFilter |
Query result |
---|---|---|---|---|---|---|
To return the relationships for a
given entity specified by its id.
|
RAN |
GNBDUFunction |
urn:3gpp:dn: ManagedElement=1, GNBDUFunction=1 |
All relations for the GNBDUFunction with id
urn:3gpp:dn: ManagedElement=1, GNBDUFunction=1
|
||
To return specific relationships for a
given entity specified by its id.
|
RAN |
GNBDUFunction |
urn:3gpp:dn: ManagedElement=1, GNBDUFunction=1 |
/MANAGEDELEMENT _MANAGES _GNBDUFUNCTION |
All MANAGEDELEMENT _MANAGES _GNBDUFUNCTION
relations for the GNBDUFunction with id
urn:3gpp:dn: ManagedElement=1, GNBDUFunction=1
|
|
To return specific relationships for
an entity specified by its id to
another entity using its id and
association.
|
RAN |
GNBDUFunction |
urn:3gpp:dn: ManagedElement=1, GNBDUFunction=1 |
/managed-by-managedElement [@id = ‘urn:3gpp:dn: ManagedElement=1’] |
All MANAGEDELEMENT _MANAGES _GNBDUFUNCTION
relations for the GNBDUFunction with id
urn:3gpp:dn: ManagedElement=1, GNBDUFunction=1
where the managed element is
urn:3gpp:dn: ManagedElement=1.
|
Querying on relationships
This functionality is supported by the following endpoints: /domains/{domainName}/relationship-types/{relationshipTypeName}/relationships
Here, the relationshipTypeName is used as the root of the queries.
Use case |
domainName |
relationship Type Name |
target Filter |
scopeFilter |
Query result |
---|---|---|---|---|---|
To return all relationships for a
specified relationship
|
OAM_TO_RAN |
MANAGEDELEMENT _MANAGES _ENODEBFUNCTION |
All MANAGEDELEMENT_MANAGES_ENODEBFUNCTION
relationships
|
||
To return all relationships for a
specified relationship type with a
specified association to an entity.
|
OAM_TO_RAN |
MANAGEDELEMENT _MANAGES _ENODEBFUNCTION |
/managed-by-managedElement [@id=’urn:3gpp:dn: ManagedElement=1’] |
All MANAGEDELEMENT_MANAGES_ENODEBFUNCTION
relationships having an association
managed-by-managedElement to ManagedElement
urn:3gpp:dn: ManagedElement=1.
|
To get a relationship with a specific id, use: /domains/{domainName}/relationship-types/{relationshipTypeName}/relationships/{relationshipId}
Example: Get the MANAGEDELEMENT_MANAGES_ENODEBFUNCTION relationship with id rel1 in the OAM_TO_RAN domain:
GET https://<host>/topology-inventory/<API_VERSION>/domains/OAM_TO_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ENODEBFUNCTION/relationships/rel1