Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified project/excel/opencloning_linkml.xlsx
Binary file not shown.
20 changes: 20 additions & 0 deletions project/graphql/opencloning_linkml.graphql
Original file line number Diff line number Diff line change
Expand Up @@ -390,6 +390,26 @@ type Primer
sequence: String
}

type Recombinase
{
name: String
site1: String!
site2: String!
site1Name: String
site2Name: String
}

type RecombinaseSource
{
id: Integer!
type: String
outputName: String
databaseId: Integer
input: [SourceInput]
circular: Boolean
recombinases: [Recombinase]!
}

type RepositoryIdSource
{
id: Integer!
Expand Down
24 changes: 23 additions & 1 deletion project/jsonld/opencloning_linkml.context.jsonld
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"comments": {
"description": "Auto generated by LinkML jsonld context generator",
"generation_date": "2025-12-06T00:30:23",
"generation_date": "2026-03-04T18:08:29",
"source": "opencloning_linkml.yaml"
},
"@context": {
Expand Down Expand Up @@ -246,6 +246,22 @@
"Type": {
"@id": "Type"
},
"site1": {
"@id": "site1"
},
"site1_name": {
"@id": "site1_name"
},
"site2": {
"@id": "site2"
},
"site2_name": {
"@id": "site2_name"
},
"recombinases": {
"@type": "opencloning_linkml:Recombinase",
"@id": "recombinases"
},
"repository_id": {
"@id": "repository_id"
},
Expand Down Expand Up @@ -405,6 +421,12 @@
"Primer": {
"@id": "Primer"
},
"Recombinase": {
"@id": "Recombinase"
},
"RecombinaseSource": {
"@id": "RecombinaseSource"
},
"RepositoryIdSource": {
"@id": "RepositoryIdSource"
},
Expand Down
153 changes: 148 additions & 5 deletions project/jsonld/opencloning_linkml.jsonld
Original file line number Diff line number Diff line change
Expand Up @@ -559,11 +559,12 @@
"http://schema.org/name"
],
"slot_uri": "http://schema.org/name",
"owner": "CollectionOptionInfo",
"owner": "Recombinase",
"domain_of": [
"Primer",
"CollectionOption",
"CollectionOptionInfo"
"CollectionOptionInfo",
"Recombinase"
],
"range": "string",
"@type": "SlotDefinition"
Expand Down Expand Up @@ -1258,6 +1259,76 @@
"range": "boolean",
"@type": "SlotDefinition"
},
{
"name": "recombinase__site1",
"from_schema": "https://opencloning.github.io/OpenCloning_LinkML",
"slot_uri": "https://opencloning.github.io/OpenCloning_LinkML/site1",
"alias": "site1",
"owner": "Recombinase",
"domain_of": [
"Recombinase"
],
"range": "string",
"required": true,
"pattern": "^[A-Z]+[a-z]+[A-Z]+$",
"@type": "SlotDefinition"
},
{
"name": "recombinase__site2",
"from_schema": "https://opencloning.github.io/OpenCloning_LinkML",
"slot_uri": "https://opencloning.github.io/OpenCloning_LinkML/site2",
"alias": "site2",
"owner": "Recombinase",
"domain_of": [
"Recombinase"
],
"range": "string",
"required": true,
"pattern": "^[A-Z]+[a-z]+[A-Z]+$",
"@type": "SlotDefinition"
},
{
"name": "recombinase__site1_name",
"from_schema": "https://opencloning.github.io/OpenCloning_LinkML",
"slot_uri": "https://opencloning.github.io/OpenCloning_LinkML/site1_name",
"ifabsent": "string(\"site1\")",
"alias": "site1_name",
"owner": "Recombinase",
"domain_of": [
"Recombinase"
],
"range": "string",
"@type": "SlotDefinition"
},
{
"name": "recombinase__site2_name",
"from_schema": "https://opencloning.github.io/OpenCloning_LinkML",
"slot_uri": "https://opencloning.github.io/OpenCloning_LinkML/site2_name",
"ifabsent": "string(\"site2\")",
"alias": "site2_name",
"owner": "Recombinase",
"domain_of": [
"Recombinase"
],
"range": "string",
"@type": "SlotDefinition"
},
{
"name": "recombinaseSource__recombinases",
"from_schema": "https://opencloning.github.io/OpenCloning_LinkML",
"slot_uri": "https://opencloning.github.io/OpenCloning_LinkML/recombinases",
"alias": "recombinases",
"owner": "RecombinaseSource",
"domain_of": [
"RecombinaseSource"
],
"range": "Recombinase",
"required": true,
"multivalued": true,
"inlined": true,
"inlined_as_list": true,
"@type": "SlotDefinition"
},
{
"name": "cloningStrategy__sequences",
"description": "The sequences that are used in the cloning strategy",
Expand Down Expand Up @@ -3184,6 +3255,78 @@
"class_uri": "https://opencloning.github.io/OpenCloning_LinkML/PolymeraseExtensionSource",
"@type": "ClassDefinition"
},
{
"name": "Recombinase",
"definition_uri": "https://opencloning.github.io/OpenCloning_LinkML/Recombinase",
"from_schema": "https://opencloning.github.io/OpenCloning_LinkML",
"slots": [
"name",
"recombinase__site1",
"recombinase__site2",
"recombinase__site1_name",
"recombinase__site2_name"
],
"slot_usage": {},
"attributes": [
{
"name": "site1",
"range": "string",
"required": true,
"pattern": "^[A-Z]+[a-z]+[A-Z]+$",
"@type": "SlotDefinition"
},
{
"name": "site2",
"range": "string",
"required": true,
"pattern": "^[A-Z]+[a-z]+[A-Z]+$",
"@type": "SlotDefinition"
},
{
"name": "site1_name",
"ifabsent": "string(\"site1\")",
"range": "string",
"@type": "SlotDefinition"
},
{
"name": "site2_name",
"ifabsent": "string(\"site2\")",
"range": "string",
"@type": "SlotDefinition"
}
],
"class_uri": "https://opencloning.github.io/OpenCloning_LinkML/Recombinase",
"@type": "ClassDefinition"
},
{
"name": "RecombinaseSource",
"definition_uri": "https://opencloning.github.io/OpenCloning_LinkML/RecombinaseSource",
"description": "Represents the source of a sequence that is generated by recombination using one or more recombinases",
"from_schema": "https://opencloning.github.io/OpenCloning_LinkML",
"is_a": "AssemblySource",
"slots": [
"id",
"type",
"output_name",
"database_id",
"source__input",
"assemblySource__circular",
"recombinaseSource__recombinases"
],
"slot_usage": {},
"attributes": [
{
"name": "recombinases",
"range": "Recombinase",
"required": true,
"multivalued": true,
"inlined_as_list": true,
"@type": "SlotDefinition"
}
],
"class_uri": "https://opencloning.github.io/OpenCloning_LinkML/RecombinaseSource",
"@type": "ClassDefinition"
},
{
"name": "CloningStrategy",
"definition_uri": "https://opencloning.github.io/OpenCloning_LinkML/CloningStrategy",
Expand Down Expand Up @@ -3500,9 +3643,9 @@
],
"metamodel_version": "1.7.0",
"source_file": "opencloning_linkml.yaml",
"source_file_date": "2025-12-06T00:30:19",
"source_file_size": 25654,
"generation_date": "2025-12-06T00:30:23",
"source_file_date": "2026-03-04T18:08:25",
"source_file_size": 26405,
"generation_date": "2026-03-04T18:08:29",
"@type": "SchemaDefinition",
"@context": [
"project/jsonld/opencloning_linkml.context.jsonld",
Expand Down
115 changes: 115 additions & 0 deletions project/jsonschema/opencloning_linkml.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -611,6 +611,9 @@
{
"$ref": "#/$defs/CreLoxRecombinationSource"
},
{
"$ref": "#/$defs/RecombinaseSource"
},
{
"$ref": "#/$defs/CRISPRSource"
},
Expand Down Expand Up @@ -752,6 +755,9 @@
{
"$ref": "#/$defs/CreLoxRecombinationSource"
},
{
"$ref": "#/$defs/RecombinaseSource"
},
{
"$ref": "#/$defs/CRISPRSource"
},
Expand Down Expand Up @@ -2342,6 +2348,115 @@
"title": "Primer",
"type": "object"
},
"Recombinase": {
"additionalProperties": false,
"description": "",
"properties": {
"name": {
"description": "A human-readable name for a thing",
"type": [
"string",
"null"
]
},
"site1": {
"pattern": "^[A-Z]+[a-z]+[A-Z]+$",
"type": "string"
},
"site1_name": {
"type": [
"string",
"null"
]
},
"site2": {
"pattern": "^[A-Z]+[a-z]+[A-Z]+$",
"type": "string"
},
"site2_name": {
"type": [
"string",
"null"
]
}
},
"required": [
"site1",
"site2"
],
"title": "Recombinase",
"type": "object"
},
"RecombinaseSource": {
"additionalProperties": false,
"description": "Represents the source of a sequence that is generated by recombination using one or more recombinases",
"properties": {
"circular": {
"description": "Whether the assembly is circular or not",
"type": [
"boolean",
"null"
]
},
"database_id": {
"description": "The id of an entity in a database",
"type": [
"integer",
"null"
]
},
"id": {
"description": "A unique identifier for a thing",
"type": "integer"
},
"input": {
"description": "The inputs to this source. If the source represents external import of a sequence, it's empty.",
"items": {
"anyOf": [
{
"$ref": "#/$defs/SourceInput"
},
{
"$ref": "#/$defs/AssemblyFragment"
}
]
},
"type": [
"array",
"null"
]
},
"output_name": {
"description": "Used to specify the name of the output sequence",
"type": [
"string",
"null"
]
},
"recombinases": {
"items": {
"$ref": "#/$defs/Recombinase"
},
"type": "array"
},
"type": {
"description": "Designates the class",
"enum": [
"RecombinaseSource"
],
"type": [
"string",
"null"
]
}
},
"required": [
"recombinases",
"id"
],
"title": "RecombinaseSource",
"type": "object"
},
"RepositoryIdSource": {
"additionalProperties": false,
"description": "Represents the source of a sequence that is identified by a repository id",
Expand Down
Loading