Release Notes¶
What’s in this document?
The Ontotext Platform release notes provide information about the features and improvements in each release, as well as various bug fixes. Ontotext Platform’s versioning scheme is based on semantic versioning. The full version is composed of three components:
major
.minor
.patch
e.g., 1.2.3
where the major version is 1
, the minor version is 2
, and the patch version is 3
.
Note
Releases with the same major and minor versions do not contain any new features. Releases with different patch versions contain fixes for bugs discovered since the previous minor. New or significantly changed features are released with a higher major or minor version.
Ontotext Platform 3.4.0¶
Released: 12 April 2021
Important
Ontotext Platform 3.4.0 combines the power of GraphDB, Elasticsearch, and GraphQL by enabling the definition, automatic synchronization, and querying of indexes to boost the performance of specific queries.
Declarative Semantic Search Service - Enables SMEs and software engineers to easily use capabilities like Full-text search (FTS), Autocomplete/typeahead, Auto-suggest, Faceted search, complex dashboards using different statistical and/or bucket aggregations over a knowledge graph.
Knowledge graph exploration - Provides SMEs with a basic search and exploration user interface in the OTP Workbench.
Performance and memory improvements - The new version of the Semantic Object Service delivers up to ten times better performance to execute big and data-intensive GraphQL queries on top of GraphDB.
Warning
Ontotext Platform 3.4.0 introduces changes in the way we handle missing values for multi-valued properties in GraphQL.
The Platform no longer generates the multi-valued properties as non-nullable arrays by default. Their nullability
can be controlled by the nonNullable
and nonNullableElements
characteristics.
Note
Ontotext Platform version 3.4.0 requires GraphDB version 9.7.0 or later, as well as the required version of Elasticsearch related to the used GraphDB Elasticsearch connector version. You can find a list with all external dependencies here.
New Features¶
Declarative Semantic Search Service
Declare search indices
Manage Semantic Object Search shape
Manage types mapping to Elasticsearch types
Apply filters on object
Apply default configurations
Declare search analyzer
Schema validation
Declare semantic object as part of parent object index
Manage object properties
Nested object support
Declare nesting level
Initialize/update search indexes
Automatically generated GraphDB Elasticsearch connectors
On schema activation
On schema update
Synchronized update on GraphDB transaction
Search GraphQL endpoint features
Support Elasticsearch queries
Support Sort and Pagination
Support Boost result score
Support Fuzzy search
Support Elasticsearch aggregations
Return data directly from Elasticsearch
Automatic federation with the Semantic Object Service
Built-in GraphQL search object over all indexes (root_search)
Search Service health status
Provide Helm charts for the Search Service
Search Service Documentation / Schema Configuration / Tutorial
Knowledge Graph Exploration
Provide Full-text search (FTS)
Provide Autocomplete/typeahead (suggest concepts from the KG)
Provide Concept search (search for objects related to the selected concept from the KG)
Provide Faceted search over non-string/text properties
Display and paginate search results
Display object details
Explorer-related object details
Improvements¶
Performance and memory improvements
Optimize SPARQL result parsing
Optimize RBAC model memory footprint
Do not generate RBAC directives in the GraphQL schema if not needed
Add option to disable statistics
Select GraphQL endpoint to be used in Workbench GraphiQL page
Support OWL cardinality during schema generation
Range validation checks for object properties enforced via SHACL sh:node
UNIQ language checks allow only single String without a language
Control GraphQL nullability for multi-valued properties
Bug Fixes¶
PLATFORM-3569 Incorrect validation for some IRI values
PLATFORM-3369 Wrong type calculation for SOML class with ‘.’ in the name
PLATFORM-3340 __typename is not property normalized for classes with prefix
PLATFORM-3336 langString: inline fragments causes error 500 without ‘lang:ALL’
PLATFORM-3105 Wrong SPARQL query is generated when filtering
PLATFORM-3098 License cannot be set using the Workbench
PLATFORM-3086 License cannot be uploaded if NTP server is inaccessible
PLATFORM-3050 inverseOf error when class and prop use different namespaces
PLATFORM-3045 Properties with ‘_’ in the name characteristic can lead to errors
PLATFORM-3044 ERROR: Prefix ‘vocab’ does not define correct IRI value
PLATFORM-3043 LangString values are not returned when querying _entities
PLATFORM-3018 Cannot really disable SHACL in cluster via API call
PLATFORM-3008 Do not normalize shape sizes if parent shape has same typeProp
PLATFORM-2958 WB does not load if SOaaS is not present or there is a network issue
PLATFORM-2956 SHACL in cluster: problem with class’ regex not detected
PLATFORM-2943 Fields are not properly merged when not in fragment
PLATFORM-2938 Query takes too long
PLATFORM-2937 SHACL enable/disable: error 500 with security and SOML not bound
PLATFORM-2893 RBAC partial update mutation results in a NPE
PLATFORM-2890 Query returns wrong ‘name’ when ‘name’ at different levels is requested
PLATFORM-2856 SHACL schema post should return 400 and not 500 when no SOML is bound
PLATFORM-2797 Platform vulnerability issue with zookeeper-3.4.14.jar
PLATFORM-2749 langString ‘name’: orderBy orders results in unexpected way
PLATFORM-2714 Test: Random failing SHACL tests on GDB cluster
PLATFORM-2711 GDB: locked when executing rapid SHACL bind/unbind operations
PLATFORM-2708 langString + SHACL mutation returns error 500
PLATFORM-2686 A case of successfully updated valid to invalid yaml schema
PLATFORM-2683 Random failing AC due to ConcurrentModificationException
PLATFORM-2517 Update with where: {id: {}} filter fails