added scripts for documentations (#41)

* added scripts for documentations

* Update schema-scripts.yml

* changed summary.md as per our latest types schema

Co-authored-by: parthp2107 <parth.panchal@deuexsoultions.com>
This commit is contained in:
parthp2107 2021-08-04 11:52:38 +05:30 committed by GitHub
parent adfafc1600
commit bb9137630b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 623 additions and 4 deletions

47
.github/workflows/schema-scripts.yml vendored Normal file
View File

@ -0,0 +1,47 @@
name: Schemas Script
on:
push:
branches: [main]
jobs:
test:
runs-on: ${{matrix.os}}
strategy:
matrix:
os:
- ubuntu-latest
node-version:
- 12.x
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install jsonschema2md
run: sudo npm install -g @adobe/jsonschema2md
- name: Changing $ref
run: sed -i '71s+"#/definitions/tag"+"#"+' catalog-rest-service/src/main/resources/json/schema/entity/tags/tagCategory.json
- name: Json schema to markdown
run: jsonschema2md -d catalog-rest-service/src/main/resources/json/schema -o docs/openmetadata-apis/schemas/SchemaMarkdown -e json
- name: Changing $ref
run: sed -i '71s+"#"+"#/definitions/tag"+' catalog-rest-service/src/main/resources/json/schema/entity/tags/tagCategory.json
- name: Running header script
run: sh ./scripts/header.sh
- name: Generating directories
run: sh ./scripts/generateDirectories.sh
- name: Configuring paths
run: sh ./scripts/editContent.sh
- name: Deploy 🚀
uses: Cecilapp/GitHub-Pages-deploy@v3
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
build_dir: ./
branch: main

View File

@ -7,12 +7,16 @@
* [Schemas](openmetadata-apis/schemas/README.md)
* [Types](openmetadata-apis/schemas/types/README.md)
* [Category Usage Type](openmetadata-apis/schemas/types/categoryusage.md)
* [Classiication Type](openmetadata-apis/schemas/types/classification.md)
* [Collection Descripitor Type](openmetadata-apis/schemas/types/collectiondescriptor.md)
* [Common Type](openmetadata-apis/schemas/types/common.md)
* [Basic Type](openmetadata-apis/schemas/types/basic.md)
* [Collection Descriptor Type](openmetadata-apis/schemas/types/collectiondescriptor.md)
* [Daily Count Type](openmetadata-apis/schemas/types/dailycount.md)
* [Entity Reference Type](openmetadata-apis/schemas/types/entityreference.md)
* [Entity Usage Type](openmetadata-apis/schemas/types/entityusage)
* [Jdbc Connection Type](openmetadata-apis/schemas/types/jdbcconnection.md)
* [Profile Type](openmetadata-apis/schemas/types/profile.md)
* [Schedule Type](openmetadata-apis/schemas/types/schedule.md)
* [Tag Label Type](openmetadata-apis/schemas/types/taglabel.md)
* [Usage Details Type](openmetadata-apis/schemas/types/usagedetails.md)
* [Entities](openmetadata-apis/schemas/entities/README.md)
* [Bot Entity](openmetadata-apis/schemas/entities/bots.md)
* [Dashboard Entity](openmetadata-apis/schemas/entities/dashboard.md)

349
scripts/editContent.sh Normal file
View File

@ -0,0 +1,349 @@
echo "----------------------Changing file content----------------------"
path=docs/openmetadata-apis/schemas/README.md
sed -i d $path
echo "# Schemas
## Schema Modeling
OpenMetadata takes the **schema-first** approach to model metadata as a Single Source of Truth with clear vocabulary for the system. First, the Entities and Types in the system are identified and schemas are defined for them. Code is then generated from these schemas and is used in implementing the system. We use [JSON schema](https://json-schema.org/) as the Schema Definition Language as it offers several advantages:
* Easy to describe the structure and semantics of metadata models with readable documentation that is both human and machine consumable.
* Common types can be developed once and can be reused as building blocks in other schemas and become the basis of vocabulary development.
* Models can include structural validation, such as required/optional fields, default values, allowed values, regex that not only serve as automated testing and validation but also as documentation of API contract.
* A rich set of tools are availble that supports JSON schema support for generating code and validation from JSON schema in various languages, reducing the manual boilerplate coding.
* Supports rich formats to convert schema types into native standard types during code generation, such as URI, date, and time.
## Reference
1. [JSON schema](https://json-schema.org/) specification version [Draft-07 to 2019-099](https://json-schema.org/draft/2019-09/release-notes.html)
2. [JSON schema 2 POJO](https://www.jsonschema2pojo.org/) tool used for Java code generation from JSON schema
3. [Data model code generator](https://github.com/koxudaxi/datamodel-code-generator) for generating python code from JSON schema
## Schemas
{% page-ref page="\"entities\"" %}
{% page-ref page="\"types\"" %}
## Version Note
The schemas linked above follow the JSON Schema Spec version: `http://json-schema.org/draft-07/schema#`" >> $path
echo "----------------------Changing paths----------------------"
path=docs/openmetadata-apis/schemas/*/*.md
sed -i -e 's#../../out/entity/bots.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/bots.json#g' \
-e 's#../../out/entity/data/dashboard.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/dashboard.json#g' \
-e 's#../../out/entity/data/database.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/database.json#g' \
-e 's#../../out/entity/services/databaseService.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/services/databaseService.json#g' \
-e 's#../../out/entity/feed/thread.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/feed/thread.json#g' \
-e 's#../../out/entity/data/metrics.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/metrics.json#g' \
-e 's#../../out/entity/data/pipeline.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/pipeline.json#g' \
-e 's#../../out/entity/data/report.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/report.json#g' \
-e 's#../../out/entity/data/table.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/table.json#g' \
-e 's#../../out/entity/tags/tagCategory.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/tags/tagCategory.json#g' \
-e 's#../../out/entity/teams/team.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/teams/team.json#g' \
-e 's#../../out/entity/teams/user.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/teams/user.json#g' \
-e 's#../../out/type/categoryUsage.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/categoryUsage.json#g' \
-e 's#../../out/type/classification.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/classification.json#g' \
-e 's#../../out/type/collectionDescriptor.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/collectionDescriptor.json#g' \
-e 's#../../out/type/basic.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/basic.json#g' \
-e 's#../../out/type/dailyCount.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/dailyCount.json#g' \
-e 's#../../out/type/entityUsage.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityUsage.json#g' \
-e 's#../../out/type/jdbcConnection.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/jdbcConnection.json#g' \
-e 's#../../out/type/entityReference.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityReference.json#g' \
-e 's#../../out/type/profile.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/profile.json#g' \
-e 's#../../out/type/schedule.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/schedule.json#g' \
-e 's#../../out/type/tagLabel.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/tagLabel.json#g' \
-e 's#../../out/api/teams/createUser.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/api/teams/createUser.json#g' \
-e 's#../../out/api/teams/createThread.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/api/feed/createThread.json#g' \
-e 's#../../out/api/catalogVersion.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/api/catalogVersion.json#g' \
-e 's#../../out/api/data/createTable.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/api/data/createTable.json#g' \
-e 's#../../out/api/services/updateDatabaseService.json#https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/api/services/updateDatabaseService.json#g' \
-e 's+\[Details\](basic-definitions-entityreference.md)+\[Details\](../types/basic.md#basic-definitions-entityreference)+gI' \
-e 's+\[Details\](basic-definitions-usagedetails.md)+\[Details\](../types/basic.md#basic-definitions-usagedetails)+gI' \
-e 's+\[Details\](jdbcconnection-definitions-jdbcinfo.md)+\[Details\](../types/jdbcconnection.md#jdbcconnection-definitions-jdbcinfo)+gI' \
-e 's+\[Details\](basic-definitions-schedule.md)+\[Details\](../types/basic.md#basic-definitions-schedule)+gI' \
-e 's+\[Details\](table-definitions-column.md)+\[Details\](../types/basic.md#table-definitions-column)+gI' \
-e 's+\[Details\](table-definitions-tableconstraint.md)+\[Details\](#table-definitions-tableconstraint)+gI' \
-e 's+\[Details\](basic-definitions-taglabel.md)+\[Details\](../types/basic.md#basic-definitions-taglabel)+gI' \
-e 's+\[Details\](basic-definitions-profile.md)+\[Details\](../types/basic.md#basic-definitions-profile)+gI' \
-e 's+\[Details\](basic-definitions-imagelist.md)+\[Details\](../types/basic.md#basic-definitions-imagelist)+gI' \
-e 's+\[Details\](basic-definitions-timeinterval.md)+\[Details\](../types/basic.md#basic-definitions-timeinterval)+gI' $path
echo "----------------------Changing bots paths----------------------"
path=docs/openmetadata-apis/schemas/entities/bots.md
sed -i -e 's+\[Bot entity\](basic-definitions-uuid.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/bots.json#/properties/id")+\[Basic type\](../types/basic.md#basic-definitions-uuid)+gI' \
-e 's+\[Bot entity\](basic-definitions-href.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/bots.json#/properties/href")+\[Basic type\](../types/basic.md#basic-definitions-href)+gI' \
-e 's+bots-properties-name.md+#bots-properties-name+gI' \
-e 's+bots-properties-displayname.md+#bots-properties-displayname+gI' \
-e 's+bots-properties-description.md+#bots-properties-description+gI' $path
echo "----------------------Changing dashboard paths----------------------"
path=docs/openmetadata-apis/schemas/entities/dashboard.md
sed -i -e 's+\[Dashboard entity\](basic-definitions-uuid.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/dashboard.json#/properties/id")+\[Basic type\](../types/basic.md#basic-definitions-uuid "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/basic.json#/definitions/uuid")+gI' \
-e 's+\[Dashboard entity\](basic-definitions-href.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/dashboard.json#/properties/href")+\[Basic type\](../types/basic.md#basic-definitions-href "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/basic.json#/definitions/href")+gI' \
-e 's+\[Dashboard entity\](entityreference.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityReference.json#/properties/owner")+\[Entity Reference type\](../types/entityreference.md)+gI' \
-e 's+\[Dashboard entity\](entityreference.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityReference.json#/properties/service")+\[Entity Reference type\](../types/entityreference.md)+gI' \
-e 's+\[Dashboard Entity\](usagedetails.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/usageDetails.json#/properties/usageSummary")+\[Usage Details type\](../types/usagedetails.md)+gI' \
-e 's+dashboard-properties-name.md+#dashboard-properties-name+gI' \
-e 's+dashboard-properties-fullyqualifiedname.md+#dashboard-properties-fullyqualifiedname+gI' \
-e 's+dashboard-properties-description.md+#dashboard-properties-description+gI' $path
echo "----------------------Changing database paths----------------------"
path=docs/openmetadata-apis/schemas/entities/database.md
sed -i -e 's+\[Database entity\](basic-definitions-uuid.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/database.json#/properties/id")+\[Basic type\](../types/basic.md#basic-definitions-uuid)+gI' \
-e 's+\[Database entity\](basic-definitions-href.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/database.json#/properties/href")+\[Basic type\](../types/basic.md#basic-definitions-href)+gI' \
-e 's+\[Database entity\](entityreference.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityReference.json#/properties/owner")+\[Entity Reference type\](../types/entityreference.md)+gI' \
-e 's+\[Database entity\](entityreference.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityReference.json#/properties/service")+\[Entity Reference type\](../types/entityreference.md)+gI' \
-e 's+\[Database entity\](usagedetails.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/usageDetails.json#/properties/usageSummary")+\[Usage Details type\](../types/usagedetails.md)+gI' \
-e 's+\[Database entity\](entityreference-definitions-entityreferencelist.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/database.json#/properties/tables")+\[Entity Reference type\](../types/entityreference.md#entityreference-definitions-entityreferencelist)+gI' \
-e 's+database-properties-name.md+#database-properties-name+gI' \
-e 's+database-properties-fullyqualifiedname.md+#database-properties-fullyqualifiedname+gI' \
-e 's+database-properties-description.md+#database-properties-description+gI' $path
echo "----------------------Changing databaseservice paths----------------------"
path=docs/openmetadata-apis/schemas/entities/databaseservice.md
sed -i -e 's+\[Database service entity\](basic-definitions-uuid.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/services/databaseService.json#/properties/id")+\[Basic type\](../types/basic.md#basic-definitions-uuid)+gI' \
-e 's+\[Database service entity\](basic-definitions-href.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/services/databaseService.json#/properties/href")+\[Basic type\](../types/basic.md#basic-definitions-href)+gI' \
-e 's+\[Database service entity\](jdbcconnection-definitions-jdbcinfo.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/services/databaseService.json#/properties/jdbc")+\[Jdbc Connection type\](../types/jdbcconnection.md#jdbcconnection-definitions-jdbcinfo)+gI' \
-e 's+\[Database service entity\](schedule.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/schedule.json#/properties/ingestionSchedule")+\[Schedule type\](../types/schedule.md)+gI' \
-e 's+databaseservice-properties-name.md+#databaseservice-Properties-Name+gI' \
-e 's+databaseservice-properties-servicetype.md+#databaseservice-properties-servicetype+gI' \
-e 's+databaseservice-properties-description.md+#databaseservice-properties-description+gI' $path
echo "----------------------Changing thread paths----------------------"
path=docs/openmetadata-apis/schemas/entities/thread.md
sed -i -e 's+\[Feed entity\](basic-definitions-uuid.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/feed/thread.json#/properties/id")+\[Basic type\](../types/basic.md#basic-definitions-uuid)+gI' \
-e 's+\[Feed entity\](basic-definitions-uuid.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/feed/thread.json#/definitions/post/properties/from")+\[Basic type\](../types/basic.md#basic-definitions-uuid)+gI' \
-e 's+\[Feed entity\](basic-definitions-href.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/feed/thread.json#/properties/href")+\[Basic type\](../types/basic.md#basic-definitions-href)+gI' \
-e 's+\[Feed entity\](basic-definitions-entitylink.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/feed/thread.json#/properties/about")+\[Basic type\](../types/basic.md#basic-definitions-entitylink)+gI' \
-e 's+\[Feed entity\](basic-definitions-entitylink.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/feed/thread.json#/properties/addressedTo")+\[Basic type\](../types/basic.md#basic-definitions-entitylink)+gI' \
-e 's+\[Feed entity\](basic-definitions-entityreference.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/feed/thread.json#/properties/toEntity")+\[Basic type\](../types/basic.md#basic-definitions-entityreference)+gI' \
-e 's+thread-properties-threadts.md+#thread-Properties-Threads+gI' \
-e 's+thread-properties-posts.md+#thread-Properties-Posts+gI' \
-e 's+thread-definitions-post-properties-message.md+#thread-definitions-post-properties-message+gI' \
-e 's+thread-definitions-post-properties-postts.md+#thread-definitions-post-properties-postts+gI' \
-e 's+thread-definitions-post.md+#thread-definitions-post+gI' $path
echo "----------------------Changing metrics paths----------------------"
path=docs/openmetadata-apis/schemas/entities/metrics.md
sed -i -e 's+\[Metrics entity\](basic-definitions-uuid.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/metrics.json#/properties/id")+\[Basic type\](../types/basic.md#basic-definitions-uuid)+gI' \
-e 's+\[Metrics entity\](basic-definitions-href.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/metrics.json#/properties/href")+\[Basic type\](../types/basic.md#basic-definitions-href)+gI' \
-e 's+\[Metrics entity\](entityreference.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityReference.json#/properties/owner")+\[Entity Reference type\](../types/entityreference.md)+gI' \
-e 's+\[Metrics entity\](entityreference.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityReference.json#/properties/service")+\[Entity Reference type\](../types/entityreference.md)+gI' \
-e 's+\[Metrics entity\](usagedetails.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/usageDetails.json#/properties/usageSummary")+\[Usage Details type\](../types/usagedetails.md)+gI' \
-e 's+metrics-properties-name.md+#metrics-properties-name+gI' \
-e 's+metrics-properties-fullyqualifiedname.md+#metrics-properties-fullyqualifiedname+gI' \
-e 's+metrics-properties-description.md+#metrics-properties-description+gI' $path
echo "----------------------Changing pipeline paths----------------------"
path=docs/openmetadata-apis/schemas/entities/pipeline.md
sed -i -e 's+\[Pipeline entity\](basic-definitions-uuid.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/pipeline.json#/properties/id")+\[Basic type\](../types/basic.md#basic-definitions-uuid)+gI' \
-e 's+\[Pipeline entity\](basic-definitions-href.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/pipeline.json#/properties/href")+\[Basic type\](../types/basic.md#basic-definitions-href)+gI' \
-e 's+\[Pipeline entity\](entityreference.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityReference.json#/properties/owner")+\[Entity Reference type\](../types/entityreference.md)+gI' \
-e 's+\[Pipeline entity\](entityreference.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityReference.json#/properties/service")+\[Entity Reference type\](../types/entityreference.md)+gI' \
-e 's+pipeline-properties-name.md+#pipeline-properties-name+gI' \
-e 's+pipeline-properties-fullyqualifiedname.md+#pipeline-properties-fullyqualifiedname+gI' \
-e 's+pipeline-properties-description.md+#pipeline-properties-description+gI' $path
echo "----------------------Changing report paths----------------------"
path=docs/openmetadata-apis/schemas/entities/report.md
sed -i -e 's+\[Report entity\](basic-definitions-uuid.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/report.json#/properties/id")+\[Basic type\](../types/basic.md#basic-definitions-uuid)+gI' \
-e 's+\[Report entity\](basic-definitions-href.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/report.json#/properties/href")+\[Basic type\](../types/basic.md#basic-definitions-href)+gI' \
-e 's+\[Report entity\](entityreference.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityReference.json#/properties/owner")+\[Entity Reference type\](../types/entityreference.md)+gI' \
-e 's+\[Report entity\](entityreference.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityReference.json#/properties/service")+\[Entity Reference type\](../types/entityreference.md)+gI' \
-e 's+\[Report entity\](usagedetails.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/usageDetails.json#/properties/usageSummary")+\[Usage Details type\](../types/usagedetails.md)+gI' \
-e 's+report-properties-name.md+#report-properties-name+gI' \
-e 's+report-properties-fullyqualifiedname.md+#report-properties-fullyqualifiedname+gI' \
-e 's+report-properties-description.md+#report-properties-description+gI' $path
echo "----------------------Changing table paths----------------------"
path=docs/openmetadata-apis/schemas/entities/table.md
sed -i -e 's+\[Table entity\](basic-definitions-uuid.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/table.json#/properties/id")+\[Basic type\](../types/basic.md#basic-definitions-uuid)+gI' \
-e 's+\[Table entity\](basic-definitions-href.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/table.json#/properties/href")+\[Basic type\](../types/basic.md#basic-definitions-href)+gI' \
-e 's+\[Table entity\](usagedetails.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/usageDetails.json#/properties/usageSummary")+\[Usage Details type\](../types/usagedetails.md)+gI' \
-e 's+\[Table entity\](entityreference.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityReference.json#/properties/owner")+\[Entity Reference type\](../types/entityreference.md)+gI' \
-e 's+\[Table entity\](entityreference-definitions-entityreferencelist.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/table.json#/properties/followers")+\[Entity Reference type\](../types/entityreference.md#entityreference-definitions-entityreferencelist)+gI' \
-e 's+\[Table entity\](entityreference.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityReference.json#/properties/owner")+\[Entity Reference type\](../types/entityreference.md)+gI' \
-e 's+\[Table entity\](basic-definitions-date.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/data/table.json#/definitions/tableJoins/properties/startDate")+\[Basic type\](../types/basic.md#basic-definitions-date)+gI' \
-e 's+table-properties-name.md+#table-properties-name+gI' \
-e 's+table-properties-description.md+#table-properties-description+gI' \
-e 's+table-properties-tabletype.md+#table-properties-tabletype+gI' \
-e 's+table-properties-fullyqualifiedname.md+#table-properties-fullyqualifiedname+gI' \
-e 's+table-properties-columns.md+#table-properties-columns+gI' \
-e 's+table-properties-tableconstraints.md+#table-properties-tableconstraints+gI' \
-e 's+table-properties-tags.md+#table-properties-tags+gI' \
-e 's+table-definitions-tablejoins.md+#table-definitions-tablejoins+gI' \
-e 's+table-definitions-tabledata.md+#table-definitions-tabledata+gI' \
-e 's+table-definitions-tableconstraint-properties-constrainttype.md+#table-definitions-tableconstraint-properties-constrainttype+gI' \
-e 's+table-definitions-tableconstraint-properties-columns.md+#table-definitions-tableconstraint-properties-columns+gI' \
-e 's+table-definitions-column-properties-name.md+#table-definitions-columnname+gI' \
-e 's+table-definitions-column-properties-columndatatype.md+#table-Definitions-Columndatatype+gI' \
-e 's+table-definitions-column-properties-description.md+#table-Definitions-Column-Properties-Description+gI' \
-e 's+table-definitions-column-properties-fullyqualifiedname.md+#table-definitions-fullyqualifiedcolumnname+gI' \
-e 's+table-definitions-column-properties-tags.md+#table-Definitions-Column-Properties-Tags+gI' \
-e 's+table-definitions-column-properties-columnconstraint.md+#table-Definitions-Columnconstraint+gI' \
-e 's+table-definitions-column-properties-ordinalposition.md+#table-Definitions-Column-Properties-Ordinalposition+gI' \
-e 's+table-definitions-columnjoins-properties-columnname.md+#table-definitions-columnname+gI' \
-e 's+table-definitions-columnjoins-properties-joinedwith.md+#table-definitions-columnjoins-properties-joinedwith+gI' \
-e 's+table-definitions-tabledata-properties-columns.md+#table-definitions-tabledata-properties-columns+gI' \
-e 's+table-definitions-tabledata-properties-rows.md+#table-definitions-tabledata-properties-rows+gI' \
-e 's+table-definitions-tableconstraint.md+#table-definitions-tableconstraint+gI' \
-e 's+table-definitions-columnjoins-properties-joinedwith-items.md+#table-definitions-columnjoins-properties-joinedwith-items+gI' \
-e 's+table-definitions-column.md+#table-definitions-column+gI' \
-e 's+table-definitions-tableconstraint.md+#table-definitions-tableconstraint+gI' \
-e 's+table-definitions-tablejoins-properties-daycount.md+#table-definitions-tablejoins-properties-daycount+gI' \
-e 's+table-definitions-tablejoins-properties-columnjoins.md+#table-definitions-tablejoins-properties-columnjoins+gI' \
-e 's+table-definitions-columnjoins.md+#table-definitions-columnjoins+gI' \
-e 's+table-definitions-columnname.md+#table-definitions-columnname+gI' \
-e 's+table-definitions-columndatatype.md+#table-definitions-columndatatype+gI' \
-e 's+table-definitions-fullyqualifiedcolumnname.md+#table-definitions-fullyqualifiedcolumnname+gI' \
-e 's+table-definitions-columnconstraint.md+#table-definitions-columnconstraint+gI' \
-e 's+table-definitions-columnjoins-properties-joinedwith-items-properties-joincount.md+#table-definitions-columnjoins-properties-joinedwith-items-properties-joincount+gI' $path
echo "----------------------Changing tagcategory paths----------------------"
path=docs/openmetadata-apis/schemas/entities/tagcategory.md
sed -i -e 's+\[Types related to tag category\](basic-definitions-href.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/tags/tagCategory.json#/properties/href")+\[Basic type\](../types/basic.md#basic-definitions-href)+gI' \
-e 's+\[Types related to tag category\](basic-definitions-href.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/tags/tagCategory.json#/definitions/tag/properties/href")+\[Basic type\](../types/basic.md#basic-definitions-href)+gI' \
-e 's+tagcategory-properties-name.md+#tagcategory-properties-name+gI' \
-e 's+tagcategory-properties-description.md+#tagcategory-properties-description+gI' \
-e 's+tagcategory-properties-categorytype.md+#tagcategory-properties-categorytype+gI' \
-e 's+tagcategory-properties-usagecount.md+#tagcategory-properties-usagecount+gI' \
-e 's+tagcategory-properties-children.md+#tagcategory-properties-children+gI' \
-e 's+tagcategory-definitions-tag-properties-name.md+#tagcategory-definitions-tagname+gI' \
-e 's+tagcategory-definitions-tag-properties-fullyqualifiedname.md+#tagcategory-definitions-tag-properties-fullyqualifiedname+gI' \
-e 's+tagcategory-definitions-tag-properties-description.md+#tagcategory-definitions-tag-properties-description+gI' \
-e 's+tagcategory-definitions-tag-properties-usagecount.md+#tagcategory-definitions-tag-properties-usagecount+gI' \
-e 's+tagcategory-definitions-tag-properties-deprecated.md+#tagcategory-definitions-tag-properties-deprecated+gI' \
-e 's+tagcategory-definitions-tag-properties-associatedtags.md+#tagcategory-definitions-tag-properties-associatedtags+gI' \
-e 's+tagcategory-definitions-tag-properties-children.md+#tagcategory-definitions-tag-properties-children+gI' $path
echo "----------------------Changing team paths----------------------"
path=docs/openmetadata-apis/schemas/entities/team.md
sed -i -e 's+\[Team entity\](basic-definitions-uuid.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/teams/team.json#/properties/id")+\[Basic type\](../types/basic.md#basic-definitions-uuid)+gI' \
-e 's+\[Team entity\](basic-definitions-href.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/teams/team.json#/properties/href")+\[Basic type\](../types/basic.md#basic-definitions-href)+gI' \
-e 's+\[Team entity\](profile.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/profile.json#/properties/profile")+\[Profile type\](../types/profile.md)+gI' \
-e 's+\[Team entity\](entityreference-definitions-entityreferencelist.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/teams/team.json#/properties/users")+\[Entity Reference type\](../types/entityreference.md#entityreference-definitions-entityreferencelist)+gI' \
-e 's+\[Team entity\](entityreference-definitions-entityreferencelist.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/teams/team.json#/properties/owns")+\[Entity Reference type\](../types/entityreference.md#entityreference-definitions-entityreferencelist)+gI' \
-e 's+team-properties-name.md+#team-properties-name+gI' \
-e 's+team-properties-displayname.md+#team-properties-displayname+gI' \
-e 's+team-properties-description.md+#team-properties-description+gI' \
-e 's+team-properties-deleted.md+#team-properties-deleted+gI' $path
echo "----------------------Changing users paths----------------------"
path=docs/openmetadata-apis/schemas/entities/user.md
sed -i -e 's+\[User entity\](basic-definitions-uuid.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/teams/user.json#/properties/id")+\[Basic type\](../types/basic.md#basic-definitions-uuid)+gI' \
-e 's+\[User entity\](basic-definitions-href.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/teams/user.json#/properties/href")+\[Basic type\](../types/basic.md#basic-definitions-href)+gI' \
-e 's+\[User entity\](entityreference-definitions-entityreferencelist.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/teams/user.json#/properties/teams")+\[Entity Reference type\](../types/entityreference.md#entityreference-definitions-entityreferencelist)+gI' \
-e 's+\[User entity\](entityreference-definitions-entityreferencelist.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/teams/user.json#/properties/owns")+\[Entity Reference type\](../types/entityreference.md#entityreference-definitions-entityreferencelist)+gI' \
-e 's+\[User entity\](entityreference-definitions-entityreferencelist.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/teams/user.json#/properties/follows")+\[Entity Reference type\](../types/entityreference.md#entityreference-definitions-entityreferencelist)+gI' \
-e 's+\[User entity\](basic-definitions-email.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/teams/user.json#/properties/email")+\[Basic type\](../types/basic.md#basic-definitions-email)+gI' \
-e 's+\[User entity\](profile.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/profile.json#/properties/profile")+\[Profile type\](../types/profile.md)+gI' \
-e 's+user-properties-name.md+#user-properties-name+gI' \
-e 's+user-properties-displayname.md+#user-properties-displayname+gI' \
-e 's+user-properties-timezone.md+#user-properties-timezone+gI' \
-e 's+user-properties-deactivated.md+#user-properties-deactivated+gI' \
-e 's+user-properties-isbot.md+#user-properties-isbot+gI' \
-e 's+user-properties-isadmin.md+#user-properties-isAdmin+gI' $path
echo "----------------------Changing collectiondescriptor paths----------------------"
path=docs/openmetadata-apis/schemas/types/collectiondescriptor.md
sed -i -e 's+\[Schema for collection descriptor\](profile-definitions-imagelist.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/collectionDescriptor.json#/definitions/collectionInfo/properties/images")+\[Profile type\](../types/profile.md#profile-definitions-imagelist)+gI' \
-e 's+collectiondescriptor-definitions-collectioninfo.md+#collectiondescriptor-definitions-collectioninfo+gI' \
-e 's+collectiondescriptor-definitions-collectioninfo-properties-name.md+#collectiondescriptor-definitions-collectioninfo-properties-name+gI' \
-e 's+collectiondescriptor-definitions-collectioninfo-properties-documentation.md+#collectiondescriptor-definitions-collectioninfo-properties-documentation+gI' \
-e 's+collectiondescriptor-definitions-collectioninfo-properties-href.md+#collectiondescriptor-definitions-collectioninfo-properties-href+gI' $path
echo "----------------------Changing basic paths----------------------"
path=docs/openmetadata-apis/schemas/types/basic.md
sed -i -e 's+\[Common types\](basic-definitions-timeinterval-properties-start.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/basic.json#/definitions/timeInterval/properties/start")+\[Basic type\](#basic-definitions-timeinterval-properties-start)+gI' \
-e 's+\[Common types\](basic-definitions-timeinterval-properties-end.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/basic.json#/definitions/timeInterval/properties/end")+#\[Basic type\](basic-definitions-timeinterval-properties-end)+gI' \
-e 's+basic-definitions-schedule-properties-startdate.md+#basic-definitions-datetime+gI' \
-e 's+basic-definitions-schedule-properties-repeatfrequency.md+#basic-definitions-duration+gI' \
-e 's+basic-definitions-entityreference-properties-id.md+#basic-definitions-uuid+gI' \
-e 's+basic-definitions-entityreference-properties-type.md+#basic-definitions-entityreference-properties-type+gI' \
-e 's+basic-definitions-entityreference-properties-name.md+#basic-definitions-entityreference-properties-name+gI' \
-e 's+basic-definitions-entityreference-properties-description.md+#basic-definitions-entityreference-properties-description+gI' \
-e 's+basic-definitions-entityreference-properties-href.md+#basic-definitions-href+gI' \
-e 's+basic-definitions-usagestats-properties-count.md+#basic-definitions-usagestats-properties-count+gI' \
-e 's+basic-definitions-usagestats-properties-percentilerank.md+#basic-definitions-usagestats-properties-percentilerank+gI' \
-e 's+basic-definitions-usagestats.md+#basic-definitions-usagestats+gI' \
-e 's+basic-definitions-usagedetails-properties-date.md+#basic-definitions-usagedetails-properties-date+gI' \
-e 's+basic-definitions-email.md+#basic-definitions-email+gI' \
-e 's+basic-definitions-imagelist.md+#basic-definitions-imagelist+gI' \
-e 's+basic-definitions-imagelist-properties-image.md+#basic-definitions-imagelist-properties-image+gI' \
-e 's+basic-definitions-imagelist-properties-image24.md+#basic-definitions-imagelist-properties-image24+gI' \
-e 's+basic-definitions-imagelist-properties-image32.md+#basic-definitions-imagelist-properties-image32+gI' \
-e 's+basic-definitions-imagelist-properties-image48.md+#basic-definitions-imagelist-properties-image48+gI' \
-e 's+basic-definitions-imagelist-properties-image72.md+#basic-definitions-imagelist-properties-image72+gI' \
-e 's+basic-definitions-imagelist-properties-image192.md+#basic-definitions-imagelist-properties-image192+gI' \
-e 's+basic-definitions-imagelist-properties-image512.md+#basic-definitions-imagelist-properties-image512+gI' \
-e 's+basic-definitions-taglabel-properties-tagfqn.md+#basic-definitions-taglabel-properties-tagfqn+gI' \
-e 's+basic-definitions-taglabel-properties-labeltype.md+#basic-definitions-taglabel-properties-labeltype+gI' \
-e 's+basic-definitions-taglabel-properties-state.md+#basic-definitions-taglabel-properties-state+gI' \
-e 's+basic-definitions-taglabel-properties-href.md+#basic-definitions-href+gI' $path
echo "----------------------Changing entityreference paths----------------------"
path=docs/openmetadata-apis/schemas/types/entityreference.md
sed -i -e 's+\[Entity Reference\](basic-definitions-uuid.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityReference.json#/properties/id")+\[Basic type\](../types/basic.md#basic-definitions-uuid)+gI' \
-e 's+\[Entity Reference\](basic-definitions-href.md "(basic-definitions-href.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityReference.json#/properties/href")+\[Basic type\](../types/basic.md#basic-definitions-href)+gI' \
-e 's+entityreference-properties-type.md+#entityreference-properties-type+gI' \
-e 's+entityreference-properties-name.md+#entityreference-properties-name+gI' \
-e 's+entityreference-properties-description.md+#entityreference-properties-description+gI' $path
echo "----------------------Changing profile paths----------------------"
path=docs/openmetadata-apis/schemas/types/profile.md
sed -i -e 's+profile-definitions-imagelist.md+#profile-definitions-imagelist+gI' \
-e 's+profile-definitions-imagelist-properties-image.md+#profile-definitions-imagelist-properties-image+gI' \
-e 's+profile-definitions-imagelist-properties-image24.md+#profile-definitions-imagelist-properties-image24+gI' \
-e 's+profile-definitions-imagelist-properties-image32.md+#profile-definitions-imagelist-properties-image32+gI' \
-e 's+profile-definitions-imagelist-properties-image48.md+#profile-definitions-imagelist-properties-image48+gI' \
-e 's+profile-definitions-imagelist-properties-image72.md+#profile-definitions-imagelist-properties-image72+gI' \
-e 's+profile-definitions-imagelist-properties-image192.md+#profile-definitions-imagelist-properties-image192+gI' \
-e 's+profile-definitions-imagelist-properties-image512.md+#profile-definitions-imagelist-properties-image512+gI' $path
echo "----------------------Changing schedule paths----------------------"
path=docs/openmetadata-apis/schemas/types/schedule.md
sed -i -e 's+\[Type used for schedule with start time and repeat frequency\](basic-definitions-datetime.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/teams/user.json#/properties/datetime")+\[Basic type\](../types/basic.md#basic-definitions-datetime)+gI' \
-e 's+\[Type used for schedule with start time and repeat frequency\](basic-definitions-duration.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/teams/user.json#/properties/duration")+\[Basic type\](../types/basic.md#basic-definitions-duration)+gI' $path
echo "----------------------Changing taglabel paths----------------------"
path=docs/openmetadata-apis/schemas/types/taglabel.md
sed -i -e 's+\[Tag Label\](basic-definitions-href.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/entity/teams/user.json#/properties/href")+\[Basic type\](../types/basic.md#basic-definitions-href)+gI' \
-e 's+taglabel-properties-tagfqn.md+#taglabel-properties-tagfqn+gI' \
-e 's+taglabel-properties-labeltype.md+#taglabel-properties-labeltype+gI' \
-e 's+taglabel-properties-state.md+#taglabel-properties-state+gI' $path
echo "----------------------Changing dailycount paths----------------------"
path=docs/openmetadata-apis/schemas/types/dailycount.md
sed -i -e 's+\[Daily count of some measurement\](basic-definitions-date.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/dailyCount.json#/properties/date")+\[Basic type\](../types/basic.md#basic-definitions-date)+gI' \
-e 's+dailycount-properties-count.md+#dailycount-properties-count+gI' $path
echo "----------------------Changing entityusage paths----------------------"
path=docs/openmetadata-apis/schemas/types/entityusage.md
sed -i -e 's+\[Usage details of an entity\](basic-definitions-entityreference.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/entityUsage.json#/properties/entity")+\[Basic type\](../types/basic.md#basic-definitions-entityreference)+gI' \
-e 's+entityusage-properties-usage.md+#entityusage-properties-usage+gI' $path
echo "----------------------Changing jdbcconnection paths----------------------"
path=docs/openmetadata-apis/schemas/types/jdbcconnection.md
sed -i -e 's+jdbcconnection-properties-driverclass.md+#jdbcconnection-properties-driverclass+gI' \
-e 's+jdbcconnection-properties-connectionurl.md+#jdbcconnection-properties-connectionurl+gI' \
-e 's+jdbcconnection-properties-username.md+#jdbcconnection-properties-username+gI' \
-e 's+jdbcconnection-properties-password.md+#jdbcconnection-properties-password+gI' \
-e 's+jdbcconnection-definitions-jdbcinfo-properties-driverclass.md+#jdbcconnection-definitions-driverclass+gI' \
-e 's+jdbcconnection-definitions-jdbcinfo-properties-connectionurl.md+#jdbcconnection-definitions-connectionurl+gI' \
-e 's+jdbcconnection-definitions-connectionurl.md+#jdbcconnection-definitions-connectionurl+gI' \
-e 's+jdbcconnection-definitions-driverclass.md+#jdbcconnection-definitions-driverclass+gI' $path
echo "----------------------Changing usagedetails paths----------------------"
path=docs/openmetadata-apis/schemas/types/usagedetails.md
sed -i -e 's+\[Type used to return usage details of an entity\](basic-definitions-date.md "https://github.com/open-metadata/OpenMetadata/blob/schema-scripts/catalog-rest-service/src/main/resources/json/schema/type/usageDetails.json#/properties/date")+\[Basic type\](../types/basic.md#basic-definitions-date)+gI' \
-e 's+usagedetails-definitions-usagestats.md+#usagedetails-definitions-usagestats+gI' \
-e 's+usagedetails-definitions-usagestats-properties-count.md+#usagedetails-definitions-usagestats-properties-count+gI' \
-e 's+usagedetails-definitions-usagestats-properties-percentilerank.md+#usagedetails-definitions-usagestats-properties-percentilerank+gI' $path
echo "----------------------File content changed----------------------"
rm -rf docs/openmetadata-apis/schemas/SchemaMarkdown
rm -rf out
echo "----------------------jsonschema2md files deleted----------------------"

View File

@ -0,0 +1,210 @@
filename="entities"
path=docs/openmetadata-apis/schemas/$filename
if [ ! -d $path ]
then
mkdir $path
echo "File not found. File created $filename"
else
echo "File exists $filename"
fi
filename="types"
path=docs/openmetadata-apis/schemas/$filename
if [ ! -d $path ]
then
mkdir $path
echo "File not found. File created $filename"
else
echo "File exists $filename"
fi
filename="README.md"
path=docs/openmetadata-apis/schemas/entities/$filename
if [ ! -d $path ]
then
echo >> $path
echo "File not found. File created $filename"
else
echo "File exists $filename"
fi
sed -i d $path
echo "# Entities
An Entity is a special type that has an identity and represents an object that is either real or conceptual. An entity can be related to another entity through relationships. An Entity has two types of **Fields** - **Attributes** and **Relationships**:
### **Attributes**
**Attributes** represent an Entitys data. Entities MUST include an attribute called **ID** that uniquely identifies an instance of an entity. It might optionally include a human-readable **fullyQualitifedName** attribute that uniquely identifies the entity. An attribute of an entity MUST not be another Entity and should be captured through a relationship. Entities typically SHOULD have the following common attributes:
| Abstract | Extensible |
| :--- | :--- |
| **id** | Mandatory attribute of type `UUID` that identifies the entity instance |
| **name** | Name of the entity \(example database name\). For some entities, the name may uniquely identify an entity. |
| **fullyQualifiedName** | Human-readable name that uniquely identifies an entity that is formed using all the names in the hierarchy above the given entity. Example - `databaseService.database.table.` Attributes of an entity may also have `FQN` to uniquely identify a field. For example, a column of a table has `fqn` attribute set to `databaseService.database.table.columnName.` |
| **displayName** | Optional name used for display purposes. For example, the name could be`john.smith@domain.com` and `displayName` could be `John Smith.` |
| **description** | Description of the entity instance. Not all entities need a description. For example, a User entity might not need a description and just the name of the user might suffice. A `Database` entity needs `description` to provide details of what is stored in the database when to use it and other information on how to use it. |
| **Owner** | Optional attribute used to capture the ownership information. Not all entities have ownership information \(for example `User, Team`, and `Organization`\). |
| **href** | An attribute generated on the fly as part of API response to provide the URL link to the entity returned. |
### **Relationships**
**Relationships** capture information about the association of an Entity with another Entity. Relationships can have cardinality - **One-to-one**, **One-to-many**, **Many-to-one**, and **Many-to-many**. Example of relationships:
* One-to-one: A Table is owned by a User
* One to Many: a Database contains multiple Tables.
* Many-to-Many: A User belongs to multiple Teams. A team has multiple Users.
All relationships are captured using the `EntityReference` type.
Following is an example of a JSON schema of the User entity with attributes id, displayName, and email. User entity has one-to-many relationships to another entity Team \(user is member of multiple teams\).
```javascript
{
"title": "User entity",
"type": "object",
"properties" : {
"id": {
"description": "Unique identifier for instance of a User",
"$ref": "#/definitions/uuid"
},
"displayName": {
"description": "Name used for display purposes. Example 'John Smith'",
"type" : "string"
},
"email": {
"description": "User's Email",
"type": "string"
},
"teams" : {
"description": "Teams that this user belongs to",
"type": "array",
"items" :{
"$ref": "#/definitions/entityReference"
}
}
}
}
```
## Metadata system entities
Metadata system has the following core entities:
1. **Data Entities** - These entities represent data, such as databases, tables, and topics, and assets created using data, such as Dashboards, Reports, Metrics, and ML Features. It also includes entities such as Pipelines that are used for creating data assets.
2. **Services** - Services represent platforms and services used for storing and processing data. It includes Online Data Stores, Data Warehouses, ETL tools, Dashboard services, etc.
3. **Users & Teams** - These entities represent users within an organization and teams that they are organized under.
4. **Activities** - These entities are related to feeds, posts, and notifications for collaboration between users.
5. **Glossary and Tags** - Entities for defining business glossary that includes hierarchical tags.
## List of Schema Entities
{% page-ref page="\"bots.md\"" %}
{% page-ref page="\"dashboard.md\"" %}
{% page-ref page="\"database.md\"" %}
{% page-ref page="\"databaseservice.md\"" %}
{% page-ref page="\"thread.md\"" %}
{% page-ref page="\"metrics.md\"" %}
{% page-ref page="\"pipeline.md\"" %}
{% page-ref page="\"report.md\"" %}
{% page-ref page="\"table.md\"" %}
{% page-ref page="\"tagcategory.md\"" %}
{% page-ref page="\"team.md\"" %}
{% page-ref page="\"user.md\"" %}" >> $path
filename="README.md"
path=docs/openmetadata-apis/schemas/types/$filename
if [ ! -d $path ]
then
echo >> $path
echo "File not found. File created $filename"
else
echo "File exists $filename"
fi
sed -i d $path
echo "# Types
JSON schema supports many native types - `null, boolean, object, array, number` and `string`. In addition, to develop clear and consistent vocabulary, domain-specific reusable types are defined ranging from simple types, such as `UUID`, `timestamp`, and `email` to more complex object types, such as `Tags, Ownership` and `Usage`.
## List of Schema Types
{% page-ref page="\"basic.md\"" %}
{% page-ref page="\"collectiondescriptor.md\"" %}
{% page-ref page="\"dailycount.md\"" %}
{% page-ref page="\"entityreference.md\"" %}
{% page-ref page="\"entityusage.md\"" %}
{% page-ref page="\"jdbcconnection.md\"" %}
{% page-ref page="\"profile.md\"" %}
{% page-ref page="\"schedule.md\"" %}
{% page-ref page="\"taglabel.md\"" %}
{% page-ref page="\"usagedetails.md\"" %}" >> $path
cd docs/openmetadata-apis/schemas/SchemaMarkdown
cat bots-* >> bots.md
cat dashboard-* >> dashboard.md
cat database-* >> database.md
cat databaseservice-* >> databaseservice.md
cat thread-* >> thread.md
cat metrics-* >> metrics.md
cat pipeline-* >> pipeline.md
cat report-* >> report.md
cat table-* >> table.md
cat tagcategory-* >> tagcategory.md
cat team-* >> team.md
cat user-* >> user.md
cat basic-* >> basic.md
cat collectiondescriptor-* >> collectiondescriptor.md
cat dailycount-* >> dailycount.md
cat entityreference-* >> entityreference.md
cat entityusage-* >> entityusage.md
cat jdbcconnection-* >> jdbcconnection.md
cat profile-* >> profile.md
cat schedule-* >> schedule.md
cat taglabel-* >> taglabel.md
cat usagedetails-* >> usagedetails.md
echo "------------------Moving files------------------"
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/README.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/bots.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/entities
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/dashboard.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/entities
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/database.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/entities
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/databaseservice.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/entities
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/thread.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/entities
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/metrics.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/entities
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/pipeline.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/entities
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/report.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/entities
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/table.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/entities
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/tagcategory.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/entities
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/team.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/entities
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/user.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/entities
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/basic.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/types
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/collectiondescriptor.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/types
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/dailycount.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/types
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/entityreference.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/types
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/entityusage.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/types
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/jdbcconnection.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/types
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/profile.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/types
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/schedule.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/types
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/taglabel.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/types
cp /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/SchemaMarkdown/usagedetails.md /home/runner/work/OpenMetadata/OpenMetadatadocs/openmetadata-apis/schemas/types
echo "------------------Files moved to respective folders------------------"

9
scripts/header.sh Normal file
View File

@ -0,0 +1,9 @@
file=/home/runner/work/OpenMetadata/OpenMetadata/docs/openmetadata-apis/schemas/SchemaMarkdown/*.md
sed -i '1d' $file
cd /home/runner/work/OpenMetadata/OpenMetadata/docs/openmetadata-apis/schemas/SchemaMarkdown/
for file in *.md
do
sed -i "1i\
# ${file%%.*}" "$file"
done